2017-07-13 1 views
0

Ich benutze Pygame mit Kinect Sensor v1 (natürlich in Python). Gibt es Methoden, Daten direkt vom Sensor zur Verarbeitung mit opencv zu verwenden? (ohne pygame)Kinect RGB-Daten mit PyKinect direkt, ohne Pygame, um mit OpenCV verarbeitet zu werden

Ich versuchte mit frame.image.bits, aber es gibt mir ein 1d-Array. Gibt es irgendeine Möglichkeit, den Rahmen vom Sensor als Rahmenbild zu bekommen, damit ich opencv verwenden kann, um darauf zu verarbeiten?

Antwort

0
from pykinect import nui 
import numpy 
import cv2 

def video_handler_function(frame): 

    video = numpy.empty((480,640,4),numpy.uint8) 
    frame.image.copy_bits(video.ctypes.data) 

    cv2.imshow('KINECT Video Stream', video) 


#------------------------------------main------------------------------------ 
kinect = nui.Runtime() 
kinect.video_frame_ready += video_handler_function 
kinect.video_stream.open(nui.ImageStreamType.Video, 2,nui.ImageResolution.Resolution640x480,nui.ImageType.Color) 

cv2.namedWindow('KINECT Video Stream', cv2.WINDOW_AUTOSIZE) 

while True: 

    key = cv2.waitKey(1) 
    if key == 27: break 

kinect.close() 
cv2.destroyAllWindows() 
#------------------------------------main------------------------------------ 
Verwandte Themen