Open brukew opened 1 week ago
Thank you, @brukew, for the updates. I have a few suggestions and points to address based on our previous discussions:
Reorganize Code Structure
Please re-organize your code by separating data structures from functionalities (what we refer to as tasks in Senselab).
Model Inclusion
The current approach of including a model within the source code (e.g., src/senselab/video/tasks/pose_estimation/models/pose_landmarker.task
) makes the package unnecessarily heavy. Instead, please ensure models are downloaded as needed. You can take inspiration from this example.
Documentation
Please add a dedicated documentation page:
Tutorial
Create a Jupyter Notebook tutorial to demonstrate:
video
folder in the tutorial/
directory.Failing Tests
I noticed two tests are failing:
test_valid_image_single_person
test_visualization_single_person
Nice, thank you for the feedback @fabiocat93. I will address your comments and ask questions as I go.
Description
Implemented Media Pipe pose estimation. Given an image path, will return a PoseSkeleton object with landmarks of each individual in the image.
Related Issue(s)
https://github.com/orgs/sensein/projects/45/views/3?pane=issue&itemId=82951656&issue=sensein%7Csenselab%7C173
Motivation and Context
This is the initial structure for pose estimation which is a valuable signal for behavior analysis. I will expand to more models and functionality, and with that, this will be more generalized.
How Has This Been Tested?
I tested with different kinds of images and attempts to access invalid properties of the PoseSkeleton object. Unit tests for the new functions + also manually tested for proper visualization.
Screenshots (if appropriate):
Types of changes
Created PoseSkeleton object that contains pose information for individuals in an image. Currently supports MediaPipe pose estimation + visualization functionality.
Checklist: