关于cvLoadImage无法加载图像问题

昨天使用opencv库去测试一些功能时,使用IplImage的cvLoadImage函数加载图像,结果图像一直未加载成功,刚开始以为是路径问题,但结果使用QImage通过该路径是可以获取到图像的,又不是在windows环境下路径还要加"\\",Linux下"\"足矣。因此怀疑是图像格式的问题,从png换为jpg再试就成功加载到了。

这个情况很明显就是该opencv库不支持libpng库,无法显示png格式的图像,回到编译opencv源码目录下查看具体CMake配置项,果然是为选"WITH_PNG",而勾选了"WITH_JPEG":

原因找到了,还是去opencv API文档中有没有相关的解释吧。直接搜索cvLoadImage关键词,可以看到加载失败的原因:文件丢失、权限问题以及不支持或无效的图像格式,这次的原因是格式不支持造成的,至于为什么不支持就要看Note里的解释了,在Linux系统上,除了要安装相应格式的编解码器库如libjpeg库,还要在CMake中打开OPENCV_BUILD_3RDPARTY_LIBS标志位,看到这也算是有个交代了。

关于cvLoadImage无法加载图像问题_第1张图片

 

 

你可能感兴趣的:(Linux,Qt)