错误记录:opencv读取本地图片报错: Unexpected Error: OpenCV(4.1.1) C:\projects\opencv-python\opencv\modules\imgproc\src\color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'
又一次愚蠢的错误
报错:
for file in os.listdir(const.PATH_SRC):
print("#####"+const.PATH_SRC)
print("#####"+file)
img = cv2.imread(file,1)
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) 这一句总是报错
Unexpected Error: OpenCV(4.1.1) C:\projects\opencv-python\opencv\modules\imgproc\src\color.cpp:182: error: (-215:Assertion failed) !_src.empty() in function 'cv::cvtColor'
debug:
查了网上很多教程,大概有以下几个原因:
-
检查图片路径中是否有中文字符,应尽量避免中文字符的出现
-
文件路径分割有问题,如果在路径中使用的是“\”,可尝试将其改为“/”
-
读取文件的扩展名问题,“ *.jpeg” 改成 “ *.jpg”
但是这些对我都没用... 后来在查阅资料的时候,看到了这个
https://www.jb51.net/article/188239.htm(博客链接)
然后输出了一下img变量,输出 None
图片根本就没有加载进来... 实际上是 cv2.imread() 这个位置出错了,只有 filepath 这个变量可能出错
原来没有用绝对路径... 根本找不到图片(我了个去!!
纠正:
for file in os.listdir(const.PATH_SRC):
print("#####"+const.PATH_SRC)
file = const.PATH_SRC+file
print("#####"+file)
img = cv2.imread(file,1)
print(img)