Отслеживание ближайшего тела с помощью Kinect v2
Я новичок в Kinect и я использую pykinect2. Я хочу отслеживать только тело, которое находится ближе всего к камере, а не другие. Я написал код, но проблема в том, что код обнаруживает первого человека, которого видит камера, и самые близкие критерии применяются только ко второму или следующему человеку, появляющемуся в поле зрения камеры. любая помощь будет принята с благодарностью.
if self._bodies is not None:
for i in range(-1, self._kinect.max_body_count):
body = self._bodies.bodies[i]
if not body.is_tracked:
continue
joints = body.joints
#####-----------------------------Get the Depth of a Body-----------------------------------------------------------
z = self.distance_body(joints) #distance of the bodies from the camera
track[i]=z
print(track)
min_dist= min(track.values())
for k in track.keys():
if track[k] == min_dist:
print(k)
l=k # id of the body that has the minimum distance
if(i==l):
body_near = self._bodies.bodies[i]
joints_near = body_near.joints
print(i)
joint_points_near = self._kinect.body_joints_to_color_space(joints_near)
joint_points_depth_near = self._kinect.body_joints_to_depth_space(joints_near)
self.draw_body(joints_near, joint_points_near, SKELETON_COLORS[l])
else:
continue
Я пытался решить эту проблему в течение нескольких недель. Если бы не в Python, любая логика или алогрит в C# или что-либо еще, что я могу использовать в Python, будет оценено. Спасибо