diff --git a/modules/stitching/include/opencv2/stitching.hpp b/modules/stitching/include/opencv2/stitching.hpp index 07e1b5f73a..52789156b8 100644 --- a/modules/stitching/include/opencv2/stitching.hpp +++ b/modules/stitching/include/opencv2/stitching.hpp @@ -264,7 +264,7 @@ public: @param pano Final pano. @return Status code. */ - Status composePanorama(InputArrayOfArrays images, OutputArray pano); + CV_WRAP Status composePanorama(InputArrayOfArrays images, OutputArray pano); /** @overload */ CV_WRAP Status stitch(InputArrayOfArrays images, OutputArray pano); diff --git a/modules/stitching/misc/python/test/test_stitching.py b/modules/stitching/misc/python/test/test_stitching.py index 3a5a99a590..e6fbf9ad0b 100644 --- a/modules/stitching/misc/python/test/test_stitching.py +++ b/modules/stitching/misc/python/test/test_stitching.py @@ -19,5 +19,36 @@ class stitching_test(NewOpenCVTests): self.assertAlmostEqual(pano.shape[0], 685, delta=100, msg="rows: %r" % list(pano.shape)) self.assertAlmostEqual(pano.shape[1], 1025, delta=100, msg="cols: %r" % list(pano.shape)) + +class stitching_compose_panorama_test_no_args(NewOpenCVTests): + + def test_simple(self): + + img1 = self.get_sample('stitching/a1.png') + img2 = self.get_sample('stitching/a2.png') + + stitcher = cv.createStitcher(False) + + stitcher.estimateTransform((img1, img2)) + + result, _ = stitcher.composePanorama() + + assert result == 0 + + +class stitching_compose_panorama_args(NewOpenCVTests): + + def test_simple(self): + + img1 = self.get_sample('stitching/a1.png') + img2 = self.get_sample('stitching/a2.png') + + stitcher = cv.createStitcher(False) + + stitcher.estimateTransform((img1, img2)) + result, _ = stitcher.composePanorama((img1, img2)) + + assert result == 0 + if __name__ == '__main__': NewOpenCVTests.bootstrap()