【1】Ubuntu环境下OpenCV读取图片出错。报错:cv2.error: OpenCV(4.5.4) ./modules/imgproc/src/color.cpp:182

  • Post author:
  • Post category:其他




项目场景:

在Ubuntu环境下,运行ROS2代码,获取照片时报错,如下代码所示

cv2.error: OpenCV(4.5.4) ./modules/imgproc/src/color.cpp:182: error: (-215:Assertion failed)
 !_src.empty() in function 'cvtColor'



问题描述

查看使用OpenCV获取图像的路径

image = cv2.imread('/home/chen/dev_ws/src/ros2_21_tutorials/learning_node/learning_node/apple.jpg')  
# 读取图像



原因分析:

出现如上报错的原因很简单,有以下两种情况:

1.第一种比较常见,就是文件路径错误,导致读取不到照片,仔细看自己的文件路径,看看是否真的可以定位到想要获取到的图片,一般来说,文件路径

不可以含有中文

,并且留意一下图片格式,

jpg和png

等都有影响,当png读取失败时,建议使用jpg图片格式。

2.第二种就是我遇到的情况,我是

在Ubuntu系统下跑ROS2,使用的开发软件是Vscode

,在终端中输入下列代码完成代码编译,在终端中运行程序仍出现报错,且我的

路径并没有问题

$ colcon build


很有可能是在修改路径代码后没有保存,导致build文件夹中的程序没有更新,此时再去运行程序仍是路径更新之前的,解决方法很简单,在修改完代码后,Ctrl+S保存,此时在运行colcon build完成编译,问题得到解决


程序报错:


程序报错


修改照片地址,并Ctrl+S保存


修改图片地址


重新bulid一下代码


重新编译


读取到图片,完成图像处理


成功读取到图片



版权声明:本文为weixin_46444742原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。