这个报错的直接原因应该是imread函数读取图片失败,但是背后原因有很多情况:
文件路径尽量不要出现中文,否则可能出错!
虽然很多时候cv2.imread函数是读取图片,可能用不到摄像头,但我印象中之前出现过这个问题,摄像头关闭后似乎也会莫名其妙地报错…
\ + 字母 可能发生转义,为了避免转义一般用\代替\,或者在路径前面加一个r防止转义。
相对路径是相对编译器的运行路径而言的,不是说把源码文件和图片放到一个文件夹目录下就可以了!
对于vscode来说,运行时右下角终端显示的路径就是编译器的运行路径!
编译后只会在这个路径下寻找图片!如果图片不在这个目录下读取是不会成功的!
你可以把图片塞到这个目录下,但这样不是解决的长久之计…
vscode有个强大的自动切换编译器运行路径的功能,就是在图片所在的文件夹空白处右键,选中open with vscode,然后在vscode中打开源码文件,则会将编译器的运行路径自动切换到当前目录!
不能右键文件再open with vscode!
如果右键 发现没有open with vscode 那可能是安装时没有勾选
要么重装(不建议),要么修改一下注册表就行:
https://blog.csdn.net/qq_37810453/article/details/88101745
如果还有可能的原因,欢迎补充~