2017-05-10 5 views
0

나는 kinect 카메라와 함께 일하고 있으며 RGB와 깊이 센서를 결합한 ptCloud 메서드를 사용하여 실제 깊이 영상을 표시하려고합니다. 그러나 초기 설정을 사용하면 관련 이미지가 누락되어 이미지가 손상되어 더 많은 데이터를 캡처 할 수 있도록 이미지를 향상시킬 수 있습니다. 나는 또한 내가 의미하는 바를 이미지로 첨부했다. 어떤 도움을 주셔서 감사합니다. 이미지의 외모에서 live video image dataMatlab Kinect Depth Imaging

colorDevice = imaq.VideoDevice('kinect',1) 
depthDevice = imaq.VideoDevice('kinect',2) 
step(colorDevice); 
step(depthDevice); 
colorImage = step(colorDevice);`enter code here` 
depthImage = step(depthDevice); 
gridstep = 0.1; 
ptCloud = pcfromkinect(depthDevice,depthImage,colorImage); 

player = pcplayer(ptCloud.XLimits,ptCloud.YLimits,ptCloud.ZLimits,... 
    'VerticalAxis','y','VerticalAxisDir','down'); 

xlabel(player.Axes,'X (m)'); 
ylabel(player.Axes,'Y (m)'); 
zlabel(player.Axes,'Z (m)'); 
for i = 1:1000  
    colorImage = step(colorDevice); 
    depthImage = step(depthDevice); 

    ptCloud = pcfromkinect(depthDevice,depthImage,colorImage); 
    ptCloudOut = pcdenoise(ptCloud); 
    view(player,ptCloudOut); 
end 

release(colorDevice); 
release(depthDevice); 
+0

어떤 정보가 누락 되었습니까? – hbaderts

+0

그것은 정보를 잃어 버리지 않고 있습니다. 이미지에서 볼 수있는 것처럼 많은 양의 데이터가 누락되어 더 많은 데이터를 장치에 표시하도록 개선하는 중입니다. – Krips

답변

0

, 당신은 중간에 TV 화면과 캐비닛을 포착하기 위해 노력하고 있습니다. 이와 같은 경우 TV 화면은 실제로 센서에서 방출 된 IR을 흡수하거나 장방형/다중 반사 등으로 반사합니다. 따라서 Kinect는 깊이 데이터를 캡처 할 수 없습니다. 또한, 포인트 클라우드 위에 RGB 데이터를 표시하려고 할 때, RGB 데이터를 정렬하려고 시도하고 RGB 이미지 픽셀과 정렬되지 않은 깊이 데이터를 거부합니다.

따라서 깊이 데이터 수집을 향상 시키려면 화면에 거울, 거울 등과 같은 반사 표면이 없도록주의해야합니다. 또한 RGB 오버레이없이 깊이 데이터를 표시해보십시오. 이렇게하면 표시된 점 구름을 개선 할 수 있습니다.