来自kinect的同步深度和视频

时间:2015-05-11 22:05:28

标签: opencv driver kinect rgb

我想从kinect到opencv代码的流中获取深度和视频。我在Linux工作。我已经安装了libfreenect模块用于深度。但是,/ dev /中只列出了一个设备。现在,当我将Kinect连接到我的电脑并运行

camorama -d /dev/video0

我得到了深度图。然后,我在opencv中使用videocapture访问设备,我得到了rgb视频。现在,如果我再次运行camorama命令,这次我会获得rgb视频。我无法弄清楚发生了什么。我基本上想要我的opencv代码中的流。请帮忙。

1 个答案:

答案 0 :(得分:0)

运行此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