Mac下python使用opencv打开摄像头问题汇总

mac下python调用opencv打开摄像头,是挺麻烦的,这里把我遇到的问题和解决方式汇总一下。

一、python版本问题

     由于我的mac本身装了2.7版本,后来又因为别的开发需求装了3.7。然后用pip install opencv-python就一大堆的问题。后来我干脆用anaconda重新装了一个python3.7。然后使用idea来开发。idea安卓python插件我就不详细介绍了,网上很多。安装完插件以后,要设置一下python-sdk。设置路径为File-Project-Struc...-SDK。选择你的anaconda安装python的路径(在你的anaconda路径下哦,例如我的是/Users/.../opt/anaconda3/envs/python37/)。设置完后,在anaconda上面搜索opencv。

Mac下python使用opencv打开摄像头问题汇总

装完以后你就可以在idea里面用了。

二、调用摄像头的问题

    上最简单的调用摄像头代码

import cv2
import time

capture = cv2.VideoCapture(0)
time.sleep(1)

while True:
    ret, frame = capture.read()
    frame = cv2.flip(frame,1)   #镜像操作
    cv2.imshow("video", frame)
    key = cv2.waitKey(50)
    #print(key)
    if key  == ord('q'):  #判断是哪一个键按下
        break
cv2.destroyAllWindows()

 

但是会出现问题哦,我的是

pydev debugger: process 3248 is connecting

Connected to pydev debugger (build 192.6817.14)

Process finished with exit code 134 (interrupted by signal 6: SIGABRT)

然后就没了。网上就是一大堆的,乱七八糟的解决办法。然后没有卵用 。不过我看到有人说是权限问题,于是乎,就去终端跑了。首先找到/Users/.../opt/anaconda3/envs/python37/bin 目录下。然后把上面代码拷贝到一个新建文件test.py。然后敲命令

./python3.7 test.py,不一定成功哦,因为还没有设置权限,权限在哪设置呢,

系统偏好设置-安全隐私,如下图

Mac下python使用opencv打开摄像头问题汇总

然后你就能成功了。

 

三、在idea里面我想跑这个代码

  其实我也还没找到办法,我是来看看有人解决了,给我回复一下么.....