summaryrefslogtreecommitdiffhomepage
path: root/tracker-neuralnet/ftnoir_tracker_neuralnet.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tracker-neuralnet/ftnoir_tracker_neuralnet.cpp')
-rw-r--r--tracker-neuralnet/ftnoir_tracker_neuralnet.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/tracker-neuralnet/ftnoir_tracker_neuralnet.cpp b/tracker-neuralnet/ftnoir_tracker_neuralnet.cpp
index e9a490fa..d8077326 100644
--- a/tracker-neuralnet/ftnoir_tracker_neuralnet.cpp
+++ b/tracker-neuralnet/ftnoir_tracker_neuralnet.cpp
@@ -353,7 +353,7 @@ bool NeuralNetTracker::detect()
last_pose_affine_ = pose_affine;
}
- draw_gizmos(*face, last_pose_affine_);
+ draw_gizmos(*face, pose_affine);
return true;
}
@@ -652,12 +652,16 @@ void NeuralNetTracker::update_fps(double dt)
void NeuralNetTracker::data(double *data)
{
- Affine tmp = [&]()
+ auto tmp2 = [&]()
{
QMutexLocker lck(&mtx_);
return last_pose_affine_;
}();
+ if (!tmp2)
+ return;
+ const auto& tmp = *tmp2;
+
const auto& mx = tmp.R.col(0);
const auto& my = tmp.R.col(1);
const auto& mz = -tmp.R.col(2);
@@ -682,7 +686,7 @@ void NeuralNetTracker::data(double *data)
Affine NeuralNetTracker::pose()
{
QMutexLocker lck(&mtx_);
- return last_pose_affine_;
+ return last_pose_affine_ ? *last_pose_affine_ : Affine{};
}
std::tuple<cv::Size,double, double> NeuralNetTracker::stats() const