C++ opencv 4.5 imread() 读取图片,显示为空的解决办法

C++ opencv 4.5 imread() 读取图片,显示为空的解决办法

一、路径问题

先查看下路径问题,如果使用的是相对路径,先查看下当前路径,判断输入的路径是否有错:

#include 
    
    char buf[_MAX_PATH];
    std::string a;
    a=_getcwd(buf, _MAX_PATH);
    std::cout << a << std::endl;

如果使用的是绝对路径,在windows环境中,输入路径时不要使用“\”,使用“\\”或者“/”代替,在linux环境下,统一使用"/"。

二、配置问题

在配置opencv环境时时,需要将下载文件的lib文件添加到附加依赖项中,如下图所示:
C++ opencv 4.5 imread() 读取图片,显示为空的解决办法_第1张图片
在Debug模式下应该选择带’d’的lib,在Release模式下就选择不带’d’的lib,配置不当会导致库关联的问题。以Debug模式为例,当进行到这一步时,我们应该保留带’d’的lib而将不带’d’的lib删除,或者如上图将带’d’的lib移动到最上方。
C++ opencv 4.5 imread() 读取图片,显示为空的解决办法_第2张图片

还有一种方法是在程序的开始加上:

#pragma comment(lib,"opencv_world452d.lib")

告诉程序将采用Debug版本的库函数。
实验结果:

你可能感兴趣的:(机器学习之路,c++,opencv,windows,10,linux,visual,studio,code)