depthai
depthai copied to clipboard
Hand tracker component
Started integrating @geaxgx's depthai-hand-tracker into the SDK.
TODO:
- [ ] Move
HandTrackerRendererlogic into SDK's Visualizer - [ ] Support 3D hand landmarks (calculation & visualization)
- [ ] Support body pre-focusing
- [ ] Code cleanup
- [ ] Support different model sizes (hand landmarks: lite/full/sparse, perhaps palm_detection_192x192)
Demo
https://github.com/luxonis/depthai/assets/18037362/8d035b2b-2e0f-4f52-8bcf-56a094f62f6f
Code example
from depthai_sdk import OakCamera
from depthai_sdk.components.hand_tracker.renderer import HandTrackerRenderer
from depthai_sdk.classes.packets import HandTrackerPacket
import cv2
with OakCamera() as oak:
color = oak.create_camera('color')
handtracker = oak.create_hand_tracker(color)
render = HandTrackerRenderer(handtracker)
def cb(packet: HandTrackerPacket):
render.draw(packet.color_frame, packet.hands)
cv2.imshow("Hand tracking", render.frame)
oak.callback(handtracker, cb)
oak.visualize(handtracker.out.palm_detection)
oak.visualize(handtracker.out.palm_crop)
# oak.show_graph()
oak.start(blocking=True)