圖像增強(qiáng):主要是一種 主觀處理,而圖像復(fù)原很大程度上是一種 客觀處理。
5.1 圖像退化/復(fù)原處理的一個(gè)模型
如圖5.1 本章把圖像退化建模為一個(gè)算子 H \mathcal{H} H 該算子 與一個(gè)加性噪聲項(xiàng) η ( x , y ) η(x,y) η(x,y) 共同對(duì)輸入圖像 f ( x , y ) f(x,y) f(x,y) 進(jìn)行運(yùn)算,生成一幅退化圖像 g ( x , y ) g(x,y) g(x,y)。
如果
H
\mathcal{H}
H 是一個(gè)線性位置不變算子,那么空間域中的退化圖像為:
g ( x , y ) = h ( x , y ) ? f ( x , y ) + η ( x , y ) (5.1) g(x, y)=h(x, y) \star f(x, y)+\eta(x, y)\tag{5.1} g(x,y)=h(x,y)?f(x,y)+η(x,y)(5.1)
由空間域卷積定理可知,式(5.1)在頻率域中的等效公式為:
G
(
u
,
v
)
=
H
(
u
,
v
)
F
(
u
,
v
)
+
N
(
u
,
v
)
G(u, v)=H(u, v) F(u, v)+N(u, v)
G(u,v)=H(u,v)F(u,v)+N(u,v)
5.2 噪聲模型
5.2.1 噪聲的空間和頻率特性
當(dāng)噪聲的傅里葉譜是常量時(shí),這類(lèi)噪聲通常稱(chēng)為白噪聲。
除了空間周期噪聲(5.2.3節(jié), 教材P225)之外,本章假設(shè)噪聲與空間坐標(biāo)無(wú)關(guān),并且與圖像本身也不相關(guān)。
5.2.2 6種重要的噪聲概率密度函數(shù)
5.3 只存在噪聲的復(fù)原——空間濾波
5.3.1 均值濾波器
- 算術(shù)平均濾波器(最簡(jiǎn)單的均值濾波器)
f ^ ( x , y ) = 1 m n ∑ ( r , c ) ∈ S x y g ( r , c ) \hat{f}(x, y)=\frac{1}{m n} \sum_{(r, c) \in S_{x y}} g(r, c) f^?(x,y)=mn1?(r,c)∈Sxy?∑?g(r,c)
均值濾波平滑圖像中的局部變化,會(huì)降低圖像噪聲,但會(huì)模糊圖像。
%-------------------大小為5x5的算術(shù)平均濾波器--------------%
kernel = ones(5,5)/25;
g1=imfilter(f,kernel);
figure; imshow(g1);
imwrite(g1,'3×3 算術(shù)均值濾波圖像.tif');
- 幾何均值濾波器
f ^ ( x , y ) = [ ∏ ( r , c ) ∈ S x y g ( r , c ) ] 1 m n \hat{f}(x, y)=\left[\prod_{(r, c) \in S_{x y}} g(r, c)\right]^{\frac{1}{m n}} f^?(x,y)= ?(r,c)∈Sxy?∏?g(r,c) ?mn1?
幾何均值濾波器實(shí)現(xiàn)的平滑可與算術(shù)平均濾波器相比,但損失的圖像細(xì)節(jié)更少。“幾何”二字來(lái)源于圓上的弦長(zhǎng)。幾何均值會(huì)略微懲罰偏離均值的成分。
gp = zeros(M+4, N+4);
gp(3:M+2,3:N+2) = f;
gp(1,:) = gp(3,:); %用圖像最外層的值擴(kuò)展
gp(2,:) = gp(3,:);
gp(M+4,:)=gp(M+2,:);
gp(M+3,:)=gp(M+2,:);
gp(:,2)=gp(:,3);
gp(:,1)=gp(:,3);
gp(:,N+4)=gp(:,N+2);
gp(:,N+3)=gp(:,N+2);
g2 = zeros(M, N);
for x = 3:M+2
for y = 3:N+2
g_gmf = 1;
for i = -2:2
for j = -2:2
g_gmf = g_gmf*gp(x+i,y+j);
end
end
g2(x-2,y-2)=g_gmf;
end
end
g2=g2.^(1/9);
g2=im2uint8(g2);
figure; imshow(g2);
imwrite(g2,'5×5 幾何均值濾波圖像.tif');
- 諧波平均濾波器
f ^ ( x , y ) = m n ∑ ( r , c ) ∈ S x y 1 g ( r , c ) \hat{f}(x, y)=\frac{m n}{\sum_{(r, c) \in S_{x y}} \frac{1}{g(r, c)}} f^?(x,y)=∑(r,c)∈Sxy??g(r,c)1?mn?
能處理類(lèi)似于高斯噪聲的其他噪聲、鹽粒噪聲(√),但不能處理胡椒噪聲(×)。因?yàn)檎{(diào)和平均數(shù)會(huì)劇烈的懲罰偏離平均值的較低值,會(huì)導(dǎo)致圖片整體偏暗。(調(diào)和均值)
- 反諧波平均濾波器
f ^ ( x , y ) = ∑ ( r , c ) ∈ S x y g ( r , c ) Q + 1 ∑ ( r , c ) ∈ S x y g ( r , c ) Q \hat{f}(x, y)=\frac{\sum_{(r, c) \in S_{x y}} g(r, c)^{Q+1}}{\sum_{(r, c) \in S_{x y}} g(r, c)^{Q}} f^?(x,y)=∑(r,c)∈Sxy??g(r,c)Q∑(r,c)∈Sxy??g(r,c)Q+1?
其中, Q Q Q 稱(chēng)為濾波器的階數(shù)。適用于降低或消除椒鹽噪聲。如果 Q Q Q 的符號(hào)選擇錯(cuò)誤 會(huì)引起災(zāi)難性的后果。
5.3.2 統(tǒng)計(jì)排序?yàn)V波器
- 中值濾波器(最著名的統(tǒng)計(jì)排序?yàn)V波器)
f ^ ( x , y ) = median ? ( r , c ) ∈ S x y { g ( r , c ) } \hat{f}(x, y)=\operatorname{median}_{(r, c) \in S_{x y}}\{g(r, c)\} f^?(x,y)=median(r,c)∈Sxy??{g(r,c)}
與相同尺寸的線性平滑濾波器相比,中值濾波器能有效降低某些隨機(jī)噪聲,且模糊度要小得多。對(duì)于單極和雙極沖激噪聲,中值濾波器效果更好。
% 1. 讀取圖像
img = imread('2.被加性均勻噪聲和椒鹽噪聲污染的圖像.tif');
% 2. 檢查圖像是否為彩色圖像,如果是,則將其轉(zhuǎn)換為灰度圖像
if ndims(img) == 3
img_gray = rgb2gray(img);
else
img_gray = img;
end
% 3. 對(duì)灰度圖像應(yīng)用5x5中值濾波器
filtered_img = medfilt2(img_gray, [5, 5]);
% 4. 顯示原始圖像和處理后的圖像
figure;
subplot(1, 2, 1);
imshow(img_gray);
title('Original Image');
subplot(1, 2, 2);
imshow(filtered_img);
title('Filtered Image with Median Filter');
% 5. 保存處理后的圖像
imwrite(filtered_img, 'output_image.jpg');
- 最大值和最小值濾波器
分別是為了降低胡椒噪聲和鹽粒噪聲。
- 中點(diǎn)濾波器
f ^ ( x , y ) = 1 2 [ max ? ( r , c ) ∈ S x y { g ( r , c ) } + min ? ( r , c ) ∈ S x y { g ( r , c ) } ] \hat{f}(x, y)=\frac{1}{2}\left[\max _{(r, c) \in S_{x y}}\{g(r, c)\}+\min _{(r, c) \in S_{x y}}\{g(r, c)\}\right] f^?(x,y)=21?[(r,c)∈Sxy?max?{g(r,c)}+(r,c)∈Sxy?min?{g(r,c)}]
計(jì)算濾波器包圍區(qū)域中最大值和最小值之間的中點(diǎn)。
- 修正阿爾法均值濾波器
f ^ ( x , y ) = 1 m n ? d ∑ ( r , c ) ∈ S x y g R ( r , c ) , 0 ≤ d ≤ m n ? 1 \hat{f}(x, y)=\frac{1}{m n-d} \sum_{(r, c) \in S_{x y}} g_{R}(r, c), \quad 0 \leq d \leq m n-1 f^?(x,y)=mn?d1?(r,c)∈Sxy?∑?gR?(r,c),0≤d≤mn?1
適用于處理多種混合噪聲。
% 1. 讀取圖像
img = imread('input_image.jpg');
% 2. 檢查圖像是否為彩色圖像,如果是,則將其轉(zhuǎn)換為灰度圖像
if ndims(img) == 3
img_gray = rgb2gray(img);
else
img_gray = img;
end
% 3. 對(duì)灰度圖像應(yīng)用5x5修正阿爾法均值濾波器 (d = 6)
filtered_img = modified_alpha_trimmed_mean_filter(img_gray, 5, 6);
% 4. 顯示原始圖像和處理后的圖像
figure;
subplot(1, 2, 1);
imshow(img_gray);
title('Original Image');
subplot(1, 2, 2);
imshow(filtered_img);
title('Filtered Image with Modified Alpha-trimmed Mean Filter');
% 5. 保存處理后的圖像
imwrite(filtered_img, 'output_image.jpg');
function output_img = modified_alpha_trimmed_mean_filter(img, filter_size, d)
img = double(img);
[rows, cols] = size(img);
output_img = zeros(rows, cols);
pad_size = floor(filter_size / 2);
padded_img = padarray(img, [pad_size pad_size], 'replicate');
for i = 1:rows
for j = 1:cols
window = padded_img(i:i+filter_size-1, j:j+filter_size-1);
window_sorted = sort(window(:));
output_img(i, j) = mean(window_sorted(d/2 + 1:end - d/2));
end
end
output_img = uint8(output_img);
end
5.5 線性位置不變退化
一個(gè)算子對(duì)于任意 f ( x , y ) f(x,y) f(x,y)、 α \alpha α、 β \beta β,如果
H [ f ( x ? α , y ? β ) ] = g ( x ? α , y ? β ) \mathcal{H}[f(x-\alpha, y-\beta)]=g(x-\alpha, y-\beta) H[f(x?α,y?β)]=g(x?α,y?β)
則稱(chēng)具有輸入/輸出關(guān)系為線性位置不變退化,該定義說(shuō)明:圖像中任意一點(diǎn)處的響應(yīng)只取決于該點(diǎn)處的輸入值,而與該點(diǎn)的位置無(wú)關(guān)。
5.6 估計(jì)退化函數(shù)
觀察法、試驗(yàn)法、建模法
5.7 逆濾波
原圖像傅里葉變換的一個(gè)估計(jì):
F ^ ( u , v ) = F ( u , v ) + N ( u , v ) H ( u , v ) \hat{F}(u, v)=F(u, v)+\frac{N(u, v)}{H(u, v)} F^(u,v)=F(u,v)+H(u,v)N(u,v)?
即使知道退化函數(shù) H ( u , v ) H(u, v) H(u,v),也不能準(zhǔn)確復(fù)原未退化的圖像,因?yàn)? N ( u , v ) N(u, v) N(u,v) 未知。如果退化函數(shù) H ( u , v ) H(u, v) H(u,v) 是零或是非常小的值,則 N ( u , v ) / H ( u , v ) N(u,v)/H(u, v) N(u,v)/H(u,v) 很容易支配 F ( u , v ) F(u, v) F(u,v) 項(xiàng)。
close all; clear all; clc;
f = imread('3.大小為480×480的模糊圖像.tif');
figure; imshow(f);
f=im2double(f);
[M, N] = size(f);
F= fft2(f);
Fc=fftshift(F);
[v, u]=meshgrid(1:N, 1:M);
H=exp(-0.0025*((u-M/2).^2+(v-N/2).^2).^(5/6));
G=Fc./(H+eps);
G1=ifftshift(G);
g1=ifft2(G1);
figure; imshow(g1, []);
使用10階Butterworth濾波器:
%---------截止半徑設(shè)置為 40---------%
H2= zeros(M,N);
D0 = 40;
for x = 1:1:M
for y = 1:1:N
D = ((x-M/2)^2 + (y-N/2)^2)^(0.5);
H2(x,y) = 1/(1+(D/D0)^20);
end
end
G2=G.*H2;
G2=ifftshift(G2);
g2=ifft2(G2);
subplot(131); imshow(g2, []);title('截止半徑為40');
5.8 最小均方誤差(維納)濾波
F ^ ( u , v ) = [ H ? ( u , v ) S f ( u , v ) S f ( u , v ) ∣ H ( u , v ) ∣ 2 + S η ( u , v ) ] G ( u , v ) = [ H ? ( u , v ) ∣ H ( u , v ) ∣ 2 + S η ( u , v ) / S f ( u , v ) ] G ( u , v ) = [ 1 H ( u , v ) ∣ H ( u , v ) ∣ 2 ∣ H ( u , v ) ∣ 2 + S η ( u , v ) / S f ( u , v ) ] G ( u , v ) \begin{aligned} \hat{F}(u, v) & =\left[\frac{H^{*}(u, v) S_{f}(u, v)}{S_{f}(u, v)|H(u, v)|^{2}+S_{\eta}(u, v)}\right] G(u, v)=\left[\frac{H^{*}(u, v)}{|H(u, v)|^{2}+S_{\eta}(u, v) / S_{f}(u, v)}\right] G(u, v) \\ & =\left[\frac{1}{H(u, v)} \frac{|H(u, v)|^{2}}{|H(u, v)|^{2}+S_{\eta}(u, v) / S_{f}(u, v)}\right] G(u, v) \end{aligned} F^(u,v)?=[Sf?(u,v)∣H(u,v)∣2+Sη?(u,v)H?(u,v)Sf?(u,v)?]G(u,v)=[∣H(u,v)∣2+Sη?(u,v)/Sf?(u,v)H?(u,v)?]G(u,v)=[H(u,v)1?∣H(u,v)∣2+Sη?(u,v)/Sf?(u,v)∣H(u,v)∣2?]G(u,v)?
若噪聲為零則噪聲功率譜消失 維納濾波器簡(jiǎn)化為 逆濾波器。
function restored_img = wiener_filter(noisy_img, H, noise_variance)
G = fft2(noisy_img);
Gc=fftshift(G);
H_conj = conj(H);
S = abs(H).^2;
F = (H_conj ./ (S + 0.01)) .* Gc;
restored_img = ifft2(ifftshift(F));
end
5.9 約束最小二乘方濾波
function restored_img = constrained_least_squares_filter(noisy_img, H, noise_variance)
G = fft2(noisy_img);
Gc=fftshift(G);
[M,N]=size(noisy_img);
p_lpls = zeros(M,N);
p= [ 0 -1 0; -1 4 -1; 0 -1 0];
p_lpls(1:3,1:3) = p;
P= fft2(p_lpls);
Pc=fftshift(P);
H_conj = conj(H);
S_1 = abs(H).^2;
S_2=abs(Pc).^2;
F = (H_conj ./ (S_1 + 0.01.*S_2)) .* Gc;
restored_img = ifft2(ifftshift(F));
end
5.10 幾何均值濾波
5.11 評(píng)價(jià)復(fù)原圖像質(zhì)量的測(cè)度
空間域信噪比:
S N R = ∑ x = 0 M ? 1 ∑ y = 0 N ? 1 [ f ^ ( x , y ) ] 2 / ∑ x = 0 M ? 1 ∑ y = 0 N ? 1 [ f ( x , y ) ? f ^ ( x , y ) ] 2 \mathrm{SNR}=\sum_{x=0}^{M-1} \sum_{y=0}^{N-1}[\hat{f}(x, y)]^{2} / \sum_{x=0}^{M-1} \sum_{y=0}^{N-1}[f(x, y)-\hat{f}(x, y)]^{2} SNR=x=0∑M?1?y=0∑N?1?[f^?(x,y)]2/x=0∑M?1?y=0∑N?1?[f(x,y)?f^?(x,y)]2
頻率域信噪比:
S
N
R
=
∑
u
=
0
M
?
1
∑
v
=
0
N
?
1
∣
F
(
u
,
v
)
∣
2
/
∑
u
=
0
M
?
1
∑
v
=
0
N
?
1
∣
N
(
u
,
v
)
∣
2
\mathrm{SNR}=\sum_{u=0}^{M-1} \sum_{v=0}^{N-1}|F(u, v)|^{2} / \sum_{u=0}^{M-1} \sum_{v=0}^{N-1}|N(u, v)|^{2}
SNR=u=0∑M?1?v=0∑N?1?∣F(u,v)∣2/u=0∑M?1?v=0∑N?1?∣N(u,v)∣2
均方誤差:
M
S
E
=
1
M
N
∑
x
=
0
M
?
1
∑
y
=
0
N
?
1
[
f
(
x
,
y
)
?
f
^
(
x
,
y
)
]
2
\mathrm{MSE}=\frac{1}{M N} \sum_{x=0}^{M-1} \sum_{y=0}^{N-1}[f(x, y)-\hat{f}(x, y)]^{2}
MSE=MN1?x=0∑M?1?y=0∑N?1?[f(x,y)?f^?(x,y)]2
5.21
g ( x , y ) = ∫ ? ∞ ∞ ∫ ? ∞ ∞ f ( α , β ) h ( x ? α , y ? β ) d α d β (5.61) g(x, y)=\int_{-\infty}^{\infty} \int_{-\infty}^{\infty} f(\alpha, \beta) h(x-\alpha, y-\beta) d \alpha d \beta\tag{5.61} g(x,y)=∫?∞∞?∫?∞∞?f(α,β)h(x?α,y?β)dαdβ(5.61)
經(jīng)過(guò)簡(jiǎn)單的推導(dǎo),我們可以得到下面的結(jié)果:
g ( x , y ) = ∫ ? ∞ ∞ ∫ ? ∞ ∞ δ ( α ? a ) e ? [ ( x ? α ) 2 + ( y ? β ) 2 ] d α d β = ∫ ? ∞ ∞ ∫ ? ∞ ∞ δ ( α ? a ) e ? [ ( x ? α ) 2 ] e ? [ ( y ? β ) 2 ] d α d β = ∫ ? ∞ ∞ δ ( α ? a ) e ? [ ( x ? α ) 2 ] d α ∫ ? ∞ ∞ e ? [ ( y ? β ) 2 ] d β = e ? ( x ? a ) 2 ∫ ? ∞ ∞ e ? [ ( y ? β ) 2 ] d β = π e ? [ ( x ? a ) 2 ] \begin{aligned} g(x, y) & =\int_{-\infty}^{\infty} \int_{-\infty}^{\infty} \delta(\alpha-a) e^{-\left[(x-\alpha)^{2}+(y-\beta)^{2}\right]} d \alpha d \beta \\ & =\int_{-\infty}^{\infty} \int_{-\infty}^{\infty} \delta(\alpha-a) e^{-\left[(x-\alpha)^{2}\right]} e^{-\left[(y-\beta)^{2}\right]} d \alpha d \beta \\ & =\int_{-\infty}^{\infty} \delta(\alpha-a) e^{-\left[(x-\alpha)^{2}\right]} d \alpha \int_{-\infty}^{\infty} e^{-\left[(y-\beta)^{2}\right]} d \beta \\ & =e^{-(x-a)^{2}} \int_{-\infty}^{\infty} e^{-\left[(y-\beta)^{2}\right]} d \beta\\ &=\sqrt{\pi} e^{-\left[(x-a)^{2}\right]} \end{aligned} g(x,y)?=∫?∞∞?∫?∞∞?δ(α?a)e?[(x?α)2+(y?β)2]dαdβ=∫?∞∞?∫?∞∞?δ(α?a)e?[(x?α)2]e?[(y?β)2]dαdβ=∫?∞∞?δ(α?a)e?[(x?α)2]dα∫?∞∞?e?[(y?β)2]dβ=e?(x?a)2∫?∞∞?e?[(y?β)2]dβ=π?e?[(x?a)2]?文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-470428.html
可以看出來(lái)得到的圖片是原圖片的一個(gè)模糊版本。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-470428.html
到了這里,關(guān)于岡薩雷斯DIP第5章知識(shí)點(diǎn)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!