追溯(最近一次通话)np.int8

时间:2019-07-04 15:43:41

标签: python opencv

向我展示了以下问题:让我帮助您解决。谢谢。

#Traceback (most recent call last):
#File "C:/Users/Admin/PycharmProjects/frec/part3.py", line 15, in 
#<module>
#Training_Data.append(np.asarray(images, dtype=np.uint8))
#File "C:\Users\Admin\.virtualenvs\frec\lib\site- 
#packages\numpy\core\numeric.py", line 538, in asarray
#return array(a, dtype, copy=False, order=order)
#TypeError: int() argument must be a string, a bytes-like object or a 
#number, 
#not 'NoneType'

我什么都不知道如何找到解决方案。

for i, files in enumerate(onlyfiles):
image_path = data_path + onlyfiles[i]
images = cv2.imread(image_path, cv2.IMREAD_GRAYSCALE)
Training_Data.append(np.asarray(images, dtype=np.uint8))
Labels.append(i)

不知道。

1 个答案:

答案 0 :(得分:0)

索引可能位于for循环中。 2期。

1)for循环的主体没有缩进。您所显示的代码不会在最后4行上循环。如果希望在循环的上下文中对它们进行评估,则需要缩进它们。否则,将不会定义索引,i和文件。

for i, files in enumerate(onlyfiles):
    image_path = data_path + onlyfiles[i]
    images = cv2.imread(image_path, 
    cv2.IMREAD_GRAYSCALE)
    Training_Data.append(np.asarray(images,dtype=np.uint8))
    Labels.append(i)

2)您有2个索引,但仅使用1。是否定义了files,还是无关紧要的?如果多余的话,您认为要纳入i的内容可能实际上已纳入files

在任何情况下,都会为变量分配一个None值。您需要找出哪一个。