libpng error: Invalid IHDR data

在用OpenCV读取图像的时候遇到这个问题,可是我很奇怪的是,我读取的明明是,ipg文件,为什么会报出png这个错误?

我的环境是unbuntu16.04 +OpenCV2.4.13,用cmake编译的。

我在build文件夹下cmake..的时候,发现OpenCV的依赖是这样的,

-- Found OpenCV: /opt/ros/kinetic (found version "3.2.0")

因为我安装了ROS,而kinetic又好像自带了OpenCV3的版本, 所以我猜测是不是应该在CMakeLists.txt里指定OpenCV2.4.13的路径,我这么设置了一下,

set(OpenCV_DIR /usr/local/share/OpenCV)
FIND_PACKAGE( OpenCV REQUIRED )

就是加上一句set(OpenCV_DIR /usr/local/share/OpenCV)的话,当然,每个人的路径可能不一样,根据你自己的安装路径去设置,

然后删除掉build文件夹里的所有东西再重新cmake ..下,然后就可以了。

我在想这其中应该也有可能是我读取的路径设置问题?

所以我目前觉得可能的原因有两个,一个是OpenCV的版本路径指定,另一个就是读取图片的路径,如果不确定是不是在当前目录下读取,就讲图片的读取路径设置为绝对路径吧。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值