频域图像处理和图像恢复(MATLAB实验)
Matlab中的模糊图像恢复与图像重建技术详解

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

实验五图像复原实验目的通过本次实验,实现以下几个目标:1. 理解图像复原的含义;2. 熟悉常见的噪声模型以及识别噪声的方法;3. 掌握MATLAB中用各种滤波器去除噪声的方法。
实验内容图像复原所使用的方法与图像增强相同,可以在空间域滤波和频域滤波中进行。
针对不同的噪声,通过选择合适的滤波器进行滤波,能较好地复原图像。
1、熟悉相关的Matlab命令在MATLAB中两种方法来实现空间滤波,一种是使用MATLAB中提供的滤波函数,另一种是直接对数据进行操作。
除了第三章介绍的和空间滤波相关的MATLAB函数,这里再介绍几个。
1. 给图象加噪声: imnoise()应用该函数可实现对噪声的模拟。
例1添加椒盐噪声g1=imnoise(g0, 'salt & pepper', 0.02);例2 添加高斯噪声f1=imnoise (f0, 'gaussian', 0, 0.05);2. 生成预定义的滤波器 fspecial()命令格式 fspecial(type)参数type 可能值为下列之一average 均值滤波器gaussian: 高斯低通滤波器sobel: 水平边缘增强滤波器prewitt: 水平边缘增强滤波器laplacian 近似二维拉普拉斯运算滤波器unsharp 反锐化增强滤波器例3.生成高斯低通滤波器并滤波h1=fspecial('gaussian', 4, 0.3); //4为mean,0.3为varianceg2=filter2(h1,g1, 'same');3. 二维线性数字滤波器 filter2()第三章已经见过,可以使用预定义滤波器或者自定义的滤波器滤波。
例5使用上例中预定义滤波器滤波g2=filter2(h1,g1, 'same');4. 二维中值滤波器 medfilt2()第三章已经见过,可以使用预定义滤波器或者自定义的滤波器滤波。
MATLAB中的图像处理与数字图像恢复技术

MATLAB中的图像处理与数字图像恢复技术MATLAB是一款非常强大的数字图像处理和恢复工具。
在现代科学领域中,图像处理和恢复技术被广泛应用于医学、计算机视觉、遥感等领域。
在这篇文章中,我们将探讨MATLAB中的图像处理和数字图像恢复技术的一些基本概念和方法。
一、图像处理的基本概念图像处理是指对图像进行各种操作和处理,以改善其质量、增强其特征或实现一定的目标。
在MATLAB中,可以使用图像处理工具箱来实现各种图像处理操作。
图像处理的基本概念包括图像输入输出、像素、灰度和颜色等。
图像在数字领域中以像素的形式存在,每个像素代表图像中的一个点。
而每个像素又由其对应位置的红、绿和蓝三个分量构成,这就是所谓的彩色图像。
如果只有一个分量,那么就是灰度图像了。
图像处理的主要目标是对图像进行增强、去噪、修复等操作,以提取出更多有用的信息。
常用的图像处理操作包括滤波、直方图均衡化、锐化等。
这些操作可以在MATLAB中通过简单的几行代码来实现。
二、图像处理的常见技术1. 图像增强图像增强是指通过加强图像中的某些特定特征来使其更加清晰和易于观察。
对比度增强、直方图均衡化和边缘提取是常用的图像增强方法之一。
对比度增强可以通过调整图像中的像素值范围来实现。
在MATLAB中,可以使用imadjust函数来实现对比度增强。
直方图均衡化则是通过重新分布图像中的像素值来增强图像的对比度。
MATLAB中的histeq函数可以实现直方图均衡化。
边缘提取是指将图像中的边缘部分提取出来,以便更好地分析和处理。
常见的边缘检测算法有Sobel、Prewitt和Canny算法等。
在MATLAB中,可以使用相应的函数来实现这些边缘检测算法。
2. 图像去噪图像去噪是指通过滤除图像中的噪声来恢复图像的清晰度和细节。
常见的图像去噪方法包括均值滤波、中值滤波和小波去噪等。
均值滤波是一种简单的滤波方法,它将像素周围的邻近像素值的平均值作为当前像素的值。
在MATLAB中,可以使用imfilter函数来实现均值滤波。
MATLAB中的图像增强与图像修复方法

MATLAB中的图像增强与图像修复方法近年来,随着数字图像处理技术的迅速发展,图像的质量得到了大幅度的提升。
而在图像的处理过程中,图像增强和图像修复是两个重要的技术领域。
在本文中,我们将探讨MATLAB中的图像增强和图像修复方法。
一、图像增强方法图像增强旨在改善图像的质量和视觉效果,使其更适合人眼观察和分析。
在MATLAB中,有多种图像增强方法可供选择。
1. 直方图均衡化直方图均衡化是一种常用的增强方法,通过重新分布图像的像素值,以增加图像的对比度。
在MATLAB中,可以使用`histeq`函数来实现直方图均衡化。
该函数将图像的直方图调整为均匀分布,从而提高了图像的视觉效果。
2. 拉普拉斯金字塔拉普拉斯金字塔是一种多尺度图像增强方法,可以在不同的尺度上提取图像的细节信息。
在MATLAB中,可以使用`pyramid_blending`函数来构建拉普拉斯金字塔。
该函数将图像分为不同的层级,然后通过合并各个层级的细节信息来增强图像的效果。
3. 双边滤波双边滤波是一种通过保持边缘信息的图像增强方法,在去除图像噪声的同时也能保留图像的边缘细节。
在MATLAB中,可以使用`bfilter2`函数来实现双边滤波。
该函数通过同时考虑像素的空间和灰度信息来进行滤波,从而提高图像的质量。
二、图像修复方法图像修复是指通过恢复被损坏或受到噪声污染的图像,使之恢复到原本的状态。
在MATLAB中,也有多种图像修复方法可供选择。
1. 傅里叶变换傅里叶变换是一种广泛应用于图像修复的数学方法。
通过将图像转换到频域,并进行频域滤波操作,可以去除图像中的噪声和损坏部分。
在MATLAB中,可以使用`fft2`和`ifft2`函数来进行傅里叶变换和逆傅里叶变换,从而实现图像的修复。
2. 小波变换小波变换是一种基于多尺度分析的图像修复方法,可以在不同的尺度上提取图像的细节信息。
在MATLAB中,可以使用`wavelet denoise`函数来进行小波变换修复。
频域图像处理和图像恢复(MATLAB实验)

实验项目名称:频域图像处理和图像恢复(所属课程:图像和视频处理)学院:专业班级:姓名:学号:实验日期:实验地点:指导教师:本实验项目成绩:教师签字:日期:__________________ 1.实验目的(1) 掌握频域图像处理的基本方法。
(2) 掌握图像的傅里叶变换。
(3) 掌握空域和频域图像处理的联系与区别。
(4) 掌握图像恢复的相关理论和方法。
2.实验内容(1)显示图像’eight.tif’和’cameraman.tif’傅立叶变换的傅立叶谱图像。
I=imread('eight.tif');Id=im2double(I);I_dft=fft2(Id);figure,imshow(Id),title('Original Image');figure,imshow(log(1+abs(fftshift(I_dft))),[]),...title('FT of original image');I=imread('cameraman.tif');Id=im2double(I);I_dft=fft2(Id);figure,imshow(Id),title('Original Image'); figure,imshow(log(1+abs(fftshift(I_dft))),[]),...title('FT of original image');(2) 对图像’eight.tif’采用理想低通滤波器和理想高通滤波器进行处理,分析不同的滤波器得到的结果;低通R1=35:I=imread('eight.tif');Id=im2double(I);I_dft=fft2(Id);[M,N]=size(I);dist=distmatrix(M,N);figure,mesh(fftshift(dist)),title('Distance Matrix');H=zeros(M,N);radius=35;ind=dist<=radius;H(ind)=1;Hd=double(H);DFT_filt=Hd .* I_dft;I2=real(ifft2(DFT_filt));figure,imshow(log(1+abs(fftshift(DFT_filt))),[]),... title('Filtered FT');figure,imshow(I2),title('Filtered Image');R2=80:高通R1=30:I=im2double(imread('eight.tif')); I_dft=fft2(I);[M,N]=size(I);dist=distmatrix(M,N);H=ones(M,N);radius=30;ind=dist<=radius;H(ind)=0;a=1;b=1;Hd=double(a+(b .* H));DFT_filt=Hd .* I_dft;I2=real(ifft2(DFT_filt));figure,imshow(log(1+abs(fftshift(DFT_filt))),[]),... title('Filtered FT');figure,imshow(I2),title('Filtered Image');R2=80:采用不同的截断半径D1=20、D1=80进行处理,分析截断半径对结果的影响。
matlab图像处理综合实验实验报告

《数字图像处理》实验报告学院:专业:班级:姓名:学号:实验一实验名称:图像增强实验目的:1.熟悉图像在Matlab下的读入,输出及显示;2.熟悉直方图均衡化;3.熟悉图像的线性指数等;4.熟悉图像的算术运算及几何变换.实验仪器:计算机,Matlab软件实验原理:图像增强是为了使受到噪声等污染图像在视觉感知或某种准则下尽量的恢复到原始图像的水平之外,还需要有目的性地加强图像中的某些信息而抑制另一些信息,以便更好地利用图像。
图像增强分频域处理和空间域处理,这里主要用空间域的方法进行增强。
空间域的增强主要有:灰度变换和图像的空间滤波。
图像的直方图实际上就是图像的各像素点强度概率密度分布图,是一幅图像所有像素集合的最基本统计规律,均衡化是指在每个灰度级上都有相同的像素点过程。
实验内容如下:I=imread('E:\cs.jpg');%读取图像subplot(2,2,1),imshow(I),title('源图像')J=rgb2gray(I)%灰度处理subplot(2,2,2),imshow(J) %输出图像title('灰度图像') %在原始图像中加标题subplot(2,2,3),imhist(J) %输出原图直方图title('原始图像直方图')0100200几何运算:I=imread('E:\cs.jpg');%subplot(1,2,1),imshow(I); theta = 30;K = imrotate(I,theta); subplot(1,2,2),imshow(K)对数运算:I=imread('E:\dog.jpg');subplot(2,2,1),imshow(I),title('源图像') J=rgb2gray(I)%灰度处理subplot(2,2,2),imshow(J),title('灰度变换后图像') J1=log(1+double(J));subplot(2,2,3),imshow(J1,[]),title('对数变换后') 指数运算:I=imread('E:\dog.jpg'); f=double(I); g=(2^2*(f-1))-1 f=uint8(f); g=uint8(g);subplot(1,2,1);subimage(f),title('变换一') subplot(1,2,2);subimage(g),title('变换二')加法运算:clc;clear all;close all; i = imread('E:\dog.jpg');j = imnoise(i,'gaussian',0,0.02);subplot(1,3,1),imshow(i),title('图一') subplot(1,3,2),imshow(j),title('图二') k=zeros(242,308); for p=1:100j = imnoise(i,'gaussian',0,0.02); j1 = im2double(j); k = k + j1; end k=k/100;subplot(1,3,3),imshow(k),title('图三')变换一200400600100200300400500变换二200400600100200300400500实验二实验名称:图像变换实验目的:(1)进一步对matlab的了解和使用;(2)学习如何在matlab中对数字图像的处理;实验原理:图像和其他信号一样,既能在空间域处理,也能在频率域处理。
如何利用Matlab进行图像恢复

如何利用Matlab进行图像恢复图像恢复是数字图像处理中的一个重要的研究领域。
Matlab作为一种功能强大的工具,被广泛应用于图像处理领域。
本文将介绍如何利用Matlab进行图像恢复,并探讨其中的原理和算法。
首先,图像恢复是一种通过消除或减小图像失真、模糊或噪声等问题,使图像更加清晰和还原的过程。
在实际应用中,图像常常受到噪声污染、运动模糊、光照变化等影响,导致图像质量下降。
利用图像恢复技术,可以提高图像的视觉质量和辨识度,对于图像处理、计算机视觉等领域具有重要意义。
Matlab作为一款高级的数学计算工具,提供了丰富的函数库和灵活的编程接口,能够方便地进行图像处理和分析。
在图像恢复中,Matlab提供了多种处理图像的函数和算法,可以帮助我们实现各种图像恢复的方法。
一种常用的图像恢复方法是基于空域滤波的处理。
在Matlab中,可以使用imfilter函数来实现各种空域滤波算法,如均值滤波、中值滤波、高斯滤波等。
这些滤波算法通过在图像像素之间进行加权平均或统计操作,可以消除图像中的噪声和模糊。
另一种常用的图像恢复方法是基于频域滤波的处理。
在Matlab中,可以使用fft2函数和ifft2函数来实现图像的傅里叶变换和反傅里叶变换。
通过将图像从空域转换到频域,可以利用频域滤波算法对图像进行处理,如理想低通滤波、巴特沃斯低通滤波、维纳滤波等。
这些滤波算法可以根据图像的频域特征,有选择地增强或抑制图像中的某些频率分量,从而实现图像的恢复。
此外,Matlab还提供了一些专门用于图像恢复的函数,如wiener2函数、deconvwnr函数等。
wiener2函数实现了维纳滤波算法,可以用于消除运动模糊或加性噪声的图像恢复。
deconvwnr函数实现了维纳滤波的变种算法,可以根据图像和模糊函数的噪声特性,自适应地调整滤波参数,从而实现更好的图像恢复效果。
除了上述方法,Matlab还提供了其他一些高级的图像恢复算法,如超分辨率恢复、图像拼接等。
数字图像实验报告 医学图像频域滤波与图像复原

实验七医学图像频域滤波与图像复原实验目的:1.熟悉医学图像离散傅里叶变化的原理和方法;2.掌握医学图像频域滤波的原理;3.掌握使用Matlab中的函数实现医学图像进行频域滤波的方法;4.掌握使用Matlab中的图像退化与复原的方法;实验内容:一、医学图像频域滤波方法与实现使用imnoise给图像BMRI1_24bit.bmp添加概率为0.2的椒盐噪声,对原图像和加噪声后的图像进行傅氏变换并显示变换后的移中频谱图,然后分别使用Butterworth低、高通滤波器对噪声图像进行低通和高通滤波,显示D0为5,10,20,40时的滤波效果图,并说明存两种滤波效果中所存在的差异及原因。
答:>> f=imread('BMRI1_24bit.bmp');>> f=rgb2gray(f);>> g=imnoise(f,'salt & pepper',0.2);>> f=double(f);>> g=double(g);>> F1=fft2(f);>> F2=fft2(g);>> FC1=fftshift(F1);>> FC2=fftshift(F2);>> f=ifft2(F1);>> g=ifft2(F2);>> imshow(uint8(f));title('逆变换后原图像');>> figure,imshow(uint8(g));title('逆变换后的椒盐噪声原图像');>> figure,imshow(F1);title('原图像的傅氏变换');>> figure,imshow(F2);title('椒盐噪声原图像的傅氏变换');>> figure,imshow(log(1+abs(FC1)),[]);title('原图像的移中频谱图');>> figure,imshow(log(1+abs(FC2)),[]);title('椒盐噪声原图像的移中频谱图');Butterworth低通滤波器Butterworthd.mfunction Butterworthd(I)I=rgb2gray(I);[M,N]=size(I);m=fix(M/2);n=fix(N/2);%形容图像的中心点nn=3;%三阶prompt={'Iuput Filter Cutoff(d0):'}; defans={'5'};i=inputdlg(prompt,'input',1,defans);d0=str2num(i{1});% d0=5;% for k=1:4F=fft2(I);FC=fftshift(F);for i=1:Mfor j=1:Nd=sqrt((i-m)^2+(j-n)^2);h=1/(1+(d/d0)^(2*nn));FC(i,j)=h*FC(i,j);endendF=ifftshift(FC);I=ifft2(F);I=uint8(real(I));%real提取它的实部figure,imshow(I);title(['低通d0=',num2str(d0)]);% d0=d0*2;% end>> f=imread('BMRI1_24bit.bmp');>> g=imnoise(f,'salt & pepper',0.2);>> Butterworthd(g);Butterworth高通滤波器Butterworthg.mfunction Butterworthg(I)I=rgb2gray(I);[M,N]=size(I);m=fix(M/2);n=fix(N/2);%形容图像的中心点nn=3;%三阶prompt={'Iuput Filter Cutoff(d0):'};defans={'5'};i=inputdlg(prompt,'input',1,defans);d0=str2num(i{1});% d0=5;%for k=1:4F=fft2(I);FC=fftshift(F);for i=1:Mfor j=1:Nd=sqrt((i-m)^2+(j-n)^2);h=1/(1+(d0/d)^(2*nn));FC(i,j)=h*FC(i,j);endendF=ifftshift(FC);I=ifft2(F);I=uint8(real(I));%real提取它的实部figure,imshow(I);title(['高通d0=',num2str(d0)]);%d0=d0*2;%end>> f=imread('BMRI1_24bit.bmp');>> g=imnoise(f,'salt & pepper',0.2); >> Butterworthg(g);图像从空间域变换到频率域后,其低频分量对应图像中灰度值变化比较缓慢的区域,高频分量则表征图像中物体的边缘和随机噪声等信息。
(完整word版)数字图像处理实验 ——图像恢复

数字图像处理实验——图像恢复班级:信息10—1姓名:张慧学号:36实验四、图像复原一、实验目的1了解图像退化原因与复原技术分类化的数学模型;2熟悉图像复原的经典与现代方法;3热练掌握图像复原的应用;4、通过本实验掌握利用MATLAB编程实现数字图像的图像复原。
二、实验原理:图像复原处理是建立在图像退化的数学模型基础上的,这个退化数学模型能够反映图像退化的原因。
图像的退化过程可以理解为施加于原图像上的运算和噪声两者联合作用的结果,图像退化模型如图1所示,可以表示为:g ( x, y ) H [ f ( x, y )] n( x, y ) f ( x, y )h( x, y ) n( x, y) (1)图1 图像退化模型(1)在测试图像上产生高斯噪声lena图-需能指定均值和方差;并用滤波器(自选)恢复图像;噪声是最常见的退化因素之一,也是图像恢复中重点研究的内容,图像中的噪声可定义为图像中不希望有的部分。
噪声是一种随机过程,它的波形和瞬时振幅以及相位都随时间无规则变化,因此无法精确测量,所以不能当做具体的处理对象,而只能用概率统计的理论和方法进行分析和处理。
本文中研究高斯噪声对图像的影响及其去噪过程。
①高斯噪声的产生:所谓高斯噪声是指它的概率密度函数服从高斯分布(即正态分布)的一类噪声。
一个高斯随机变量z的PDF可表示为:P(z)()22x pz u2σ-⎡⎤-⎢⎥⎣⎦(2)其中z代表灰度,u是z的均值,σ是z的标准差。
高斯噪声的灰度值多集中在均值附近。
图2 高斯函数可以通过不同的算法用matlab 来产生高斯噪声。
②高斯噪声对信号的影响噪声影响图像处理的输入、采集、处理的各个环节以及输出结果的全过程,在图像中加高斯噪声通常会使图像变得模糊并且会出现细小的斑点,使图像变得不清晰。
③去除高斯噪声的一些方法去除高斯噪声的方法有直方图变换,低通滤波,高通滤波,逆滤波,维纳滤波,中值滤波等。
本文应用高斯平滑滤波进行去噪处理。
matlab图像处理综合实验实验报告

《数字图像处理》实验报告学院:专业:班级:姓名:学号:实验一实验名称:图像增强实验目的:1.熟悉图像在Matlab下的读入,输出及显示;2.熟悉直方图均衡化;3.熟悉图像的线性指数等;4.熟悉图像的算术运算及几何变换.实验仪器:计算机,Matlab软件实验原理:图像增强是为了使受到噪声等污染图像在视觉感知或某种准则下尽量的恢复到原始图像的水平之外,还需要有目的性地加强图像中的某些信息而抑制另一些信息,以便更好地利用图像。
图像增强分频域处理和空间域处理,这里主要用空间域的方法进行增强。
空间域的增强主要有:灰度变换和图像的空间滤波。
图像的直方图实际上就是图像的各像素点强度概率密度分布图,是一幅图像所有像素集合的最基本统计规律,均衡化是指在每个灰度级上都有相同的像素点过程。
实验内容如下:I=imread('E:\cs.jpg');%读取图像subplot(2,2,1),imshow(I),title('源图像')J=rgb2gray(I)%灰度处理subplot(2,2,2),imshow(J) %输出图像title('灰度图像') %在原始图像中加标题subplot(2,2,3),imhist(J) %输出原图直方图title('原始图像直方图')0100200subplot(1,2,2),imshow(K)对数运算:I=imread('E:\dog.jpg');subplot(2,2,1),imshow(I),title('源图像')J=rgb2gray(I)%灰度处理subplot(2,2,2),imshow(J),title('灰度变换后图像') J1=log(1+double(J));subplot(2,2,3),imshow(J1,[]),title('对数变换后')指数运算:I=imread('E:\dog.jpg');f=double(I);g=(2^2*(f-1))-1f=uint8(f);g=uint8(g);subplot(1,2,1);subimage(f),title('变换一') subplot(1,2,2);subimage(g),title('变换二')100 200 300100 200 300加法运算:clc;clear all;close all;i = imread('E:\dog.jpg');j = imnoise(i,'gaussian',0,0.02); subplot(1,3,1),imshow(i),title('图一') subplot(1,3,2),imshow(j),title('图二') k=zeros(242,308);for p=1:100j = imnoise(i,'gaussian',0,0.02);j1 = im2double(j);k = k + j1;endk=k/100;subplot(1,3,3),imshow(k),title('图三')实验二实验名称:图像变换实验目的:(1)进一步对matlab的了解和使用;(2)学习如何在matlab中对数字图像的处理;实验原理:图像和其他信号一样,既能在空间域处理,也能在频率域处理。
matlab图像处理实验报告

matlab图像处理实验报告Matlab图像处理实验报告引言:图像处理是一门研究如何对图像进行获取、存储、传输、处理和显示的学科。
而Matlab作为一种强大的科学计算软件,被广泛应用于图像处理领域。
本实验报告旨在介绍Matlab在图像处理中的应用。
一、图像获取与显示在图像处理的第一步,我们需要获取图像并进行显示。
Matlab提供了丰富的函数和工具箱来实现这一目标。
我们可以使用imread函数来读取图像文件,imwrite函数来保存图像文件。
而imshow函数则可以用于图像的显示。
通过使用这些函数,我们可以轻松地加载图像文件,并在Matlab中显示出来。
二、图像的基本操作在图像处理中,我们经常需要对图像进行一些基本的操作,如图像的缩放、旋转、裁剪等。
Matlab提供了一系列的函数来实现这些操作。
通过imresize函数,我们可以实现图像的缩放操作。
而imrotate函数则可以用于图像的旋转。
此外,imcrop函数可以用于图像的裁剪。
三、图像的滤波处理图像的滤波处理是图像处理中的重要内容之一。
Matlab提供了多种滤波函数,如均值滤波、中值滤波、高斯滤波等。
这些滤波函数可以用于图像的平滑处理和噪声的去除。
通过调用这些函数,我们可以有效地改善图像的质量。
四、图像的边缘检测边缘检测是图像处理中的一项重要任务,它可以用于提取图像中的边缘信息。
在Matlab中,我们可以使用多种边缘检测算法来实现这一目标,如Sobel算子、Prewitt算子、Canny算子等。
这些算子可以有效地提取图像中的边缘,并将其显示出来。
五、图像的特征提取图像的特征提取是图像处理中的关键步骤之一,它可以用于提取图像中的重要特征。
在Matlab中,我们可以使用各种特征提取算法来实现这一目标,如颜色直方图、纹理特征、形状特征等。
通过提取这些特征,我们可以对图像进行分类、识别等任务。
六、图像的分割与识别图像的分割与识别是图像处理中的热门研究方向之一。
如何使用Matlab技术进行图像恢复

如何使用Matlab技术进行图像恢复引言:随着数字图像处理技术的不断进步,图像的恢复和增强已经成为一项重要的任务,在许多领域都有广泛的应用。
而Matlab作为一种功能强大的数学计算和图形处理软件,被广泛应用于图像恢复领域。
接下来,本文将介绍如何使用Matlab技术进行图像恢复,包括图像去噪、图像增强以及图像修复等方面。
一、图像去噪图像去噪是图像恢复的关键步骤之一,通过去除图像中的噪声可以提高图像的质量和细节表达。
Matlab提供了多种强大的图像去噪算法,如基于小波变换的去噪、基于自适应中值滤波的去噪等。
1. 基于小波变换的去噪小波变换是一种经典的信号处理技术,将信号分解成多个频率范围内的子信号,从而实现对信号的分析和处理。
在Matlab中,可以使用Wavelet Toolbox来进行小波变换去噪。
首先,通过图像的二维小波变换得到图像的小波系数。
然后,根据小波系数的统计特性,选择一个适当的阈值进行小波系数的硬阈值或软阈值处理。
最后,将处理后的小波系数进行反变换,得到去噪后的图像。
2. 基于自适应中值滤波的去噪自适应中值滤波是一种基于排序统计理论的滤波方法,可以有效地去除图像中的椒盐噪声和斑点噪声。
在Matlab中,可以使用medfilt2函数来实现自适应中值滤波。
该函数会自动根据噪声的强度和分布情况,选择合适的窗口大小进行滤波操作。
通过反复迭代,可以逐渐去除图像中的噪声,得到清晰的图像。
二、图像增强图像增强是提高图像视觉效果和信息表达能力的一种方法,常用于改善图像的亮度、对比度、细节等特性。
Matlab提供了丰富的图像增强函数和算法,如直方图均衡化、拉普拉斯金字塔等。
1. 直方图均衡化直方图均衡化是一种常用的图像增强方法,可以通过重新分布图像像素值来增强图像的对比度。
在Matlab中,可以使用histeq函数来实现直方图均衡化。
该函数会自动计算图像的累积直方图,并将像素值映射到一个新的直方图上,从而实现图像的均衡化。
研究报告图像恢复(matlab)

实验5、图像复原系别:,,,,,,,,,,,,,,,,,,,,,,,,,,,专业班级:,姓名:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,学号:实验日期:,,,,,,,,,,,,,,,,,,,,,,,,,,,,,实验报告日期:,一、实验目的1、熟悉几种在实际应用中比较重要的图像复原技术,学会用MA TLAB复原函数对退化图像进行复原处理。
二、实验原理图像在形成、传输和记录的过程中,由于受多种原因的影响,图像的质量会有下降,典型表现为图像模糊、失真、有噪声等。
这一降质的过程称为图像的退化。
而图像复原试图利用退化现象的某种先验知识(即退化模型),把已经退化了得图像加以重建和复原。
其目的就是尽可能地减少或去除在获取图像过程中发生的图像质量的下降(退化),恢复被退化图像的本来面目。
三、实验内容:1、读入一副图像,加入运动模糊和椒盐噪声;2、用维纳滤波复原函数deconvwnr对模糊图像进行复原重建。
四、实验指导:%读入、显示原图像I,=,im2double(imread('cameraman.tif'));,imshow(I);,title('Original,Image,(courtesy,of,MIT)');%模拟运动模糊LEN,=,21;,THETA,=,11;,PSF,=,fspecial('motion',,LEN,,THETA);,blurred,=,imfilter(I,,PSF,,'conv',,'circular');,figure,,imshow(blurred)%模拟加性噪声,noise_mean,=,0;,noise_var,=,0.0001;,blurred_noisy,=,imnoise(blurred,,'gaussian',noise_mean,,noise_var);,figure,,imshow(blurred_noisy),title('Simulate,Blur,and,Noise'),%尝试恢复假设没有噪声,estimated_nsr,=,0;,wnr2,=,deconvwnr(blurred_noisy,,PSF,,estimated_nsr);,figure,,imshow(wnr2),title('Restoration,of,Blurred,,Noisy,Image,Using,NSR,=,0'),%尝试恢复对噪声对信号功率比进行更好的估计estimated_nsr,=,noise_var,/,var(I(:));,wnr3,=,deconvwnr(blurred_noisy,,PSF,,estimated_nsr);, figure,,imshow(wnr3),title('Restoration,of,Blurred,,Noisy,Image,Using,Estimated,NSR');,五、实验报告内容1、实验中用到源程序代码;clear%读入、显示原图像I,=,im2double(imread('l.tiff'));,imshow(I);,title('Original,Image,(courtesy,of,MIT)');%模拟运动模糊LEN,=,21;,THETA,=,11;,PSF,=,fspecial('motion',,LEN,,THETA);,blurred,=,imfilter(I,,PSF,,'conv',,'circular');,figure,,imshow(blurred)%模拟加性噪声,noise_mean,=,0;,noise_var,=,0.0001;,blurred_noisy,=,imnoise(blurred,,'gaussian',noise_mean,,noise_var);, figure,,imshow(blurred_noisy),title('Simulate,Blur,and,Noise'),%尝试恢复假设没有噪声,estimated_nsr,=,0;,wnr2,=,deconvwnr(blurred_noisy,,PSF,,estimated_nsr);, figure,,imshow(wnr2),title('Restoration,of,Blurred,,Noisy,Image,Using,NSR,=,0'),%尝试恢复对噪声对信号功率比进行更好的估计estimated_nsr,=,noise_var,/,var(I(:));,wnr3,=,deconvwnr(blurred_noisy,,PSF,,estimated_nsr);, figure,,imshow(wnr3),title('Restoration,of,Blurred,,Noisy,Image,Using,Estimated,NSR');,2、提交实验的原始图像和结果图像。
如何在Matlab中进行图像修复和图像修复

如何在Matlab中进行图像修复和图像修复图像修复是数字图像处理中的一项重要任务,它旨在通过对图像中的损坏或失真进行恢复和修复,以达到改善图像质量和准确性的目的。
Matlab作为一种流行的科学计算和图像处理软件,提供了许多功能强大的工具和函数,可帮助我们实现图像修复的任务。
在本文中,我们将探讨如何使用Matlab进行图像修复和图像修复的技术。
图像修复的一种常见方法是基于图像降噪的方法。
在实际应用中,图像通常包含有损噪声,例如高斯噪声、盐和胡椒噪声等。
这些噪声会影响图像的视觉效果和后续图像处理的结果。
因此,我们首先需要对图像进行降噪处理,以减少噪声对图像的影响。
Matlab中有许多用于图像降噪的函数和工具包,例如medfilt2函数、wiener2函数和imnoise函数等。
其中,medfilt2函数可以实现中值滤波,它通过计算像素领域内的中值来替代当前像素的值,从而有效地降低图像中的脉冲噪声。
而wiener2函数可以实现维纳滤波,它利用图像的频谱信息和噪声模型来减少噪声的影响。
imnoise函数可以用于向图像中添加噪声,可以根据需要选择添加高斯噪声、盐和胡椒噪声等。
通过这些函数的组合使用,我们可以有效地对图像进行降噪处理。
除了降噪处理,图像修复还需要解决图像中的缺失和损坏问题。
图像中的缺失可以是由于损坏或丢失的像素引起的,而图像中的损坏可以是由于物理和环境因素引起的,例如划痕、水印、光照不足等。
对于这些问题,我们可以使用Matlab中的图像修复工具箱来进行修复。
Matlab中的图像修复工具箱包含了一系列的函数和算法,用于处理各种注水、缺失、损坏和失真等问题。
其中,最常用的算法是基于图像内插的方法,它通过对邻近像素的插值来恢复缺失或损坏的像素。
Matlab中的interp2函数可以实现二维图像的内插计算,它可以根据已知像素的位置和值来估计未知像素的值。
另外,Matlab还提供了一些其他的图像修复算法,例如基于梯度的方法、基于PDE的方法和基于深度学习的方法等。
图像增强图像复原 matlab

实验1 图像增强、图像复原实验目的:掌握图像增强、图像复原的方法。
掌握如何用matlab工具实现图像增强和图像复原。
实验内容:用matlab工具实现图像增强和图像复原,观察图像增强和复原的效果,并对结果进行分析。
一、 空间域变换增强--增强对比度增强对比度实际是增强原图像的各部分的反差。
实际中往往是通过改变原图中某两个灰度值之间的动态范围来实现的(如图1)。
图1 增强对比度从图1中可以看出,通过变换可以使原图的较高的和较低的灰度值的动态范围减小了,而原图在二者之间的动态范围增加了,从而其范围的对比度增加了。
利用MATLAB图像处理工具箱进行实验。
参考的MATLAB代码所示:X1=imread('image.tif');figure,imshow(X1)f0=0;g0=0;f1=70;g1=30;f2=180;g2=230;f3=255;g3=255;r1=(g1-g0)/(f1-f0);b1=g0-r1*f0;r2=(g2-g1)/(f2-f1);b2=g1-r2*f1;r3=(g3-g2)/(f3-f2);b3=g2-r3*f2;[m,n]=size(X1);X2=double(X1);for i=1:mfor j=1:nf=X2(i,j);g(i,j)=0;if(f>=0)&(f<=f1)g(i,j)=r1*f+b1;elseif (f>=f1)&(f<=f2)g(i,j)=r2*f+b2;elseif (f>=f2)&(f<=f3)g(i,j)=r3*f+b3;endendendfigure,imshow(mat2gray(g))选择一幅灰度级比较狭窄的图像,设计一个灰度变换函数,参考上述程序对其进行灰度变换,显示变换前后的效果,并进行分析。
二、频率域图像增强(一)基本原理卷积理论是频域技术的基础。
设函数f(x,y)与线性位不变算子h(x,y)的卷积结果是g(x,y),即g(x,y)=h(x,y)*f(x,y)。
图像恢复方法实验

实验二 图像恢复方法一、实验目的1. 图像恢复方法:编程实现利用逆滤波、维纳滤波和等功率谱滤波方法对图像恢复。
2.熟悉MATLAB 环境;3.学习用MATLAB 编程或直接调用函数对数字图像实现处理。
;4.分析比较运行结果,感性认识不同算法对图像处理的不同效果二、实验内容及要求编程实现利用逆滤波、维纳滤波和等功率谱滤波方法对图像恢复。
三、原理图象恢复的滤波方法原理:<1>逆滤波 在不考虑噪声的情况下写成),(),(*),(),(y x n y x h y x f y x g +=),(),(),(v u H v u F v u G =)],(/),([),(),(/),(),(1v u H v u G y x f v u H v u G v u F -==F该恢复方法取名为逆滤波。
实际应用时:(1)无噪声情况:若在频谱平面对图象信号有决定影响的点或区域上,H(u,v)的值为零,那么G(u,v)的值也为零,故不能确定这些频率处的F(u,v)值,也就难以恢复原始图象f(x,y)。
(2)有噪声情况G(u,v)=F(u,v) H(u,v)+N(u,v),仍采用逆滤波器P(u,v)=1/H(u,v)作恢复滤波器(a)H(u,v)=0, 没有定义。
(b)H(u ,v)=0附近, H(u ,v)较小,N(u,v)/H(u,v)会非常大。
<2>维纳滤波),(/),(),(),(),(),(ˆv u H v u N v u F v u P v u G v u F +==),(ˆv u F []{}。
求准则:),(ˆ ),(ˆ),( :min 22y x f y x f y x f E e -=维纳滤波器是平移不变的滤波器,它对整幅图象使用相同的滤波。
对于高斯噪声,维纳滤波器是最优线性估算,是对图象不连续性进行平滑与消除噪声性能之间的最佳折中方法。
<3>等功率谱滤波(1)退化模型四.实验程序及结果程序如下clear all;x=imread('D:\hehua.jpg');I=rgb2gray(x);subplot(2,3,1);imshow(I);title('原图像');[m,n]=size(I);F=fftshift(fft2(I));%退化函数k=0.00001;for u=1:mfor v=1:nH(u,v)=exp((-k)*(((u-m/2)^2+(v-n/2)^2)^(5/6)));endendG=F.*H;I0=real(ifft2(fftshift(G)));subplot(2,3,2);imshow(uint8(I0));title('模糊后');I1=imnoise(uint8(I0),'gaussian',0,0.01);%噪声subplot(2,3,3);imshow(uint8(I1));title('模糊退化含噪声'); F0=fftshift(fft2(I1));F1=F0./H;I2=real(ifft2(fftshift(F1)));subplot(2,3,4);imshow(uint8(I2),[]);title('逆滤波');K=0.1;%信噪比倒数的假设for u=1:mfor v=1:nH(u,v)=exp(-k*(((u-m/2)^2+(v-n/2)^2)^(5/6)));H0(u,v)=(abs(H(u,v)))^2;H1(u,v)=H0(u,v)/(H(u,v)*(H0(u,v)+K));endendF2=H1.*F0;I3=real(ifft2(fftshift(F2)));subplot(2,3,5);imshow(uint8(I3),[]);title('维纳滤波');K = 0.1;for u=1:mfor v=1:nH(u,v)=exp(-k*(((u-m/2)^2+(v-n/2)^2)^(5/6)));H0(u,v)=(abs(H(u,v)))^2;H2(u,v)=sqrt(1/((H0(u,v)^2+K)));endendF3 = H2.*F0;I4 = real(ifft2(fftshift(F3)));subplot(2,3,6);imshow(uint8(I3),[]);title('等功率谱滤波');k=0.01五.实验结果及分析不同的滤波参数、滤波算法结果不同,在实际应用中应多取几个参数,以达到最佳。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验项目名称:频域图像处理和图像恢复
(所属课程:图像和视频处理)
学院:专业班级:姓名:学号:实验日期:实验地点:指导教师:
本实验项目成绩:教师签字:日期:__________________ 1.实验目的
(1) 掌握频域图像处理的基本方法。
(2) 掌握图像的傅里叶变换。
(3) 掌握空域和频域图像处理的联系与区别。
(4) 掌握图像恢复的相关理论和方法。
2.实验内容
(1)显示图像’’和’’傅立叶变换的傅立叶谱图像。
I=imread('');
Id=im2double(I);
I_dft=fft2(Id);
figure,imshow(Id),title('Original Image');
figure,imshow(log(1+abs(fftshift(I_dft))),[]),...
title('FT of original image');
I=imread('');
Id=im2double(I);
I_dft=fft2(Id);
figure,imshow(Id),title('Original Image'); figure,imshow(log(1+abs(fftshift(I_dft))),[]),... title('FT of original image');
(2) 对图像’’采用理想低通滤波器和理想高通滤波器进行处理,分析不同的滤波器得到的结果;
低通R1=35:
I=imread('');
Id=im2double(I);
I_dft=fft2(Id);
[M,N]=size(I);
dist=distmatrix(M,N);
figure,mesh(fftshift(dist)),title('Distance Matrix'); H=zeros(M,N);
radius=35;
ind=dist<=radius;
H(ind)=1;
Hd=double(H);
DFT_filt=Hd .* I_dft;
I2=real(ifft2(DFT_filt));
figure,imshow(log(1+abs(fftshift(DFT_filt))),[]),... title('Filtered FT');
figure,imshow(I2),title('Filtered Image');
R2=80:
高通R1=30:
I=im2double(imread('')); I_dft=fft2(I);
[M,N]=size(I);
dist=distmatrix(M,N);
H=ones(M,N);
radius=30;
ind=dist<=radius;
H(ind)=0;
a=1;b=1;
Hd=double(a+(b .* H));
DFT_filt=Hd .* I_dft;
I2=real(ifft2(DFT_filt));
figure,imshow(log(1+abs(fftshift(DFT_filt))),[]),... title('Filtered FT');
figure,imshow(I2),title('Filtered Image');
R2=80:
采用不同的截断半径D1=20、D1=80进行处理,分析截断半径对结果的影响。
(3) 对图像’’采用巴特沃斯高通滤波器进行处理,分析不同的截断频率和阶数对结果的影响。
(D1=20,D2=60;n1=2,n2=6)对图像的影响;
D1=20,n1=2:
I=im2double(imread(''));
I_dft=fft2(I);
[M,N]=size(I);
dist=distmatrix(M,N);
H=ones(M,N);
cutoff=20;order=2;
H_but=1 ./ (1+(cutoff./dist) .^(2*order));
H_but_hfe=a+(b .*H_but);
figure,mesh(fftshift(H_but_hfe)),zlim([0 2]),...
title('Butterworth high-pass filter');
DFT_filt_but=H_but_hfe .*I_dft;
I4=real(ifft2(DFT_filt_but));
figure,imshow(log(1+abs(fftshift(I_dft))),[]),...
title('FT of original image');
figure,imshow(log(1+abs(fftshift(DFT_filt_but))),[]),... title('Filtered FT');
figure,imshow(I4),title('Filtered Image');
D2=60,n2=6:
(4) 对图像’’采用高斯低通滤波器、高斯高通滤波器进行处理,显示其对图像处理的结果。
I=imread('');
Id=im2double(I);
I_dft=fft2(Id);
[M,N]=size(I);
dist=distmatrix(M,N);
sigma=30;
H_gau=exp(-(dist.^2)/(2*(sigma^2)));
figure,imshow(Id),title('Original Image');
figure,imshow(log(1+abs(fftshift(I_dft))),[]),...
title('DFT of original image');
figure,mesh(fftshift(dist)),title('Distance Matrix');
figure,imshow(fftshift(H_gau)),title('Gaussian low-pass');
DFT_filt_gau=H_gau .*I_dft;
I3=real(ifft2(DFT_filt_gau));
figure,imshow(log(1+abs(fftshift(DFT_filt_gau))),[]),...
title('Filtered FT');
figure,imshow(I3),title('Filtered Image');
(5)对图像’’添加高斯噪声,分别使用空域技术和频域技术实现噪声去除,恢复图像得到较好的效果。
I=imread('');
Inf=imnoise(I,'gaussian',0,;
infd=im2double(Inf);
I_fix=nlfilter(infd,[3 3],@harmonic);
figure
subplot(2,3,1),imshow(I),title('original');
subplot(2,3,2),imshow(Inf),title('noise');
subplot(2,3,3),imshow(I_fix),title('harmonic filtered');
Id=im2double(I);
i_dft=fft2(Id);
[m,n]=size(I);
dist=distmatrix(m,n);
h=zeros(m,n);
radius=35;
ind=dist<=radius;
h(ind)=1;
hd=double(h);
dft_filt=hd .*i_dft;
i2=real(ifft2(dft_filt));
subplot(2,3,4),imshow(i2),title('low filtered image');
3.实验要求
(1) 预习实验相关知识,了解实验目的与内容。
(2) 根据实验目的和内容,制定相关的实验方案并进行实施。
(3) 实验结束后,对相关内容进行总结和反思。
4.实验器材
(1) PC机及配套软件、一人一套。