Едновременна дълбочина и видео от kinect

Искам да получа както дълбочина, така и видео от потоци от kinect към моя opencv код. Работя в Linux. Инсталирах модула libfreenect за дълбочина. Има обаче само едно устройство, посочено в /dev/. Сега, когато свържа Kinect към моя компютър и стартирам

camorama -d /dev/video0

Получавам картата на дълбочината. След това получавам достъп до устройството с помощта на видеозаснемане в opencv и получавам rgb видеото. Сега, ако отново стартирам командата camorama, този път получавам rgb видеото. Не мога да разбера какво се случва. По принцип искам и двата потока в моя opencv код. Моля помогнете.


person rohit-biswas    schedule 11.05.2015    source източник


Отговори (1)


Изпълнете този скрипт на Python:

import freenect
import cv2
import numpy as np
from functions import *

def nothing(x):
    pass   
kernel = np.ones((5, 5), np.uint8)     

def pretty_depth(depth):
    np.clip(depth, 0, 2**10 - 1, depth)
    depth >>= 2
    depth = depth.astype(np.uint8)
    return depth

while 1:
    orig = freenect.sync_get_video()[0]
    orig = cv2.cvtColor(orig,cv2.COLOR_BGR2RGB)
    dst = pretty_depth(freenect.sync_get_depth()[0])#input from kinect
    cv2.imshow('Disparity', dst)
    cv2.imshow('RGB',orig)
    if cv2.waitKey(1) & 0xFF == ord('b'):
        break
person Saransh Kejriwal    schedule 04.03.2016