TA的每日心情 | 衰 2019-11-19 15:32 |
|---|
签到天数: 1 天 [LV.1]初来乍到
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
3 ?) C @, Y; I# @! G方法包括:直方图修正,灰度变换,图像平滑化,图像锐化等。) M" N5 J U5 h: `/ f5 m
. o a( S& j2 S/ z
卷积时模板是相对中心点做镜像后再对F位于模板下的子图像作加权和的。只有模板本身是关于中心点对称,相关和卷积结果才会相同。$ |5 {; A; u" x8 _: a% e
1 Q- K' ~+ E( F( o& U2 E( O
- % 均值滤波 f = imread('../lena_AdaptiveMedianFilter.bmp'); %读入图像 imshow(f); %得到图5.2(a)的图像 w = [1 1 1; 1 1 1; 1 1 1] / 9 %滤波模板 g = imfilter(f, w, 'conv', 'replicate'); %滤波 滤波过程corr--相关 conv--卷积 figure, imshow(g); %得到5.2(b)的图像 replicate 重复的边界填充方式4 c$ }9 V' J9 L$ Y
. \0 e7 ?( k; ~' W( s0 a
0 J p1 y: V* |' Q$ E+ ~
8 r; X* f: M2 g9 Q: U: y2 _- @% _ 图像平滑可以减少和抑制图像噪声。4 H Z! o# Y: P+ x( q/ W8 S' r, m& r
8 }6 N6 ^% b W' v [! \
平均平滑% q3 n5 k9 d, u. k$ M
. Z: i) i% V, h2 q! f2 e
- I = imread('../baby_noise.bmp'); figure, imshow(I) h = fspecial('average', 3); % 3*3平均模板 I3 = imfilter(I, h, 'corr', 'replicate'); % 相关滤波,重复填充边界 figure, imshow(I3) h = fspecial('average', 5) % 5*5平均模板 I5 = imfilter(I, h, 'corr', 'replicate'); figure, imshow(I5) h = fspecial('average', 7); % 7*7平均模板 I7 = imfilter(I, h, 'corr', 'replicate'); figure, imshow(I7)$ Z6 b6 s E" t$ r* L
: D u! f) i1 @4 v. ]: V5 G
7 p: l) a$ S. k: _+ k. w9 D 高斯平滑
, p3 b" C3 b8 e2 g! K8 U
# n3 ] n/ I1 C- ~9 ?2 f- I = imread('../baby_noise.bmp'); figure, imshow(I); h3_5 = fspecial('gaussian', 3, 0.5); % sigma=0.5的3*3高斯模板 I3_5 = imfilter(I, h3_5); % 高斯平滑 figure, imshow(I3_5); h3_8 = fspecial('gaussian', 3, 0.8); % sigma=0.8的3*3高斯模板 I3_8 = imfilter(I, h3_8); figure, imshow(I3_8); h3_18 = fspecial('gaussian', 3, 1.8) % sigma=1.8的3*3高斯模板,接近于平均模板 I3_18 = imfilter(I, h3_18); figure, imshow(I3_18);( e/ z6 O: I/ }- G5 [& r
; O& ?% E2 q) Y) C
8 }5 x* s7 ^* d* ^1 \ 中值滤波
! q( f3 j$ k+ Y) D
7 B! U/ _5 d$ k& o: B- I = imread('../lena_salt.bmp'); imshow(I); J=imnoise(I,'salt & pepper');%为图像叠加椒盐噪声 figure, imshow(J); w = [1 2 1;2 4 2;1 2 1] / 16; J1=imfilter(J, w, 'corr', 'replicate'); %高斯平滑 figure, imshow(J1); w = [1 1 1;1 1 1;1 1 1] / 9; J2=imfilter(J, w, 'corr', 'replicate');%平均平滑 figure, imshow(J2); J3=medfilt2(J,[3,3]);%中值滤波 figure, imshow(J3);
& S5 _! M5 l0 W/ f1 r3 o & S1 t7 Z' t. i- ?4 I% A2 H! n0 K
& S4 @5 ^" d& n0 n! p- m. i j
% ?. e" C5 K3 q5 e+ m3 [2 n- r
1 O& } D' q0 ^$ d$ ]2 {2 O# Y( {3 H
目测 中值滤波效果最好,其为统计排序滤波器,线性平滑滤波器在降噪时不可避免的出现模糊。低于椒盐噪声,中值滤波最好。' X) _/ [3 e2 S% ?9 ~$ m+ t0 X- |
/ I) u- t0 O( N3 u- ^9 q4 l+ [+ V6 i" ?
1 q: `2 p2 D5 i3 Z1 c- M" F
图像锐化; Z" d) s6 H/ `3 v) U: k$ k
: b+ H0 w( V, u i7 F
增强图像灰度跳变部分。锐化的对象是边缘,处理不涉及噪声。 K6 f D/ j6 |( X. x \
2 t8 \9 t. @7 _+ g! P
基于一阶导数的增强。
. }! w4 [" T* E8 b1 x# k* u, `' n' P1 x7 ~7 ^
- % 基于Robert交叉梯度的图像锐化 I = imread('../bacteria.bmp'); imshow(I); I = double(I); % 转换为double型,这样可以保存负值,否则uint8型会把负值截掉 w1 = [-1 0; 0 1] w2 = [0 -1; 1 0] G1 = imfilter(I, w1, 'corr', 'replicate'); % 以重复方式填充边界 G2 = imfilter(I, w2, 'corr', 'replicate'); G = abs(G1) + abs(G2); % 计算Robert梯度 figure, imshow(G, []); figure, imshow(abs(G1), []); figure, imshow(abs(G2), []);
( m+ M$ o# H8 e) t t$ w
# X* o+ V; J. [ X Q7 O1 w- K6 i2 Z7 g/ `( {
6 w, o5 J# P/ M1 W+ g/ c0 k
基于二阶微分的增强。, ^% @% ]+ _5 I) i: P
7 B8 M- `2 I2 L9 U0 Y7 F x" r, }
- % 基于3种拉普拉斯模板的滤波 I = imread('../bacteria.bmp'); figure, imshow(I); I = double(I); w1 = [0 -1 0; -1 4 -1; 0 -1 0] L1 = imfilter(I, w1, 'corr', 'replicate'); w2 = [-1 -1 -1; -1 8 -1; -1 -1 -1] L2 = imfilter(I, w2, 'corr', 'replicate'); figure, imshow(abs(L1), []); figure, imshow(abs(L2), []); w3 = [1 4 1; 4 -20 4; 1 4 1] L3 = imfilter(I, w3, 'corr', 'replicate'); figure, imshow(abs(L3), []);, S# T; E2 r" w! z* _) X/ w
% o9 Z' m. |* i3 U* m0 [4 s9 ?, Z, B- U, S; y. X0 k6 I' x
. I. m) W2 `- `- F
高斯-拉普拉斯变换增强。
% T/ L2 Q2 J5 v9 H
+ f4 T- m- A' p" {- M+ D- LoG算子的锐化 clear all I = imread('../babyNew.bmp'); figure, imshow(I, []); %得到图5.14(a) Id = double(I); % 滤波前转化为双精度型 h_log = fspecial('log', 5, 0.5); % 大小为5,sigma=0.5的LoG算子 I_log = imfilter(Id, h_log, 'corr', 'replicate'); figure, imshow(uint8(abs(I_log)), []); h_log = fspecial('log', 5, 2); % 大小为5,sigma=2的LoG算子 I_log = imfilter(Id, h_log, 'corr', 'replicate'); figure, imshow(uint8(abs(I_log)), []);
" b, F8 ~9 X5 F: D' c. o. \ " P0 W! g1 R7 I# N8 l5 ~% g
. Y2 Q! Z" y# o: n$ P4 @! g
, K J3 G0 r! P3 b2 s! [! y |
|