【发布时间】:2019-01-20 12:08:47
【问题描述】:
from picamera.array import PiRGBArray
from picamera import PiCamera
import time
import cv2
import imutils
camera = PiCamera()
camera.resolution = (640, 480)
camera.framerate = 32
rawCapture = PiRGBArray(camera, size=(640,480))
time.sleep(0.1)
for frame in camera.capture_continuous(rawCapture, format="bgr", use_video_port=True):
image = frame.array
#cv2.imshow("frame", image)
gray = cv2.cvtColor(frame.array, cv2.COLOR_BGR2GRAY)[1]
#cv2.imshow("Gray", gray)
thresh = cv2.threshold(gray, 225, 255, cv2.THRESH_BINARY)[1]
#cv2.imshow("Thresh", thresh)
cnts = cv2.findContours(thresh.copy(), cv2.RETR_EXTERNAL, cv2.CHAIN_APPROX_SIMPLE)
cnts = cnts[0] if imutils.is_cv2() else cnts[1]
output = thresh.copy()
cv2.imshow("frame", image)
cv2.imshow("Gray", gray)
cv2.imshow("Thresh", thresh)
key = cv2.waitKey(1) & 0xFF
rawCapture.truncate(0)
if key == ord("q"):
break
大家好,我在运行 raspbian 的树莓派 3 b+ 上的 python 3.5.3 上运行 opencv 3.3.0,当我在使用 opencv 的虚拟环境中运行上述代码时,它可以编译并运行,但不能按预期工作。框架窗口显示并更新正常,但灰色和 thresh 框架打开,然后宽度接近 0。我附上了它的照片如果有人有任何见解会很棒。desktop
【问题讨论】:
-
你可以试试waitKey(100)吗?
标签: python opencv video raspberry-pi video-processing