我正在尝试使用Kinect for Windows相机提取物体的3D坐标。要提取的对象将以鲜艳的颜色突出显示,或者使用可以使用特征提取识别的图形。
我以前使用MATLAB和Kinect进行特征提取和3D坐标提取,但是我在试图将这些技术合并在一起时遇到了问题。
在2D图像中突出物体并将其作为特征提取的一种非常简单的方法是在物体上画5个彼此非常接近的圆,然后将其置于相机视图中,使用CenterCoords = imfindcircles(image, [15 20]);
提取图像中所有圆(半径范围内)的坐标。然后,您可以删除图像中没有5个相似圆圈的所有圆圈,并提取中心圆圈的坐标。
但是我如何将这个想法扩展到3D?如何使用Kinect摄像头提取高亮物体的3D坐标?
要使用3-D,你必须使用深度值,也许还需要结合颜色边缘过滤技术。这个想法是使用对象的深度值,加上颜色边缘作为你的特征选择。
使用机器学习算法(如kNN)来找到与对象相似的颜色边缘和可能的深度值。
这些值以像素和深度数组的形式出现