Matlab_Kinect_获取图像和身体数据
vid = videoinput(‘kinect’,1) 定义视频输入对象
kinect有两个传感器通道,
1为颜色RGB传感器,
2为深度传感器
src = getselectedsource(vid) 查看源设备特定属性
preview(vid) 预览 closepreview(vid) 关闭预览
src.EnableBodyTracking = ‘on’
深度相机有特殊属性值EnableBodyTracking,
表明跟踪状态。当设置为on时,它返回身体数据。
默认为off
start(vid2)启动第二个视频输入对象(深度流)。
[frame, ts, metaData] = getdata(vid2);
使用getdata获取深度相机上的身体跟踪数据
函数返回内容:
Frame帧
大小为512×424
单色13bit格式(mono13)
16位无符号整型(unit16)数据格式
Time stamps 时间戳
Metadata元数据
IsBodyTracked
[1x6 logical]
表示是否跟踪六个身体的位置。
1 表示跟踪主体,0表示不跟踪。
BodyTrackingID
[1x6 double]
表示身体的跟踪id。
ColorJointIndices
[25x2x6 double]
在彩色图像中的25个关节的(x,y)坐标
6个可能出现的身体数据
DepthJointIndices
[25x2x6 double]
在深度图像中的25个关节的(x,y)坐标
6个可能出现的身体数据
BodyIndexFrame
[424x512 double]
表示哪些像素属于被跟踪的物体,哪些像素不属于。
使用此元数据获取细分数据。
HandLeftState
[1x6 double]
用来识别身
Matlab_Kinect_获取图像和身体数据
最新推荐文章于 2024-11-22 13:56:54 发布
本文详细介绍了如何使用Matlab与Kinect传感器进行身体数据和图像的实时追踪。通过定义视频输入对象并设置深度相机的EnableBodyTracking属性,可以获取到包括时间戳、元数据、身体跟踪状态、关节位置等在内的丰富信息,从而实现对最多六个身体的精准跟踪。

最低0.47元/天 解锁文章
955

被折叠的 条评论
为什么被折叠?



