成功解决AttributeError: 'NoneType' object has no attribute '__array_interface__'

成功解决AttributeError: 'NoneType' object has no attribute '__array_interface__'


解决问题

File "F:\File_Python\Python_daydayup\1907DL\keras-yolo3\yolo.py", line 192, in detect_video
    image = Image.fromarray(frame)
  File "F:\Program Files\Python\Python36\Lib\site-packages\PIL\Image.py", line 2421, in fromarray
    arr = obj.__array_interface__
AttributeError: 'NoneType' object has no attribute '__array_interface__'

解决思路

属性错误:“NoneType”对象没有属性“_array_interface__”

解决方法

while True:
    return_value, frame = vid.read()
    if return_value:
        print('当前数据读入正确,此处放入正确代码!')

    else:
        print('当前数据读入错误,跳出当前循环……')
        break

数据读取没有成功,也就是说,数据没有读进来。既然没有读进来,那只需要加一个判断:如果当前没有数据,则进行break即可!
如果有网友相关解释或者解决办法,请留言探讨,共同解决这个error,欢迎网友留言提供更好的思路!

网友推荐答案

注:把此代码放入到循环内部即可!

while True:
    return_value, frame = vid.read()
    if(return_value==False):
        print("******************************************************")
        break

上述问题在于opencv读取视频,最后帧是为空,我们需要做一个判断,如果为空就跳出循环,问题解决了 。

(0)

相关推荐