image rotation along x and y axis using bilinear interpolation
4 views (last 30 days)
Show older comments
I am rotating the image by theta1 along x axis and theta2 along y axis using the mapping equation: f(x,y)=f([cos(theta1)*x+sin(theta1)*y]/cos(theta1-theta2),[-sin(theta2)*x+cos(theta2)*y]/cos(theta1-theta2)). Now I am facing two problems here: 1. if theta1 and theta2 are taken different then image gets cropped. So, how to set the size of output that no matter what you take as theta1 and theta2, the complete image is obtained. 2. How to re-rotate the above result to get the intial image again using bilinear interpolation.
I am enclosing the code, Please do help me.
0 Comments
Answers (1)
Image Analyst
on 4 Feb 2015
Why reinvent the wheel? Just use imresize(). It has a bilinear option.
5 Comments
Image Analyst
on 5 Feb 2015
rotatedImage = imrotate(originalImage, 30); % Rotate 30 degrees.
See Also
Categories
Find more on Geometric Transformation and Image Registration in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!