|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
8 P1 g- N) J" q! a6 g; @
如果我们想在一幅图像上加上一个背景,那么我们可以将两幅做加法运算,在matlab中既可以使用imlincomb()函数,也可以使用imadd()函数。( D* r$ N5 ?) W: s9 l* K* I6 w' c
0 t1 l/ r" t5 N2 x4 W( d& T
close;5 k6 L$ L% r% @ F, @' V, Q
clear all;* ?, U5 [5 V& e# R1 z! C
clc;8 H, E0 ]0 E, J3 _2 Z- W
A1 = imread('rice.png');
7 U* J9 f) k4 i' v1 C9 O/ QA2 = imread('cameraman.tif');' `+ _6 ]" m- q/ m+ S
K = imlincomb(0.5,A1,0.5,A2);
3 g. d# D8 e, q* w9 ^subplot(1,3,1),subimage(A1);
3 {) ]1 c0 _' ?title('原始图像1');
- o* T; K' r0 Z* {2 ^% gsubplot(1,3,2),subimage(A2);: r: [, y5 _/ z0 z5 I
title('原始图像2');1 Y3 f: ~$ V/ }0 F$ ^1 ]4 \3 v) x, Y
subplot(1,3,3),subimage(K);
' D5 h3 O* J7 D' S0 ~! etitle('0.5X图像1+0.5X图像2');" Y; o% Y+ |& }
6 c5 I; a! k! `% g$ R4 C
' O8 o* x" S( E1 z2 M% W5 ~0 }2 X; i3 M1 w4 k
改变两幅图像所占的比例:
0 H" y' w$ w; Z2 m
: l/ w# o/ \6 S* ^第一幅仅占10%,第二幅占90%。
% k! U) D5 \& U% ?, `! ?. i$ a2 k: `1 V9 H3 \$ \+ H. F
" l8 F k3 m; F" `1 M' w
# a3 M9 Z" I$ ?# @$ c2 G( s- i/ n: t可以明显看到,第二幅图像更加明显。
, B& g8 y! k' |; v; S3 F: g
1 y4 V1 y) ]/ {7 S& I5 g3 c8 J+ u使用imadd()函数同样可以实现图像的加法运算;& Z; ~' ~. Q" Y a
- G% g; @3 h, m. m$ R; d- S! B4 R+ W3 ]close;9 [) r8 o4 s" v5 ?4 i9 b
clear all;1 y1 b, c* Y) V" c
clc;
: O- F1 p1 G8 I) v$ d) CA1 = imread('rice.png');
. O Q b2 b+ f$ HA2 = imread('cameraman.tif');
" \. V. m4 I* t' j" zK = imadd(A1,A2,'uint16');%图像相加,防止像素值超出255,因此把结果存为16位
! z4 x: ~ v5 \/ R1 s) qfigure;
& G: H( Y3 f( t) tsubplot(1,3,1);imshow(A1);title('rice原始图像');
0 f! l; Q( Y3 o: k$ I* N% Jsubplot(1,3,2);imshow(A2);title('cameraman原始图像');, S' S: q% s* L: a" z1 c+ v; B
subplot(1,3,3);imshow(K,[]);title('相加图像');%注意使用imshow函数时,要加上[],以使得像素值压缩至0—2554 O( C! {* R5 d: k n+ N# {
o4 \% a" r) {% n& k
4 P- c$ d" t6 n( S3 l
& T; @; _7 o2 {% Z
|
|