Translation info from imregtform?

3 visualizzazioni (ultimi 30 giorni)
Claire
Claire il 20 Feb 2014
Commentato: Claire il 21 Feb 2014
I am trying to register two images using a rigid transformation. When I use imregister and then imshowpair, the moving image is properly rotated and translated. It appears be restricted to the same dimensions as the fixed image to achieve the appropriate translation.
When I use imregtform to obtain the transformation matrix and then apply the transformation to the moving image using imwarp(moving, tform), the warped image is appropriately rotated. However,the warped image hasn't been restricted to the same size as the fixed image, so the warped and fixed images appear misaligned in XY (as if the warped image hasn't been translated).
Is there a way to recover this translation information from imregtform and appropriately crop or pad the warped image so that it is the same size as the fixed image? I ultimately want to apply the same transformation to a lot of images and have them be the same size.
I have tried preemptively padding the fixed image so that it will always be larger than the warped image; this did not solve the issue.
Thanks!
  1 Commento
Anand
Anand il 20 Feb 2014
Pictures (and code) speak a thousand words...

Accedi per commentare.

Risposta accettata

Alex Taylor
Alex Taylor il 21 Feb 2014
What you want is to use the 'OutputView' Name-value pair of imwarp with a value equal to the spatial referencing of the fixed image.
Take a look at the examples in the documentation for imregtform.

Più risposte (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by