我正在使用Raspberry Pi Model B +,全新安装Raspbian和覆盆子pi相机。我正在玩一些OpenCV代码,尤其是对象跟踪。我找到了一段代码,最初起作用了。
以下是相关代码。
import cv2
import numpy as np
cap = cv2.VideoCapture(0)
while(1):
# Take each frame
_, frame = cap.read()
# Convert BGR to HSV
hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV)
# define range of blue color in HSV
lower_blue = np.array([110, 50, 50], dtype=np.uint8)
upper_blue = np.array([130,255,255], dtype=np.uint8)
# Threshold the HSV image to get only blue colors
mask = cv2.inRange(hsv, lower_blue, upper_blue)
# Bitwise-AND mask and original image
res = cv2.bitwise_and(frame,frame, mask= mask)
cv2.imshow('frame',frame)
cv2.imshow('mask',mask)
cv2.imshow('res',res)
k = cv2.waitKey(5) & 0xFF
if k == 27:
break
cv2.destroyAllWindows()
但是当我试图再次运行它时,我遇到了这个错误:
Traceback (most recent call last):
File "/home/pi/Desktop/Alpha/object.py", line 50, in <module>
hsv = cv2.cvtColor(frame,cv2.COLOR_BGR2HSV)
error: /usr/src/packages/BUILD/opencv-2.4.1+dfsg/modules/imgproc/src/color.cpp:3344: error: (-215) (scn == 3 || scn == 4) && (depth == CV_8U || depth == CV_32F) in function cvtColor
请帮忙吗?它第一次工作,但之后它只是不起作用。我已经尝试了一切。
答案 0 :(得分:0)
所以我找到了答案。我所要做的就是在我的树莓派上运行这段代码:
sudo modprobe bcm2835-v4l2
感谢您的帮助。