matlab 模糊图像恢复 数字图像处理
Matlab中的图像修复与图像修复方法

Matlab中的图像修复与图像修复方法随着数字图像处理技术的发展,图像修复在许多领域中变得日益重要。
图像修复是指通过采用合适的方法和技术,对损坏或缺失的图像进行恢复或修复的过程。
在Matlab中,有许多强大的图像修复工具和算法,本文将介绍其中一些常用的图像修复方法。
一、图像修复的概览图像修复是通过恢复或修复缺失或损坏的图像信息,使图像更加完整和清晰。
在现实应用中,图像修复可以用于修复老照片、复古图片,恢复受损图像,去除图像噪声等。
图像修复方法可以分为基于模型的方法和基于数据的方法。
二、基于模型的图像修复基于模型的图像修复方法使用数学模型来描述图像的生成过程,并利用模型的统计规律来实现图像修复。
最著名的基于模型的图像修复方法之一是以全变分(Total Variation,TV)为基础的方法。
全变分是一种描述图像边缘信息的数学概念,基于全变分的方法能够恢复图像的边缘信息。
通过最小化全变分正则项以及数据项的残差,可以得到修复后的图像。
另一个常用的基于模型的图像修复方法是基于稀疏表示的方法。
稀疏表示假设图像可以用少量的原子基表示,并通过最小化稀疏编码的残差来恢复图像。
通过合理选择字典和稀疏编码算法,可以有效地恢复缺失或损坏的图像信息。
三、基于数据的图像修复基于数据的图像修复方法侧重于利用已知信息来恢复图像。
其中一个常见的方法是基于图像插值的方法。
插值是一种通过已知的图像像素值来估计缺失像素值的方法。
在Matlab中,有许多插值算法,如双线性插值、双三次插值等。
通过选择适当的插值算法和参数,可以得到较为准确的图像修复结果。
另一个常见的基于数据的图像修复方法是基于同类图像的方法,也称为图像纹理填充。
该方法通过利用图像中已有的纹理信息来填充缺失的部分。
这样可以保持图像的一致性和连续性,使得修复后的图像与原图像更加自然。
四、Matlab中常用的图像修复工具在Matlab中,有许多内置函数和工具箱可以用于图像修复。
在Matlab中进行图像重建和图像恢复的技术

在Matlab中进行图像重建和图像恢复的技术图像重建和图像恢复是数字图像处理领域的重要研究方向。
在Matlab这一强大的工具中,提供了丰富的图像处理函数和算法,使得图像重建和恢复变得更加高效和精确。
本文将介绍在Matlab中进行图像重建和图像恢复的一些常用技术。
一、图像重建的概念和方法图像重建指的是从已损坏或丢失部分信息的图像中恢复出尽可能完整的图像。
常见的图像损坏包括噪声、模糊以及缺失等。
在图像重建中,常用的方法包括逆滤波、维纳滤波、最小二乘法等。
1. 逆滤波逆滤波是一种常见的图像重建方法,其思想是通过求解逆滤波算子来反转图像损坏过程,以实现图像的重建。
在Matlab中,可以使用fft2函数将图像转换到频域进行处理,然后使用ifft2函数将图像转回到空域。
2. 维纳滤波维纳滤波是一种优化的图像重建方法,它考虑了噪声对图像重建的影响。
在Matlab中,可以使用维纳滤波函数wiener2对图像进行恢复。
该函数可以根据图像的噪声方差和信噪比自动调整滤波参数,使得图像的重建效果更好。
3. 最小二乘法最小二乘法也是一种常用的图像重建方法,它通过优化目标函数来求解最优重建结果。
在Matlab中,可以使用lsqnonneg函数进行最小二乘法拟合。
该函数能够在给定约束条件下求解非负解,并适用于一些不完全观测的图像重建问题。
二、图像恢复的概念和方法图像恢复是指在已损坏或丢失部分信息的图像中重建出尽可能高质量的图像。
与图像重建不同,图像恢复更加关注图像质量的提升。
常见的图像损坏包括噪声、模糊以及失真等。
在Matlab中,提供了很多图像恢复的函数和算法,如图像增强、去噪以及去模糊等。
1. 图像增强图像增强是一种常用的图像恢复方法,其目的是使图像在视觉上更加清晰、丰富和易于分析。
在Matlab中,可以使用imadjust函数对图像进行亮度和对比度调整,以达到图像增强的效果。
此外,还可以使用imsharpen函数对图像进行锐化处理,以提高图像的清晰度。
Matlab中的模糊图像恢复与图像重建技术详解

Matlab中的模糊图像恢复与图像重建技术详解引言:随着数码相机、移动设备以及各种图像处理软件的普及,人们对图像质量要求越来越高。
然而,在图像获取和传输过程中,由于种种原因,图像可能会变得模糊,失真或损坏。
为了解决这些问题,图像恢复和重建技术应运而生。
本文将详细介绍基于Matlab的模糊图像恢复与图像重建技术。
一、图像模糊恢复技术1. 模糊图像的概念和原因模糊图像是指由于摄像机移动、图像采集设备问题、环境光线等因素而导致图像失真的现象。
图像模糊会降低图像的细节和清晰度,使得图像难以辨认和识别。
常见的模糊原因有运动模糊、焦距模糊、镜头畸变等。
2. 模糊图像恢复方法为了恢复模糊图像的清晰度和细节,研究人员提出了各种方法。
其中,基于傅里叶变换的频域滤波是最常用的方法之一。
该方法通过将模糊图像转换到频域,应用适当的频域滤波器来消除模糊效果。
Matlab提供了丰富的函数和工具箱来实现这些滤波方法,比如利用低通滤波器恢复运动模糊图像。
另外,基于对图像恢复的数学建模和优化算法也是常用的方法。
例如,最小二乘法、最小化总变差等。
3. Matlab中的模糊图像恢复函数Matlab提供了多种函数用于模糊图像恢复。
其中,`deconvwnr`函数可以用于模糊图像的逆滤波处理。
该函数通过对图像进行频域滤波,去除模糊效果。
另外,`deconvblind`函数可以用于盲去卷积处理,即对图像进行反卷积操作以恢复图像细节。
二、图像重建技术1. 图像重建的意义和应用图像重建指的是利用已有的图像信息来还原、修复或生成新的图像。
与图像恢复类似,图像重建技术对于改善图像质量、还原损坏图像、生成虚拟图像等方面有着重要的应用。
图像重建技术在医学影像、图像压缩和增强、虚拟现实等领域都有广泛的应用。
2. 图像重建算法在Matlab中,图像重建可以通过多种算法实现。
其中一种常用的算法是基于插值的图像重建方法。
该方法通过对已有图像的像素进行插值来生成新的图像。
matlab模糊图像恢复数字图像处理

实验六 模糊图像恢复一、实验目的本实验是一个综合性实验,要求学生巩固学习多个知识点和内容,主要有: 1、理解掌握运动图像的退化模型; 2、掌握维纳滤波法的原理和实现方法;3、在不同的噪声和点扩散函数参数下进行恢复,并比较结果;4、通过分析和实验得出相应的结论。
二、实验准备1、运动模糊退化模型:运动模糊是图像退化的一种,可以用数学表达式刻画出来。
对线性移(空)不变系统,退化模型可表示为:g(x,y)=h(x,y)*f(x,y)+n(x,y)。
对匀速直线运动而言,退化图像为:()()()[]⎰--=Tdt t y y t x x f y x g 000,,其中x 0(t)和y 0(t)分别表示x 和y 方向的运动分量。
并假设退化系统是线性移不变的,光学成像过程是完善的,快门开关是瞬间完成的。
对上式进行傅立叶变换,则得频域表达式为()()()[]()()[]()[]()()()[]{}),(),(2exp ,2exp ,2exp ,,000000v u H v u F dt t vy t ux j v u F dtdxdy vy ux j t y y t x x f dxdy vy ux j y x g v u G T T=+-=⎥⎥⎦⎤⎢⎢⎣⎡+---=+-=⎰⎰⎰⎰⎰⎰+∞∞-+∞∞-+∞∞-+∞∞-πππ 其中()()()[]{}dt t vy t ux j v u H T⎰+-=0002exp ,π假设景物只在x 方向匀速运动,在T 时间内共移动距离是a ,即x 0(t)=at/T ,y 0(t)=0,则()()[]ua j ua ua T dt T at uj v u H Tππππ-=⎥⎦⎤⎢⎣⎡-=⎰exp sin 2exp ,0 在Matlab 中可用滤波器卷积的方法仿真出运动模糊图像。
h=fspecial(‘motion ’,len,theta),表示在theta 方向移动len 长度,产生运动模糊的点扩散函数h 。
Matlab中的模糊图像处理和图像模糊恢复技术

Matlab中的模糊图像处理和图像模糊恢复技术随着数字图像的广泛应用和发展,图像模糊成为一个重要的问题。
由于摄像器材或传输媒介等方面的限制,图像的清晰度可能受到一定程度的影响,导致图像模糊。
在实际应用中,图像的模糊问题会给图像解析、目标跟踪、计算机视觉等许多领域带来困扰。
为了改善模糊图像的质量,并解决图像模糊问题,Matlab提供了一系列的模糊图像处理和图像模糊恢复技术。
一、图像模糊的产生原因图像模糊一般是由光学系统的缺陷、运动物体、相机抖动等因素引起的。
光学系统的缺陷包括镜头的失真、散射、衍射等;运动物体指的是图像中的物体在拍摄过程中出现运动造成模糊;相机抖动是由于相机本身的不稳定性或者手持摄影造成的。
二、模糊图像处理的方法1.滤波方法滤波方法是最基本也是最常用的图像模糊处理方法。
在Matlab中,可以使用各种滤波器对图像进行处理,例如平滑滤波、高斯滤波、中值滤波等。
这些滤波器可以消除图像中的高频噪声,同时也会导致图像的模糊。
2.图像退化模型图像退化模型是描述图像模糊过程的数学模型。
常见的图像退化模型有运动模糊模型、模糊核模型等。
通过了解图像退化模型的特性,可以更准确地恢复图像的清晰度。
在Matlab中,可以根据图像退化模型进行图像恢复的研究和实现。
3.频域方法频域方法是一种基于图像频谱的模糊图像处理方法。
通过对图像进行傅里叶变换,可以将图像从空间域转换到频率域,然后在频率域进行处理,最后再进行逆傅里叶变换得到恢复后的图像。
在Matlab中,可以利用fft2函数进行傅里叶变换和逆傅里叶变换,实现频域方法对图像的处理。
三、图像模糊恢复技术1.盲去卷积算法盲去卷积算法是一种不需要知道图像退化模型的图像恢复方法。
通过对模糊图像进行去卷积处理,可以尽可能地恢复图像的清晰度。
在Matlab中,可以使用盲去卷积相关的函数和工具箱实现图像模糊恢复。
2.基于深度学习的图像超分辨率重建技术深度学习技术如今在计算机视觉领域取得了巨大的成功。
Matlab中的图像重建与图像恢复技术

Matlab中的图像重建与图像恢复技术深入研究和掌握图像重建与图像恢复技术对于图像处理和计算机视觉领域的研究人员来说至关重要。
在现实生活中,图像可能因传感器噪声、数据传输损失或其他因素而受损,导致图像出现模糊、噪声等问题。
为了改善这些问题,我们需要使用图像重建和恢复技术,将受损的图像还原到原始清晰的状态。
Matlab作为一种功能强大的科学计算软件,提供了丰富的工具和函数,可以帮助我们实现图像重建和恢复的任务。
在本文中,我们将探讨几种常用的图像重建和恢复技术,并介绍如何使用Matlab来实现它们。
第一部分:图像去噪与平滑图像中的噪声往往是由电子设备、图像采集过程或传输过程中引入的。
去除这些噪声对于提高图像质量非常重要。
在Matlab中,我们可以使用均值滤波、中值滤波、高斯滤波等方法进行图像去噪和平滑。
均值滤波是一种常用的线性滤波方法,它通过计算图像周围像素的平均值来减小噪声。
中值滤波则取邻域像素的中值作为当前像素的值,可以有效地去除脉冲噪声和椒盐噪声。
高斯滤波则使用高斯核函数对图像进行平滑,可以在平滑图像的同时保留图像的细节信息。
第二部分:图像复原与去模糊当图像受到模糊因素的影响时,如相机抖动、运动模糊等,我们可以使用图像复原和去模糊技术来提高图像的清晰度。
在Matlab中,我们可以使用逆滤波、维纳滤波等方法进行图像复原和去模糊。
逆滤波是一种经典的图像复原方法,通过将图像的频谱进行逆变换,消除因模糊而引入的相位延迟和衰减。
然而,逆滤波在存在噪声的情况下容易引入放大噪声的问题。
为了解决这个问题,可以使用维纳滤波器,它通过权衡图像信号和噪声的功率谱来恢复原始图像。
第三部分:图像超分辨率重建超分辨率重建是一种在低分辨率图像的基础上提高图像分辨率的技术。
它在很多应用中都非常有用,如视频监控、医学图像分析等。
在Matlab中,我们可以使用插值方法、重建方法等技术进行图像超分辨率重建。
插值方法是一种常用的图像超分辨率技术,它通过对像素进行重新采样来增加图像的分辨率。
Matlab中的图像修复技术
Matlab中的图像修复技术图像修复技术是数字图像处理领域中的一个重要研究方向,它的目标是通过利用图像处理算法,恢复被破坏或损坏的图像,使其能够尽可能地接近原始图像。
Matlab作为一款强大的数学软件工具,在图像修复技术的应用中具有广泛的适用性和实用性。
本文将探讨Matlab中一些常用的图像修复技术及其应用。
一、图像去噪噪声是图像中常见的一种干扰因素,它会导致图像细节丢失,降低图像质量。
Matlab中提供了许多图像去噪算法,其中最常用的是基于小波变换的去噪方法。
小波变换是一种能够将信号分解成不同频率组成部分的数学工具。
通过利用小波变换,可以将图像分解成不同频率的小波系数,然后根据不同频率系数的重要性对其进行滤波,最后再通过逆变换将图像恢复。
Matlab中的Wavelet Toolbox提供了丰富的小波变换函数,使得图像去噪变得更加简便和高效。
二、图像修复当图像受到损坏或破坏时,如何恢复被损坏的部分是图像修复技术的核心问题。
Matlab中的图像修复算法主要基于局部图像的统计特性和邻域信息。
其中,基于局部统计特性的图像修复算法最为常见,它通过对图像的边缘和纹理等特征进行分析,推测出被损坏部分的内容,并进行修复。
Matlab中的Image ProcessingToolbox提供了一系列用于图像修复的函数和工具,如图像修复函数“imfill”和图像修复工具“Image Inpainting”。
三、图像增强图像增强是一种使图像在视觉上更加清晰、鲜明和可辨识的处理方法。
Matlab中的图像增强算法有很多种,如直方图均衡化、灰度拉伸和锐化等。
直方图均衡化是一种通过调整图像像素的分布,使其均匀分布在整个像素范围内的方法。
它可以增加图像的对比度和动态范围,使图像细节更加鲜明。
Matlab中的“histeq”函数可以实现直方图均衡化操作。
灰度拉伸是一种通过调整图像像素的灰度级范围,使其覆盖更大的动态范围的方法。
Matlab中的“imadjust”函数可以实现灰度拉伸。
Matlab中的图像超分辨率和图像恢复技术
Matlab中的图像超分辨率和图像恢复技术图像超分辨率和图像恢复技术是数字图像处理领域的两个重要研究方向。
在实际应用中,图像有时会因为拍摄设备的局限性或者其他问题而受到分辨率的限制,导致图像细节不够清晰甚至模糊。
这时候,图像超分辨率和图像恢复技术就能发挥作用,通过一系列算法和方法,提高图像的分辨率和清晰度。
一、图像超分辨率技术图像超分辨率指的是提高图像的分辨率,使得图像的细节更加清晰。
Matlab是一个功能强大且拥有丰富工具箱的软件,提供了多种图像超分辨率技术的实现方法。
1.1 基于插值的图像超分辨率方法插值是一种简单而常用的图像超分辨率方法。
在Matlab中,可以使用像素插值方法,如最近邻插值、双线性插值和双三次插值等。
这些插值方法基于已知像素点的值,通过计算和拟合,预测缺失像素点的值,并用插值结果替代原来的像素点。
1.2 基于滤波的图像超分辨率方法滤波是另一种常用的图像超分辨率方法。
Matlab提供了多种滤波器设计和应用的函数,比如傅里叶变换和小波变换等。
通过这些函数,可以对图像进行频域和空域的滤波操作,以提高图像的分辨率和清晰度。
1.3 基于深度学习的图像超分辨率方法深度学习是近年来发展迅速的一门学科,它在图像超分辨率技术中也得到了广泛应用。
Matlab提供了深度学习框架,如深度神经网络(Deep Neural Network, DNN)和卷积神经网络(Convolutional Neural Network, CNN),可以通过训练大量的图像样本,实现图像超分辨率的预测和恢复。
二、图像恢复技术图像恢复技术是一种根据已知信息和先验知识,对损坏或降质的图像进行恢复的方法。
以下介绍几种在Matlab中常用的图像恢复技术。
2.1 去噪与降噪图像中的噪声会影响到图像的质量,使得图像失真,难以辨识。
Matlab提供了多种去噪和降噪的函数和工具箱,如均值滤波器、中值滤波器和小波去噪等。
通过这些方法,可以减少或去除图像中的噪声,提高图像的质量和清晰度。
MATLAB中的图像处理与数字图像恢复技术
MATLAB中的图像处理与数字图像恢复技术MATLAB是一款非常强大的数字图像处理和恢复工具。
在现代科学领域中,图像处理和恢复技术被广泛应用于医学、计算机视觉、遥感等领域。
在这篇文章中,我们将探讨MATLAB中的图像处理和数字图像恢复技术的一些基本概念和方法。
一、图像处理的基本概念图像处理是指对图像进行各种操作和处理,以改善其质量、增强其特征或实现一定的目标。
在MATLAB中,可以使用图像处理工具箱来实现各种图像处理操作。
图像处理的基本概念包括图像输入输出、像素、灰度和颜色等。
图像在数字领域中以像素的形式存在,每个像素代表图像中的一个点。
而每个像素又由其对应位置的红、绿和蓝三个分量构成,这就是所谓的彩色图像。
如果只有一个分量,那么就是灰度图像了。
图像处理的主要目标是对图像进行增强、去噪、修复等操作,以提取出更多有用的信息。
常用的图像处理操作包括滤波、直方图均衡化、锐化等。
这些操作可以在MATLAB中通过简单的几行代码来实现。
二、图像处理的常见技术1. 图像增强图像增强是指通过加强图像中的某些特定特征来使其更加清晰和易于观察。
对比度增强、直方图均衡化和边缘提取是常用的图像增强方法之一。
对比度增强可以通过调整图像中的像素值范围来实现。
在MATLAB中,可以使用imadjust函数来实现对比度增强。
直方图均衡化则是通过重新分布图像中的像素值来增强图像的对比度。
MATLAB中的histeq函数可以实现直方图均衡化。
边缘提取是指将图像中的边缘部分提取出来,以便更好地分析和处理。
常见的边缘检测算法有Sobel、Prewitt和Canny算法等。
在MATLAB中,可以使用相应的函数来实现这些边缘检测算法。
2. 图像去噪图像去噪是指通过滤除图像中的噪声来恢复图像的清晰度和细节。
常见的图像去噪方法包括均值滤波、中值滤波和小波去噪等。
均值滤波是一种简单的滤波方法,它将像素周围的邻近像素值的平均值作为当前像素的值。
在MATLAB中,可以使用imfilter函数来实现均值滤波。
图像模糊与恢复
实验课二一、实验目的1.进一步了解MATLAB仿真软件图像处理工具箱中图像操作的基本函数;2.深入理解数字图像处理算法的功能。
二、实验内容及要求1.编写由运动引起的图像模糊的MATLAB恢复程序的,并对自选图像进行处理(可对正常图像先进行运动模糊处理,再恢复);源程序:I=imread('C:\Documents and Settings\Administrator\My Documents\MATLAB\picture.bmp imshow(I);title('原始图象');hold on;J=fspecial('motion',20,50);%滤波器J1=imfilter(I,J,'circular','conv');%用滤波器模糊原图像K1=deconvwnr(J1,J);%恢复不加噪声的模糊图象N=0.002*prod(size(I));%设定一个高斯噪声N1=imnoise(J1,'gaussian',0,.002);%对模糊后图象加噪N2=sum(N.^2)/sum(im2double(I(:)).^2);%计算噪声的NSRK2=deconvwnr(N1,J,N2/100);%恢复加噪后的模糊图象figure;subplot(2,2,1);imshow(J1);title('不加噪声的模糊图象');subplot(2,2,2);imshow(N1);title('加高斯噪声的模糊图象');subplot(2,2,3);imshow(K1);title('对不加噪声的图象的恢复');subplot(2,2,4);imshow(K2);title('对加噪的图象的恢复');2.将变换结果与原始图像进行对比分析。
以上模糊图象的恢复采用维纳滤波法实现。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验六 模糊图像恢复
一、实验目的
本实验就是一个综合性实验,要求学生巩固学习多个知识点与内容,主要有: 1、理解掌握运动图像的退化模型; 2、掌握维纳滤波法的原理与实现方法;
3、在不同的噪声与点扩散函数参数下进行恢复,并比较结果;
4、通过分析与实验得出相应的结论。
二、实验准备
1、运动模糊退化模型:运动模糊就是图像退化的一种,可以用数学表达式刻画出来。
对线性移(空)不变系统,退化模型可表示为:g(x,y)=h(x,y)*f(x,y)+n(x,y)。
对匀速直线运动而言,退化图像为:
()()()[]⎰--=T
dt t y y t x x f y x g 000,,
其中x 0(t)与y 0(t)分别表示x 与y 方向的运动分量。
并假设退化系统就是线性移不变的,光学成像过程就是完善的,快门开关就是瞬间完成的。
对上式进行傅立叶变换,则得频域表达式为
()()()[]()()[]()[]()()()[]{})
,(),(2exp ,2exp ,2exp ,,000000v u H v u F dt t vy t ux j v u F dt
dxdy vy ux j t y y t x x f dxdy vy ux j y x g v u G T T
=+-=⎥⎥⎦⎤
⎢⎢⎣⎡+---=+-=⎰⎰⎰⎰⎰⎰+∞∞-+∞∞-+∞∞-+∞
∞-πππ 其中
()()()[]{}dt t vy t ux j v u H T
⎰+-=0002exp ,π
假设景物只在x 方向匀速运动,在T 时间内共移动距离就是a ,即x 0(t)=at/T,y 0(t)=0,则 ()()[]ua j ua ua
T dt T at u
j v u H T
ππππ-=⎥⎦⎤⎢⎣⎡
-=⎰exp sin 2exp ,0 在Matlab 中可用滤波器卷积的方法仿真出运动模糊图像。
h=fspecial(‘motion ’,len,theta),表示在theta 方向移动len 长度,产生运动模糊的点扩散函数h 。
blurred=imfilter(I,h,'circular ’,’conv ’),产生运动模糊图像。
2、维纳滤波法恢复图像:
此方法也叫最小均方误差滤波法,就是建立在图像与噪声都就是随机过程,图像与噪声
不相关,其中之一的均值为零,灰度估计值与退化图像中的灰度值成线性关系。
其基本思想就
是找到原图像f(x,y)的一个估计),(ˆy x f
,使得估计与原图像之间的均方误差在统计意义上最小。
})],(ˆ),({[22y x f
y x f E e -=
其中E{、}表示数学期望,当上式取得最小值时,所得到的估计值),(ˆy x f
在频域的表达式为:
()()()()()()v u G v u S v u S v u H v u H v u F f n ,,/,,,,ˆ2
⎥⎥⎦
⎤⎢⎢⎣⎡+=*
其中H(u,v)就是点扩散函数h (x ,y )的傅里叶变换,H*(u ,v )就是退化函数H (u ,v )的复共轭,S n (u ,v )=|N (u ,v )|2、S f (u ,v )=|S (u ,v )|2分别就是噪声与原图像的功率谱。
而在实际当中,S n (u ,v )、S f (u ,v )未知,特别就是S f (u ,v ),上式无法直接运用。
解决的方法之一
就是令S n (u ,v )/ S f (u ,v )等于某个常数k 。
上式就成了
()()()()v u G k v u H v u H v u F ,,,,ˆ2
⎥⎥⎦
⎤
⎢⎢⎣⎡+=* 在Matlab 中有专门的函数可以实现维纳滤波法恢复。
wn1=deconvwnr(blurred,h),参数部分有多种选择的方法,这个表示用真实的点扩散函数进行恢复。
为了对比,可取不同的参数,以及加入噪声,再恢复,噪声可用imnoise 或randn 函数生成。
细节可参阅matlab 相关资料。
三、实验内容与要求
参照以上知识点与过程仿真一幅运动模糊图像,用不同的参数,不同的噪声等情况下进
行恢复,并探讨各量对恢复结果的影响。
(可参照教材中插图的参数) 四、实验报告
1、提交经调试正确的程序源代码及相关文档。
2、总结调试程序时遇到的问题及解决方案。
实验程序:
%%%%%两幅图片相加可以使用函数 imadd
I = imread('rice 、png'); I = imread('rice 、png'); J = imread('cameraman 、tif');
Iplus50 = imadd(I,50);
K = imadd(I,J); %%%%%%%%
%h=fspecial(‘motion ’,len,theta),表示在theta 方向移动len 长度,
而产生运动模糊的点扩散函数h
I = imread('I:\lena 、bmp');
subplot(2,2,1);imshow(I);title('Original Image ——原始图像');
H = fspecial('motion',20,45);%定义的运动模型 MotionBlur = imfilter(I,H,'replicate');
subplot(2,2,2);imshow(MotionBlur);title('Motion Blurred Image ——运动模糊图像');
H = fspecial('disk',10);
%blurred=imfilter(I,h,'circular’,’conv’),产生运动模糊图像 blurred = imfilter(I,H,'replicate');
subplot(2,2,3);imshow(blurred);title('Blurred Image ——模
糊图像');
H = fspecial('unsharp');
sharpened = imfilter(I,H,'replicate');
subplot(2,2,4);imshow(sharpened);title('Sharpened Image——锐化图像');
%%%%%%%%
I = im2double(imread('I:\lena、bmp'))/255;
subplot(221)
imshow(I);
title('Original Image ——原始图像');
% Simulate a motion blur、
LEN = 21;%像素值
THETA = 11;%角度
PSF = fspecial('motion', LEN, THETA);%产生运动模糊的点扩散函数PSF
%blurred=imfilter(I,h,'circular’,’conv’),产生运动模糊图像
blurred = imfilter(I, PSF, 'conv', 'circular');
% Simulate additive noise、
noise_mean = 0;
noise_var = 0、0001;
blurred_noisy = imnoise(blurred, 'gaussian', 、、、 %高斯噪声
noise_mean, noise_var);
subplot(222), imshow(blurred_noisy)
title('Simulate Blur and Noise')
% Try restoration assuming no noise、
estimated_nsr = 0;
wnr2 = deconvwnr(blurred_noisy, PSF, estimated_nsr);
subplot(223), imshow(wnr2)
title('Restoration of Blurred, Noisy Image Using NSR = 0') % Try restoration using a better estimate of the
noise-to-signal-power
% ratio、
estimated_nsr = noise_var / var(I(:));
wnr3 = deconvwnr(blurred_noisy, PSF, estimated_nsr);
subplot(224), imshow(wnr3)
title('Restoration of Blurred, Noisy Image Using Estimated NSR');。