代表https://stackexchange.com/users/17689558/evan-kiffel發帖,因為出于某種原因不會讓他發帖(也就是說他每 90 分鐘只能發帖一次)我正在嘗試運行形狀檢測器程序來打開我的網絡攝像頭并搜索形狀。當我這樣做時,網絡攝像頭會打開,但幾秒鐘后會關閉并打開 mac 錯誤窗口。如何修復此代碼/更改計算機上的某些內容以解決此問題?謝謝您的幫助!這是錯誤的樣子:錯誤圖像import cv2import numpy as npdef nothing(x): # any operation passcap = cv2.VideoCapture(0)cv2.namedWindow("Trackbars")cv2.createTrackbar("L-H", "Trackbars", 0, 180, nothing)cv2.createTrackbar("L-S", "Trackbars", 66, 255, nothing)cv2.createTrackbar("L-V", "Trackbars", 134, 255, nothing)cv2.createTrackbar("U-H", "Trackbars", 180, 180, nothing)cv2.createTrackbar("U-S", "Trackbars", 255, 255, nothing)cv2.createTrackbar("U-V", "Trackbars", 243, 255, nothing)font = cv2.FONT_HERSHEY_COMPLEXwhile True: _, frame = cap.read() hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV) l_h = cv2.getTrackbarPos("L-H", "Trackbars") l_s = cv2.getTrackbarPos("L-S", "Trackbars") l_v = cv2.getTrackbarPos("L-V", "Trackbars") u_h = cv2.getTrackbarPos("U-H", "Trackbars") u_s = cv2.getTrackbarPos("U-S", "Trackbars") u_v = cv2.getTrackbarPos("U-V", "Trackbars") lower_red = np.array([l_h, l_s, l_v]) upper_red = np.array([u_h, u_s, u_v]) mask = cv2.inRange(hsv, lower_red, upper_red) kernel = np.ones((5, 5), np.uint8) mask = cv2.erode(mask, kernel) # Contours detection if int(cv2.__version__[0]) > 3: # Opencv 4.x.x contours, _ = cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) else: # Opencv 3.x.x _, contours, _ = cv2.findContours(mask, cv2.RETR_TREE, cv2.CHAIN_APPROX_SIMPLE) for cnt in contours: area = cv2.contourArea(cnt) approx = cv2.approxPolyDP(cnt, 0.02*cv2.arcLength(cnt, True), True) x = approx.ravel()[0] y = approx.ravel()[1]
添加回答
舉報
0/150
提交
取消