sl-perception 31cfb9dcb9 feat: Add Issue #423 - Multi-person tracker with group handling + target priority
Implement multi-person tracking with:
- Track up to 10 people with persistent unique IDs
- Target priority: wake-word speaker > closest known > largest bbox
- Occlusion handoff with 3-second grace period
- Re-ID via face embedding (cosine similarity) + HSV color histogram
- Group detection and centroid calculation
- Lost target behavior: stop + rotate + SEARCHING state
- 15+ fps on Jetson Orin Nano Super
- PersonArray message publishing with active target tracking
- Configurable similarity thresholds and grace periods
- Unit tests for tracking, matching, priority, and re-ID

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
2026-03-04 23:33:18 -05:00

30 lines
910 B
Python

from setuptools import setup
package_name = 'saltybot_multi_person_tracker'
setup(
name=package_name,
version='0.1.0',
packages=[package_name],
data_files=[
('share/ament_index/resource_index/packages',
['resource/' + package_name]),
('share/' + package_name, ['package.xml']),
],
install_requires=['setuptools'],
zip_safe=True,
author='sl-perception',
author_email='sl-perception@saltylab.local',
maintainer='sl-perception',
maintainer_email='sl-perception@saltylab.local',
url='https://gitea.vayrette.com/seb/saltylab-firmware',
description='Multi-person tracker with group handling and target priority',
license='MIT',
tests_require=['pytest'],
entry_points={
'console_scripts': [
'multi_person_tracker_node = saltybot_multi_person_tracker.multi_person_tracker_node:main',
],
},
)