pyimreg / python-register

Linear and non-linear image registration methods, using scipy and numpy.
Other
62 stars 34 forks source link

Ticket 0026: Image pyramids added - second attempt. #34

Closed nfaggian closed 13 years ago

nfaggian commented 13 years ago

Notable changes:

*) Updated models, now the base class has a warp method that is used by all of them.

*) Updated register.py, no need to pass in scale it is now determined using "displacement" which is formed by models - warps are defined as "coordinates + displacements", refer to transform code in models.

*) Updated the QT viewer - still very early but I am thinking it might be good to dump out searches as files instead of these large data-structures.

nfaggian commented 13 years ago

[nfaggian@gfedev23 python-register]$ py.test -vx =============================================== test session starts ================================================ platform linux2 -- Python 2.7.0 -- pytest-2.1.1 -- /usr/bin/python collected 50 items

tests/test_detectors.py:5: test_haardetector PASSED tests/test_haar2d.py:4: test_haar2d PASSED tests/test_models.py:11: test_shift PASSED tests/test_models.py:35: test_affine PASSED tests/test_models.py:57: test_CubicSpline_estimate PASSED tests/test_models.py:124: test_thinPlateSpline PASSED tests/test_models.py:146: test_thinPlateSplineApproximate PASSED tests/test_register.py:88: test_shift[dx=-10.0, dy=-10.0] PASSED tests/test_register.py:88: test_shift[dx=-9.0, dy=-9.0] PASSED tests/test_register.py:88: test_shift[dx=-8.0, dy=-8.0] PASSED tests/test_register.py:88: test_shift[dx=-7.0, dy=-7.0] PASSED tests/test_register.py:88: test_shift[dx=-6.0, dy=-6.0] PASSED tests/test_register.py:88: test_shift[dx=-5.0, dy=-5.0] PASSED tests/test_register.py:88: test_shift[dx=-4.0, dy=-4.0] PASSED tests/test_register.py:88: test_shift[dx=-3.0, dy=-3.0] PASSED tests/test_register.py:88: test_shift[dx=-2.0, dy=-2.0] PASSED tests/test_register.py:88: test_shift[dx=-1.0, dy=-1.0] PASSED tests/test_register.py:88: test_shift[dx=0.0, dy=0.0] PASSED tests/test_register.py:88: test_shift[dx=1.0, dy=1.0] PASSED tests/test_register.py:88: test_shift[dx=2.0, dy=2.0] PASSED tests/test_register.py:88: test_shift[dx=3.0, dy=3.0] PASSED tests/test_register.py:88: test_shift[dx=4.0, dy=4.0] PASSED tests/test_register.py:88: test_shift[dx=5.0, dy=5.0] PASSED tests/test_register.py:88: test_shift[dx=6.0, dy=6.0] PASSED tests/test_register.py:88: test_shift[dx=7.0, dy=7.0] PASSED tests/test_register.py:88: test_shift[dx=8.0, dy=8.0] PASSED tests/test_register.py:88: test_shift[dx=9.0, dy=9.0] PASSED tests/test_register.py:116: test_affine[dx=-10.0, dy=-10.0] PASSED tests/test_register.py:116: test_affine[dx=-9.0, dy=-9.0] PASSED tests/test_register.py:116: test_affine[dx=-8.0, dy=-8.0] PASSED tests/test_register.py:116: test_affine[dx=-7.0, dy=-7.0] PASSED tests/test_register.py:116: test_affine[dx=-6.0, dy=-6.0] PASSED tests/test_register.py:116: test_affine[dx=-5.0, dy=-5.0] PASSED tests/test_register.py:116: test_affine[dx=-4.0, dy=-4.0] PASSED tests/test_register.py:116: test_affine[dx=-3.0, dy=-3.0] PASSED tests/test_register.py:116: test_affine[dx=-2.0, dy=-2.0] PASSED tests/test_register.py:116: test_affine[dx=-1.0, dy=-1.0] PASSED tests/test_register.py:116: test_affine[dx=0.0, dy=0.0] PASSED tests/test_register.py:116: test_affine[dx=1.0, dy=1.0] PASSED tests/test_register.py:116: test_affine[dx=2.0, dy=2.0] PASSED tests/test_register.py:116: test_affine[dx=3.0, dy=3.0] PASSED tests/test_register.py:116: test_affine[dx=4.0, dy=4.0] PASSED tests/test_register.py:116: test_affine[dx=5.0, dy=5.0] PASSED tests/test_register.py:116: test_affine[dx=6.0, dy=6.0] PASSED tests/test_register.py:116: test_affine[dx=7.0, dy=7.0] PASSED tests/test_register.py:116: test_affine[dx=8.0, dy=8.0] PASSED tests/test_register.py:116: test_affine[dx=9.0, dy=9.0] PASSED tests/test_register_data.py:5: test_downsample PASSED tests/test_register_features.py:7: test_register PASSED tests/test_samplers.py:12: test_sampler FAILED

nfaggian commented 13 years ago

The bilinear resampler is slower than the cubic-convolution, which explains the failing test. Will need to lodge this as a bug and address.