change as suggested by original programmer and user of ecc software
authorStevenPuttemans <steven.puttemans@kuleuven.be>
Thu, 6 Aug 2015 12:59:15 +0000 (14:59 +0200)
committerStevenPuttemans <steven.puttemans@kuleuven.be>
Thu, 6 Aug 2015 12:59:15 +0000 (14:59 +0200)
modules/video/src/ecc.cpp

index cc08ac0..d11419e 100644 (file)
@@ -298,11 +298,7 @@ static void update_warping_matrix_ECC (Mat& map_matrix, const Mat& update, const
     }
     if (motionType == MOTION_EUCLIDEAN) {
         double new_theta = updatePtr[0];
-        if (mapPtr[3]>0)
-            new_theta += acos(mapPtr[0]);
-
-        if (mapPtr[3]<0)
-            new_theta -= acos(mapPtr[0]);
+        new_theta += asin(mapPtr[3]);
 
         mapPtr[2] += updatePtr[1];
         mapPtr[5] += updatePtr[2];