From 767bae44ae091d5429cab6ddc3337a0efbc39ef7 Mon Sep 17 00:00:00 2001 From: Dominik Kleiser Date: Wed, 2 Dec 2015 11:51:37 +0100 Subject: [PATCH 1/3] Fix the unit of angle for AKaze/Kaze KeyPoints Convert the return value of getAngle from radian to degrees. --- modules/features2d/src/kaze/AKAZEFeatures.cpp | 2 +- modules/features2d/src/kaze/KAZEFeatures.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/features2d/src/kaze/AKAZEFeatures.cpp b/modules/features2d/src/kaze/AKAZEFeatures.cpp index d12656e994..23fefc2d32 100644 --- a/modules/features2d/src/kaze/AKAZEFeatures.cpp +++ b/modules/features2d/src/kaze/AKAZEFeatures.cpp @@ -839,7 +839,7 @@ void AKAZEFeatures::Compute_Main_Orientation(KeyPoint& kpt, const std::vector max) { // store largest orientation max = sumX*sumX + sumY*sumY; - kpt.angle = getAngle(sumX, sumY); + kpt.angle = getAngle(sumX, sumY) * 180. / CV_PI; } } } diff --git a/modules/features2d/src/kaze/KAZEFeatures.cpp b/modules/features2d/src/kaze/KAZEFeatures.cpp index 294898c26b..ffdca7de57 100644 --- a/modules/features2d/src/kaze/KAZEFeatures.cpp +++ b/modules/features2d/src/kaze/KAZEFeatures.cpp @@ -638,7 +638,7 @@ void KAZEFeatures::Compute_Main_Orientation(KeyPoint &kpt, const std::vector max) { // store largest orientation max = sumX*sumX + sumY*sumY; - kpt.angle = getAngle(sumX, sumY); + kpt.angle = getAngle(sumX, sumY) * 180. / CV_PI; } } } From c7cb028035058a2d1f2dfc8f26eb2b6d4272d321 Mon Sep 17 00:00:00 2001 From: Dominik Kleiser Date: Wed, 2 Dec 2015 16:38:44 +0100 Subject: [PATCH 2/3] use floats for the calculation --- modules/features2d/src/kaze/AKAZEFeatures.cpp | 2 +- modules/features2d/src/kaze/KAZEFeatures.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/features2d/src/kaze/AKAZEFeatures.cpp b/modules/features2d/src/kaze/AKAZEFeatures.cpp index 23fefc2d32..853ef28ccb 100644 --- a/modules/features2d/src/kaze/AKAZEFeatures.cpp +++ b/modules/features2d/src/kaze/AKAZEFeatures.cpp @@ -839,7 +839,7 @@ void AKAZEFeatures::Compute_Main_Orientation(KeyPoint& kpt, const std::vector max) { // store largest orientation max = sumX*sumX + sumY*sumY; - kpt.angle = getAngle(sumX, sumY) * 180. / CV_PI; + kpt.angle = getAngle(sumX, sumY) * 180.f / CV_PI; } } } diff --git a/modules/features2d/src/kaze/KAZEFeatures.cpp b/modules/features2d/src/kaze/KAZEFeatures.cpp index ffdca7de57..b0dac7c638 100644 --- a/modules/features2d/src/kaze/KAZEFeatures.cpp +++ b/modules/features2d/src/kaze/KAZEFeatures.cpp @@ -638,7 +638,7 @@ void KAZEFeatures::Compute_Main_Orientation(KeyPoint &kpt, const std::vector max) { // store largest orientation max = sumX*sumX + sumY*sumY; - kpt.angle = getAngle(sumX, sumY) * 180. / CV_PI; + kpt.angle = getAngle(sumX, sumY) * 180.f / CV_PI; } } } From 0c471515fda87848c509d650f830e6ba33baf8a7 Mon Sep 17 00:00:00 2001 From: Dominik Kleiser Date: Wed, 2 Dec 2015 17:33:40 +0100 Subject: [PATCH 3/3] use float for CV_PI --- modules/features2d/src/kaze/AKAZEFeatures.cpp | 2 +- modules/features2d/src/kaze/KAZEFeatures.cpp | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/features2d/src/kaze/AKAZEFeatures.cpp b/modules/features2d/src/kaze/AKAZEFeatures.cpp index 853ef28ccb..220f1924ab 100644 --- a/modules/features2d/src/kaze/AKAZEFeatures.cpp +++ b/modules/features2d/src/kaze/AKAZEFeatures.cpp @@ -839,7 +839,7 @@ void AKAZEFeatures::Compute_Main_Orientation(KeyPoint& kpt, const std::vector max) { // store largest orientation max = sumX*sumX + sumY*sumY; - kpt.angle = getAngle(sumX, sumY) * 180.f / CV_PI; + kpt.angle = getAngle(sumX, sumY) * 180.f / static_cast(CV_PI); } } } diff --git a/modules/features2d/src/kaze/KAZEFeatures.cpp b/modules/features2d/src/kaze/KAZEFeatures.cpp index b0dac7c638..1ac35c630e 100644 --- a/modules/features2d/src/kaze/KAZEFeatures.cpp +++ b/modules/features2d/src/kaze/KAZEFeatures.cpp @@ -638,7 +638,7 @@ void KAZEFeatures::Compute_Main_Orientation(KeyPoint &kpt, const std::vector max) { // store largest orientation max = sumX*sumX + sumY*sumY; - kpt.angle = getAngle(sumX, sumY) * 180.f / CV_PI; + kpt.angle = getAngle(sumX, sumY) * 180.f / static_cast(CV_PI); } } }