想在linux下使用python语言调用opencv实现图像增强的目的
在使用过程中发现了一些问题
本来我是打算在我的图像目录里面写.py文件
~/Downloads$ python transform.py
但运行后出现如下错误
Traceback (most recent call last):
File "transform.py", line 5, in <module>
cv2.imshow("one",img)
cv2.error: OpenCV(3.4.4) /io/opencv/modules/highgui/src/window.cpp:356: error: (-215:Assertion failed) size.width>0 && size.height>0 in function 'imshow'
我的文件代码如下
import cv2
img=cv2.imread("Downloads/whalepic/train/0000e88ab.jpg")
cv2.namedWindow('one',cv2.WINDOW_AUTOSIZE)
cv2.imshow("one",img)
cv2.waitKey(0)
cv2.destroyWindow("one")
一开始怀疑文件权限问题,加了sudo后,还是不行, 怀疑是读取路径有问题,导致没有正确读取,这个确实也会引起这个问题,所以图片路径一定要写对。
所以总结一下出现这个问题的原因
- .py文件是否是在根目录下运行的,不是的话要改正,里面的机理现在还没搞清楚
- 图片路径是否正确
- 图片是否可读
- cv2.waitKey(0)是必须要加的,注意K是大写,这个可能会漏掉
如果以上四个都没有问题,那么图片基本就能读出来了