圖像處理和降噪(包括VisuShrink閾值、均值、中值和NL均值濾波以及加權平均融合進行小波去噪,Python)
圖像降噪是小波變換的重要應用之一,通過結合 VisuShrink閾值、均值濾波、中值濾波等技術,可以在保留圖像細節的同時有效去除噪聲。
小波去噪基礎流程
小波去噪的核心思想是利用小波變換的多分辨率特性,將圖像分解為不同頻率的子帶(低頻近似 + 高頻細節),通過處理高頻子帶中的噪聲系數,再重構得到降噪圖像。基本步驟如下:
- 小波分解:將含噪圖像分解為多級小波系數(如使用Daubechies小波)。
- 閾值處理:對高頻子帶(水平、垂直、對角線方向)的系數進行閾值處理。
- 濾波增強:結合空間域濾波(均值、中值、NL-means)優化局部或全局噪聲。
- 加權融合:對不同方法處理后的子帶進行加權融合。
- 小波重構:將處理后的系數逆變換為降噪圖像。
- 關鍵方法
方法 | 原理與特點 | 在小波去噪中的作用 |
VisuShrink閾值 | 基于Donoho提出的通用閾值 ?=?2ln?? | 處理高頻子帶中的噪聲小波系數,抑制低幅值噪聲。 |
均值濾波 | 局部窗口內像素灰度值的均值,平滑噪聲但模糊邊緣。 | 優化低頻近似子帶,減少全局噪聲。 |
中值濾波 | 局部窗口內像素灰度值的中位數,對脈沖噪聲(椒鹽噪聲)有效。 | 處理高頻子帶中的孤立噪聲點,保護邊緣。 |
NL-means濾波 | 利用圖像非局部相似性,通過加權相似塊進行降噪,保留細節但計算量大。 | 增強高頻細節子帶的紋理保留能力,減少塊效應。 |
加權平均融合 | 對不同方法處理的子帶賦予動態權重(如基于局部方差或邊緣強度),平衡去噪與細節保留。 | 融合多方法優勢,提升整體降噪效果。 |
應用領域與典型案例
1. 醫學影像處理
- 場景:MRI、CT圖像中的高斯噪聲與斑點噪聲去除。
- 方法組合:
a.使用Symlets小波分解,高頻子帶采用VisuShrink閾值 + 中值濾波;
b.低頻子帶采用NL-means濾波保留組織結構細節;
c.權重融合時賦予低頻子帶更高權重()。
- 優勢:在抑制噪聲的同時保護病灶邊緣(如腫瘤輪廓)。
2. 衛星遙感圖像
- 場景:多光譜圖像中的混合噪聲(高斯+脈沖)。
- 方法組合:
a.高頻子帶采用VisuShrink閾值 + 中值濾波消除脈沖噪聲;
b.低頻子帶使用均值濾波平滑背景;
c.加權融合時根據波段特性調整權重(如近紅外波段側重NL-means)。
- 優勢:提升地物分類精度(如農田與森林的邊界清晰度)。
3. 低光攝影降噪
- 場景:手機或相機在低光照環境下拍攝的高ISO噪聲圖像。
- 方法組合:
a.高頻子帶使用VisuShrink閾值 + 中值濾波;
b.低頻子帶采用NL-means濾波保留紋理;
c.動態權重:邊緣區域增加NL-means權重,平坦區域增加均值權重。
- 優勢:減少噪點同時避免過度平滑(如人臉膚質細節保留)。
4. 工業檢測
- 場景:金屬表面缺陷檢測中的高噪聲干擾。
- 方法組合:
a.高頻子帶使用硬閾值(Hard Thresholding)突出缺陷邊緣;
b.低頻子帶采用中值濾波消除背景紋理噪聲;
c.融合時通過邊緣檢測圖動態分配權重。
- 優勢:提升缺陷檢測的信噪比(如裂紋與劃痕的識別率)。
性能對比與改進方向
方法 | 優點 | 缺點 | 改進策略 |
VisuShrink閾值 | 計算簡單,適合高斯噪聲。 | 易過度平滑細節。 | 結合自適應閾值(如BayesShrink)。 |
均值濾波 | 快速平滑均勻噪聲。 | 模糊邊緣。 | 與邊緣保護濾波器(如雙邊濾波)結合。 |
中值濾波 | 有效去除脈沖噪聲。 | 對高斯噪聲效果差。 | 級聯多級濾波(如先中值后小波)。 |
NL-means濾波 | 保留紋理細節。 | 計算復雜度高。 | 塊匹配加速(如積分圖像法)。 |
加權融合 | 平衡多方法優勢。 | 權重選擇依賴經驗。 | 基于深度學習的自適應權重分配。 |
分割線分割線分割線分割線分割線分割線分割線分割線分割線分割線分割線分割線
圖像處理和降噪(包括VisuShrink閾值、、均值、中值和NL均值濾波以及加權平均融合進行小波去噪,Python)
import os
import math
import warnings
import numpy as np
from tabulate import tabulate
import matplotlib.pyplot as plt
from scipy.ndimage import gaussian_filter, median_filter
from skimage.transform import resize
from skimage.metrics import mean_squared_error, structural_similarity as ssim
from skimage.restoration import denoise_nl_means, denoise_tv_chambolle, denoise_bilateral, denoise_wavelet
完整代碼:??https://mbd.pub/o/bread/mbd-aJWXm5hv??
本文轉載自??高斯的手稿??
