2016-11-21 2 views
2

Ich versuche, opencv in meinem Mac mit Python für übereinstimmende Objekte zu verwenden.OpenCV: FaceTime kann nicht verwendet werden

Aber ich bekomme diesen Fehler.

OpenCV: Cannot Use FaceTime HD Kamera (Yerleşik) 
OpenCV: camera failed to properly initialize! 
Segmentation fault: 11 

Auch das ist mein Code.

import numpy as np 
import cv2 
import time 

ESC=27 
camera = cv2.VideoCapture(0) 
orb = cv2.ORB_create() 


while True: 

    ret, imgCamColor = camera.read() 
    imgCamGray = cv2.cvtColor(imgCamColor, cv2.COLOR_BGR2GRAY) 
    kpCam = orb.detect(imgCamGray,None) 
    kpCam, desCam = orb.compute(imgCamGray, kpCam) 
    bf = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True) 
    matches = bf.match(desCam,desTrain) 
    good = [] 


    cv2.imshow('Camara', result) 

    key = cv2.waitKey(20)         
    if key == ESC: 
     break 

cv2.destroyAllWindows() 
camera.release() 

Ich versuchte ein paar Dinge auch. Aber es hat nicht funktioniert.

+1

Haben Sie dies herausgefunden? Das gleiche auf meinem MacBook Pro zu sehen. –

Antwort

3

Ich hatte das gleiche Problem mit meinem OpenCV-Skript. Ich empfehle, die Kamera über eine eingebaute App (z. B. Photo Booth) zu testen. Wie Sie mit dem Bild sehen, wurde die Kamera nicht erkannt. Die Lösung war ziemlich einfach, ich starte meinen Computer neu oder führe den folgenden Befehl aus: sudo killall VDCAssistant.

enter image description here

Mein Skript zum Testen der OpenCV nach Neustart des Computers verwendet:

import cv2 
cv2.namedWindow("preview") 
vc = cv2.VideoCapture(0) 

rval, frame = vc.read() 

while True: 

    if frame is not None: 
    cv2.imshow("preview", frame) 
    rval, frame = vc.read() 

    if cv2.waitKey(1) & 0xFF == ord('q'): 
    break 
Verwandte Themen