Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将像素值返回为";无”;_Python - Fatal编程技术网

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的工作原理

请注意:

  • 它是(cv2)而不是cv

  • 添加
    cv.waitKey()
    ,这样图像就不会很快打开和关闭

  • 无论如何,在
    实时应用程序,您可以尝试使用库 像ospathlib一样,我们也非常推荐它


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