实验要求:

Objective:
To understand the high performance of the parametric Wiener Filter in image restoration when there are additive noise after the image degradation.
Main requirements:
Ability of programming with C, C++, or Matlab.
Instruction manual:
(a) Implement a blurring filter as in Eq. (5.6-11).
(b) Blur image 5.26(a) in the +45o direction using T = 1, as in Fig. 5.26(b).
(c) Add Gaussian noise of 0 mean and variance of 10 pixels to the blurred image.
(d) Restore the image using the parametric Wiener filter given in Eq. (5.8-3).

本实验属于图像复原技术,使用参数维纳滤波进行图像复原。实验中向图像添加了高斯噪声和运动模糊,最后用参数维纳滤波器复原图像。

%
close all;
clc;
clear all;% 读取图像
img = imread('Fig5.26(a).jpg');
img = im2double(img);
figure;
subplot(2,3,1);
imshow(img);
title('original image');% 模糊图像
PSF = fspecial('motion', 30, 45);
img1 = imfilter(img, PSF, 'conv', 'circular');
subplot(2,3,2);
imshow(img1);
title('filtered image');% 添加高斯噪声
noise_var = 0.001;
img2 = imnoise(img1, 'gaussian', 0, noise_var);
subplot(2,3,3);
imshow(img2);
title('add gaussian noise');% 参数维纳滤波,NSR直接给0
% Specifying 0 for the NSR is equivalent to creating an ideal inverse filter.
% img3 = deconvwnr(img2, PSF, 0.012);
img3 = deconvwnr(img2, PSF, 0.0);
subplot(2,2,3);
imshow(img3);
title('Restoration of Blurred, Noisy Image Using NSR = 0');% 参数维纳滤波,计算方差
% img = double(img);
estimated_NSR = noise_var / var(img(:));
img4 = deconvwnr(img2, PSF, estimated_NSR);
subplot(2,2,4);
imshow(img4);
title('Restoration of Blurred, Noisy Image Using Estimated NSR');

实验结果:

上面一行的图像分别是原始图像,模糊后的图像,以及添加高斯噪声后的图像;
下面一行的图像分别是调用维纳滤波器的两种情况,一个是不给参数,默认直接给0,另一个是使用方差计算参数后调用维纳滤波器得到的正确滤波结果。

数字图像处理实验(13):PROJECT 05-04,Parametric Wiener Filter相关推荐

  1. 数字图像处理Python语言实现-图像滤波-维纳滤波(Wiener Filter)

    维纳滤波(Wiener Filter) 1.前言 维纳滤波器(Wiener Filter)是最早用于图像复原经典滤波之一,目前被广泛用于信号滤波降噪和图像预处理中.维纳滤波器的目的是使用相关信号作为输 ...

  2. 数字图像处理实验(总计23个)汇总

    以下这些实验中的代码全部是我自己编写调试通过的,到此,最后进行一下汇总. 数字图像处理实验(1):PROJECT 02-01, Image Printing Program Based on Half ...

  3. 数字图像处理实验三图像增强

    一.实验目的 (1)了解图像增强的目的及意义,加深对图像增强的 感性认识,巩固所学的图像增强的理论知识和相 关算法. (2)熟练掌握直方图均衡化和直方图规定化的计算过 程. (3)熟练掌握空域滤波中常 ...

  4. 数字图像处理matlab实验对图像复原,数字图像处理实验07图像的复原处理

    数字图像处理实验 一.数字图像处理实验 实验七 图像的复原处理 一.实验目的 熟悉几种在实际应用中比较重要的图像复原技术,学会用MATLAB复原函数对退化图像进行复原处理. 二.实验内容 1.用点扩散 ...

  5. 数字图像处理实验——Python语言实现

    数字图像处理实验--Python语言实现 实验一:数字图像处理入门 实验二:直方图均衡 实验三:线性平滑和锐化--掩模法 实验四:非线性平滑--中值滤波 实验五:非线性锐化--梯度法 GitHub地址 ...

  6. 数字图像处理实验四图像频域增强

    一.实验目的 (1)了解图像增强的目的及意义,加深对图像增强的感性认识,巩固所学的图像增强的理论知识和相关算法. (2)熟练掌握低通.高通.带通.同态滤波器的使用方法,明确不同性质的滤波器对图像的影响 ...

  7. 数字图像处理实验5图像复原

    一.实验目的 (1)了解图像复原的目的及意义,加深对图像复原理论的认识. (2)掌握维纳滤波复原基本原理. (3)掌握约束最小二乘方复原方法. (4)掌握盲解卷积复原方法 二.实验内容  (1)维纳滤 ...

  8. 实验1 数字图像处理的MATLAB基础,《数字图像处理(实验部分)》实验1_数字图像处理中MATLAB使用基础...

    <数字图像处理(实验部分)>教案 实验一:数字图像处理中MATLAB使用基础实验 一. MATLAB软件安装 二. 进入MATLAB运行环境 三. MATLAB编程基础 3.1.变量 预定 ...

  9. matlab数字图像实验报告,数字图像处理实验报告(matlab)

    数字图像处理实验报告(matlab) 学院:自动化学院 班级:电081班 姓名:李林树 学号:40850099 2011年10月 实验一 直方图均衡化 一. 实验目的: 1. 熟悉图像数据在计算机中的 ...

最新文章

  1. java 之 异常
  2. 合并多个Word文档
  3. Oral certificate at 7TH INTERNATIONAL CONFERENCE ON CONTROL, AUTOMATION AND ROBOTICS (ICCAR)
  4. VTK:Qt之SideBySideRenderWindowsQt
  5. touchWX 自定义组件以及传值
  6. 深度学习-tensorflow1.x之交叉熵损失函数(softmax_cross_entropy_with_logits)代码实现 Tensorflow1.x 和 Numpy
  7. MySQL DATE_ADD() 函数
  8. roszhong指定rviz的点启动_怎样在1秒内启动 Linux
  9. 从最年轻的白手起家富豪到身陷囹圄,这个80后创始人也就用了3年
  10. iOS6、7、8、9新特性汇总和适配说明
  11. nyoj 谁是最好的Coder
  12. 快速排序(递归)-三路快速排序(图解)及代码
  13. Hadoop启动jobhistoryserver
  14. Redis从安装到简单使用(windows)
  15. 廖雪峰python教程杨辉三角_打印杨辉三角(廖雪峰python教程)
  16. 编程语言c语言vb,c语言和vb语言哪个比较简单
  17. Docker配置阿里云加速器
  18. sqlhelper java_java版sqlhelper
  19. 1口百兆光纤收发器工业导轨式发送机接收机1百兆光1百兆电工业以太网光纤收发器
  20. 宁静以致远,淡泊以明志

热门文章

  1. 数据结构实验之串二:字符串匹配
  2. Java 面试知识点解析(一)——基础知识篇
  3. JAVA中循环删除集合中元素的方法总结
  4. Java 注解深入理解
  5. Java内部类的一些总结
  6. Velocity语法使用总结
  7. Java并发:volatile内存可见性和指令重排
  8. Java 集合类图(转)
  9. c++编程 文件系统
  10. 模式识别Pattern Recognition和机器学习Machine Learning资源