Commit 9608d31a authored by Vladislav Sovrasov's avatar Vladislav Sovrasov

reg: use new api in sample

parent 6211920c
...@@ -99,10 +99,9 @@ static void testShift(const Mat& img1) ...@@ -99,10 +99,9 @@ static void testShift(const Mat& img1)
showDifference(img1, img2, DIFF_IM); showDifference(img1, img2, DIFF_IM);
// Register // Register
MapperGradShift mapper; Ptr<MapperGradShift> mapper = makePtr<MapperGradShift>();
MapperPyramid mappPyr(mapper); MapperPyramid mappPyr(mapper);
Ptr<Map> mapPtr; Ptr<Map> mapPtr = mappPyr.calculate(img1, img2);
mappPyr.calculate(img1, img2, mapPtr);
// Print result // Print result
MapShift* mapShift = dynamic_cast<MapShift*>(mapPtr.get()); MapShift* mapShift = dynamic_cast<MapShift*>(mapPtr.get());
...@@ -135,10 +134,9 @@ static void testEuclidean(const Mat& img1) ...@@ -135,10 +134,9 @@ static void testEuclidean(const Mat& img1)
showDifference(img1, img2, DIFF_IM); showDifference(img1, img2, DIFF_IM);
// Register // Register
MapperGradEuclid mapper; Ptr<MapperGradEuclid> mapper = makePtr<MapperGradEuclid>();
MapperPyramid mappPyr(mapper); MapperPyramid mappPyr(mapper);
Ptr<Map> mapPtr; Ptr<Map> mapPtr = mappPyr.calculate(img1, img2);
mappPyr.calculate(img1, img2, mapPtr);
// Print result // Print result
MapAffine* mapAff = dynamic_cast<MapAffine*>(mapPtr.get()); MapAffine* mapAff = dynamic_cast<MapAffine*>(mapPtr.get());
...@@ -174,10 +172,9 @@ static void testSimilarity(const Mat& img1) ...@@ -174,10 +172,9 @@ static void testSimilarity(const Mat& img1)
showDifference(img1, img2, DIFF_IM); showDifference(img1, img2, DIFF_IM);
// Register // Register
MapperGradSimilar mapper; Ptr<MapperGradSimilar> mapper = makePtr<MapperGradSimilar>();
MapperPyramid mappPyr(mapper); MapperPyramid mappPyr(mapper);
Ptr<Map> mapPtr; Ptr<Map> mapPtr = mappPyr.calculate(img1, img2);
mappPyr.calculate(img1, img2, mapPtr);
// Print result // Print result
MapAffine* mapAff = dynamic_cast<MapAffine*>(mapPtr.get()); MapAffine* mapAff = dynamic_cast<MapAffine*>(mapPtr.get());
...@@ -209,10 +206,9 @@ static void testAffine(const Mat& img1) ...@@ -209,10 +206,9 @@ static void testAffine(const Mat& img1)
showDifference(img1, img2, DIFF_IM); showDifference(img1, img2, DIFF_IM);
// Register // Register
MapperGradAffine mapper; Ptr<MapperGradAffine> mapper = makePtr<MapperGradAffine>();
MapperPyramid mappPyr(mapper); MapperPyramid mappPyr(mapper);
Ptr<Map> mapPtr; Ptr<Map> mapPtr = mappPyr.calculate(img1, img2);
mappPyr.calculate(img1, img2, mapPtr);
// Print result // Print result
MapAffine* mapAff = dynamic_cast<MapAffine*>(mapPtr.get()); MapAffine* mapAff = dynamic_cast<MapAffine*>(mapPtr.get());
...@@ -243,10 +239,9 @@ static void testProjective(const Mat& img1) ...@@ -243,10 +239,9 @@ static void testProjective(const Mat& img1)
showDifference(img1, img2, DIFF_IM); showDifference(img1, img2, DIFF_IM);
// Register // Register
MapperGradProj mapper; Ptr<MapperGradProj> mapper = makePtr<MapperGradProj>();
MapperPyramid mappPyr(mapper); MapperPyramid mappPyr(mapper);
Ptr<Map> mapPtr; Ptr<Map> mapPtr = mappPyr.calculate(img1, img2);
mappPyr.calculate(img1, img2, mapPtr);
// Print result // Print result
MapProjec* mapProj = dynamic_cast<MapProjec*>(mapPtr.get()); MapProjec* mapProj = dynamic_cast<MapProjec*>(mapPtr.get());
...@@ -347,7 +342,7 @@ static void calcHomographyFeature(const Mat& image1, const Mat& image2) ...@@ -347,7 +342,7 @@ static void calcHomographyFeature(const Mat& image1, const Mat& image2)
warpPerspective(image2, result, Hinv, image1.size()); warpPerspective(image2, result, Hinv, image1.size());
cout << "--- Feature method\n" << H << endl; cout << "--- Feature method\n" << H << endl;
Mat imf1, resf; Mat imf1, resf;
image1.convertTo(imf1, CV_64FC3); image1.convertTo(imf1, CV_64FC3);
result.convertTo(resf, CV_64FC3); result.convertTo(resf, CV_64FC3);
...@@ -359,10 +354,9 @@ static void calcHomographyPixel(const Mat& img1, const Mat& img2) ...@@ -359,10 +354,9 @@ static void calcHomographyPixel(const Mat& img1, const Mat& img2)
static const char* diffpixel = "Difference pixel registered"; static const char* diffpixel = "Difference pixel registered";
// Register using pixel differences // Register using pixel differences
MapperGradProj mapper; Ptr<MapperGradProj> mapper = makePtr<MapperGradProj>();
MapperPyramid mappPyr(mapper); MapperPyramid mappPyr(mapper);
Ptr<Map> mapPtr; Ptr<Map> mapPtr = mappPyr.calculate(img1, img2);
mappPyr.calculate(img1, img2, mapPtr);
// Print result // Print result
MapProjec* mapProj = dynamic_cast<MapProjec*>(mapPtr.get()); MapProjec* mapProj = dynamic_cast<MapProjec*>(mapPtr.get());
...@@ -398,7 +392,7 @@ static void comparePixelVsFeature(const Mat& img1_8b, const Mat& img2_8b) ...@@ -398,7 +392,7 @@ static void comparePixelVsFeature(const Mat& img1_8b, const Mat& img2_8b)
int main(void) int main(void)
{ {
Mat img1; Mat img1;
img1 = imread("home.png", CV_LOAD_IMAGE_UNCHANGED); img1 = imread("home.png", CV_LOAD_IMAGE_UNCHANGED);
if(!img1.data) { if(!img1.data) {
cout << "Could not open or find file" << endl; cout << "Could not open or find file" << endl;
......
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