1
0
forked from HQU-gxy/CVTH3PE
Commit Graph

10 Commits

Author SHA1 Message Date
072bf1c46f feat: Integrate pyrsistent for enhanced tracking state management
- Added `pyrsistent` as a dependency to manage historical detections in the `Tracking` class, improving data integrity and immutability.
- Updated the `GlobalTrackingState` to include historical detections using `PVector`, facilitating better tracking of past detections.
- Introduced a new `update_tracking` function to handle timestamp updates for tracking objects, enhancing the tracking logic.
- Refactored imports and type hints for improved organization and clarity across the codebase.
2025-04-30 10:04:39 +08:00
29ca66ad47 refactor: Update affinity matrix calculation and dependencies
- Replaced the `linear_sum_assignment` import from `scipy.optimize` with `hungarian_algorithm` from `optax` to enhance performance in affinity matrix calculations.
- Introduced a new `AffinityResult` class to encapsulate results of affinity computations, including trackings and detections, improving the structure of the affinity calculation process.
- Removed deprecated functions and debug print statements to streamline the codebase.
- Updated `pyproject.toml` and `uv.lock` to include `optax` as a dependency, ensuring compatibility with the new implementation.
- Refactored imports and type hints for better organization and consistency across the codebase.
2025-04-29 15:45:24 +08:00
487dd4e237 feat: Add hypothesis testing and update dependencies
- Added property-based tests for camera affinity calculations using Hypothesis, enhancing test coverage and reliability.
- Updated `.gitignore` to include `.hypothesis` directory.
- Added `hypothesis` and `pytest` as dependencies in `pyproject.toml` and `uv.lock` for improved testing capabilities.
- Refactored imports in `playground.py` to include `Sequence` and `Mapping` from `beartype.typing`.
- Introduced a new test file `tests/test_affinity.py` for structured testing of affinity calculations.
2025-04-28 18:21:08 +08:00
2e63a3f9bf feat: Migrate play notebook to Python script and update dependencies
- Removed the `play.ipynb` notebook and created a new `playground.py` script to enhance code organization and maintainability.
- Updated `pyproject.toml` to include `jupytext` for Jupyter notebook conversion support.
- Added instructions in `README.md` for converting notebooks using Jupytext.
- Enhanced the `uv.lock` file to reflect the new dependency on Jupytext.
2025-04-25 17:25:56 +08:00
3cc93e5eae feat: Enhance play notebook with new data structures and visualization utilities
- Added new TypedDict classes for camera parameters, including Resolution, Intrinsic, and Extrinsic.
- Updated dataset reading logic to accommodate new camera parameters structure.
- Introduced functions for reading datasets by port and visualizing whole body keypoints.
- Improved the affinity matrix calculation logic in the camera module.
- Updated dependencies in pyproject.toml to include Plotly and SciPy for enhanced functionality.
2025-04-16 18:53:05 +08:00
92477b18d2 feat: Enhance camera module with new data structures and utility functions
- Introduced dataclass structures for CameraParams and Camera to improve type safety and clarity.
- Added Detection dataclass to encapsulate detection data, including keypoints and timestamps.
- Implemented classify_by_camera function to organize detections by camera.
- Added utility functions for converting points to homogeneous coordinates and calculating distances to lines.
- Updated dependencies in pyproject.toml to include new libraries for enhanced functionality.
2025-04-15 10:20:49 +08:00
3ce5b564bf feat: Add beartype for runtime type checking and update dependencies
- Add beartype dependency to pyproject.toml and uv.lock
- Replace typeguard with beartype in type checking
- Create camera module with type-safe camera parameter definitions
- Migrate utility function to use beartype and JAX numpy
2025-03-06 18:35:43 +08:00
39da7992d4 feat: Add CVXOPT solver infrastructure and VSCode settings
- Add CVXOPT dependency to pyproject.toml and uv.lock
- Create solver module with GLPK-based integer linear programming solver
- Add VSCode Python analysis settings
- Implement matrix and sparse matrix wrappers for CVXOPT
- Add GLPK solver wrapper with type-safe interfaces
2025-03-03 17:27:42 +08:00
f0f71f7f81 x 2025-03-03 12:03:37 +08:00
8feec345b9 init 2025-03-03 11:14:21 +08:00