image rotation along x and y axis using bilinear interpolation

1 view (last 30 days)
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.

Answers (1)

Image Analyst
Image Analyst on 4 Feb 2015
Why reinvent the wheel? Just use imresize(). It has a bilinear option.
  5 Comments
Kritika
Kritika on 5 Feb 2015
I got it, but what if I have to rotate y axis with different angle?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!