|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
# K- O8 O. h6 u图像的乘法运算主要用于实现图像的掩膜处理,即屏蔽掉图像中的某些部分。图像的缩放是指一幅图像乘以一个常数,如果该常数大于 1,则图像的亮度将增强,如果常数小于1,则图像的亮度会变暗。matlab中用immultiply()函数实现乘法运算。0 q$ l; ~5 a: e, K6 y2 ^5 g
" E( k3 H# \& q& Q9 E( {close;, F. t# B# J. R% I
clear all;
2 @7 ]5 U/ T6 Rclc;
+ ?& l+ {; z& a! GI = imread('rice.png');- v( i% `, P: o' t
I1 = uint16(I);( u: d: p- z( `/ ?
I2 = immultiply(I1,I1);
! {! P3 l& E* J& S6 v; u6 CI3 = immultiply(I,1.2);7 t# T, T$ P9 s; g
I4 = immultiply(I,0.6);" A3 K: S% d3 u0 h- ~+ Y3 x# y* Q
subplot(2,2,1);imshow(I);title('原始图像');& j) \2 I- I! ?: f8 E
subplot(2,2,2);imshow(I2,[]);title('图像自乘');) f0 B" h" g) i+ g3 Q
subplot(2,2,3);imshow(I3,[]);title('图像扩大像素');. i! a# @+ c) z3 l7 ]" {/ e
subplot(2,2,4);imshow(I4);title('图像缩小像素'); g8 C! H4 b6 y! P6 {
2 j) {* P# j9 I# r# P6 C) X
* i! T/ l* `; N
, B* i+ ^0 i6 P. k! a" j! j通过上图可以看出来,图像扩大像素,使得整幅图像变得明亮,但是对比度并没有提高,缩小像素使得变暗。1 F6 M( N7 M& @, Z3 t& @1 @
0 N0 `4 v! i& B" F$ u
而图像自乘的意义是什么?# y7 |3 L' ?4 Y6 i$ l E0 Z
1 h: J4 _9 |' [- D
我们可以猜测,假如一个点A的像素值为6,相邻点B的像素值为9,它们相差3,因此视觉上对比度有3。当图像自乘之后,A点像素值为36,B点像素值为81,他们相差55,
: @) ?4 f" _# r5 J! F f
2 X3 V/ w; D, v5 j8 L# M# }因此对比度更加的强烈。为了能够显示出来像素值超过255的,我们使用了imread('',[])。并且结合上面的图像,可以得出结论,图像自乘,可以提高对比度。
# d R* h! }; G: X' Q; A/ ]; ]2 y/ Z% c7 X
8 z3 O! T( Z2 Q/ `8 X* }
) t X* }: Y& J& e1 I
结合变量的工作空间,我们也可以看到,自乘之前图像的灰度值为40-255,自乘之后变为了1600-41416,这大大拉大了亮暗图像点之间的差距,即提高了对比度。0 f0 u) F6 O, p, E# D$ ]
3 Z! ^& |7 R( m. T/ B* r- b |
|