|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
在matlab中进行图像翻转可以通过专门的函数,然而这个原理非常简单,我们可以自己写代码通过循环遍历来实现翻转,这是一件很有趣的事情。8 {- B- k+ F, N0 K
8 ]2 L9 |( \, ]3 m9 B( q
close;% r, j3 |# W* t @
clear all;. F* Z; s: @, j/ h C# J0 w$ ~
clc;& T% q, q6 V% c
a = imread('wzz.jpg');+ `5 r( i' U2 C7 W4 T8 k+ Z
[x y z] = size(a);7 J+ f; o9 }8 r) ]. O/ x
for k = 1:1:z- L$ T$ H3 |+ d+ Y0 U8 u1 R
for i = 1:1:x
" [# L" C6 A2 A; N# Q% Q3 A4 @ for j = 1:1:y4 V) w9 \, {/ g( ~
b(i,j,k) = a(x+1-i,j,k);%实现上下翻转% j# i, R g5 }0 S
c(i,j,k) = a(i,y+1-j,k);%实现左右翻转
! ~7 m Y+ z- _( E3 ? d(i,j,k) = a(x+1-i,y+1-j,k);%实现上下左右翻转
/ I! H: `% ^8 | end
, w6 o" @7 d4 D- q* I' |8 ` end
( o, q/ L+ C1 _$ o( oend
* n: S' [6 h& b H. usubplot(2,2,1),imshow(a);title('我的庐山真面目');
0 D0 F0 g% \$ k+ Esubplot(2,2,2),imshow(b);title('我上下翻转');# d8 y! h9 S! q1 K" ]
subplot(2,2,3),imshow(c);title('我左右翻转');
8 ^" c* b: S( K: M; M5 h, n+ Lsubplot(2,2,4),imshow(d);title('我来回翻转');6 z8 y! k0 ]6 y
^! D5 [$ t Q
/ @ M( O p2 p/ ]. V2 Z1 _& G
, q0 E6 M- y+ P! h$ d
( K* L) e+ m. S4 d8 K: H, ~" i+ A% P+ F: Q
3 |) \1 s. k7 E; H& ]+ s |
|