我正在尝试让树莓派相机与opencv一起工作

2023-11-29

我尝试使此代码与树莓派摄像头一起使用。 如何让 cv2.VideoCapture(0) 将树莓派摄像头识别为指定摄像头

import cv2

def diffImg(t0, t1, t2):
   d1 = cv2.absdiff(t2, t1)
   d2 = cv2.absdiff(t1, t0)
   return cv2.bitwise_and(d1, d2)

cam = cv2.VideoCapture(0)  

winName = "Movement Indicator"
cv2.namedWindow(winName, cv2.CV_WINDOW_AUTOSIZE)

t_minus = cv2.cvtColor(cam.read()[1], cv2.COLOR_RGB2GRAY)
t = cv2.cvtColor(cam.read()[1], cv2.COLOR_RGB2GRAY)
t_plus = cv2.cvtColor(cam.read()[1], cv2.COLOR_RGB2GRAY)

while True:
   cv2.imshow( winName, diffImg(t_minus, t, t_plus) )

# Read next image
t_minus = t
t = t_plus
t_plus = cv2.cvtColor(cam.read()[1], cv2.COLOR_RGB2GRAY)

key = cv2.waitKey(10)
if key == 27:
   cv2.destroyWindow(winName)
   break

 print ("Goodbye")

你不能使用cv2.VideoCapture()对于拉斯皮相机。

The cv2.VideoCapture()仅适用于 USB 摄像头,不适用于 CSI 摄像头。

如果你想使用RaspiCam进行抓图,可以参考这个tutorial

Update:答案不再正确,因为现在您可以使用cv2.VideoCapture()正如下面的评论提到的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

我正在尝试让树莓派相机与opencv一起工作 的相关文章

随机推荐