MATLAB Answers

Mubeen
0

Question on Image transformation

Asked by Mubeen
on 29 Mar 2013
Latest activity Commented on by Image Analyst
on 14 Feb 2017 at 16:11

Hey guys. I have a question on changing the perspective of an image. Using this resource: http://mopage.de/2011/10/perspective/ I found a way to calculate the transformation matrix, but how do I use this to create a new image with the change in perspective?

Thanks for the help!

  0 Comments

Log in to comment.

3 Answers

Answer by Alex Taylor
on 2 Apr 2013
 Accepted answer

Hi Mubeen,

If you have R2013a, you should look at the class projective2d and the function imwarp.

http://www.mathworks.com/help/images/ref/imwarp.html http://www.mathworks.com/help/images/ref/projective2dclass.html

You can use projective2d to compute forward and inverse point transformations. You can use imwarp and projective2d together to form the resampled output image that is produced by applying a projective transformation.

If you are using previous versions of the Image Procesing Toolbox, you should use the analogous workflow with maketform('projective',___) and imtransform.

We refer the transformation you are referring to as a projective transformation in the Image Processing Toolbox.

  0 Comments

Log in to comment.


Answer by Sean de Wolski
on 29 Mar 2013

doc imwarp
doc imtransform

  0 Comments

Log in to comment.


Answer by Image Analyst
on 31 Mar 2013

  2 Comments

Hi guys, I am working on the same thing, I want to rotate image I which is gray scale image, by rotation matrix R which is 3x3 matrix. I am trying to use imwarp with projective2d. but the problem is imwarp changes the size of image.. I want the image size to remain same

Call imcrop() or imresize() to make it whatever you want after you've warped it.

Log in to comment.


Discover MakerZone

MATLAB and Simulink resources for Arduino, LEGO, and Raspberry Pi

Learn more

Discover what MATLAB® can do for your career.

Opportunities for recent engineering grads.

Apply Today

MATLAB Academy

New to MATLAB?

Learn MATLAB today!