Commit graph

66 commits

Author SHA1 Message Date
Moses Turner a934bf4ae3 h/mercury: Bump the hand detection threshold up 2023-03-03 20:27:39 -06:00
Moshi Turner 85a701a4a0 cmake: Add XRT_MODULE_MERCURY_HANDTRACKING 2023-03-03 15:13:23 -06:00
Moses Turner 58399cd993 h/mercury: Remove duplicate include 2023-03-03 15:13:23 -06:00
Moses Turner c596b31327 h/mercury: Add interface header define 2023-03-03 15:07:45 -06:00
Mateo de Mayo 52cac31d3a xrt: Support more than two cameras in a SLAM sink 2023-03-01 19:43:06 +00:00
Moses Turner 3bfc87f76d (NFC) h/mercury: Fix typo 2023-02-16 17:03:17 -06:00
Moses Turner 8621acd899 d/ht, h/mercury: Use u_file_get_hand_tracking_models_dir
Needed for Windows SteamVR driver
2023-02-16 17:03:17 -06:00
Moses Turner 266aec20e1 (NFC) h/mercury: Random nit in if case 2023-02-16 17:01:12 -06:00
Moses Turner 79701d8567 h/mercury: Remove __builtin_expect on MSVC 2023-02-16 17:01:12 -06:00
Moses Turner 3155765aed h/mercury: IWYU hg_image_distorter 2023-02-16 17:00:48 -06:00
Moses Turner e9f79c45bf h/mercury: Update hand tracking with new half-artificial model 2023-02-04 15:23:04 -06:00
Moses Turner 86e31f54f3 xrt: Refactor t_camera_calibration to use a tagged union instead of a bare array
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2023-01-30 17:09:27 -06:00
Moses Turner 1bba34e944 xrt: Remove old_rgb hand tracking 2023-01-27 12:37:33 -06:00
Moses Turner 946141ce40 h/mercury: Remove kine_ccdik optimizer
Goodbye, sweet prince.
This was my first attempt at the "optimizer" piece of our optical hand tracking, and it *did work* dammit! It just wasn't anywhere near as flexible or efficient as Levenberg-Marquardt.
It's worse in every way to the `kine_lm` optimizer, and getting hard to maintain, so we're getting rid of it. Gone, but never forgotten.
2022-12-29 20:03:05 +00:00
Moses Turner 9af195fea3 h/mercury: Add faster SwingTwistToQuaternion 2022-11-23 13:02:35 -06:00
Jakob Bornecrantz 3a2dfd850c t/hand: Use U_TRACE_SET_THREAD_NAME 2022-11-20 14:36:37 +00:00
Jakob Bornecrantz d48de0d832 u/worker: Use U_TRACE_SET_THREAD_NAME 2022-11-20 13:52:38 +00:00
Moses Turner cb2c355ba6 t/hand: fix 90 degree rotation for hand detection 2022-11-15 01:58:41 +00:00
Ryan Pavlik a072af398c t/hand: Fix doxygen warnings 2022-11-09 03:47:44 +00:00
Mateo de Mayo 9d6c29397f misc: Fix multiple compile warnings in gcc and clang 2022-11-03 20:08:52 +00:00
Moses Turner f41596f176 h/mercury: Replace old detection model, and discard overlapping hands 2022-11-03 16:46:33 +00:00
Moses Turner b8a586175d a/util: Add header for box intersection over union 2022-11-03 16:46:33 +00:00
Moses Turner 0cd2f4f081 h/mercury: Fix data home 2022-11-02 22:35:27 +00:00
Moses Turner 32da562bc5 h/mercury: Remove really old keypoint estimator and NCNN stuff 2022-11-02 22:35:27 +00:00
Jan Schmidt fc3fbd6093 d/ht: Fix rotation/flipping of right hands
When dealing with rotated cameras, rotate them backward
to vertical, and then flip the right hand image in
the affine transform to get correct orientation of hands
for the keypoint estimator. Before, the left hand images
were being fed in upside down.
2022-10-10 23:50:58 +00:00
Jakob Bornecrantz 127a467efc h/mercury: Add missing break statement 2022-09-28 22:56:01 +00:00
Moses Turner 47714ed650 h/mercury: Add 2D model input and output visualizers 2022-09-22 13:22:55 -05:00
Moses Turner 812cc01104 h/mercury: Fix for blackbar in 180 degree orientation 2022-09-22 14:02:21 +01:00
Moses Turner d2e2c3a988 cmake: Run cmake-format.sh 2022-09-19 21:57:37 +01:00
Moses Turner 81764273ca h/mercury: Use much faster quaternion change of basis 2022-09-19 11:17:34 -05:00
Moses Turner a285294d7f h/mercury: Fix crop calculation for 180 degree rotations 2022-09-19 11:01:04 -05:00
Moses Turner e95d21586f h/mercury: Use camera orientation for keypoint model input 2022-09-15 21:36:37 -05:00
Jan Schmidt 1811951dd6 t/ht: Add support for camera orientation
Add a way to pass in extra information about camera views, this new
struct is merged with the old image boundary information struct.

Co-authored-by: Moses Turner <moses@collabora.com>
Co-authored-by: Jakob Bornecrantz <jakob@collabora.com>
2022-09-06 18:36:53 +01:00
danwillm 1dee288459 aux/util: Share joint width hand tracking function 2022-08-01 17:33:40 +00:00
Moses Turner c0eed827c5 xrt: Remove t_hand_tracking_output_space
LEFT_CAMERA is the only one that remained useful
2022-07-27 10:49:29 +00:00
Moses Turner a5c0f0b426 h/mercury: Fix debug log 2022-07-27 10:49:29 +00:00
Moses Turner 307e3ca1dc h/old_rgb: Fix regressions 2022-06-24 01:54:45 +01:00
Moses Turner 6f21741c51 xrt: Fixup - rename *all* of the relevant hand-tracking structs 2022-06-21 21:18:41 +01:00
Moses Turner 1718d01fb1 xrt: Rename some hand-tracking structs and document them better 2022-06-21 20:37:08 +01:00
Moses Turner 73dbc712ab h/mercury: Add Levenberg-Marquardt optimizer, and lots of fixes!
Co-authored-by: Charlton Rodda <charlton.rodda@collabora.com>
Co-authored-by: Ryan Pavlik <ryan.pavlik@collabora.com>
2022-06-20 16:33:48 +01:00
Moses Turner 8040224b39 xrt: add hand_tracking_image_boundary_info 2022-06-20 16:33:48 +01:00
Moses Turner 8729c0485e t/hand/async: Add simple pose-prediction 2022-06-18 21:51:09 +01:00
Moses Turner d7eece4cb5 h/mercury: Better naming 2022-06-15 17:34:41 +01:00
Moses Turner 8e3a47dd94 t/hand: Apply formatting 2022-06-15 17:34:41 +01:00
Ryan Pavlik d7d5af1972 t/ht: Fix include path for onnxruntime 2022-06-15 17:34:41 +01:00
Moses Turner 68d3e117d8 t/hand: Remove gstreamer dependency 2022-05-31 22:39:17 +01:00
Jakob Bornecrantz b41addbbe7 t/hand: Document and fix cond var loop 2022-05-31 13:38:56 +00:00
Moses Turner bbd6475da0 mercury: Better warn if we get bad aspect ratio 2022-05-25 20:53:46 +00:00
Moses Turner 96d3896664 t/hand/mercury: Initialize the frame timing widget correctly 2022-05-23 13:19:58 +00:00
Mateo de Mayo 7a0a142dba misc: Fix some uninitialized mutexes 2022-05-21 23:31:18 -03:00