Image rotate

14 views (last 30 days)
Dipak
Dipak on 23 Jun 2011
Answered: DGM on 30 Dec 2023
Can I have rotate image with white background
By default if we use imrotate it rotate image with black background can I have rotated image with white background?

Accepted Answer

Sean de Wolski
Sean de Wolski on 23 Jun 2011
Irot = imrotate(I,theta);
Mrot = ~imrotate(true(size(I)),theta);
Irot(Mrot&~imclearborder(Mrot)) = 255;
%View 'er
imtool(Irot)
Edited to be more robust/simpler
  4 Comments
Leo Wong
Leo Wong on 5 Sep 2018
You are a genius Sean. Your code was the missing piece to complete my project :)
Ali RAHIMI KHOJASTEH
Ali RAHIMI KHOJASTEH on 1 Apr 2021
Thank you, it works for me

Sign in to comment.

More Answers (2)

Walter Roberson
Walter Roberson on 23 Jun 2011
imrotate() always fills with 0.
If your image is floating point, then one way to proceed would be to put a border of NaN around your image, and rotate that. The resulting image should have NaN in it; set the NaN and everything outside to the background color you want.
  1 Comment
Dipak
Dipak on 24 Jun 2011
Thanks Walter For the reply.
Thank you.

Sign in to comment.


DGM
DGM on 30 Dec 2023

Categories

Find more on Image Processing and Computer Vision 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!