2017-07-17 7 views
0

Der folgende einfache Python-Code dient zum Erkennen und Verfolgen des Objekts anhand der Farbe mithilfe der Webcam.kinect v2 als Webcam

Meine Frage ist, wie kann man den gleichen Code verwenden, aber mit Kinect v2 (keine Webcam).

ich Ubuntu bin mit 16,04, linux

Jeder dabei helfen kann, und sagen Sie mir, wie Kinect v2 als Webcam unter Linux verwenden ???

import cv2 
import numpy as np 

cap = cv2.VideoCapture(0) 

while(1): 

    # Take each frame 
    _, frame = cap.read() 

    # Convert BGR to HSV 
    hsv = cv2.cvtColor(frame, cv2.COLOR_BGR2HSV) 

    # define range of blue color in HSV 
    lower_blue = np.array([110,50,50]) 
    upper_blue = np.array([130,255,255]) 

    # Threshold the HSV image to get only blue colors 
    mask = cv2.inRange(hsv, lower_blue, upper_blue) 

    # Bitwise-AND mask and original image 
    res = cv2.bitwise_and(frame,frame, mask= mask) 

    cv2.imshow('Original',frame) 
    cv2.imshow('mask',mask) 
    cv2.imshow('Detect-Blue',res) 
    k = cv2.waitKey(5) & 0xFF 
    if k == 27: 
     break 

cv2.destroyAllWindows() 

Antwort

0

Wenn Sie noch nach einer Lösung suchen, ist hier eine. Für Linux gibt es eine Open-Source-Bibliothek namens "libfreenect2", mit der ich Bilder von Kinect2 gepackt habe. Sobald Sie mit dem Installationsteil fertig sind, können Sie mit dem Programm "Protonect.cpp" nach Ihren Bedürfnissen spielen. Im gleichen Programm konnten Sie Ihren Code nach der "while" -Schleife in Zeile # 349 hinzufügen. Es wird den Job machen. Und natürlich müssen Sie die OpenCV-Header-Dateien hinzufügen, wenn Sie cv2-Funktionalitäten verwenden.

Übrigens habe ich die Bibliothek auf meinem Laptop mit Ubuntu 16.04 und Nvidia Jetson TK1 installiert und beide funktionieren gut. In meiner Arbeit habe ich es nur verwendet, um die Bilder zu speichern und 3D-Modelle daraus zu erstellen. Ich mache jedoch keinerlei Tracking.

Verwandte Themen