图像的旋转——imrotate

时间:2024-03-07 17:50:47

调用函数: imrotate

B = imrotate (A, angle)                          % A 是旋转的图像矩阵,angle是旋转角度,-45是顺时针

B = imrotate (A, angle,method)     % method是插值的方法(如,nearest,bilinear,bicubic。注意:要打单引号,‘nearest’)

B = imrotate (A, angle,method,bbox)    % bbox是指旋转后的显示方式(两种:1、crop,旋转后的图像跟原图像大小一样,超过边框的舍去;2、loose,旋转后的图像不变,随框大小而变化)

 

例子:

I=imread(\'C:\Users\Administrator\Desktop\star2.jpg\');  %将图片信息读入到I这个矩阵中
J1=imrotate(I,-45,\'bicubic\');              %使用bicubic插值顺时针旋转45
J2=imrotate(I,45,\'bilinear\',\'crop\');            %使用bilinear插值法旋转,用crop方式显示,旋转后的图像跟原图像大小一样,多余的地方舍去
J3=imrotate(I,45,\'bilinear\',\'loose\');           %使用bilinear插值法旋转,用loose方式显示,旋转后的图像不变,随框大小而变化
figure;
subplot(221); imshow(I);
subplot(222); imshow(J1);
subplot(223); imshow(J2);
subplot(224); imshow(J3);

运行结果:

 

 总结:

1、imrotate函数实现图像的旋转,旋转后由黑色补充,如果能够改变背景颜色,效果更好