国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)

這篇具有很好參考價(jià)值的文章主要介紹了數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

一、圖像退化

一般來說,圖像的退化模型可以表示為
數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)

其中g(shù)(x,y) 表示退化后的圖像,h(x,y)表示退化模型,f(x,y)表示原圖像,n(x,y)表示噪聲。
在頻域上面可以表示為
數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)

下面介紹常見的兩種退化模型:基于大氣湍流物理特性的大氣湍流模型和運(yùn)動(dòng)模糊模型。

1.大氣湍流模型

退化模型:
數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)

伴隨著k值的增大,得到的圖像越來越模糊,一般情況下:k=0.0025劇烈湍流;k=0.001中等湍流;k=0.00025低湍流。
偽代碼:
{
讀取圖片;
轉(zhuǎn)成double型;
轉(zhuǎn)換到頻域空間;
頻譜移到中心;

使用模型執(zhí)行退化;
退化模型與原圖像相乘求退化后圖像;
進(jìn)行傅里葉反變換即可。
}

代碼如下:

%% 讀取圖像
image=imread('demo-1.jpg');
subplot(231);
imshow(image);
title('原圖像');
f=im2double(image);
 
%% 劇烈大氣湍流退化模型
F=fft2(f);%換到頻域,信號(hào)在低頻,噪聲在高頻
F=fftshift(F);%頻譜移到矩陣中心
%執(zhí)行
[W,H]=size(F);
[u,v]=meshgrid(1:W,1:H);%生成矩陣
H_turbulence=exp(-0.0025* ( (u-W/2).^2+(v-H/2).^2).^(5/6) );
F=F.*H_turbulence;
%傅里葉反變換
X=ifftshift(F);
turimg=ifft2(X);
turimg=uint8(abs(turimg)*256);
subplot(232);
imshow(turimg);
title('退化圖像');

2.運(yùn)動(dòng)模糊模型

退化模型:
數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)

其中T=1, a=0.1, b=0.1。

加性噪聲——高斯噪聲:

noise=imnoise(motion_blur,'gaussian',noise_mean,noise_var);
noise_mean=0,noise_var=0.01
代碼如下:
pic=imread('demo-1.jpg'); 
figure('name','demo2');
subplot(231);imshow(pic);title('原圖像');
pic=im2double(pic); 
[width,height]=size(pic);
%% 運(yùn)動(dòng)模糊(+噪聲
H_motion = fspecial('motion', 28, 90);%運(yùn)動(dòng)長(zhǎng)度為28,逆時(shí)針運(yùn)動(dòng)角度為90°
motion_blur = imfilter(pic, H_motion, 'conv', 'circular');%卷積濾波
noise_mean=0;  %添加均值為0
noise_var=0.001; %方差為0.001的高斯噪聲
motion_blur_noise=imnoise(motion_blur,'gaussian',noise_mean,noise_var);
subplot(232);imshow(motion_blur,[]);title('運(yùn)動(dòng)模糊');
subplot(233);imshow(motion_blur_noise,[]);title('運(yùn)動(dòng)模糊加噪聲');

二、圖像復(fù)原

1.逆濾波

使用退化函數(shù)處理圖像,然后加上適當(dāng)?shù)目杉有栽肼暭纯赡鏋V波實(shí)驗(yàn)。已獲得退化函數(shù)后,用退化函數(shù)除退化圖像的傅里葉變換計(jì)算原始圖像傅里葉變換的估計(jì):
數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)

即使知道退化函數(shù),也不能準(zhǔn)確的復(fù)原未退化的圖像;如果退化函數(shù)是0或者是很小的值,噪聲容
易被放大。
實(shí)現(xiàn)思路:
由于H(0,0)在頻率域中通常是H(u, v)的最高值。因此,通過將頻率限制在原點(diǎn)附近分析,就減少了遇
到零值的概率。
偽代碼:
{
將信號(hào)頻譜集中于低頻區(qū)域,噪聲集中于高頻區(qū)域;
頻譜移到矩陣中心;
以頻譜中心為圓心,內(nèi)部直接逆濾波,外部賦值為0
}
代碼如下:

%% 逆濾波復(fù)原
fourier_H=fft2(H_motion,width,height);  %統(tǒng)一大小
fourier_degrade_img1=fft2(motion_blur);    %G(u,v)=H(u,v)F(u,v),已知G(u,v),H(u,v),求F(u,v)
restore_one=ifft2(fourier_degrade_img1./fourier_H); h=fspecial('gaussian',width,5);
restore_three=imfilter(restore_one,h,'conv','circular');
subplot(234);imshow(im2uint8(restore_three),[]);title('逆濾波+運(yùn)動(dòng)模糊');
 
fourier_degrade_img2=fft2(motion_blur_noise); %G(u,v)=H(u,v)F(u,v)+N(u,v)
restore_two=ifft2(fourier_degrade_img2./fourier_H);
restore_four=imfilter(restore_two,h,'conv','circular');
subplot(235);imshow(im2uint8(restore_four),[]);title('逆濾波+運(yùn)動(dòng)模糊加噪聲');

2.維納濾波

數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)
數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)

重點(diǎn)在于尋找信噪比。

代碼如下:

%% 維納濾波
fourier_H_motion=fft2(H_motion,width,height);  %H(u,v)
pow_H_motion=abs(fourier_H_motion).^2;   %|H(u,v)|^2
noise=motion_blur_noise-motion_blur;    %提取噪聲分量
fourier_noise=fft2(noise);    % N(u,v)  噪聲傅里葉變換
fourier_double_gray_pic=fft2(pic);  %F(u,v)為未經(jīng)過退化的圖片
nsr=abs(fourier_noise).^2./abs(fourier_double_gray_pic).^2;   %噪信比=|N(u,v)|^2/|F(u,v)|^2
H_w=1./fourier_H_motion.*pow_H_motion./(pow_H_motion+nsr); %H_w(u,v)=1/H(u,v)*|H(u,v)|^2/[|H(u,v)|^2+NSR] 
fourier_motion_blur_noise=fft2(motion_blur_noise);  %G(u,v)
restore_with_noise=ifft2(fourier_motion_blur_noise.*H_w);  %輸出頻域=G(u,v)H_w(u,v),時(shí)域?yàn)轭l域傅里葉逆變換
subplot(236);imshow(restore_with_noise,[]);title('維納濾波')

三、實(shí)現(xiàn)結(jié)果

數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)
數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)
數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)
數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)

四、附錄

1.圖片
demo-1.jpg
數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)
demo-2.jpg
數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)
myMatlab.m

clc;        
clear;       
close all;
%% 官方運(yùn)動(dòng)模糊+維納濾波
I = im2double(imread('demo-1.jpg'));
figure,subplot(2,3,1),imshow(I);
title('原圖');

%運(yùn)動(dòng)模糊
LEN = 28;
THETA = 90;
PSF = fspecial('motion', LEN, THETA);
blurred = imfilter(I, PSF, 'conv', 'circular');
subplot(2,3,2),imshow(blurred);
title('運(yùn)動(dòng)模糊退化');

wnr1 = deconvwnr(blurred, PSF, 0);
subplot(2,3,3),imshow(wnr1);
title('運(yùn)動(dòng)模糊復(fù)原');

%運(yùn)動(dòng)模糊+噪聲
noise_mean = 0;
noise_var = 0.0001;
blurred_noisy = imnoise(blurred, 'gaussian', ...
                        noise_mean, noise_var);
subplot(2,3,4),imshow(blurred_noisy)
title('運(yùn)動(dòng)模糊+噪聲')

wnr2 = deconvwnr(blurred_noisy, PSF, 0);
subplot(2,3,5),imshow(wnr2)
title('模糊+噪聲 逆濾波');
signal_var = var(I(:));
wnr3 = deconvwnr(blurred_noisy, PSF, noise_var / signal_var);
subplot(2,3,6),imshow(wnr3)
title('模糊+噪聲 維納濾波');

mymotion.m

clc;         
clear;       
close all;   
pic=imread('demo-1.jpg'); 
figure('name','demo2');
subplot(231);imshow(pic);title('原圖像');
pic=im2double(pic); 
[width,height]=size(pic);

%% 運(yùn)動(dòng)模糊(+噪聲
H_motion = fspecial('motion', 28, 90);%運(yùn)動(dòng)長(zhǎng)度為28,逆時(shí)針運(yùn)動(dòng)角度為90°
motion_blur = imfilter(pic, H_motion, 'conv', 'circular');%卷積濾波
noise_mean=0;  %添加均值為0
noise_var=0.001; %方差為0.001的高斯噪聲
motion_blur_noise=imnoise(motion_blur,'gaussian',noise_mean,noise_var);
subplot(232);imshow(motion_blur,[]);title('運(yùn)動(dòng)模糊');
subplot(233);imshow(motion_blur_noise,[]);title('運(yùn)動(dòng)模糊加噪聲');

%% 逆濾波復(fù)原
fourier_H=fft2(H_motion,width,height);  %變大小
fourier_degrade_img1=fft2(motion_blur);    % G(u,v)=H(u,v)F(u,v),已知G(u,v),H(u,v),求F(u,v)
restore_1=ifft2(fourier_degrade_img1./fourier_H);  % 
h=fspecial('gaussian',width,5);
restore_2=imfilter(restore_1,h,'conv','circular');
subplot(234);imshow(im2uint8(restore_2),[]);title('逆濾波+運(yùn)動(dòng)模糊');

fourier_degrade_img2=fft2(motion_blur_noise); %G(u,v)=H(u,v)F(u,v)+N(u,v)
restore_3=ifft2(fourier_degrade_img2./fourier_H);
restore_4=imfilter(restore_3,h,'conv','circular');
subplot(235);imshow(im2uint8(restore_4),[]);title('逆濾波+運(yùn)動(dòng)模糊加噪聲');

%% 維納濾波
fourier_H_motion=fft2(H_motion,width,height);  %H(u,v)
pow_H_motion=abs(fourier_H_motion).^2;   %|H(u,v)|^2
noise=motion_blur_noise-motion_blur;    %提取噪聲分量
fourier_noise=fft2(noise);    % N(u,v)  噪聲傅里葉變換
fourier_double_gray_pic=fft2(pic);  %F(u,v)為未經(jīng)過退化的圖片
nsr=abs(fourier_noise).^2./abs(fourier_double_gray_pic).^2;   %噪信比=|N(u,v)|^2/|F(u,v)|^2
H_w=1./fourier_H_motion.*pow_H_motion./(pow_H_motion+nsr); %H_w(u,v)=1/H(u,v)*|H(u,v)|^2/[|H(u,v)|^2+NSR] 
fourier_motion_blur_noise=fft2(motion_blur_noise);  %G(u,v)
restore_with_noise=ifft2(fourier_motion_blur_noise.*H_w);  %輸出頻域=G(u,v)H_w(u,v),時(shí)域?yàn)轭l域傅里葉逆變換
subplot(236);imshow(restore_with_noise,[]);title('維納濾波')

myturbulence.m文章來源地址http://www.zghlxwxcb.cn/news/detail-445459.html

clc;
clear;
close all;
%% 讀取圖像
image=imread('demo-2.jpg');
subplot(231);
imshow(image);
title('原圖像');
f=im2double(image);

%% 劇烈大氣湍流退化模型
F=fft2(f);%換到頻域,信號(hào)在低頻,噪聲在高頻
F=fftshift(F);%頻譜移到矩陣中心
%執(zhí)行
[W,H]=size(F);
[u,v]=meshgrid(1:W,1:H);%生成矩陣
H_turbulence=exp(-0.0025* ( (u-W/2).^2+(v-H/2).^2).^(5/6) );
F=F.*H_turbulence;
%傅里葉反變換
X=ifftshift(F);
turimg=ifft2(X);
turimg=uint8(abs(turimg)*256);
subplot(232);
imshow(turimg);
title('大氣湍流退化');

%% 直接逆濾波
FDeblurred=F./H;
IDeblurred=real(ifft2(ifftshift(FDeblurred)));
subplot(233), imshow(uint8(255.*mat2gray(IDeblurred)));
title('直接逆濾波');

到了這里,關(guān)于數(shù)字圖像處理——圖像退化(大氣湍流模型與運(yùn)動(dòng)模糊模型)與圖像復(fù)原(逆濾波與維納濾波)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 數(shù)字圖像處理--六、圖像壓縮

    數(shù)字圖像處理--六、圖像壓縮

    目錄 1.基本概念 1.1 圖像壓縮概念及其分類 1.2 數(shù)據(jù)冗余 1.3 圖像信息的度量 1.4 圖像保真度準(zhǔn)則 (Fidelity Criteria) 1.5 圖像壓縮模型 2.圖像壓縮方法 2.1Huffman編碼 消除編碼冗余 2.2算術(shù)編碼?(Arithmetic Coding) 消除編碼冗余 2.3LZW編碼?(Lempel-Ziv-Welch coding) 2.4位平面編碼 2.5預(yù)測(cè)編碼 預(yù)測(cè)

    2024年02月12日
    瀏覽(89)
  • 數(shù)字信號(hào)與圖像處理實(shí)驗(yàn)三:圖像處理基礎(chǔ)與圖像變換

    數(shù)字信號(hào)與圖像處理實(shí)驗(yàn)三:圖像處理基礎(chǔ)與圖像變換

    ? 通過本實(shí)驗(yàn)加深對(duì)數(shù)字圖像的理解,熟悉MATLAB中的有關(guān)函數(shù);應(yīng)用DCT對(duì)圖像進(jìn)行變換;熟悉圖像常見的統(tǒng)計(jì)指標(biāo),實(shí)現(xiàn)圖像幾何變換的基本方法。 ? 選擇兩幅圖像,讀入圖像并顯示,同時(shí)使用Matlab計(jì)算圖像的大小,灰度平均值、協(xié)方差矩陣、灰度標(biāo)準(zhǔn)差和相關(guān)系數(shù)。 DC

    2024年02月04日
    瀏覽(24)
  • 基于matlab的數(shù)字圖像處理之彩色圖像處理

    基于matlab的數(shù)字圖像處理之彩色圖像處理

    一、實(shí)驗(yàn)?zāi)康?(1)了解如何利用RGB分量生成簡(jiǎn)單的圖像。 (2)熟練掌握RGB彩色模型轉(zhuǎn)換到HIS彩色模型的過程。 (3)熟練掌握RGB圖像的彩色分割。 (4)熟練掌握彩色圖像如何在向量空間中進(jìn)行邊緣檢測(cè)。 二、實(shí)驗(yàn)儀器(軟件平臺(tái)) ??? 計(jì)算機(jī)、MATLAB軟件 三、實(shí)驗(yàn)原理

    2024年02月06日
    瀏覽(24)
  • 數(shù)字圖像處理 - 圖像處理結(jié)合機(jī)器學(xué)習(xí)的應(yīng)用示例

    ????????在本文中,特別關(guān)注樹葉分類機(jī)器學(xué)習(xí)技術(shù)的實(shí)現(xiàn)。我們的目標(biāo)是演示如何利用機(jī)器學(xué)習(xí)算法來分析一系列葉子照片,從而實(shí)現(xiàn)準(zhǔn)確分類并提供對(duì)植物領(lǐng)域有價(jià)值的算法。 ????????圖像處理中機(jī)器學(xué)習(xí)的本質(zhì) ????????機(jī)器學(xué)習(xí)使計(jì)算機(jī)能夠?qū)W習(xí)模式并根據(jù)

    2024年02月13日
    瀏覽(25)
  • 彩色圖像處理之彩色圖像直方圖處理的python實(shí)現(xiàn)——數(shù)字圖像處理

    彩色圖像處理之彩色圖像直方圖處理的python實(shí)現(xiàn)——數(shù)字圖像處理

    彩色圖像的直方圖處理是一種重要的圖像處理技術(shù),用于改善圖像的視覺效果,增強(qiáng)圖像的對(duì)比度,或?yàn)楹罄m(xù)的圖像處理任務(wù)(如圖像分割、特征提?。┳鰷?zhǔn)備。彩色圖像通常由紅色(R)、綠色(G)、藍(lán)色(B)三個(gè)顏色通道組成,因此彩色圖像的直方圖處理相比單色圖像更

    2024年01月23日
    瀏覽(25)
  • 數(shù)字圖像處理實(shí)驗(yàn)四--圖像變換

    數(shù)字圖像處理實(shí)驗(yàn)四--圖像變換

    (圖像變換) 實(shí)驗(yàn)內(nèi)容: 對(duì)圖像lena、cameraman和face進(jìn)行傅里葉變換,觀察圖像能量在頻譜圖中的分布情況。 利用Matlab生成下列圖像,并對(duì)其進(jìn)行旋轉(zhuǎn)30度、90度和120度,然后對(duì)他們分別進(jìn)行傅里葉變換。 對(duì)圖像lena、cameraman和face用DCT變換進(jìn)行圖像壓縮,舍掉的變換系數(shù)分別小

    2024年04月14日
    瀏覽(23)
  • 數(shù)字圖像處理:實(shí)驗(yàn)六 圖像分割

    數(shù)字圖像處理:實(shí)驗(yàn)六 圖像分割

    數(shù)據(jù)分割是由圖像處理到圖像分析的關(guān)鍵步驟,是圖像識(shí)別和計(jì)算機(jī)視覺至關(guān)重要的預(yù)處理,圖像分割后提取的目標(biāo)可用于圖像識(shí)別、特征提取,圖像搜索等領(lǐng)域。圖像分割的基本策略主要是基于圖像灰度值的兩個(gè)特性,即灰度的不連續(xù)性和灰度的相似性,因此圖像分割方法

    2024年02月06日
    瀏覽(29)
  • 數(shù)字圖像處理:實(shí)驗(yàn)三 圖像增強(qiáng)

    數(shù)字圖像處理:實(shí)驗(yàn)三 圖像增強(qiáng)

    圖像增強(qiáng)是數(shù)字圖像處理過程中常采用的一種方法。為了改善視覺效果或便于人和機(jī)器對(duì)圖像的理解和分析,根據(jù)圖像的特點(diǎn)或存在的問題采取的改善方法或加強(qiáng)特征的措施稱為圖像增強(qiáng)。圖像增強(qiáng)處理是改變圖像視覺效果的手段,增強(qiáng)后的圖像便于對(duì)它的后續(xù)處理。圖像增

    2024年02月04日
    瀏覽(24)
  • 數(shù)字圖像處理-matlab圖像內(nèi)插

    數(shù)字圖像處理-matlab圖像內(nèi)插

    目標(biāo)各像素點(diǎn)的灰度值代替源圖像中與其最鄰近像素的灰度值 參考博客 假設(shè)一個(gè)2X2像素的圖片采用最近鄰插值法需要放大到4X4像素的圖片,右邊該為多少? 最近鄰插值法坐標(biāo)變換計(jì)算公式: s r c X = d s t X ? ( s r c W i d t h / d s t W i d t h ) srcX=dstX*(srcWidth/dstWidth) src X = d s tX ?

    2024年02月03日
    瀏覽(19)
  • 數(shù)字圖像處理-圖像復(fù)原與重建

    數(shù)字圖像處理-圖像復(fù)原與重建

    ??圖像退化過程可以理解為將原始圖片 f ( x , y ) f(x,y) f ( x , y ) 經(jīng)過退化函數(shù) H H H 的處理,在加上一個(gè)噪聲項(xiàng)從而獲得退化后的圖像 g ( x , y ) g(x,y) g ( x , y ) 。而復(fù)原過程即為結(jié)合給定的退化函數(shù) H H H 與噪聲 η ( x , y ) eta(x,y) η ( x , y ) 重構(gòu)原始圖像的估計(jì)結(jié)果 f ^ ( x , y )

    2024年02月10日
    瀏覽(21)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包