cv2.imread()无法读取图片

问题:cv2.imread()无法读取图片

环境:
python 3.11
opencv-python (4.6.0.66)

import cv2
img1 = cv2.imread('E:/2022/cv/gaosilvbo/images/g.jpg',1)
cv2.imshow('1',img1)
img2 = cv2.imread('E:/2022/cv/gaosilvbo/images/Gray.jpg',1)
cv2.imshow('2',img2)
cv2.waitKey()

img1可以正常读取,但img2不可以(img2返回为nonetype)
(上下分别是img1和img2,其中img2来源于INRIAPerson)

img

img

是不是文件路径错了?

两种可能:1、路径有问题;2、imread读取的格式有问题,参考这两篇文章:
https://blog.csdn.net/qq_27278957/article/details/84589526
https://blog.csdn.net/weixin_44015965/article/details/109547129

应该是文件格式的问题。可以用Ultra Edit等编辑工具打开,看一下两个文件的16进制代码,对比一下异同

是不是图片的后缀名弄错了,我试了一下,发现是后缀名弄错了,把png弄成了jpg,改过来之后就可以正常读取并显示了
import cv2
img1 = cv2.imread('D:/PyCharm/1.jpg',1)
cv2.imshow('1',img1)
img2 = cv2.imread('D:/PyCharm/2.png', 1)
cv2.imshow('2', img2)