Commit e309c514 authored by Andrey Kamaev's avatar Andrey Kamaev

Fixed phaseCorrelate result for not power of 2 size images #1812 (thanks to Jeff Mast)

parent b8804ccc
...@@ -556,7 +556,7 @@ cv::Point2d cv::phaseCorrelate(InputArray _src1, InputArray _src2, InputArray _w ...@@ -556,7 +556,7 @@ cv::Point2d cv::phaseCorrelate(InputArray _src1, InputArray _src2, InputArray _w
t = weightedCentroid(C, peakLoc, Size(5, 5)); t = weightedCentroid(C, peakLoc, Size(5, 5));
// adjust shift relative to image center... // adjust shift relative to image center...
Point2d center((double)src1.cols / 2.0, (double)src1.rows / 2.0); Point2d center((double)padded1.cols / 2.0, (double)padded1.rows / 2.0);
return (center - t); return (center - t);
} }
......
...@@ -63,8 +63,8 @@ void CV_PhaseCorrelatorTest::run( int ) ...@@ -63,8 +63,8 @@ void CV_PhaseCorrelatorTest::run( int )
{ {
ts->set_failed_test_info(cvtest::TS::OK); ts->set_failed_test_info(cvtest::TS::OK);
Mat r1 = Mat::ones(Size(128, 128), CV_64F); Mat r1 = Mat::ones(Size(129, 128), CV_64F);
Mat r2 = Mat::ones(Size(128, 128), CV_64F); Mat r2 = Mat::ones(Size(129, 128), CV_64F);
double expectedShiftX = -10.0; double expectedShiftX = -10.0;
double expectedShiftY = -20.0; double expectedShiftY = -20.0;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment