matlab画图中怎么把图像旋转180度
时间: 2023-11-21 15:52:58 浏览: 232
利用matlab进行图像的缩放和旋转
根据引用和引用的内容,我们可以使用MATLAB中的旋转矩阵来实现图像的旋转。如果要将图像旋转180度,可以参照以下的MATLAB代码:
```matlab
% 读入图片
im = imread('fruit.png');
% 旋转180度
a = 180/180*pi; % 将角度转换为弧度
R = [cos(a),-sin(a);sin(a),cos(a)]; % 旋转矩阵
R = R'; % 求出旋转矩阵的逆矩阵
% 求出图片大小
sz = size(im);
h = sz(1); % 图片高度
w = sz(2); % 图片宽度
ch = sz(3); % 通道数
c1 = [h;w]/2; % 图片中心
% 初始化目标画布
im2 = uint8(zeros(h,w,3));
for k = 1:ch
for i = 1:h
for j = 1:w
p = [i;j]; % 遍历每一个像素点
pp = round(R*(p-c1) + c1); % 逆向进行像素查找
% 排除不在画布内的像素
if(pp(1)>=1 && pp(1)<=h && pp(2)>=1 && pp(2)<=w)
im2(pp(1),pp(2),k) = im(i,j,k);
end
end
end
end
% 显示图像
imshow(im2);
```
这段MATLAB代码会将名为'fruit.png'的图像旋转180度,并显示旋转后的图像。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [MATLAB实现图像旋转](https://blog.csdn.net/qq_43650722/article/details/104077954)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]
阅读全文