You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I am posting this here to use as a quick point of entry for understanding how new landmark tracking tools can be integrated into the workflow. An important part of the next stage of development is expanding the options for tracking. MMpose and DeepLabCut both strike me as good projects to explore integrating.
Basics of the Tracker
Trackers must inherit from the Tracker abstract base class defined here:
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Purpose of this Post
I am posting this here to use as a quick point of entry for understanding how new landmark tracking tools can be integrated into the workflow. An important part of the next stage of development is expanding the options for tracking. MMpose and DeepLabCut both strike me as good projects to explore integrating.
Basics of the Tracker
Trackers must inherit from the Tracker abstract base class defined here:
https://github.com/mprib/pyxy3d/blob/e8608bca3fed9de39147af8149d70f900aecf905/pyxy3d/interface.py#L47
There are four properties/methods that must be included in the tracker. They are:
name(self)->str
get_points(self, frame: np.ndarray, port:int, rotation_count:int) -> PointPacket
get_point_name(self, point_id:int) -> str
draw_instructions(self, point_id:int) ->dict
Some optional methods area also defined here and can be ignored.
If you would like to see a few examples of how these are implemented with various flavors of Mediapipe, you can look here:
Hands: https://github.com/mprib/pyxy3d/blob/main/pyxy3d/trackers/hand_tracker.py
Pose: https://github.com/mprib/pyxy3d/blob/main/pyxy3d/trackers/pose_tracker.py
Holisitic: https://github.com/mprib/pyxy3d/blob/main/pyxy3d/trackers/holistic_tracker.py
Integrating a new tracker
The list of trackers that can be used is stored within a
TrackerEnum
:https://github.com/mprib/pyxy3d/blob/main/pyxy3d/trackers/tracker_enum.py
By adding a newly defined tracker to this Enum, it becomes an option in the drop down GUI and will slot into the rest of the workflow.
Beta Was this translation helpful? Give feedback.
All reactions