我想从kinect到opencv代码的流中获取深度和视频。我在Linux工作。我已经安装了libfreenect模块用于深度。但是,/ dev /中只列出了一个设备。现在,当我将Kinect连接到我的电脑并运行
时camorama -d /dev/video0
我得到了深度图。然后,我在opencv中使用videocapture访问设备,我得到了rgb视频。现在,如果我再次运行camorama命令,这次我会获得rgb视频。我无法弄清楚发生了什么。我基本上想要我的opencv代码中的流。请帮忙。
答案 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