|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
% i0 U4 r( e2 v& r3 z8 {; M$ P6 X如果我们想在一幅图像上加上一个背景,那么我们可以将两幅做加法运算,在matlab中既可以使用imlincomb()函数,也可以使用imadd()函数。7 w/ } ~7 `& N4 E' w# S V
& `5 s G7 i' T7 ^* N- M2 D9 sclose;4 p+ e0 \) e2 ?: d0 x' x
clear all;
: U+ f: E3 ~( eclc;% R- ?5 v) N" e9 X+ U
A1 = imread('rice.png');! [: d% Y+ c5 y! D
A2 = imread('cameraman.tif');
3 X7 |: S/ W& m' {" E/ I. ^$ [K = imlincomb(0.5,A1,0.5,A2);" C; M7 t8 k$ A" H& S" Q5 r9 e
subplot(1,3,1),subimage(A1);
! v* ?" f" ^+ W9 U$ n" atitle('原始图像1');6 R/ p6 Q3 E% m$ N* F
subplot(1,3,2),subimage(A2);0 \! q- W. B0 \: i8 W
title('原始图像2');* v& O; p, j% ~: ]4 G1 W8 L
subplot(1,3,3),subimage(K);
% U- @9 ~; g0 ytitle('0.5X图像1+0.5X图像2');
$ b; }* N' N3 N0 G: q& U w2 H6 O, Q: Z" F( ?' [
) P% D) h3 R }- Z0 x" o
* `' t: L; M5 d: m I
改变两幅图像所占的比例:: c- K i' t5 g2 E$ w
8 n% { O# ]8 \2 a: P6 i第一幅仅占10%,第二幅占90%。
/ |, c; |0 f3 T" f5 H
$ h- S0 G p& b. U- b' a C
0 R, i" i5 D/ V0 j2 k' a- A7 C
$ A" }% h! Z- ^ u可以明显看到,第二幅图像更加明显。
" L) Y0 @1 ]9 E8 `% K
* g! y! c* M1 h( W; ?' O使用imadd()函数同样可以实现图像的加法运算;; Q- W; [7 }5 Y: p% N6 h
+ m9 [! w2 M/ W0 j) N* A: [& \close;
" a+ c0 Z6 N* E/ W1 s: J. cclear all;, c6 [1 Z) p1 P" a3 D8 C
clc;$ |. O' o' Y( ^- V* `& I- o. \% {
A1 = imread('rice.png');
. h( Z5 u4 M: YA2 = imread('cameraman.tif');
! B- K1 m, c. J, ]4 \$ w$ Q* tK = imadd(A1,A2,'uint16');%图像相加,防止像素值超出255,因此把结果存为16位
) l8 a' e( M. L" D* Bfigure;
. S7 o* f* d4 T& s' f) X% V# H) t' osubplot(1,3,1);imshow(A1);title('rice原始图像');
- s4 J) W8 G# ]subplot(1,3,2);imshow(A2);title('cameraman原始图像');' s9 R+ M6 L! I7 ^0 S* p! j
subplot(1,3,3);imshow(K,[]);title('相加图像');%注意使用imshow函数时,要加上[],以使得像素值压缩至0—255
/ H) _2 {% `/ z, w/ [5 b
# C: ]% U) m: _ Y$ _# g3 T: k
( }9 ~1 R" o& M7 ?7 H1 O; X
W5 J7 `! H( [2 E |
|