hand-tracking-teleop 0.1.0__tar.gz → 0.1.1__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of hand-tracking-teleop might be problematic. Click here for more details.
- hand_tracking_teleop-0.1.1/PKG-INFO +123 -0
- hand_tracking_teleop-0.1.1/README.md +80 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/pyproject.toml +1 -1
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/setup.py +1 -1
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/hand_tracking/__init__.py +1 -1
- hand_tracking_teleop-0.1.1/src/hand_tracking_teleop.egg-info/PKG-INFO +123 -0
- hand_tracking_teleop-0.1.0/PKG-INFO +0 -436
- hand_tracking_teleop-0.1.0/README.md +0 -393
- hand_tracking_teleop-0.1.0/src/hand_tracking_teleop.egg-info/PKG-INFO +0 -436
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/MANIFEST.in +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/build_and_publish.sh +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/config/calibrated_config.yaml +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/config/hand_tracking_config.yaml +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/config/robot_mapping_config.yaml +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/example_usage.py +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/requirements.txt +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/setup.cfg +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/hand_tracking/cli.py +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/hand_tracking/hand_detector.py +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/hand_tracking/visualizer_3d.py +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/hand_tracking/visualizer_combined.py +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/hand_tracking/visualizer_rerun.py +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/hand_tracking_teleop.egg-info/SOURCES.txt +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/hand_tracking_teleop.egg-info/dependency_links.txt +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/hand_tracking_teleop.egg-info/entry_points.txt +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/hand_tracking_teleop.egg-info/requires.txt +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/hand_tracking_teleop.egg-info/top_level.txt +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/mapping/__init__.py +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/mapping/kinematic_mapper.py +0 -0
- {hand_tracking_teleop-0.1.0 → hand_tracking_teleop-0.1.1}/src/robot_interface/dual_interface.py +0 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: hand_tracking_teleop
|
|
3
|
+
Version: 0.1.1
|
|
4
|
+
Summary: Hand tracking system for robot teleoperation using MediaPipe
|
|
5
|
+
Home-page: https://github.com/yourusername/hand_tracking_teleop
|
|
6
|
+
Author: Bruk Gebregziabher
|
|
7
|
+
Author-email: Bruk Gebregziabher <bruk@signalbotics.com>
|
|
8
|
+
License: MIT
|
|
9
|
+
Project-URL: Homepage, https://github.com/yourusername/hand_tracking_teleop
|
|
10
|
+
Project-URL: Documentation, https://github.com/yourusername/hand_tracking_teleop#readme
|
|
11
|
+
Project-URL: Repository, https://github.com/yourusername/hand_tracking_teleop
|
|
12
|
+
Project-URL: Bug Tracker, https://github.com/yourusername/hand_tracking_teleop/issues
|
|
13
|
+
Keywords: hand-tracking,teleoperation,robotics,mediapipe,computer-vision
|
|
14
|
+
Classifier: Development Status :: 3 - Alpha
|
|
15
|
+
Classifier: Intended Audience :: Science/Research
|
|
16
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
17
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
23
|
+
Requires-Python: >=3.8
|
|
24
|
+
Description-Content-Type: text/markdown
|
|
25
|
+
Requires-Dist: opencv-python>=4.5.0
|
|
26
|
+
Requires-Dist: mediapipe>=0.10.0
|
|
27
|
+
Requires-Dist: numpy>=1.20.0
|
|
28
|
+
Requires-Dist: pyyaml>=6.0
|
|
29
|
+
Provides-Extra: vis
|
|
30
|
+
Requires-Dist: matplotlib>=3.5.0; extra == "vis"
|
|
31
|
+
Provides-Extra: rerun
|
|
32
|
+
Requires-Dist: rerun-sdk>=0.18.0; extra == "rerun"
|
|
33
|
+
Provides-Extra: dev
|
|
34
|
+
Requires-Dist: pytest>=7.0; extra == "dev"
|
|
35
|
+
Requires-Dist: pytest-cov>=4.0; extra == "dev"
|
|
36
|
+
Requires-Dist: black>=23.0; extra == "dev"
|
|
37
|
+
Requires-Dist: flake8>=6.0; extra == "dev"
|
|
38
|
+
Requires-Dist: mypy>=1.0; extra == "dev"
|
|
39
|
+
Requires-Dist: isort>=5.0; extra == "dev"
|
|
40
|
+
Dynamic: author
|
|
41
|
+
Dynamic: home-page
|
|
42
|
+
Dynamic: requires-python
|
|
43
|
+
|
|
44
|
+
# Hand Tracking Teleop
|
|
45
|
+
|
|
46
|
+
Real-time hand tracking for robot teleoperation using MediaPipe.
|
|
47
|
+
|
|
48
|
+
## Features
|
|
49
|
+
|
|
50
|
+
- 21 hand landmarks per hand at 30fps
|
|
51
|
+
- Calibrated metric-space normalization
|
|
52
|
+
- Multiple visualization modes (2D, 3D, Rerun)
|
|
53
|
+
- Finger articulation tracking with curl detection
|
|
54
|
+
- Temporal smoothing for stable tracking
|
|
55
|
+
|
|
56
|
+
## Installation
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
pip install hand-tracking-teleop
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
With visualization support:
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
pip install hand-tracking-teleop[vis]
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Quick Start
|
|
69
|
+
|
|
70
|
+
### CLI
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
# Interactive mode (choose visualization)
|
|
74
|
+
hand-track
|
|
75
|
+
|
|
76
|
+
# Direct visualization modes
|
|
77
|
+
hand-track --mode 2d # OpenCV window
|
|
78
|
+
hand-track --mode 3d # Matplotlib 3D view
|
|
79
|
+
hand-track --mode rerun # Rerun viewer
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Python API
|
|
83
|
+
|
|
84
|
+
```python
|
|
85
|
+
from hand_tracking import HandDetector
|
|
86
|
+
|
|
87
|
+
detector = HandDetector()
|
|
88
|
+
|
|
89
|
+
# Run interactive visualization
|
|
90
|
+
detector.run_interactive(mode='3d')
|
|
91
|
+
|
|
92
|
+
# Or process frames manually
|
|
93
|
+
import cv2
|
|
94
|
+
cap = cv2.VideoCapture(0)
|
|
95
|
+
|
|
96
|
+
while True:
|
|
97
|
+
ret, frame = cap.read()
|
|
98
|
+
if not ret:
|
|
99
|
+
break
|
|
100
|
+
|
|
101
|
+
results = detector.detect(frame)
|
|
102
|
+
for hand in results:
|
|
103
|
+
print(f"Hand: {hand.handedness}, landmarks: {len(hand.landmarks)}")
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Controls
|
|
107
|
+
|
|
108
|
+
- **q**: Quit (2D view)
|
|
109
|
+
- **Mouse drag**: Rotate 3D view
|
|
110
|
+
- **Scroll**: Zoom
|
|
111
|
+
- **Right-click drag**: Pan
|
|
112
|
+
|
|
113
|
+
## Documentation
|
|
114
|
+
|
|
115
|
+
- [Installation Guide](INSTALL.md) - Detailed setup instructions
|
|
116
|
+
- [3D Visualization Quick Start](QUICKSTART_3D.md) - Get started with 3D views
|
|
117
|
+
- [Visualization Guide](VISUALIZATION_GUIDE.md) - All visualization options
|
|
118
|
+
- [Technical Details](TECHNICAL.md) - Mathematical framework and coordinate mapping
|
|
119
|
+
- [Roadmap](ROADMAP.md) - Future development plans
|
|
120
|
+
|
|
121
|
+
## License
|
|
122
|
+
|
|
123
|
+
Apache 2.0
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# Hand Tracking Teleop
|
|
2
|
+
|
|
3
|
+
Real-time hand tracking for robot teleoperation using MediaPipe.
|
|
4
|
+
|
|
5
|
+
## Features
|
|
6
|
+
|
|
7
|
+
- 21 hand landmarks per hand at 30fps
|
|
8
|
+
- Calibrated metric-space normalization
|
|
9
|
+
- Multiple visualization modes (2D, 3D, Rerun)
|
|
10
|
+
- Finger articulation tracking with curl detection
|
|
11
|
+
- Temporal smoothing for stable tracking
|
|
12
|
+
|
|
13
|
+
## Installation
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
pip install hand-tracking-teleop
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
With visualization support:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
pip install hand-tracking-teleop[vis]
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## Quick Start
|
|
26
|
+
|
|
27
|
+
### CLI
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
# Interactive mode (choose visualization)
|
|
31
|
+
hand-track
|
|
32
|
+
|
|
33
|
+
# Direct visualization modes
|
|
34
|
+
hand-track --mode 2d # OpenCV window
|
|
35
|
+
hand-track --mode 3d # Matplotlib 3D view
|
|
36
|
+
hand-track --mode rerun # Rerun viewer
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
### Python API
|
|
40
|
+
|
|
41
|
+
```python
|
|
42
|
+
from hand_tracking import HandDetector
|
|
43
|
+
|
|
44
|
+
detector = HandDetector()
|
|
45
|
+
|
|
46
|
+
# Run interactive visualization
|
|
47
|
+
detector.run_interactive(mode='3d')
|
|
48
|
+
|
|
49
|
+
# Or process frames manually
|
|
50
|
+
import cv2
|
|
51
|
+
cap = cv2.VideoCapture(0)
|
|
52
|
+
|
|
53
|
+
while True:
|
|
54
|
+
ret, frame = cap.read()
|
|
55
|
+
if not ret:
|
|
56
|
+
break
|
|
57
|
+
|
|
58
|
+
results = detector.detect(frame)
|
|
59
|
+
for hand in results:
|
|
60
|
+
print(f"Hand: {hand.handedness}, landmarks: {len(hand.landmarks)}")
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
## Controls
|
|
64
|
+
|
|
65
|
+
- **q**: Quit (2D view)
|
|
66
|
+
- **Mouse drag**: Rotate 3D view
|
|
67
|
+
- **Scroll**: Zoom
|
|
68
|
+
- **Right-click drag**: Pan
|
|
69
|
+
|
|
70
|
+
## Documentation
|
|
71
|
+
|
|
72
|
+
- [Installation Guide](INSTALL.md) - Detailed setup instructions
|
|
73
|
+
- [3D Visualization Quick Start](QUICKSTART_3D.md) - Get started with 3D views
|
|
74
|
+
- [Visualization Guide](VISUALIZATION_GUIDE.md) - All visualization options
|
|
75
|
+
- [Technical Details](TECHNICAL.md) - Mathematical framework and coordinate mapping
|
|
76
|
+
- [Roadmap](ROADMAP.md) - Future development plans
|
|
77
|
+
|
|
78
|
+
## License
|
|
79
|
+
|
|
80
|
+
Apache 2.0
|
|
@@ -15,7 +15,7 @@ with open('requirements.txt') as f:
|
|
|
15
15
|
|
|
16
16
|
setup(
|
|
17
17
|
name="hand_tracking_teleop",
|
|
18
|
-
version="0.1.
|
|
18
|
+
version="0.1.1",
|
|
19
19
|
author="Bruk Gebregziabher",
|
|
20
20
|
author_email="bruk@signalbotics.com",
|
|
21
21
|
description="Hand tracking system for robot teleoperation using MediaPipe",
|
|
@@ -4,7 +4,7 @@ This package provides real-time hand tracking using MediaPipe with
|
|
|
4
4
|
scale-invariant 3D coordinate normalization for robust robot control.
|
|
5
5
|
"""
|
|
6
6
|
|
|
7
|
-
__version__ = "0.1.
|
|
7
|
+
__version__ = "0.1.1"
|
|
8
8
|
__author__ = "Bruk Gebregziabher"
|
|
9
9
|
__email__ = "bruk@signalbotics.com"
|
|
10
10
|
|
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: hand_tracking_teleop
|
|
3
|
+
Version: 0.1.1
|
|
4
|
+
Summary: Hand tracking system for robot teleoperation using MediaPipe
|
|
5
|
+
Home-page: https://github.com/yourusername/hand_tracking_teleop
|
|
6
|
+
Author: Bruk Gebregziabher
|
|
7
|
+
Author-email: Bruk Gebregziabher <bruk@signalbotics.com>
|
|
8
|
+
License: MIT
|
|
9
|
+
Project-URL: Homepage, https://github.com/yourusername/hand_tracking_teleop
|
|
10
|
+
Project-URL: Documentation, https://github.com/yourusername/hand_tracking_teleop#readme
|
|
11
|
+
Project-URL: Repository, https://github.com/yourusername/hand_tracking_teleop
|
|
12
|
+
Project-URL: Bug Tracker, https://github.com/yourusername/hand_tracking_teleop/issues
|
|
13
|
+
Keywords: hand-tracking,teleoperation,robotics,mediapipe,computer-vision
|
|
14
|
+
Classifier: Development Status :: 3 - Alpha
|
|
15
|
+
Classifier: Intended Audience :: Science/Research
|
|
16
|
+
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
17
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
18
|
+
Classifier: Programming Language :: Python :: 3
|
|
19
|
+
Classifier: Programming Language :: Python :: 3.8
|
|
20
|
+
Classifier: Programming Language :: Python :: 3.9
|
|
21
|
+
Classifier: Programming Language :: Python :: 3.10
|
|
22
|
+
Classifier: Programming Language :: Python :: 3.11
|
|
23
|
+
Requires-Python: >=3.8
|
|
24
|
+
Description-Content-Type: text/markdown
|
|
25
|
+
Requires-Dist: opencv-python>=4.5.0
|
|
26
|
+
Requires-Dist: mediapipe>=0.10.0
|
|
27
|
+
Requires-Dist: numpy>=1.20.0
|
|
28
|
+
Requires-Dist: pyyaml>=6.0
|
|
29
|
+
Provides-Extra: vis
|
|
30
|
+
Requires-Dist: matplotlib>=3.5.0; extra == "vis"
|
|
31
|
+
Provides-Extra: rerun
|
|
32
|
+
Requires-Dist: rerun-sdk>=0.18.0; extra == "rerun"
|
|
33
|
+
Provides-Extra: dev
|
|
34
|
+
Requires-Dist: pytest>=7.0; extra == "dev"
|
|
35
|
+
Requires-Dist: pytest-cov>=4.0; extra == "dev"
|
|
36
|
+
Requires-Dist: black>=23.0; extra == "dev"
|
|
37
|
+
Requires-Dist: flake8>=6.0; extra == "dev"
|
|
38
|
+
Requires-Dist: mypy>=1.0; extra == "dev"
|
|
39
|
+
Requires-Dist: isort>=5.0; extra == "dev"
|
|
40
|
+
Dynamic: author
|
|
41
|
+
Dynamic: home-page
|
|
42
|
+
Dynamic: requires-python
|
|
43
|
+
|
|
44
|
+
# Hand Tracking Teleop
|
|
45
|
+
|
|
46
|
+
Real-time hand tracking for robot teleoperation using MediaPipe.
|
|
47
|
+
|
|
48
|
+
## Features
|
|
49
|
+
|
|
50
|
+
- 21 hand landmarks per hand at 30fps
|
|
51
|
+
- Calibrated metric-space normalization
|
|
52
|
+
- Multiple visualization modes (2D, 3D, Rerun)
|
|
53
|
+
- Finger articulation tracking with curl detection
|
|
54
|
+
- Temporal smoothing for stable tracking
|
|
55
|
+
|
|
56
|
+
## Installation
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
pip install hand-tracking-teleop
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
With visualization support:
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
pip install hand-tracking-teleop[vis]
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
## Quick Start
|
|
69
|
+
|
|
70
|
+
### CLI
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
# Interactive mode (choose visualization)
|
|
74
|
+
hand-track
|
|
75
|
+
|
|
76
|
+
# Direct visualization modes
|
|
77
|
+
hand-track --mode 2d # OpenCV window
|
|
78
|
+
hand-track --mode 3d # Matplotlib 3D view
|
|
79
|
+
hand-track --mode rerun # Rerun viewer
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Python API
|
|
83
|
+
|
|
84
|
+
```python
|
|
85
|
+
from hand_tracking import HandDetector
|
|
86
|
+
|
|
87
|
+
detector = HandDetector()
|
|
88
|
+
|
|
89
|
+
# Run interactive visualization
|
|
90
|
+
detector.run_interactive(mode='3d')
|
|
91
|
+
|
|
92
|
+
# Or process frames manually
|
|
93
|
+
import cv2
|
|
94
|
+
cap = cv2.VideoCapture(0)
|
|
95
|
+
|
|
96
|
+
while True:
|
|
97
|
+
ret, frame = cap.read()
|
|
98
|
+
if not ret:
|
|
99
|
+
break
|
|
100
|
+
|
|
101
|
+
results = detector.detect(frame)
|
|
102
|
+
for hand in results:
|
|
103
|
+
print(f"Hand: {hand.handedness}, landmarks: {len(hand.landmarks)}")
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Controls
|
|
107
|
+
|
|
108
|
+
- **q**: Quit (2D view)
|
|
109
|
+
- **Mouse drag**: Rotate 3D view
|
|
110
|
+
- **Scroll**: Zoom
|
|
111
|
+
- **Right-click drag**: Pan
|
|
112
|
+
|
|
113
|
+
## Documentation
|
|
114
|
+
|
|
115
|
+
- [Installation Guide](INSTALL.md) - Detailed setup instructions
|
|
116
|
+
- [3D Visualization Quick Start](QUICKSTART_3D.md) - Get started with 3D views
|
|
117
|
+
- [Visualization Guide](VISUALIZATION_GUIDE.md) - All visualization options
|
|
118
|
+
- [Technical Details](TECHNICAL.md) - Mathematical framework and coordinate mapping
|
|
119
|
+
- [Roadmap](ROADMAP.md) - Future development plans
|
|
120
|
+
|
|
121
|
+
## License
|
|
122
|
+
|
|
123
|
+
Apache 2.0
|