How to Rotate an image about center vertical axis?
3 views (last 30 days)
Show older comments
Hello I am using Image Processing Toolbox. How to Rotate an image about center vertical axis?
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/190911/image.jpeg)
Ofcourse the new pixels in the rotated image would be black ;p Thanks
Accepted Answer
Guillaume
on 30 May 2018
Remember that a images are 2D constructs. They don't have a 3rd dimension and therefore can't be rotated in a 3rd dimension. What you're asking is to simulate the concept of rotating a 2D surface in a 3d space. The actual transformation that simulate that is not a rotation, but a projection. This is achieved by using imwarp with a projective2d transformation (which you can create a number of different ways), e.g.:
tform = projective2d([1 -0.1 0.001; 0 1 0; 0 0 1]);
newimage = imwarp(yourimage, tform);
imshowpair(yourimage, newimage, 'montage');
0 Comments
More Answers (2)
Image Analyst
on 30 May 2018
Steve Eddins's blog talks about this: https://blogs.mathworks.com/steve/2006/08/04/spatial-transformations-defining-and-applying-custom-transforms/
0 Comments
Image Analyst
on 30 May 2018
Did you try the rotation icon in the toolbar of the figure? Then use the File Menu to tell it to generate code.
0 Comments
See Also
Categories
Find more on Point Cloud Processing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!