为了账号安全,请及时绑定邮箱和手机立即绑定

使用 OpenCV 出错,程序意外关闭

使用 OpenCV 出错,程序意外关闭

慕娘9325324 2022-07-19 10:59:11
代表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]
查看完整描述

1 回答

?
一只萌萌小番薯

TA贡献1795条经验 获得超7个赞

我发现这是一个权限问题。我们可以通过转到终端并使用 sudo 运行程序。



查看完整回答
反对 回复 2022-07-19
  • 1 回答
  • 0 关注
  • 105 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信