首页 > 解决方案 > cv2 imread 返回无

问题描述

我通过 pip install opencv-contrib-python-headless 安装了 cv2 库。

每当我尝试读取图像时,它都会返回无。我尝试在路径中使用 / 而不是 \,将图像存储在项目目录中,因此路径中没有 /,在路径前使用 r',重新安装包。我错过了什么吗?值得注意的是,当我使用其他库使用相同的路径读取图像时,它可以正常工作。

import cv2
 ## I tried all tweaks in the path
img = cv2.imread(path)
print(img)

这是我尝试过的路径

img = cv2.imread('image.jpg')
print(img)

img = cv2.imread(r'D:\project\image.jpg')
print(img)

img = cv2.imread(r'D:/project/image.jpg')
print(img)

img = cv2.imread('D:/project/image.jpg')
print(img)

以上所有返回无

标签: pythonopencvimage-processing

解决方案


我建议您再次尝试安装 CV2 或尝试检查图像地址。

如果您仍然有问题,您可以使用其他方法来读取 jpeg 图像。

如前一个答案中所述,cv2.imread 不读取 jpg 文件,您可以改用 matplotlib。

import cv2
import matplotlib.pyplot as plt
img1 = plt.imread('image.jpg')

请注意,matplotlib 中的颜色通道不同,它是 BGR。

如果您需要使用颜色,则需要交换第三个和第一个通道。

img1 = img1[..., ::-1]  # RGB --> BGR

您可以在此处找到有关 matplotlib 的更多信息https://matplotlib.org/

希望它能解决你的问题。


推荐阅读