cv2.imread无法正常工作,我得到:“ TypeError:图像数据无法转换为浮点数”

时间:2019-07-24 22:42:56

标签: python-3.x opencv

我尝试使用cv2.imread函数将图像转换为数组,以便使用plt.imshow对其进行绘制,但是当使用cv2.imread时,出现“ TypeError:图像数据无法转换为浮点数”。

我尝试遵循本教程:https://pythonprogramming.net/loading-custom-data-deep-learning-python-tensorflow-keras/

因此,我下载了以下图像文件夹:https://www.microsoft.com/en-us/download/confirmation.aspx?id=54765

我试图按照教程中的代码进行操作,但是找不到我的错误。

'''python

import numpy as np
import matplotlib.pyplot as plt 
import cv2
import os

DATADIR = "C:\\Users\\François\\Desktop\\Python\\Cats&Dogs_Sentdex\\PetImages"
CATEGORIES = ["Cat", "Dog"]

for category in CATEGORIES:
    path = os.path.join(DATADIR, category)
    for img in os.listdir(path):
        img_array = cv2.imread(os.path.join(path,img), 0)
        plt.imshow(img_array, cmap="gray")
        plt.show
        break
    break

'''

我应该能够打印(img_array)并获取一个数组,但是代码不起作用,并且出现错误消息:

set_data中的第642行“文件“ C:\ ProgramData \ Anaconda3 \ lib \ site-packages \ matplotlib \ image.py”     引发TypeError(“图像数据无法转换为浮点数”)

TypeError:图片数据无法转换为浮点数”

在变量要求中,我还可以看到img_array是:“内置模块的无类型对象”

你知道为什么我没有数组吗?

0 个答案:

没有答案