summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt5
-rw-r--r--ftnoir_tracker_pt/ftnoir_tracker_pt.cpp11
-rw-r--r--ftnoir_tracker_pt/point_extractor.cpp3
-rw-r--r--opentrack/main-settings.hpp2
4 files changed, 10 insertions, 11 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index ee0e932c..19fb2668 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -76,11 +76,8 @@ endif()
set_property(GLOBAL PROPERTY USE_FOLDERS OFF)
-# qt broken as usual
-set(EXTRA-MOCS opentrack/options.hpp)
-
macro(opentrack_module n dir)
- file(GLOB ${n}-c ${dir}/*.cpp ${dir}/*.c ${dir}/*.h ${dir}/*.hpp ${EXTRA-MOCS})
+ file(GLOB ${n}-c ${dir}/*.cpp ${dir}/*.c ${dir}/*.h ${dir}/*.hpp)
file(GLOB ${n}-res ${dir}/*.rc)
foreach(f ${n}-res)
set_source_files_properties(${f} PROPERTIES LANGUAGE RC)
diff --git a/ftnoir_tracker_pt/ftnoir_tracker_pt.cpp b/ftnoir_tracker_pt/ftnoir_tracker_pt.cpp
index 252a7456..8c478824 100644
--- a/ftnoir_tracker_pt/ftnoir_tracker_pt.cpp
+++ b/ftnoir_tracker_pt/ftnoir_tracker_pt.cpp
@@ -72,7 +72,7 @@ float Tracker_PT::get_focal_length()
const int w = info.res_x, h = info.res_y;
const double diag = sqrt(w * w + h * h)/w;
const double fov = 2.*atan(tan(diag_fov/2.0)/sqrt(1. + diag*diag));
- return w*.5 / tan(.5 * fov);
+ return .5 / tan(.5 * fov);
}
void Tracker_PT::run()
@@ -125,17 +125,18 @@ void Tracker_PT::run()
for (unsigned i = 0; i < points.size(); i++)
{
auto& p = points[i];
+ auto p2 = cv::Point(p[0] * frame.cols + frame.cols/2, -p[1] * frame.cols + frame.rows/2);
cv::Scalar color(0, 255, 0);
if (i == points.size()-1)
color = cv::Scalar(0, 0, 255);
cv::line(frame,
- cv::Point(p[0] - 20, p[1]),
- cv::Point(p[0] + 20, p[1]),
+ cv::Point(p2.x - 20, p2.y),
+ cv::Point(p2.x + 20, p2.y),
color,
4);
cv::line(frame,
- cv::Point(p[0], p[1] - 20),
- cv::Point(p[0], p[1] + 20),
+ cv::Point(p2.x, p2.y - 20),
+ cv::Point(p2.x, p2.y + 20),
color,
4);
}
diff --git a/ftnoir_tracker_pt/point_extractor.cpp b/ftnoir_tracker_pt/point_extractor.cpp
index cc9dbce1..e81e3aa0 100644
--- a/ftnoir_tracker_pt/point_extractor.cpp
+++ b/ftnoir_tracker_pt/point_extractor.cpp
@@ -211,7 +211,8 @@ std::vector<Vec2f> PointExtractor::extract_points(Mat& frame)
for (auto& b : simple_blob::merge(blobs))
{
auto pos = b.effective_pos();
- points.push_back(pos);
+ Vec2f p((pos[0] - W/2)/W, -(pos[1] - H/2)/W);
+ points.push_back(p);
}
vector<Mat> channels_;
diff --git a/opentrack/main-settings.hpp b/opentrack/main-settings.hpp
index 300c0561..96520fe9 100644
--- a/opentrack/main-settings.hpp
+++ b/opentrack/main-settings.hpp
@@ -37,7 +37,7 @@ struct main_settings : opts {
value<bool> center_at_startup, wizard_done;
main_settings() :
opts("opentrack-ui"),
- protocol_dll(b, "protocol-dll", ""),
+ protocol_dll(b, "protocol-dll", "freetrack 2.0 Enhanced"),
a_x(b, "x", TX),
a_y(b, "y", TY),
a_z(b, "z", TZ),