diff options
author | Stanislaw Halik <sthalik@misaki.pl> | 2014-01-12 18:23:21 +0100 |
---|---|---|
committer | Stanislaw Halik <sthalik@misaki.pl> | 2014-01-12 18:23:21 +0100 |
commit | d471aba741dc9e3c70c919820e36a2613590d723 (patch) | |
tree | 695f5dcf2f87bcd3103943fb1b3086d00b7f0999 /FTNoIR_Tracker_PT | |
parent | 6d6d15e1b328ec5c0469f8bc142848715b1491e8 (diff) |
correct focal length equation
Diffstat (limited to 'FTNoIR_Tracker_PT')
-rw-r--r-- | FTNoIR_Tracker_PT/point_tracker.cpp | 4 | ||||
-rw-r--r-- | FTNoIR_Tracker_PT/point_tracker.h | 4 |
2 files changed, 4 insertions, 4 deletions
diff --git a/FTNoIR_Tracker_PT/point_tracker.cpp b/FTNoIR_Tracker_PT/point_tracker.cpp index 96d9d972..885b327a 100644 --- a/FTNoIR_Tracker_PT/point_tracker.cpp +++ b/FTNoIR_Tracker_PT/point_tracker.cpp @@ -250,8 +250,8 @@ void PointTracker::POSIT(float fov, int w, int h) const float HT_PI = 3.1415926535;
- const float focal_length_w = 0.5 * w / tan(fov * HT_PI / 180);
- const float focal_length_h = 0.5 * h / tan(fov * h / w * HT_PI / 180.0);
+ const float focal_length_w = 0.5 * w / tan(0.5 * fov * HT_PI / 180);
+ const float focal_length_h = 0.5 * h / tan(0.5 * fov * h / w * HT_PI / 180.0);
cv::Mat intrinsics = cv::Mat::eye(3, 3, CV_32FC1);
intrinsics.at<float> (0, 0) = focal_length_w;
diff --git a/FTNoIR_Tracker_PT/point_tracker.h b/FTNoIR_Tracker_PT/point_tracker.h index 741d5af4..69eb9bba 100644 --- a/FTNoIR_Tracker_PT/point_tracker.h +++ b/FTNoIR_Tracker_PT/point_tracker.h @@ -104,8 +104,8 @@ protected: if (!rvec.empty() && !tvec.empty() && fov > 0)
{
const float HT_PI = 3.1415926535;
- const float focal_length_w = 0.5 * w / tan(fov * HT_PI / 180);
- const float focal_length_h = 0.5 * h / tan(fov * h / w * HT_PI / 180.0);
+ const float focal_length_w = 0.5 * w / tan(0.5 * fov * HT_PI / 180);
+ const float focal_length_h = 0.5 * h / tan(0.5 * fov * h / w * HT_PI / 180.0);
cv::Mat intrinsics = cv::Mat::eye(3, 3, CV_32FC1);
intrinsics.at<float> (0, 0) = focal_length_w;
|