找回密码
 注册
关于网站域名变更的通知
查看: 772|回复: 3
打印 上一主题 下一主题

MATLAB 空间域图像增强

[复制链接]
  • TA的每日心情

    2019-11-19 15:32
  • 签到天数: 1 天

    [LV.1]初来乍到

    跳转到指定楼层
    1#
    发表于 2021-9-1 15:52 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式

    EDA365欢迎您登录!

    您需要 登录 才可以下载或查看,没有帐号?注册

    x
    0 D; g# p# c! r
    方法包括:直方图修正,灰度变换,图像平滑化,图像锐化等。
    + S% S  e' ~2 t! N( I0 C% v; M! V5 M- l1 `/ V
        卷积时模板是相对中心点做镜像后再对F位于模板下的子图像作加权和的。只有模板本身是关于中心点对称,相关和卷积结果才会相同。
      r6 [9 g) c% k. |9 @- l9 \- @6 l  M' `# v0 Z
    • % 均值滤波  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 重复的边界填充方式. k$ V* _# A% g) f2 w
    9 O- n& t( b7 V! |. r  }2 ^% t0 R

    0 `$ t2 q. j5 m" g
    ( n( T8 O% n0 |% t7 [+ l     图像平滑可以减少和抑制图像噪声。) [% J; t1 r: k. l
    6 \# s, Q. q; P/ y7 P
         平均平滑7 C& m6 L" k# S% a9 W: d! p! u

    8 {; J7 g" q3 d8 A1 W, 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)$ v' ]" J( c4 c9 U

    * W8 U" `/ |& m3 j0 N8 w
    3 e% ^; `% ~- c4 A! q  Y  F- j: D     高斯平滑
    / A9 P+ {  @; `# c- ?% X& d" n
    ( \; R& n. i2 T7 U( d
    • 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);
      4 |& [4 L# g( Z" v$ q$ E
    6 Z+ k) z% I; o# }" x1 B) ^

    ; W3 o+ d8 L" }    中值滤波
    $ c: I0 S  _/ ^# u   
    5 f/ w' S9 M% d- ?3 \- l
    • 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);
        u2 W) R2 h; `& e$ u0 D

    , R/ k5 [- u0 ^+ {+ Z/ C! O& D
    & p3 u/ v5 L1 `0 ?! L2 W0 b9 ~; g2 N2 y

    & I! ]$ y4 g! z/ R目测 中值滤波效果最好,其为统计排序滤波器,线性平滑滤波器在降噪时不可避免的出现模糊。低于椒盐噪声,中值滤波最好。
    * _1 N& G: C# P+ W3 b: u
    1 [% U5 ]; a5 S4 b, I6 d  [/ z5 m& @. r, h8 s
    + t8 K' Z- M, \7 f# D
        图像锐化9 F% Z0 l; x# Q$ U, U- ^, f
    # t( B: p" c: V
        增强图像灰度跳变部分。锐化的对象是边缘,处理不涉及噪声。
    ' q2 C* O$ r' D3 c+ [( u+ [( U/ D; r- k  T1 q! X
    基于一阶导数的增强。
    & W9 T- p9 B6 x6 }5 c; D5 c! S; i) E: f+ }7 d6 Q
    • % 基于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), []);& O5 w- s2 ]7 n# w+ g/ ~% [8 K. [7 Y
    9 h5 X+ f* S# N; k6 @+ I9 T
    . r9 h2 q* C: j& {
    9 f& ^) A% a) ?! d
    基于二阶微分的增强。
    * u) Q" E6 M- s- B2 R0 H/ r7 I! v$ f8 ^6 u$ G
    • % 基于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), []);( o$ S) A  \. u; l6 m

    & Y! x& \2 M' m+ E' D6 R' e' h0 L& ]+ m* D" d! z

    6 u+ p- s$ r2 z% Q' z" T高斯-拉普拉斯变换增强。2 ~* m0 Z6 e; S2 M* v* s4 H

    9 f8 x' o( e" O6 d3 _5 Q) @
    • 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)), []);4 B' L2 q2 I! R. L* b) ^, s
    0 m) \6 A& E: K0 o  ~7 c6 \
    ! \2 K. h5 a0 o4 s3 E+ I* T4 i

    4 H" k2 r0 P6 n- @

    该用户从未签到

    2#
    发表于 2021-9-1 17:42 | 只看该作者
    只有模板本身是关于中心点对称,相关和卷积结果才会相同。
    1 N3 Q) f' s; k; I/ [) P# W

    该用户从未签到

    3#
    发表于 2021-9-1 18:04 | 只看该作者
    卷积时模板是相对中心点做镜像后再对F位于模板下的子图像作加权和的

    该用户从未签到

    4#
    发表于 2021-9-1 18:04 | 只看该作者
    图像平滑可以减少和抑制图像噪声
    您需要登录后才可以回帖 登录 | 注册

    本版积分规则

    关闭

    推荐内容上一条 /1 下一条

    EDA365公众号

    关于我们|手机版|EDA365电子论坛网 ( 粤ICP备18020198号-1 )

    GMT+8, 2025-10-5 02:51 , Processed in 0.125000 second(s), 26 queries , Gzip On.

    深圳市墨知创新科技有限公司

    地址:深圳市南山区科技生态园2栋A座805 电话:19926409050

    快速回复 返回顶部 返回列表