数字图像处理实验

合集下载

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告1. 引言数字图像处理是使用计算机来处理和优化图像的一种技术。

在本实验中,我们将探索几种常见的数字图像处理方法,并使用Python编程语言和相关库来实现。

2. 实验目的本实验的主要目的是:1.了解图像的基本特性和数字图像处理的基本原理;2.熟悉Python编程语言和相关图像处理库的使用;3.实现常见的图像处理算法并进行实验验证。

3. 实验方法在本实验中,我们使用Python编程语言和以下相关库来实现图像处理算法:•OpenCV:用于图像读取、显示和保存等基本操作;•Numpy:用于图像数据的处理和算术运算;•Matplotlib:用于图像的可视化和结果展示。

以下是实验涉及到的图像处理方法和步骤:1.图像读取和显示:使用OpenCV库读取图像,使用Matplotlib库显示图像;2.图像的灰度化:将彩色图像转换为灰度图像;3.图像的二值化:将灰度图像转换为黑白二值图像;4.图像的平滑处理:使用平滑滤波器对图像进行平滑处理,如均值滤波和高斯滤波;5.图像的边缘检测:使用边缘检测算法对图像进行边缘检测,如Sobel算子和Canny算子;6.图像的直方图均衡化:对灰度图像进行直方图均衡化,增强图像的对比度。

4. 实验过程和结果4.1 图像读取和显示首先,我们使用OpenCV库读取一张图像,并使用Matplotlib库显示该图像:import cv2import matplotlib.pyplot as plt# 读取图像img = cv2.imread('image.jpg')# 显示图像plt.imshow(cv2.cvtColor(img, cv2.COLOR_BGR2RGB)) plt.axis('off')plt.show()4.2 图像的灰度化接下来,我们将彩色图像转换为灰度图像:# 灰度化图像gray_img = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY) # 显示灰度图像plt.imshow(gray_img, cmap='gray')plt.axis('off')plt.show()4.3 图像的二值化然后,我们将灰度图像转换为黑白二值图像:# 二值化图像_, binary_img = cv2.threshold(gray_img, 128, 255, cv2.THRESH_BINARY)# 显示二值图像plt.imshow(binary_img, cmap='gray')plt.axis('off')plt.show()4.4 图像的平滑处理接下来,我们使用平滑滤波器对图像进行平滑处理,例如使用5x5的均值滤波器和高斯滤波器:# 均值滤波mean_img = cv2.blur(img, (5, 5))# 高斯滤波gaussian_img = cv2.GaussianBlur(img, (5, 5), 0) # 显示平滑处理后的图像plt.figure(figsize=(10, 5))plt.subplot(121)plt.imshow(cv2.cvtColor(mean_img, cv2.COLOR_BGR2R GB))plt.title('Mean Filter')plt.axis('off')plt.subplot(122)plt.imshow(cv2.cvtColor(gaussian_img, cv2.COLOR_B GR2RGB))plt.title('Gaussian Filter')plt.axis('off')plt.show()4.5 图像的边缘检测然后,我们使用边缘检测算法对图像进行边缘检测,例如使用Sobel算子和Canny算子:# 边缘检测sobel_img = cv2.Sobel(gray_img, cv2.CV_8U, 1, 1, ksize=3)canny_img = cv2.Canny(gray_img, 50, 150)# 显示边缘检测结果plt.figure(figsize=(10, 5))plt.subplot(121)plt.imshow(sobel_img, cmap='gray')plt.title('Sobel Operator')plt.axis('off')plt.subplot(122)plt.imshow(canny_img, cmap='gray')plt.title('Canny Operator')plt.axis('off')plt.show()4.6 图像的直方图均衡化最后,我们对灰度图像进行直方图均衡化,以增强图像的对比度:# 直方图均衡化equalized_img = cv2.equalizeHist(gray_img)# 显示直方图均衡化结果plt.imshow(equalized_img, cmap='gray')plt.axis('off')plt.show()5. 实验总结通过本实验,我们熟悉了数字图像处理的基本方法和步骤,并使用Python编程语言和相关库实现了图像的读取、显示、灰度化、二值化、平滑处理、边缘检测和直方图均衡化等操作。

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告数字图像处理实验报告(一)实验目的1.理解数字图像处理的基本概念与原理。

2.掌握数字图像处理的基本方法。

3.掌握常用数字滤波器的性质和使用方法。

4.熟练应用数字图像处理软件进行图像处理。

实验器材计算机、MATLAB软件实验内容1.图像的读写与显示首先,我们需要在MATLAB中读入一幅图像,并进行显示。

% 导入图像文件I = imread('myimage.jpg');% 显示图像imshow(I);2.图像的分辨率与色彩空间转换数字图像处理中的一个重要概念是图像的分辨率,通常用像素数量表示。

图像的分辨率越高,代表着图像包含更多的像素,从而更具细节和清晰度。

在数字图像处理中,常常需要将一幅图像从一种色彩空间转换为另一种色彩空间。

RGB色彩空间是最常见的图像色彩空间之一,并且常常作为其他色彩空间的基础。

% 转换图像色彩空间J = rgb2gray(I);% 显示转换后的图像imshow(J);3.图像的增强与滤波图像的增强通常指的是对图像的对比度、亮度和清晰度等方面进行调整,以改善图像的质量和可读性。

数字图像处理中的滤波是一种常用的图像增强方法。

滤波器是一个能够对图像进行局部操作的矩阵,它能够提取或抑制特定的图像特征。

% 对图像进行平滑滤波K = imgaussfilt(J, 1);% 显示滤波后的图像imshow(K);4.数字图像处理在实际应用中的例子数字图像处理在很多实际应用中被广泛应用。

这些应用包括医疗成像、计算机视觉、人脸识别、安防监控等。

下面是数字图像处理在人脸识别应用中的一个简单例子。

% 导入图像文件I = imread('face.jpg');% 进行人脸检测faceDetector = vision.CascadeObjectDetector;bbox = step(faceDetector, I);% 在图像上标记人脸位置IFaces = insertObjectAnnotation(I, 'rectangle', bbox, 'Face');imshow(IFaces);实验结论通过本次实验,我已经能够理解数字图像处理的基本概念与原理,掌握数字图像处理的基本方法,熟练应用数字图像处理软件进行图像处理。

《数字图像处理》实验报告

《数字图像处理》实验报告

《数字图像处理》实验报告数字图像处理是一门将图像进行数字化处理的学科,它通过计算机算法和技术手段对图像进行分析、增强、压缩和重建等操作。

在本次实验中,我们学习了数字图像处理的基本概念和常用算法,并通过实验来探索其应用和效果。

首先,我们进行了图像的读取和显示实验。

通过使用Python中的OpenCV库,我们能够轻松地读取图像文件,并将其显示在屏幕上。

这为我们后续的实验奠定了基础。

同时,我们还学习了图像的像素表示方法,了解了图像由像素点组成的原理。

这使我们能够更好地理解后续实验中的算法和操作。

接下来,我们进行了图像的灰度化实验。

灰度化是将彩色图像转换为灰度图像的过程。

在实验中,我们使用了不同的算法来实现灰度化操作,包括平均值法、最大值法和加权平均法等。

通过比较不同算法得到的灰度图像,我们发现不同算法对图像的处理效果有所差异,这使我们深入理解了灰度化的原理和应用。

随后,我们进行了图像的直方图均衡化实验。

直方图均衡化是一种用于增强图像对比度的方法。

在实验中,我们使用了直方图均衡化算法来对图像进行处理,并观察了处理前后的效果变化。

通过实验,我们发现直方图均衡化能够显著提高图像的对比度,使图像更加清晰和鲜明。

在进一步探索图像处理技术的过程中,我们进行了图像的滤波实验。

滤波是一种常用的图像处理操作,它通过对图像进行卷积操作来实现。

在实验中,我们学习了不同类型的滤波器,包括均值滤波器、高斯滤波器和中值滤波器等。

通过比较不同滤波器对图像的处理效果,我们发现每种滤波器都有其适用的场景和效果。

此外,我们还进行了图像的边缘检测实验。

边缘检测是一种用于提取图像边缘信息的方法。

在实验中,我们学习了不同的边缘检测算法,包括Sobel算子、Canny算子和Laplacian算子等。

通过比较不同算法对图像的处理效果,我们发现每种算法都有其独特的特点和应用。

最后,我们进行了图像的压缩实验。

图像压缩是一种将图像数据进行压缩以减小文件大小的方法。

《数字图像处理》实验教案

《数字图像处理》实验教案

《数字图像处理》实验教案一、实验目的与要求1. 实验目的(1)理解数字图像处理的基本概念和原理;(2)掌握常用数字图像处理算法和技巧;(3)培养实际操作能力和动手能力,提高解决实际问题的能力。

2. 实验要求(1)熟悉实验环境和相关软件;(2)了解实验原理和流程;二、实验环境与工具1. 实验环境(1)计算机操作系统:Windows 10/Linux/macOS;(2)编程语言:MATLAB/Python/C++等;(3)图像处理软件:Photoshop/OpenCV等。

2. 实验工具(1)编程环境:MATLAB/Python/C++开发工具;(2)图像处理软件:Photoshop/OpenCV;(3)实验教材和参考资料。

三、实验内容与步骤1. 实验一:图像读取与显示(1)打开图像处理软件,导入一幅图像;(2)了解图像的基本信息,如像素大小、分辨率等;(3)将图像显示在界面上,进行观察和分析。

2. 实验二:图像基本运算(1)对图像进行灰度化处理;(2)进行图像的直方图均衡化;(3)实现图像的滤波处理,如高斯滤波、中值滤波等。

3. 实验三:边缘检测(1)实现Sobel边缘检测算法;(2)实现Canny边缘检测算法;(3)分析不同边缘检测算法的效果和特点。

4. 实验四:图像分割(1)利用阈值分割法对图像进行分割;(2)利用区域生长法对图像进行分割;(3)分析不同图像分割算法的效果和特点。

5. 实验五:特征提取与匹配(1)提取图像的关键点,如角点、边缘点等;(2)利用特征匹配算法,如SIFT、SURF等,进行图像配准;(3)分析不同特征提取与匹配算法的效果和特点。

四、实验注意事项1. 严格遵循实验要求和步骤,确保实验的正确性;2. 注意实验环境和工具的使用,防止计算机和设备的损坏;3. 尊重知识产权,不得抄袭和剽窃他人成果;4. 实验过程中遇到问题,应及时请教老师和同学。

五、实验报告要求1. 报告内容:实验目的、实验环境、实验内容、实验步骤、实验结果及分析;2. 报告格式:文字描述清晰,条理分明,公式和图像正确无误;3. 报告篇幅:不少于2000字;4. 提交时间:实验结束后一周内。

《数字图像处理》实验教案

《数字图像处理》实验教案

《数字图像处理》实验教案一、实验目的1. 使学生了解和掌握数字图像处理的基本概念和基本算法。

2. 培养学生运用数字图像处理技术解决实际问题的能力。

3. 提高学生使用相关软件工具进行数字图像处理操作的技能。

二、实验内容1. 图像读取与显示:学习如何使用相关软件工具读取和显示数字图像。

2. 图像基本操作:学习图像的旋转、缩放、翻转等基本操作。

3. 图像滤波:学习使用不同类型的滤波器进行图像去噪和增强。

4. 图像分割:学习利用阈值分割、区域增长等方法对图像进行分割。

5. 图像特征提取:学习提取图像的边缘、角点等特征信息。

三、实验环境1. 操作系统:Windows或Linux。

2. 编程语言:Python或MATLAB。

3. 图像处理软件:OpenCV、ImageJ或MATLAB。

四、实验步骤1. 打开相关软件工具,导入图像。

2. 学习并实践图像的基本操作,如旋转、缩放、翻转等。

3. 学习并实践图像滤波算法,如均值滤波、中值滤波等。

4. 学习并实践图像分割算法,如全局阈值分割、局部阈值分割等。

5. 学习并实践图像特征提取算法,如Canny边缘检测算法等。

五、实验要求1. 每位学生需独立完成实验,并在实验报告中详细描述实验过程和结果。

2. 实验报告需包括实验目的、实验内容、实验步骤、实验结果和实验总结。

3. 实验结果要求清晰显示每个步骤的操作和效果。

4. 实验总结部分需对本次实验的学习内容进行归纳和总结,并提出改进意见。

六、实验注意事项1. 实验前请确保掌握相关软件工具的基本使用方法。

3. 在进行图像操作时,请尽量使用向量或数组进行处理,避免使用低效的循环结构。

4. 实验过程中如需保存中间结果,请使用合适的文件格式,如PNG、JPG等。

5. 请合理安排实验时间,确保实验报告的质量和按时提交。

七、实验评价1. 实验报告的评价:评价学生的实验报告内容是否完整、实验结果是否清晰、实验总结是否到位。

2. 实验操作的评价:评价学生在实验过程中对图像处理算法的理解和运用能力。

数字图像处理 实验报告(完整版)【精选文档】

数字图像处理 实验报告(完整版)【精选文档】

数字图像处理实验一 MATLAB数字图像处理初步一、显示图像1.利用imread( )函数读取一幅图像,假设其名为lily。

tif,存入一个数组中;2.利用whos 命令提取该读入图像flower。

tif的基本信息;3.利用imshow()函数来显示这幅图像;实验结果如下图:源代码:〉>I=imread('lily。

tif’)>〉whos I>〉imshow(I)二、压缩图像4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为lily。

jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0—100.6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flily。

bmp。

7.用imread()读入图像Sunset。

jpg和Winter。

jpg;8.用imfinfo()获取图像Sunset.jpg和Winter.jpg的大小;9.用figure,imshow()分别将Sunset.jpg和Winter。

jpg显示出来,观察两幅图像的质量。

其中9的实验结果如下图:源代码:4~6(接上面两个)〉>I=imread('lily.tif’)>> imfinfo ’lily。

tif’;〉> imwrite(I,'lily.jpg’,’quality’,20);〉> imwrite(I,’lily。

bmp’);7~9 〉>I=imread('Sunset。

jpg');>>J=imread('Winter。

jpg')>>imfinfo 'Sunset。

jpg'>> imfinfo ’Winter。

数字图像处理实验

数字图像处理实验实验总学时:10学时实验目的:本实验的目的是通过实验进一步理解和掌握数字图像处理原理和方法。

通过分析、实现现有的图像处理算法,学习和掌握常用的图像处理技术。

实验内容:数字图像处理的实验内容主要有三个方面:(1) 对图像灰度作某种变换,增强其中的有用信息,抑制无用信息,使图像的视在质量提高,以便于人眼观察、理解或用计算机对其作进一步的处理。

(2) 用某种特殊手段提取、描述和分析图像中所包含的某些特征和特殊的信息,主要的目的是便于计算机对图像作进一步的分析和理解,经常作为模式识别和计算机视觉的预处理。

这些特征包括很多方面,例如,图像的频域特性、灰度特征、边界特征等。

(3) 图像的变换,以便于图像的频域处理。

实验一图像的点处理实验内容及实验原理:1、灰度的线性变换灰度的线性变换就是将图像中所有的点的灰度按照线性灰度变换函数进行变换。

该线性灰度变换函数是一个一维线性函数:灰度变换方程为:其中参数为线性函数的斜率,函数的在y轴的截距,表示输入图像的灰度,表示输出图像的灰度。

要求:输入一幅图像,根据输入的斜率和截距进行线性变换,并显示。

2、灰度拉伸灰度拉伸和灰度线性变换相似。

不同之处在于它是分段线性变换。

表达如下:其中,(x1,y1)和(x2,y2)是分段函数的转折点。

要求:输入一幅图像,根据选择的转折点,进行灰度拉伸,显示变换后的图像。

3、灰度直方图灰度直方图是灰度值的函数,描述的是图像中具有该灰度值的像素的个数,其横坐标表示像素的灰度级别,纵坐标表示该灰度出现的频率(象素的个数)。

要求:输入一幅图像,显示它的灰度直方图,可以根据输入的参数(上限、下限)显示特定范围的灰度直方图。

4、直方图均衡:要求1 显示一幅图像pout.bmp的直方图;2 用直方图均衡对图像pout.bmp进行增强;3 显示增强后的图像。

实验二:数字图像的平滑实验内容及实验原理:1.用均值滤波器(即邻域平均法)去除图像中的噪声;2.用中值滤波器去除图像中的噪声3. 比较两种方法的处理结果 实验步骤:用原始图象lena.bmp 或cameraman.bmp 加产生的3%椒盐噪声图象合成一幅有噪声的图象并显示;1. 用均值滤波器去除图像中的噪声(选3x3窗口);2. f (x 0,y 0)=Med {f (x,y )∨x ∈[x 0−N,x 0+N ],y ∈[y 0−N,y 0+N ]}用中值滤波器去除图像中的噪声(选3x3窗口做中值滤波);3. 将两种处理方法的结果与原图比较,注意两种处理方法对边缘的影响。

数字图像处理实验报告(五个实验全)

数字图像处理实验报告(五个实验全)实验⼀ Matlab图像⼯具的使⽤1、读图I=imread('lena.jpg');imshow(I);2、读⼊⼀幅RGB图像,变换为灰度图像和⼆值图像,并在同⼀个窗⼝内分成三个⼦窗⼝来分别显⽰RGB图像和灰度图像。

a=imread('lena.jpg')i = rgb2gray(a)I = im2bw(a,0.5)subplot(3,1,1);imshow(a);subplot(3,1,2);imshow(i);subplot(3,1,3);imshow(I);原图像灰度图像⼆值图像实验⼆图像变换1、对⼀幅图像进⾏平移,显⽰原始图像与处理后图像,分别对其进⾏傅⾥叶变换,显⽰变换后结果,分析原图的傅⾥叶谱与平移后傅⾥叶频谱的对应关系。

s=imread('beauty.jpg');i=rgb2gray(s)i=double(i)j=fft2(i);k=fftshift(j); 原图像原图的傅⾥叶频谱l=log(abs(k));m=fftshift(j);RR=real(m);II=imag(m);A=sqrt(RR.^2+II.^2);A=(A-min(min(A)))/(max(max(A)))*255;b=circshift(s,[800 450]);b=rgb2gray(b)b=double(b) 平移后的图像平移后的傅⾥叶频谱c=fft2(b);e=fftshift(c);l=log(abs(e));f=fftshift(c);WW=real(f);ZZ=imag(f);B=sqrt(WW.^2+ZZ.^2);B=(B-min(min(B)))/(max(max(B)))*255;subplot(2,2,1);imshow(s);subplot(2,2,2);imshow(uint8(b));subplot(2,2,3);imshow(A);subplot(2,2,4);imshow(B);2、对⼀幅图像进⾏旋转,显⽰原始图像与处理后图像,分别对其进⾏傅⾥叶变换,显⽰变换后结果,分析原图的傅⾥叶谱与旋转后傅⾥叶频谱的对应关系。

《数字图像处理》实验教案

一、实验目的与要求1. 目的通过本实验,使学生了解数字图像处理的基本概念、方法和算法,掌握MATLAB 软件在图像处理方面的应用,提高学生分析问题和解决问题的能力。

2. 要求(1)熟悉MATLAB软件的基本操作。

(2)了解数字图像处理的基本概念和常用算法。

(3)能够运用MATLAB实现图像处理的基本操作和算法。

二、实验内容与步骤1. 实验内容(1)图像读取与显示。

(2)图像的基本运算(如加、减、乘、除等)。

(3)图像的滤波处理。

(4)图像的边缘检测。

(5)图像的分割与标记。

2. 实验步骤(1)打开MATLAB软件,新建一个脚本文件。

(2)导入所需图像,使用imread()函数读取图像,使用imshow()函数显示图像。

(3)进行图像的基本运算,如加、减、乘、除等,使用imadd()、imsub()、imdiv()、imconcat()等函数。

(4)对图像进行滤波处理,如使用均值滤波、中值滤波等,使用imfilter()函数。

(5)进行图像的边缘检测,如使用Sobel算子、Canny算子等,使用edge()函数。

(6)对图像进行分割与标记,如使用区域生长、阈值分割等方法,使用watershed()函数。

(7)对实验结果进行分析和讨论,总结实验心得。

三、实验注意事项1. 严格遵循实验步骤,确保实验的正确进行。

2. 合理选择参数,如滤波器的尺寸、阈值等。

3. 注意图像数据类型的转换,如浮点型、整型等。

4. 保持实验环境的整洁,避免误操作。

四、实验评价1. 评价内容(1)实验步骤的完整性。

(2)实验结果的正确性。

2. 评价标准(1)实验步骤完整,得分20分。

(2)实验结果正确,得分30分。

总分100分。

五、实验拓展1. 研究不同滤波器对图像滤波效果的影响。

2. 尝试使用其他图像分割算法,如基于梯度的分割方法、聚类分割方法等。

3. 探索图像处理在其他领域的应用,如计算机视觉、医学影像处理等。

六、实验一:图像读取与显示1. 实验目的掌握MATLAB中图像的读取和显示方法,熟悉图像处理的基本界面。

数字图像处理实验报告

数字图像处理实验报告目录1.数字图像处理简介2.实验目的3.实验内容4.实验结果及代码展示5.算法综述6.M atlab优势7.总结8.存在问题一、数字图像处理简介图像处理,是对图像进行分析、加工、和处理,使其满足视觉、心理以及其他要求的技术。

图像处理是信号处理在图像域上的一个应用。

目前大多数的图像是以数字形式存储,因而图像处理很多情况下指数字图像处理。

此外,基于光学理论的处理方法依然占有重要的地位。

图像处理是信号处理的子类,另外与计算机科学、人工智能等领域也有密切的关系。

传统的一维信号处理的方法和概念很多仍然可以直接应用在图像处理上,比如降噪、量化等。

然而,图像属于二维信号,和一维信号相比,它有自己特殊的一面,处理的方式和角度也有所不同。

二、实验目的巩固所学知识,提高所学能力三、实验内容利用matlab的GUI程序设计一个简单的图像处理程序,并含有如下基本功能:1. 读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题2. 对给定图像进行旋转3.对给定的图像添加噪声(椒盐噪声、高斯噪声)四、实验结果及代码展示1.软件设计界面2.各模块功能展示以及程序代码(1)读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题效果展示:代码:a = imread('C:\Documents and Settings\Administrator\桌面\数字图像\舞美.JPG');i = rgb2gray(a);I = im2bw(a,0.5);subplot(3,1,1);imshow(a);title('源图像')subplot(3,1,2);imshow(i);title('灰度图像')subplot(3,1,3);imshow(I);title('二值图像')(2)图像旋转原图效果展示:代码:clc;clear all;close all;Img=imread('D:\My Documents\My Pictures\5.JPG'); Img=double(Img);[h w]=size(Img);alpha=pi/4;wnew=w*cos(alpha)+h*sin(alpha);hnew=w*sin(alpha)+h*cos(alpha);wnew=ceil(wnew);hnew=ceil(hnew); u0=w*sin(alpha);T=[cos(alpha),sin(alpha);-sin(alpha),cos(alpha)]; Imgnew2=zeros(hnew,wnew);Imgnew1=zeros(hnew,wnew); for u=1:hnewfor v=1:wnewtem=T*([u;v]-[u0;0]);x=tem(1);y=tem(2);if x>=1&&x<=h&&y>=1&&y<=wx_low=floor(x);x_up=ceil(x);y_low=floor(y);y_up=ceil(y);if (x-x_low)<=(x_up-x)x=x_low;elsex=x_up;endif (y-y_low)<=(y_up-y)y=y_low;elsey=y_up;endp1=Img(x_low,y_low);p2=Img(x_up,y_low);p3=Img(x_low,y_low);p4=Img(x_up,y_up);s=x-x_low;t=y-y_low;Imgnew1(u,v)=Img(x,y);Imgnew2(u,v)=(1-s)*(1-t)*p1+(1-s)*t*p3+(1-t)*s*p2+s*t*p4;endendendfigure;imshow(Imgnew2,[]);B=imrotate(Img,alpha/pi*180);figure;imshow(B,[]);(3)对给定的图像添加噪声(斑点噪声、高斯噪声)效果展示:代码:I= imread('D:\My Documents\My Pictures\5.JPG');figure,subplot(211);imshow(I);title('原图');J1=imnoise(I,'gaussian',0,0.02);subplot(223);imshow(J);title('添加高斯噪声');J=imnoise(I,'speckle',0.04);subplot(224);imshow(J);title('添加斑点噪声');五、算法综述灰度图像:一幅完整的图像,是由红色、绿色、蓝色三个通道组成的。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

二值图像>> clear>> x=zeros(10,10);>> x(2:2:10,2:2:10)=1;>> imshow(x)>> xx =Columns 1 through 80 0 0 0 0 0 0 00 1 0 1 0 1 0 10 0 0 0 0 0 0 00 1 0 1 0 1 0 10 0 0 0 0 0 0 00 1 0 1 0 1 0 10 0 0 0 0 0 0 00 1 0 1 0 1 0 10 0 0 0 0 0 0 00 1 0 1 0 1 0 1 Columns 9 through 100 00 10 00 10 00 10 00 10 00 1亮度图像:>> X=imread('D:\lena.bmp');>> imshow(X);>> Y=X(128:138,128:138);>> figure,imshow(Y);>> YY =Columns 1 through 8194 183 173 160 145 127 113 111 186 172 175 171 153 128 112 110 185 178 173 162 145 128 117 114 188 181 168 150 136 128 123 118 192 176 162 145 133 128 125 120 192 165 156 144 135 129 124 119 187 157 152 143 136 130 124 118 181 157 149 139 133 129 125 118 179 159 148 135 129 129 126 118 172 153 142 130 127 129 129 122 168 151 143 135 133 133 131 123 Columns 9 through 11115 116 116116 118 118115 119 120115 120 120115 118 118115 115 115114 111 112112 109 110110 109 110115 108 112115 113 115索引图像:>> RGB=imread('D:\flowers.tif');>> [X,map]=rgb2ind(RGB,128);>> imshow(X,map)>> X(1)ans =127>> X(2)ans =127>> map(127,:,:,:)ans =0.7647 0.6118 0.6549>> whosName Size Bytes ClassRGB 362x500x3 543000 uint8 array X 362x500 181000 uint8 array ans 1x3 24 double array map 128x3 3072 double arrayGrand total is 724387 elements using 727096 bytesRGB图像:>> [X,map]=imread('D:\xiangjiao.bmp'); >> Y=X(90:95,90:95);>> imshow(Y)>> R=X(90:95,90:95,1);>> G=X(90:95,90:95,2);>> B=X(90:95,90:95,3);>> R,G,BR =175 181 185 189 181 155 171 176 185 188 175 146 171 173 182 186 176 161 171 176 184 186 181 178 170 181 187 186 183 182 170 180 180 181 183 180 G =175 181 185 189 181 155 171 176 185 188 175 146 171 173 182 186 176 161 171 176 184 186 181 178 170 181 187 186 183 182 170 180 180 181 183 180 B =175 181 185 189 181 155 171 176 185 188 175 146171 173 182 186 176 161171 176 184 186 181 178170 181 187 186 183 182170 180 180 181 183 180把一幅图加上高斯噪声,再通过100次相加求平均的方法去除噪声I=imread('D:eight.tif');>> J=imnoise(I,'gaussian',0,0.02);>> subplot(1,2,1),imshow(I);>> subplot(1,2,2),imshow(J);>> K=zeros(242,308);>> for i=1:100J=imnoise(I,'gaussian',0,0.02);J1=im2double(J);K=K+J1;end>> K=K/100;>> figure;imshow(K);已知一幅图受椒盐噪声干扰的图片,通过减法运算提取出噪声:图像的乘法运算:I=imread('D:\moon.tif');>> J=immultiply(I,1.2);>> K=immultiply(I,2);>> subplot(1,3,1),imshow(I);>> subplot(1,3,2),imshow(J);>> subplot(1,3,3),imshow(K);moon=imread('moon.tif');>> I=double(moon);>> J=I*0.43+90;>> K=I*0.1+90;>> L=I*0.01+90;>> moon2=uint8(J);>> moon3=uint8(K);>> moon4=uint8(L);>> J=imdivide(moon,moon2); >> K=imdivide(moon,moon3); >>L=imdivide(moon,moon4); >> subplot(2,2,1),imshow(moon); >> subplot(2,2,2),imshow(J,[]); >> subplot(2,2,3),imshow(K,[]); >> subplot(2,2,4),imshow(L,[]);逻辑运算:>> I=imread('D:\moon.tif');>> A=zeros(128);>> A(40:67,60:100)=1;>> figure(1);>> imshow(A);>> B=zeros(128);>> B(50:80,40:70)=1;>> figure(2);>> imshow(B);>> C=and(A,B);>> figure(3);>> imshow(C); >> D=or(A,B); >> figure(4); >> imshow(D); >> E=not(A); >> figure(5); >> imshow(E);图形旋转:>> I=imread('D:\9.jpg');>> J=imrotate(I,60,'bilinear');>> imshow(J);>> K=imrotate(I,60,'bilinear','crop');>> imshow(K);>> I=imread('D:\9.jpg');>> J=imrotate(I,60,'bilinear');>> K=imrotate(I,60,'bilinear','crop');>> subplot(1,3,1),imshow(I);>> subplot(1,3,2),imshow(J);>> subplot(1,3,3),imshow(K);q采用三种不同插值法进行图片的放大比较:>> I=imread('D:\\lena.jpg');>> J1=imresize(I,10,'nearest');>> J2=imresize(I,10,'bilinear');>> J3=imresize(I,10,'bicubic');>> figure>> imshow(I);>> title('原图');>> figure>> imshow(J1);>> title('最近邻法'); >> figure>> imshow(J2);>> title('双线性插值法'); >> figure>> imshow(J3);>> title('三次内插法');图像的二维离散傅里叶频谱:>> I=imread('D:\inst_bkgrnd.bmp');>> imshow(I)Warning: Image is too big to fit on screen; displaying at 56% scale.> In D:\MATLAB6p5\toolbox\images\images\truesize.m (Resize1) at line 302 In D:\MATLAB6p5\toolbox\images\images\truesize.m at line 40In D:\MATLAB6p5\toolbox\images\images\imshow.m at line 168>> J=fftshift(fft2(I));>> figure(2);>> imshow(log(abs(J)),[8,10])Warning: Image is too big to fit on screen; displaying at 56% scale.> In D:\MATLAB6p5\toolbox\images\images\truesize.m (Resize1) at line 302 In D:\MATLAB6p5\toolbox\images\images\truesize.m at line 40In D:\MATLAB6p5\toolbox\images\images\imshow.m at line 168例4.4 二维离散傅里叶变换的旋转性:>> I=zeros(256,256);>> I(28:228,108:148)=1;>> imshow(I)>> J=fft2(I);>> F=abs(J);>> J1=fftshift(F);figure>> imshow(J1,[5 50])>> I=zeros(256,256); |>> I(28:228,108:148)=1;>> J=imrotate(I,315,'bilinear','crop'); >> figure>> imshow(J)>> J1=fft2(J);>> F=abs(J1);>> J2=fftshift(F);figure>> imshow(J2,[5 50])例4.5比例尺度展宽:clc>> clear;>> I=zeros(256,256); >> I(8:248,110:136)=5; >> figure(1)>> imshow(I)>> a=0.1;>> J3=fft2(I);>> F2=abs(J3);>> J4=fftshift(F2); >> figure(2)>> imshow(J4,[5 30]) >> for i=1:256for j=1:256I(i,j)=I(i,j)*a;endend>> J2=fft2(I);>> F1=abs(J2);>> J3=fftshift(F1); >> figure(3)>> imshow(J3,[5 30]) 原始图像比例尺度展宽前的频谱比例尺度a=0.1,b=1,展宽后的频谱例4.7(a)图乘以一指数,将图像亮度整体变暗,并求其中心移到零点的频谱图>> I=imread('D:\inst_bkgrnd.bmp');>> figure(1);>> imshow(I)>> P=I&exp(-1);>> figure(2);>> imshow(P)>> P1=fftshift(fft2(P));>> figure(3);>> imshow(log(abs(P1)),[8,10])>>(a) 原图(b)频谱图(c)中心移到零点的频谱图例4.8 (a)加入高斯噪声,得出一个有颗粒噪声的图,并求其中心移到零点的频谱图。

相关文档
最新文档