summaryrefslogtreecommitdiffhomepage
path: root/ftnoir_tracker_aruco/ftnoir_tracker_aruco.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'ftnoir_tracker_aruco/ftnoir_tracker_aruco.cpp')
-rw-r--r--ftnoir_tracker_aruco/ftnoir_tracker_aruco.cpp17
1 files changed, 8 insertions, 9 deletions
diff --git a/ftnoir_tracker_aruco/ftnoir_tracker_aruco.cpp b/ftnoir_tracker_aruco/ftnoir_tracker_aruco.cpp
index d068564d..d5ed9071 100644
--- a/ftnoir_tracker_aruco/ftnoir_tracker_aruco.cpp
+++ b/ftnoir_tracker_aruco/ftnoir_tracker_aruco.cpp
@@ -187,8 +187,10 @@ start:
aruco::MarkerDetector detector;
detector.setDesiredSpeed(3);
- detector.setThresholdParams(11, 5);
- cv::Mat color, color_, grayscale, grayscale2, rvec, tvec;
+ detector.setMinMaxSize(0.06, 0.4);
+ detector.setThresholdParams(11, 7);
+
+ cv::Mat color, color_, grayscale, rvec, tvec;
if (!camera->isOpened())
{
@@ -203,11 +205,11 @@ start:
auto freq = cv::getTickFrequency();
auto last_time = cv::getTickCount();
auto prev_time = last_time;
+ double last_delay = -1;
int fps = 0;
int last_fps = 0;
double error = 0;
std::vector<cv::Point2f> reprojection;
- auto kernel = cv::createGaussianFilter(CV_8U, cv::Size(5, 5), 0);
cv::Point2f last_centroid;
while (!stop)
{
@@ -218,12 +220,9 @@ start:
}
if (!camera->read(color_))
continue;
+ auto tm = cv::getTickCount();
color_.copyTo(color);
- cv::cvtColor(color, grayscale2, cv::COLOR_BGR2GRAY);
- if (grayscale.empty())
- grayscale = grayscale2.clone();
-
- kernel->apply(grayscale2, grayscale);
+ cv::cvtColor(color, grayscale, cv::COLOR_BGR2GRAY);
const int scale = frame.cols > 480 ? 2 : 1;
@@ -276,7 +275,7 @@ start:
std::sprintf(buf, "Hz: %ld", last_fps);
cv::putText(frame, buf, cv::Point(10, 32), cv::FONT_HERSHEY_PLAIN, scale, cv::Scalar(0, 255, 0), scale);
- std::sprintf(buf, "Delay: %ld ms", (long) (1000 * (time - prev_time) / freq));
+ std::sprintf(buf, "Jiffies: %ld", (long) (10000 * (time - tm) / freq));
cv::putText(frame, buf, cv::Point(10, 54), cv::FONT_HERSHEY_PLAIN, scale, cv::Scalar(80, 255, 0), scale);
std::sprintf(buf, "Error: %f px", error);
cv::putText(frame, buf, cv::Point(10, 76), cv::FONT_HERSHEY_PLAIN, scale, cv::Scalar(80, 255, 0), scale);