'NoneType'对象不可下标-openCV

时间:2019-09-13 15:15:39

标签: python opencv

尝试在新的jupyter笔记本中运行相同的代码时遇到错误

我正在练习手势代码,有时可以运行代码,而当我尝试在新笔记本中运行同一代码时,则显示错误

import numpy as np
import cv2
import math

capture = cv2.VideoCapture(0)
while capture.isOpened():    
    ret, frame = capture.read()
    cv2.rectangle(frame, (100, 100), (300, 300), (0, 255, 0), 0)
    crop_image = frame[100:300, 100:300]   
    blur = cv2.GaussianBlur(crop_image, (3, 3), 0)
    hsv = cv2.cvtColor(blur, cv2.COLOR_BGR2HSV)




TypeError                                 Traceback (most recent call 
last)
<ipython-input-5-fc124576a5ed> in <module>
 14     # Get hand data from the rectangle sub window
 15     cv2.rectangle(frame, (100, 100), (300, 300), (0, 255, 0), 0)
 ---> 16     crop_image = frame[100:300, 100:300]
 17 
 18     # Apply Gaussian blur

TypeError: 'NoneType' object is not subscriptable

1 个答案:

答案 0 :(得分:0)

当当前内核失败时,有时会发生这种情况。在运行代码之前,请尝试重新启动内核。

或者,您可以使用imutils python模块访问视频流,根据我的经验,它工作得很好。

pip安装命令:

pip install imutils

希望这会有所帮助,祝你好运。