Python 将像素值返回为";无”;
我有以下代码行:Python 将像素值返回为";无”;,python,Python,我有以下代码行: img = cv.imread("c:/users/admin/downloads/sack.jpg", 1) 它没有将任何内容读入imgimg正在显示Nonesack.jpg存在,是一个图像文件 import os import cv2 image_path = r"c:/users/admin/downloads/sack.jpg" assert os.path.isfile(image_path) img = cv2.imread(image_path, 1) 断言
img = cv.imread("c:/users/admin/downloads/sack.jpg", 1)
它没有将任何内容读入img
<代码>img正在显示None
sack.jpg
存在,是一个图像文件
import os
import cv2
image_path = r"c:/users/admin/downloads/sack.jpg"
assert os.path.isfile(image_path)
img = cv2.imread(image_path, 1)
断言将失败,或者读取将成功,或者文件不是有效的映像。
注意路径前面的r
另请注意cv2
,而不是cv
编辑的
这在WINDOWS上对我很有效:
import cv2
path = r'c:/users/admin/downloads/sack.jpg'
img = cv2.imread(path)
cv2.imshow('imgTitle',img)
cv2.waitKey()
您可以检查cv2.imread的工作原理
请注意:
cv.waitKey()
,这样图像就不会很快打开和关闭实时应用程序,您可以尝试使用库 像os和pathlib一样,我们也非常推荐它
python的哪个版本?什么是cv?你有权限阅读
admin
s用户文件夹吗?我注意到路径前面有r
。你有什么解释吗?我知道它禁用转义反斜杠,所以它们可以用作常规字符。但是没有反斜杠。那么,为什么要指出这一点呢?严格来说,有人仍然可以擦除assert
和imread()
@dedObed之间的文件。assert不在那里是为了确保文件存在而不被删除,因为imread
在不存在的文件上以静默方式失败,我想让它以非静默方式失败。当然,您是对的。@usr2564301只是路径的最佳实践。开发模式中的绝对路径往往会改变,这只会节省时间。实际上,我没有注意到路径没有反斜杠,这确保了我永远不会注意到。当然,您会得到一个断言错误,这就是断言存在的原因。这意味着该路径中没有文件。确保该路径中有图像。实际上不必使用反斜杠。不在windows上anyway@Gulzar事实上,这取决于你想对你提供的路径做什么,因为Pyhton中的一些函数根据你使用的操作系统将斜杠转换成正确的形式。Windows中的正常路径使用斜杠,但在Linux和Mac中使用斜杠。@RameshRavula如果没有给出任何错误,请添加这行代码:“cv2.waitkey()”,当然没有引号,因为否则图像会很快打开和关闭。@RameshRavula我编辑了答案,它应该可以工作,因为它可以在我的机器上工作,所以请仔细检查!,下次我的朋友在写问题之前尝试搜索网页,或者很好地纠正你的问题!,否则他们会给你负面评价。希望这会有所帮助