|
Monado OpenXR Runtime
|
Mercury main header! More...
#include "hg_interface.h"#include "hg_debug_instrumentation.hpp"#include "tracking/t_hand_tracking.h"#include "tracking/t_camera_models.h"#include "xrt/xrt_defines.h"#include "xrt/xrt_frame.h"#include "xrt/xrt_tracking.h"#include "math/m_api.h"#include "math/m_vec2.h"#include "math/m_vec3.h"#include "math/m_mathinclude.h"#include "math/m_eigen_interop.hpp"#include "util/u_frame_times_widget.h"#include "util/u_logging.h"#include "util/u_sink.h"#include "util/u_template_historybuf.hpp"#include "util/u_worker.h"#include "util/u_trace_marker.h"#include "util/u_debug.h"#include "util/u_frame.h"#include "util/u_var.h"#include <assert.h>#include <stdio.h>#include <stdlib.h>#include <string.h>#include <stdint.h>#include <opencv2/opencv.hpp>#include <onnxruntime_c_api.h>#include "kine_common.hpp"#include "kine_lm/lm_interface.hpp"
Go to the source code of this file.
Data Structures | |
| struct | xrt::tracking::hand::mercury::Hand3D |
| struct | xrt::tracking::hand::mercury::projection_instructions |
| struct | xrt::tracking::hand::mercury::model_input_wrap |
| struct | xrt::tracking::hand::mercury::onnx_wrap |
| struct | xrt::tracking::hand::mercury::hand_region_of_interest |
| struct | xrt::tracking::hand::mercury::hand_detection_run_info |
| struct | xrt::tracking::hand::mercury::keypoint_estimation_run_info |
| struct | xrt::tracking::hand::mercury::ht_view |
| struct | xrt::tracking::hand::mercury::hand_size_refinement |
| struct | xrt::tracking::hand::mercury::model_output_visualizers |
| struct | xrt::tracking::hand::mercury::HandTracking |
| Main class of Mercury hand tracking. More... | |
Macros | |
| #define | HG_TRACE(hgt, ...) U_LOG_IFL_T(hgt->log_level, __VA_ARGS__) |
| #define | HG_DEBUG(hgt, ...) U_LOG_IFL_D(hgt->log_level, __VA_ARGS__) |
| #define | HG_INFO(hgt, ...) U_LOG_IFL_I(hgt->log_level, __VA_ARGS__) |
| #define | HG_WARN(hgt, ...) U_LOG_IFL_W(hgt->log_level, __VA_ARGS__) |
| #define | HG_ERROR(hgt, ...) U_LOG_IFL_E(hgt->log_level, __VA_ARGS__) |
Typedefs | |
| using | xrt::tracking::hand::mercury::hand21_2d = std::array< vec2_5, 21 > |
Enumerations | |
| enum | ROIProvenance { HAND_DETECTION , POSE_PREDICTION } |
Functions | |
| static const cv::Scalar | xrt::tracking::hand::mercury::RED (255, 30, 30) |
| static const cv::Scalar | xrt::tracking::hand::mercury::YELLOW (255, 255, 0) |
| static const cv::Scalar | xrt::tracking::hand::mercury::PINK (255, 0, 255) |
| static const cv::Scalar | xrt::tracking::hand::mercury::GREEN (0, 255, 0) |
| void | xrt::tracking::hand::mercury::init_hand_detection (HandTracking *hgt, onnx_wrap *wrap) |
| void | xrt::tracking::hand::mercury::run_hand_detection (void *ptr) |
| void | xrt::tracking::hand::mercury::init_keypoint_estimation (HandTracking *hgt, onnx_wrap *wrap) |
| void | xrt::tracking::hand::mercury::run_keypoint_estimation (void *ptr) |
| void | xrt::tracking::hand::mercury::release_onnx_wrap (onnx_wrap *wrap) |
| void | xrt::tracking::hand::mercury::make_projection_instructions (t_camera_model_params &dist, bool flip_after, float expand_val, float twist, Eigen::Array< float, 3, 21 > &joints, projection_instructions &out_instructions, hand21_2d &out_hand) |
| void | xrt::tracking::hand::mercury::make_projection_instructions_angular (xrt_vec3 direction_3d, bool flip_after, float angular_radius, float expand_val, float twist, projection_instructions &out_instructions) |
| void | xrt::tracking::hand::mercury::stereographic_project_image (const t_camera_model_params &dist, const projection_instructions &instructions, cv::Mat &input_image, cv::Mat *debug_image, const cv::Scalar boundary_color, cv::Mat &out) |
Variables | |
| static constexpr uint16_t | xrt::tracking::hand::mercury::kDetectionInputSize = 160 |
| static constexpr uint16_t | xrt::tracking::hand::mercury::kKeypointInputSize = 128 |
| static constexpr uint16_t | xrt::tracking::hand::mercury::kKeypointOutputHeatmapSize = 22 |
| static constexpr uint16_t | xrt::tracking::hand::mercury::kVisSpacerSize = 8 |
| static const cv::Scalar | xrt::tracking::hand::mercury::colors [2] = {YELLOW, RED} |
| constexpr enum xrt_hand_joint | xrt::tracking::hand::mercury::joints_5x5_to_26 [5][5] |
Mercury main header!
| void xrt::tracking::hand::mercury::make_projection_instructions | ( | t_camera_model_params & | dist, |
| bool | flip_after, | ||
| float | expand_val, | ||
| float | twist, | ||
| Eigen::Array< float, 3, 21 > & | joints, | ||
| projection_instructions & | out_instructions, | ||
| hand21_2d & | out_hand | ||
| ) |
References xrt::tracking::hand::mercury::make_projection_instructions().
Referenced by xrt::tracking::hand::mercury::make_projection_instructions().
| void xrt::tracking::hand::mercury::run_keypoint_estimation | ( | void * | ptr | ) |
References xrt::tracking::hand::mercury::run_keypoint_estimation().
Referenced by xrt::tracking::hand::mercury::run_keypoint_estimation().