|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
* s7 X3 Q/ j+ m9 w如果我们想在一幅图像上加上一个背景,那么我们可以将两幅做加法运算,在matlab中既可以使用imlincomb()函数,也可以使用imadd()函数。, E- F2 H, Z+ I, I/ u0 b4 `
" D4 A- n4 b( X6 W5 Y; x( u! s) K( @) h
close;0 d: h9 U7 k- j" i& z
clear all;+ h; R% Y' f$ _* t O; i3 g6 w/ Y
clc;
( q9 i$ s' x; c( ?9 {- |A1 = imread('rice.png');0 U, \6 M# _$ w0 v: f
A2 = imread('cameraman.tif');
% _* \8 b& j# y) y- {9 O v- BK = imlincomb(0.5,A1,0.5,A2);
) n0 o" f% T; m- b; z5 Dsubplot(1,3,1),subimage(A1);
2 v' }0 K# I" E' |9 ^title('原始图像1');
) _% ?" L5 |/ D0 U( zsubplot(1,3,2),subimage(A2);
/ K: h- `* u* H$ h8 o' Q* Q$ Etitle('原始图像2');' V7 u! `$ U$ A1 s
subplot(1,3,3),subimage(K);. C/ n7 {3 ^8 P0 V" u! _
title('0.5X图像1+0.5X图像2');# [, [) ~% s* r s3 Z( t; [8 o# ^
* b! X4 Q3 G6 F8 h& W
^& ^- R( O/ o: n
: V, s7 n# @" ]$ T( J V2 Q改变两幅图像所占的比例:
+ T" Y, t2 y4 X- P
& C/ T8 c# T; q$ S第一幅仅占10%,第二幅占90%。# ?& f5 v Y0 }; q$ m8 n" G* ?
2 g5 n; N* S+ x
9 n( j3 ^) @6 p# i2 v/ @, N
( \0 I+ e3 g+ z: U1 y7 h
可以明显看到,第二幅图像更加明显。0 ]+ D5 C+ G; z! c! j
; X2 r( x/ s4 } y+ Z
使用imadd()函数同样可以实现图像的加法运算;
% |" V# d/ X I6 S
& e$ Z8 v- \5 I# dclose;
8 b, P- |( N$ \' k0 F$ s0 U: Mclear all;; d5 V6 X6 N; H$ f) x( M
clc;2 d$ `5 a- R# K5 f% ^
A1 = imread('rice.png');0 P0 Y* |+ y) ^' |( T5 n
A2 = imread('cameraman.tif');* k9 s9 l$ p: P" S
K = imadd(A1,A2,'uint16');%图像相加,防止像素值超出255,因此把结果存为16位* M" ]* \1 K+ G
figure;
7 ~. v9 {4 w' Z) Q6 }! ]subplot(1,3,1);imshow(A1);title('rice原始图像');4 u! n/ C, V' d8 x8 Q4 S6 f
subplot(1,3,2);imshow(A2);title('cameraman原始图像');
7 Y( G6 W0 a5 m; E) N0 vsubplot(1,3,3);imshow(K,[]);title('相加图像');%注意使用imshow函数时,要加上[],以使得像素值压缩至0—255) E& J9 K6 C( |
! c8 P! x4 k8 D
, i* a# J# @! I3 s" y3 y4 ~) v+ }1 O( C" u/ _7 Y9 r9 N$ V$ G
|
|