diff options
Diffstat (limited to 'ftnoir_tracker_ht/ftnoir_tracker_ht.cpp')
| -rw-r--r-- | ftnoir_tracker_ht/ftnoir_tracker_ht.cpp | 23 |
1 files changed, 9 insertions, 14 deletions
diff --git a/ftnoir_tracker_ht/ftnoir_tracker_ht.cpp b/ftnoir_tracker_ht/ftnoir_tracker_ht.cpp index ab726aa1..00dd9919 100644 --- a/ftnoir_tracker_ht/ftnoir_tracker_ht.cpp +++ b/ftnoir_tracker_ht/ftnoir_tracker_ht.cpp @@ -97,28 +97,28 @@ static void load_settings(ht_config_t* config, Tracker* tracker) iniFile.beginGroup( "HT-Tracker" ); config->classification_delay = 500; config->field_of_view = iniFile.value("fov", 52).toFloat(); - config->pyrlk_pyramids = 2; + config->pyrlk_pyramids = 0; config->pyrlk_win_size_w = config->pyrlk_win_size_h = 21; - config->max_keypoints = 300; - config->keypoint_distance = 4.3; + config->max_keypoints = 400; + config->keypoint_distance = 3.3; //config->force_width = 640; //config->force_height = 480; config->force_fps = iniFile.value("fps", 0).toInt(); config->camera_index = iniFile.value("camera-index", -1).toInt(); config->ransac_num_iters = 100; - config->ransac_max_reprojection_error = 6.5; - config->ransac_max_inlier_error = 6.5; + config->ransac_max_reprojection_error = 7.2; + config->ransac_max_inlier_error = 7.2; config->ransac_abs_max_mean_error = 15; - config->ransac_max_mean_error = 4.5; + config->ransac_max_mean_error = 5.0; config->debug = 0; - config->ransac_min_features = 0.76; + config->ransac_min_features = 0.78; int res = iniFile.value("resolution", 0).toInt(); if (res < 0 || res >= (int)(sizeof(resolution_choices) / sizeof(resolution_tuple))) res = 0; resolution_tuple r = resolution_choices[res]; config->force_width = r.width; config->force_height = r.height; - config->flandmark_delay = 250; + config->flandmark_delay = 325; qDebug() << "width" << r.width << "height" << r.height; if (tracker) { @@ -186,10 +186,8 @@ void Tracker::StartTracker(QFrame* videoframe) #endif } -bool Tracker::GiveHeadPoseData(double *data) +void Tracker::GetHeadPoseData(double *data) { - bool ret = false; - lck_shm.lock(); shm->timer = 0; if (shm->frame.width > 0) @@ -213,7 +211,6 @@ bool Tracker::GiveHeadPoseData(double *data) data[TY] = shm->result.ty; if (enableTZ) data[TZ] = shm->result.tz; - ret = true; if (fabs(data[Yaw]) > 60 || fabs(data[Pitch]) > 50 || fabs(data[Roll]) > 40) { shm->pause = true; @@ -222,8 +219,6 @@ bool Tracker::GiveHeadPoseData(double *data) shm->pause = false; } lck_shm.unlock(); - - return ret; } //----------------------------------------------------------------------------- |
