|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
在matlab中进行图像翻转可以通过专门的函数,然而这个原理非常简单,我们可以自己写代码通过循环遍历来实现翻转,这是一件很有趣的事情。
$ }( J8 w X9 T8 w: D& l( M& q* X3 U; ~- v
close;
% t$ c% H6 X! J; J: d+ M6 J! eclear all;# l% Y4 n6 i _$ a& a! U7 @
clc;
% C% c/ K: j# U8 H% }a = imread('wzz.jpg');
/ X8 s; c" ?! f3 D/ `[x y z] = size(a);
$ Q! ?; S# g: O+ C' |4 Tfor k = 1:1:z: B' F% k% V3 h ~+ C4 p6 A7 C' S
for i = 1:1:x W4 K+ f! E) P0 m1 G" T
for j = 1:1:y/ g+ V! @: v- {; I% w
b(i,j,k) = a(x+1-i,j,k);%实现上下翻转
& g2 H- y. ]( W5 \9 m* K& @9 J) e c(i,j,k) = a(i,y+1-j,k);%实现左右翻转
' I$ o. `) { E$ ] {: A4 [ d(i,j,k) = a(x+1-i,y+1-j,k);%实现上下左右翻转
! e. j0 e) |& L! ~0 D end; v2 n- c) \9 y h
end
( a: J1 q/ }/ M' Q( ?- V0 Eend
3 ^9 A8 ~+ o# i6 o: v% n- r9 Nsubplot(2,2,1),imshow(a);title('我的庐山真面目');8 n9 L$ o2 i; ? h
subplot(2,2,2),imshow(b);title('我上下翻转');0 t4 \- b8 `" j h; q
subplot(2,2,3),imshow(c);title('我左右翻转');
' \* A. w9 O) m$ V6 v& t/ Y$ vsubplot(2,2,4),imshow(d);title('我来回翻转');
; Q' \3 `/ O. r! t9 N2 ^0 S8 s6 F' T+ N F8 O% ~( |) {
; Q( @9 |) t% f' N. E
9 _ R- l/ Q# m# C) O0 p( B
# u9 x& @1 B* X$ H4 n
7 ~& b# T: Q" Z4 M& X6 H
$ h0 E6 Q' }* v |
|