数字图像处理实验报告材料94256

合集下载

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告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);实验结论通过本次实验,我已经能够理解数字图像处理的基本概念与原理,掌握数字图像处理的基本方法,熟练应用数字图像处理软件进行图像处理。

数字图像处理

数字图像处理

数字图象处理实验报告一、实验目的:1.掌握二维傅里叶变换,了解图像频谱特征;2.掌握频域理想低通滤波器和指数型低通滤波器设计方法. 二、实验内容:1. 对Lena 图像施加高斯白噪声(均方差为图像最大灰度值5%左右),然后进行傅里叶变换,并进行频谱中心化处理.2. 对上述加噪图像进行频域理想低通滤波(取频域的四个角(1/4边长),其它置0).3.对上述加噪图像进行频域指数型低通滤波. (D 0取最大谱值一半.注意:先进行频谱中心化处理.)三.程序及运行结果:1 在MATLAB 上新建M-FILE 文件。

在M-FILE 中输入程序:clc; clear;y=imread('C:\Documents and Settings\Administrator\桌面\62138.jpg'); f0=rgb2gray(y); [m,n]=size(f0);f=double(f0)+10*randn(m,n); %加噪 f(:,n+1)=f(:,n); F=fft2(f);y1=fftshift(F); for i=1:mfor j=1:n+1f2(i,j)=f(i,j)*(-1)^(i+j); end endF1=fft2(f2);d0=max(abs(F(:))); d1=max(abs(F1(:)));subplot(2,2,1);imshow(f0);title('原图像');subplot(2,2,2);imshow(uint8(f));title('加噪图像');subplot(2,2,3);imshow(abs(F1)/d1*255);title('中心化图像')运行得到结果:原图像加噪图像中心化图像clc;clear;y=imread('C:\Documents and Settings\Administrator\桌面\62138.jpg');f0=rgb2gray(y); [m,n]=size(f0);f=double(f0)+15*randn(m,n);%加噪F=fft2(f); ;%二维离散快速付氏变换for i=1:mfor j=1:nabsf(i,j)=abs(F(i,j));%求幅度谱endendd0=max(absf(:));i=round(m/8):round(m*7/8);%将F(u,v)中m/8~m*7/8行元素置0.实现低通去噪. F(i,:)=0;j=round(n/8):round(n*7/8);;%将F(u,v)中n/8~n*7/8列元素置0.F(:,j)=0;f1=ifft2(F); %付氏反变换subplot(2,2,1);imshow(f0);title('原图像');subplot(2,2,2);imshow(uint8(f));title('加噪图像');subplot(2,2,3);imshow(uint8(f1));title('付氏变换低通滤波去噪后图像'); subplot(2,2,4);imshow(absf/d0*255);title('加噪图像付氏变换幅度频谱');运行得到结果:原图像加噪图像付氏变换低通滤波去噪后图像加噪图像付氏变换幅度频谱clc;clear;y=imread('C:\Documents and Settings\Administrator\桌面\62138.jpg');f0=rgb2gray(y); [m,n]=size(f0);f=double(f0); %转换为double类型f1=f+20*randn(m,n); %加入噪声F=fft2(f1); %二维傅立叶变换for i=1:m %二次循环for j=1:nf2(i,j)=f1(i,j)*(-1)^(i+j); %频谱原点中心化 endendF1=fft2(f2); %傅立叶变换D0=17000;for i=1:mfor j=1:nF2(i,j)=F1(i,j)*exp(-((i-m/2)^2+(j-n/2)^2)/D0);%指数型滤波器endendf3=ifft2(F2); %快速傅立叶反变换for i=1:mfor j=1:nf4(i,j)=f3(i,j)*(-1)^(i+j); %原点还原endendsubplot(2,2,1);imshow(f0);title('原图像');subplot(2,2,2);imshow(uint8(f1));title('加噪后图像');subplot(2,2,3);imshow(uint8(f4));title('去噪后图像');运行得到结果:原图像加噪后图像去噪后图像四、回答问题和收获体会:答:通过此次实验,(1)我掌握了二维离散傅立叶变换对定义(2)同时加深了对添加白噪声的知识的运用掌握。

数字图像处理实验报告

数字图像处理实验报告

实验三、图像的傅立叶变换一、实验目的1、了解图像变换的意义和手段;2、熟悉傅里叶变换的性质;3、熟练掌握FFT变换及其应用;4、通过实验了解二维频谱的分布特点;5、通过本实验掌握利用MATLAB编程实现数字图像的傅立叶变换。

二、实验设备1、计算机;2、MATLAB软件;3、记录用的笔、纸。

4、移动式存储器(软盘、U盘等)。

三、实验原理1、应用傅立叶变换进行图像处理傅里叶变换是线性系统分析的一个有力工具,它能够定量地分析诸如数字化系统、采样点、电子放大器、卷积滤波器、噪音和显示点等的作用。

通过实验培养这项技能,将有助于解决大多数图像处理问题。

2、傅立叶(Fourier)变换的定义二维Fourier变换和二维离散傅立叶变换为:图像的傅立叶变换与一维信号的傅立叶变换变换一样,有快速算法,具体参1见相关书目,有关傅立叶变换的快速算法的程序不难找到。

实际上,现在有实现傅立叶变换的芯片,可以实时实现傅立叶变换。

四、实验步骤1、打开计算机,启动MATLAB程序;2、利用MatLab工具箱中的函数编制FFT频谱显示的函数;3、 a).调入、显示“实验一”获得的图像;图像存储格式应为“.gif”;b)对这幅图像做FFT并利用自编的函数显示其频谱;4、实现数字图像傅立叶变换的部分参考程序:I=imread(‘原图像名.gif’); %读入原图像文件imshow(I); %显示原图像fftI=fft2(I); %二维离散傅立叶变换sfftI=fftshift(fftI); %直流分量移到频谱中心RR=real(sfftI); %取傅立叶变换的实部II=imag(sfftI); %取傅立叶变换的虚部A=sqrt(RR.^2+II.^2);%计算频谱幅值A=(A-min(min(A)))/(max(max(A))-min(min(A)))*225; %归一化figure; %设定窗口imshow(A); %显示原图像的频谱五、实验数据记录输入数字图像傅立叶变换的代码如下:I=imread(‘fengshu.gif’);imshow(I);fftI=fft2(I);sfftI=fftshift(fftI);RR=real(sfftI);II=imag(sfftI);A=sqrt(RR.^2+II.^2);A=(A-min(min(A)))/(max(max(A))-min(min(A)))*225;figure;imshow(A);运行以上程序原图像经傅立叶变换后的图像3实验四、图像的离散余弦变换和哈达玛变换一、实验目的1、了解图像离散余弦变换和逆变换的原理;2、理解离散余弦变换系数的特点;3、理解离散余弦变换在图像数据压缩中的应用;4、理解哈达玛变换的原理。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

数字图像处理实验报告材料

数字图像处理实验报告材料

数字图像处理试验报告实验二:数字图像的空间滤波和频域滤波姓名:XX 学号:2XXXXXXX 实验日期:2017 年4月26 日1.实验目的1.掌握图像滤波的基本定义及目的。

2.理解空间域滤波的基本原理及方法。

3.掌握进行图像的空域滤波的方法。

4.掌握傅立叶变换及逆变换的基本原理方法。

5.理解频域滤波的基本原理及方法。

6.掌握进行图像的频域滤波的方法。

2.实验内容与要求1.平滑空间滤波:1)读出一幅图像,给这幅图像分别加入椒盐噪声和高斯噪声后并与前一张图显示在同一图像窗口中。

2)对加入噪声图像选用不同的平滑 (低通)模板做运算,对比不同模板所形成的效果,要求在同一窗口中显示。

3)使用函数imfilter 时,分别采用不同的填充方法 (或边界选项,如零填充、' replicate '、' symmetric'、' circular ')进行低通滤波,显示处理后的图像。

4)运用for 循环,将加有椒盐噪声的图像进行10 次,20 次均值滤波,查看其特点, 显示均值处理后的图像(提示:利用fspecial 函数的' average '类型生成均值滤波器)。

5)对加入椒盐噪声的图像分别采用均值滤波法,和中值滤波法对有噪声的图像做处理,要求在同一窗口中显示结果。

6)自己设计平滑空间滤波器,并将其对噪声图像进行处理,显示处理后的图像。

2.锐化空间滤波1)读出一幅图像,采用 3 X3的拉普拉斯算子w = [ 1, 1, 1; 1 -8 1; 1, 1,1]对其进行滤波。

2)编写函数w = genlaplacian(n) ,自动产生任一奇数尺寸n 的拉普拉斯算子,如 5 X5的拉普拉斯算子w = [ 1 1 1 1 11 1 1 1 11 1 -24 1 11 1 1 1 1分别采用1 1 1 11]5 X5, 9 X9, 15 X’ 5 和25 X25 大小的拉普拉斯算子对 b lurry_moon.tif3)进2 ..行锐化滤波,并利用式g(x, y) f (x, y) f (x, y)完成图像的锐化增强,观察其有何不同,要求在同一窗口中显示。

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告引言数字图像处理是一门研究如何对图像进行数字化处理的学科,它的应用广泛,涵盖了图像的获取、增强、压缩、分割等多个方面。

本次实验旨在探索数字图像处理的基本原理和常用技术,并通过实践操作加深对数字图像处理的理解。

实验目的1.学习掌握数字图像处理的基本原理;2.熟悉常用的数字图像处理工具和方法;3.实践应用数字图像处理技术解决实际问题。

实验环境在本次实验中,我们使用了以下环境和工具:- 操作系统:Windows 10 - 编程语言:Python - 图像处理库:OpenCV实验步骤步骤一:图像获取与显示首先,我们需要获取一张待处理的图像,并对其进行显示。

在Python中,我们可以使用OpenCV库来实现图像的读取和显示。

以下是示例代码:import cv2# 读取图像image = cv2.imread('image.jpg')# 显示图像cv2.imshow('Image', image)cv2.waitKey(0)cv2.destroyAllWindows()步骤二:图像增强图像增强是数字图像处理中常用的技术之一,旨在改善图像的质量和可视化效果。

常见的图像增强技术包括灰度转换、直方图均衡化、滤波器等。

以下是示例代码:import cv2# 读取图像image = cv2.imread('image.jpg')# 灰度转换gray_image = cv2.cvtColor(image, cv2.COLOR_BGR2GR AY)# 直方图均衡化equalized_image = cv2.equalizeHist(gray_image)# 高斯滤波器blurred_image = cv2.GaussianBlur(equalized_image, (5, 5), 0)# 边缘增强enhanced_image = cv2.Canny(blurred_image, 100, 20 0)# 显示图像cv2.imshow('Enhanced Image', enhanced_image)cv2.waitKey(0)cv2.destroyAllWindows()步骤三:图像压缩图像压缩是数字图像处理中的重要话题,旨在减少图像的存储空间和传输带宽。

数字图像处理实验报告材料材料

数字图像处理实验报告材料材料

适用标准文案数字图像办理实验报告一、实验内容及目的:已知一幅图上有五个瓶子,装有液体。

鉴于这幅图片,设计一个检测未完整装满的瓶子的解决方案。

二、实验思路剖析:显示二值化形态学操作,使标志、计找出不切合要原图原图图像便于办理算求的标志块三、实验步骤1、翻开 MATLAB软件,并将 Current Folder 改为所要办理的图片所在目录。

我的图片所在目录为数字图象办理 \di :2、读取和显示原始图像,显示原始图像的直方图:picOP = imread('Fig1.jpg'); %读入图像figure,imshow(picOP),title('原始灰度图像 '); %显示图像figure, imhist(picOP),title('原始灰度图像直方图'); %显示原始图像的直方图3、将图像进行二值化办理:因为原始图像中白色比较显然,瓶身的颜色和背景比较邻近,因此直接进行二值化办理,将未装满液体的信息提拿出来。

picB = picOP; %复制灰度图像到picBpicBW = im2bw(picB,T/255); %采纳全局阈值进行灰度图像转变成二值图像figure,imshow(picBW),title('全局阈值下二值图像'); %显示二值图像4、进行形态学操作,转变成有益于办理的图像:picMORPHOLOGY = picBW ; % 复制准备形态学办理se = strel('square',10); %构造化元素fo = imopen(picMORPHOLOGY,se); %开操作figure,imshow(fo),title('开运算以后图像'); %输出开运算以后图像5、标志连通域,计算出各个白色连通地区(未装灌地区)面积和质心坐标:图像办理后五个白色地区面积为:[2374;2739;8381;2739;1660]五个质心的坐标数据:[20.6251053074979;48.0433866891323;138.604600219058;46.6575392479007;256.266674621167;84.9748240066818;376.604600219058;46.6575392479007;47.9084337349398]6、依据面积和质心坐标计算结果判断那个装灌不合格:经过没有装灌部分的面积大于 2900或许质心大于 50则判断为不合格,由步骤 5的连通面积和质心坐标可得第三个瓶子不合格。

数字图像处理 实验报告(完整版).doc

数字图像处理 实验报告(完整版).doc

数字图像处理实验一 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.jpg'>>figure(1),imshow('Sunset.jpg')>>figure(2),imshow('Winter.jpg')三、二值化图像10.用im2bw将一幅灰度图像转化为二值图像,并且用imshow显示出来观察图像的特征。

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告图像处理课程的目标是培养学生的试验综合素质与能力。

使学生通过实践,理解相关理论学问,将各类学问信息进行新的组合,制造出新的方法和新的思路,提高学生的科学试验与实际动手操作能力[1]。

从影像科筛选有价值的图像,建成影像学数字化试验教育平台,系统运行正常;具备图像上传、图像管理、图像检索与扫瞄、试验报告提交、老师批阅等功能;能满意使用要求[2]。

1.试验内容设计思路1.1项目建设内容和方法数字图像处理的内容:完整的数字图像处理大体上分为图像信息的猎取,存储,传送,处理,输出,和显示几个方面。

数字图像信息的猎取主要是把一幅图像转换成适合输入计算机和数字设备的数字信号,包括摄取图像,光、电转换及数字化。

数字图像信息的存储,数字图像信息的突出特点是数据量巨大,为了解决海量存储问题,数字图像的存储主要研究图像压缩,图像格式及图像数据库技术。

数字图像信息的传送数字图像信息的传送可分为系统内部传送与远距离传送[4]数字图像信息处理包括图像变换,图像增加,图像复原,彩色与多光谱处理图像重建,小波变换,图像编码,形态学,目标表示与描述。

数字图像输出和显示,最终目的是为人和机器供应一幅便于解释和识别的图像,数字图像的输出和显示也是数字图像处理的重要内容之一。

1.2数字图像处理的方法大致可以分为两大类,既空域法和频域法空域法:是把图像看做平面中各个像素组成的集合,然后直接对一维和二维函数进行相应处理,依据新图像生成方法的不同,空域处理法可为点处理法,区处理法,叠代处理法,跟踪处理法,位移不变与位移可变处理法。

点处理法的优点,点处理的典型用途a)灰度处理b)图像二值处理点处理方法的优点a)可用LUT方法快速实现b)节省存储空间。

区处理法,邻域处理法。

它依据输入图像的小邻域的像素值,按某些函数得到输出像素。

区处理法主要用于图象平滑和图像的锐化。

叠代处理法:叠代就是反复进行某些处理运算,图像叠代处理也是如此,拉普拉斯算子或平滑处理的结果是物体轮廓,该图像轮廓边缘太宽或粗细不一,要经过多次叠代把它处理成单像素轮廓——图像细化。

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告一、引言数字图像处理是一门涉及图像获取、图像处理和图像分析的重要学科,广泛应用于计算机科学、电子工程、通信技术等领域。

本报告旨在介绍并总结我所进行的数字图像处理实验,讨论实验的目的、方法、结果和分析。

二、实验目的通过本次实验,旨在掌握和理解数字图像处理的基本原理和常见技术,包括灰度变换、空间域滤波、频域滤波等,以及层次分割、边缘检测和形态学处理等高级应用技术。

三、实验方法1. 寻找合适的图像在实验中,我选用了一张自然风景图像作为处理对象。

这张图像包含丰富的纹理和颜色信息,适合用于多种图像处理方法的验证和比较。

2. 灰度变换灰度变换是数字图像处理中常见的基础操作,可以通过对图像的像素灰度值进行线性或非线性变换,来调整图像的对比度、亮度等特征。

在实验中,我利用线性灰度变换方法将原始彩色图像转换为灰度图像,并进行对比度的调整,观察处理结果的变化。

3. 空间域滤波空间域滤波是一种基于像素邻域的图像处理方法,常用于图像去噪、边缘增强等应用。

我使用了平滑滤波和锐化滤波两种方法,并针对不同的滤波算子和参数进行了实验和比较,评估其对图像细节和边缘保留的影响。

4. 频域滤波频域滤波是一种基于图像的频谱特征的图像处理方法,广泛应用于图像增强、去噪和特征提取等方面。

我利用傅里叶变换将图像从空间域转换到频域,采用理想低通滤波器和巴特沃斯低通滤波器进行图像的模糊处理,并进行了实验对比和分析。

5. 高级应用技术在实验中,我还研究了数字图像处理中的一些高级应用技术,包括层次分割、边缘检测和形态学处理。

通过应用不同的算法和参数,我实现了图像区域分割、提取图像边缘和形态学形状变换等效果,评估处理结果的准确性和稳定性。

四、实验结果与分析通过对以上实验方法的实施,我获得了一系列处理后的图像,并进行了结果的比较和分析。

在灰度变换实验中,我发现线性变换对图像的对比度有较大影响,但对图像的细节变化不敏感;在空间域滤波实验中,平滑滤波可以有效降噪,但会导致图像细节损失,而锐化滤波可以增强图像的边缘效果,但也容易引入噪声;在频域滤波实验中,理想低通滤波对图像的模糊效果明显,而巴特沃斯低通滤波器可以在一定程度上保留图像的高频细节信息;在高级应用技术实验中,边缘检测和形态学处理对提取图像边缘和形状变换非常有效,但参数的选择会对结果产生较大影响。

数字图像处理实验报告

数字图像处理实验报告

序号(学号):*************实验报告书实验类别数字图像处理学院信息工程学院专业通信工程班级通信1005班姓名叶伟超指导教师聂明新2013 年 6 月 3 日四、实验内容选取两幅大小一样的图像,首先转换成灰度图像,然后对其中一幅进行旋转(旋转角度自定),再对两幅图像进行代数运算,并附上程序及处理前后的图像。

五、实验过程与结果A.(1)实验程序:I=imread('E:\RGB1.jpeg');%图像数据的读取,将图像数据放入矩阵A中,颜色数据放入矩阵M中K=rgb2gray(I)imshow(K);(2)原图:(3)转换成灰度图像(1)实验程序:I=imread('E:\feng2.jpg');%图像数据的读取,将图像数据放入矩阵A中,颜色数据放入矩阵M中J=rgb2gray(I);K=imrotate(J,60,'bilinear');imshow(K);(2)原图:(3)转换成灰度图像后旋转60度图)图像旋转之后,由于数字图像的坐标值必须是整数,因此,可能引起图像部分象素点的局部变化,因此,这时候,图像的大小也会发生一定的变化。

为了避免图像旋转之后可能产生的信息丢失,可以先进行平移,然后进行图像的旋转。

图像旋转后,可能会出现一些空一、实验目的(1)了解图像的各种变换方法(2)运用matlab实现各种变换二、实验原理图像变换是将图像从空间变换到变换域,变换的目的是简化图像的分析与处理。

图像变换在图像增强、图像恢复、图像压缩和图像特征提取等方面有着十分重要的应用,它是许多图像处理和分析技术的基础。

图像变换:傅立叶变换、离散余弦变换、沃尔什变换1、傅立叶变换二维离散傅立叶变换傅立叶频率谱离散傅立叶变换计算机处理傅立叶变换用离散傅立叶变换。

输入/输出数据均为离散,便于计算机处理。

使用离散傅立叶变换,可以使用一种快速算法(FFT)。

MATLAB提供的函数:FFT、FFT2、FFTn2、离散余弦变换傅立叶变换存在一个问题,它的参数均为复数,数据描述上相当于实数的两倍,数据的计算量比较大。

数字图像处理实验报告

数字图像处理实验报告

数字图象处理实验报告主要是图象的几何变换的编程实现,详细包括图象的读取、改写,图象平移,图象的镜像,图象的转置,比例缩放,旋转变换等.详细要求如下:1.编程实现图象平移,要求平移后的图象大小不变;2.编程实现图象的镜像;3.编程实现图象的转置;4.编程实现图象的比例缩放,要求分别用双线性插值和最近邻插值两种方法来实现,并比较两种方法的缩放效果;5.编程实现以任意角度对图象发展旋转变换,要求分别用双线性插值和最近邻插值两种方法来实现,并比较两种方法的旋转效果.本实验的目的是使学生熟悉并掌握图象处理编程环境,掌握图象平移、镜像、转置和旋转等几何变换的方法,并能通过程序设计实现图象文件的读、写操作,及图象平移、镜像、转置和旋转等几何变换的程序实现.3.1 实验所用编程环境:Visual C++(简称VC)是微软公司提供的基于C/C++的应用程序集成开辟工具.VC拥有丰富的功能和大量的扩展库,使用它能有效的创立高性能的Windows应用程序和Web应用程序.VC除了提供高效的C/C++编译器外,还提供了大量的可重用类和组件,包括著名的微软根抵类库(MFC)和活动模板类库(ATL),因此它是软件开辟人员不可多得的开辟工具.VC丰富的功能和大量的扩展库,类的重用特性以及它对函数库、DLL库的支持能使程序更好的模块化,并且通过向导程序大大简化了库资源的使用和应用程序的开辟,正由于VC具有明显的优势,于是我选择了它来作为数字图象几何变换的开辟工具.在本程序的开辟过程中,VC的核心知识、消息映射机制、对话框控件编程等都得到了生动的表达和灵便的应用.3.2 实验处理的对象:256色的BMP(BIT MAP )格式图象BMP(BIT MAP )位图的文件构造:详细组成图: BITMAPFILEHEADER位图文件头(只用于BMP文件) bfType=”BM” bfSize bfReserved1bfReserved2bfOffBitsbiSizebiWidthbiHeightbiPlanesbiBitCountbiCompressionbiSizeImagebiXPelsPerMeterbiYPelsPerMeterbiClrUsedbiClrImportant单色DIB有2个表项16色DIB有16个表项或者更少256色DIB有256个表项或者更少真彩色DIB没有调色板每一个表项长度为4字节(32位)像素按照每行每列的顺序罗列每一行的字节数必须是4的整数倍BITMAPINFOHEADER 位图信息头 Palette 调色板 DIBPixels DIB图象数据1. BMP文件组成BMP文件由文件头、位图信息头、颜色信息和图形数据四部份组成.2. BMP文件头BMP文件头数据构造含有BMP文件的类型(必须为BMP)、文件大小(以字节为单位)、位图文件保存字(必须为0)和位图起始位置(以相对于位图文件头的偏移量表示)等信息.3. 位图信息头BMP位图信息头数据用于说明位图的尺寸(宽度,高度等都是以像素为单位,大小以字节为单位, 水平和垂直分辨率以每米像素数为单位) ,目标设备的级别,每一个像素所需的位数, 位图压缩类型(必须是 0)等信息.4. 颜色表颜色表用于说明位图中的颜色,它有假设干个表项,每一个表项是一个RGBQUAD类型的构造,定义一种颜色.详细包含蓝色、红色、绿色的亮度(值范围为0-255)位图信息头和颜色表组成位图信息5. 位图数据位图数据记录了位图的每一个像素值,记录顺序是在扫描行内是从左到右,扫描行之间是从下到上.Windows一个扫描行所占的字节数必须是 4的倍数(即以long为单位),缺乏的以0填充.3.3 BMP(BIT MAP )位图的显示:①普通显示方法:1. 申请内存空间用于存放位图文件2. 位图文件读入所申请内存空间中3. 在函数中用创立显示用位图, 用函数创立兼容DC,用函数选择显示删除位图但以上方法的缺点是: 1)显示速度慢; 2) 内存占用大; 3) 位图在缩小显示时图形失真大,(可通过安装字体平滑软件来解决); 4) 在低颜色位数的设备上(如256显示模式)显示高颜色位数的图形(如真彩色)图形失真严重.②BMP位图缩放显示 :用视频函数来显示位图,内存占用少,速度快,而且还可以对图形发展淡化(Dithering )处理.淡化处理是一种图形算法,可以用来在一个支持比图象所用颜色要少的设备上显示彩色图象.BMP位图显示方法如下:1. 翻开视频函数,普通放在在构造函数中2. 申请内存空间用于存放位图文件3. 位图文件读入所申请内存空间中4. 在 函数中 显示位图5. 关闭视频函数 ,普通放在在析构函数中以上方法的优点是: 1)显示速度快; 2) 内存占用少; 3) 缩放显示时图形失真小,4) 在低颜色位数的设备上显示高颜色位数的图形图形时失真小; 5) 通过直接处理位图数据,可以制作简单动画.3.4 程序中用到的访问函数Windows支持一些重要的DIB访问函数,但是这些函数都还没有被封装到MFC中,这些函数主要有:1. SetDIBitsToDevice函数:该函数可以直接在显示器或者打印机上显示DIB. 在显示时不发展缩放处理.2. StretchDIBits函数:该函数可以缩放显示DIB于显示器和打印机上.3. GetDIBits函数:还函数利用申请到的内存,由GDI位图来构造DIB.通过该函数,可以对DIB的格式发展控制,可以指定每一个像素颜色的位数,而且可以指定是否发展压缩.4. CreateDIBitmap函数:利用该函数可以从DIB出发来创立GDI位图.5. CreateDIBSection函数:该函数能创立一种特殊的DIB,称为DIB项,然后返回一个GDI位图句柄.6. LoadImage函数:该函数可以直接从磁盘文件中读入一个位图,并返回一个DIB句柄.7. DrawDibDraw函数:Windows提供了窗口视频(VFW)组件,Visual C++支持该组件.VFW中的DrawDibDraw函数是一个可以替代StretchDIBits的函数.它的最主要的优点是可以使用颤动颜色,并且提高显示DIB的速度,缺点是必须将VFW代码连接到进程中.3.5 图象的几何变换图象的几何变换,通常包括图象的平移、图象的镜像变换、图像的转置、图象的缩放和图象的旋转等.实验目的:本实验内容旨在让学生通过用VC等高级语言编写数字图象处理的一些根本算法程序,来稳固和掌握图象处理技术的根本技能,提高实际动手能力,并通过实际编程了解图象处理软件的实现的根本原理。

数字图像处理实验报告

数字图像处理实验报告

《数字图像处理》实验报告姓名:学号:学院:信息工程学院专业:电子信息工程年级班别:指导老师:图像的空间域平滑和锐化一、实验目的(1)掌握图像模板运算的流程。

(2)进一步理解图像的平滑、锐化原理。

(3)了解图像平滑、锐化的效果和作用。

二、实验内容和要求编程分别实现图像的平滑和锐化。

三、实验主要仪器设备和材料计算机,VC++6.0四、实验原理1、图像平滑图像平滑主要是为了消除噪声。

噪声并不限于人眼所能看的见的失真和变形,有些噪声只有在进行图像处理时才可以发现。

图像中的噪声往往和信号交织在一起,尤其是乘性噪声,如果平滑不当,就会使图像本身的细节如边界轮廓、线条等变的模糊不清,如何既平滑掉噪声有尽量保持图像细节,是图像平滑主要研究的任务。

一般来说,图像的能量主要集中在其低频部分,噪声所在的频段主要在高频段,同时系统中的边缘信息也主要集中在其高频部分,因此,如何去掉高频干扰又同时保持边缘信息,是我们研究的内容。

为了去除噪声,有必要对图像进行平滑,可以采用低通滤波的方法去除高频干扰。

图像平滑包括空域法和频域法两大类,在空域法中,图像平滑的常用方法是采用均值滤波或中值滤波。

下面主要论述一下均值滤波。

对于均值滤波,它是用一个有奇数点的滑动窗口在图像上滑动,将窗口中心点对应的图像像素点的灰度值用窗口内的各个点的灰度值的平均值代替,如果滑动窗口规定了在取均值过程中窗口各个像素点所占的权重,也就是各个像素点的系数,这时候就称为加权均值滤波。

2、图象锐化图像平滑往往使图像中的边界、轮廓变的模糊,为了减少这类不利效果的影响,这就需要利用图像锐化技术,使图像的边缘变的清晰。

图像锐化处理的目的是为了使图像的边缘、轮廓线以及图像的细节变的清晰,经过平滑的图像变得模糊的根本原因是因为图像受到了平均或积分运算,因此可以对其进行逆运算(如微分运算)就可以使图像变的清晰。

从频率域来考虑,图像模糊的实质是因为其高频分量被衰减,因此可以用高通滤波器来使图像清晰。

数字图像处理实验报告

数字图像处理实验报告

数字图像处理实验报告数字图像处理实验报告一、引言数字图像处理是计算机科学与工程领域中的一个重要研究方向。

通过使用数字化技术,对图像进行采集、传输、存储和处理,可以实现对图像的增强、恢复、分析和识别等功能。

本实验旨在通过对数字图像处理算法的实践应用,探索图像处理的原理和方法。

二、实验目的本实验的主要目的是掌握数字图像处理的基本概念和算法,并通过实际操作加深对图像处理原理的理解。

具体目标包括:1. 学习使用图像处理软件,如Photoshop或Matlab等。

2. 掌握图像增强的方法,如直方图均衡化、滤波和锐化等。

3. 理解图像压缩和编码的原理,如JPEG和PNG等格式。

4. 了解图像分割和边缘检测的基本算法,如阈值分割和Canny边缘检测等。

三、实验过程1. 图像增强图像增强是指通过一系列算法和技术,改善图像的质量和视觉效果。

在实验中,我们可以使用直方图均衡化算法来增强图像的对比度和亮度。

该算法通过将图像的像素值映射到一个更大的范围内,使得图像的亮度分布更加均匀。

2. 图像滤波图像滤波是指通过一系列滤波器对图像进行处理,以实现去噪、平滑和锐化等效果。

在实验中,我们可以使用平滑滤波器(如均值滤波器和高斯滤波器)来去除图像中的噪声。

同时,我们还可以使用锐化滤波器(如拉普拉斯滤波器和Sobel滤波器)来增强图像的边缘和细节。

3. 图像压缩和编码图像压缩是指通过减少图像的数据量来减小图像文件的大小,从而实现存储和传输的效率提升。

在实验中,我们可以使用JPEG和PNG等压缩算法来对图像进行压缩和编码。

JPEG算法通过对图像的频域进行离散余弦变换和量化,实现对图像的有损压缩。

而PNG算法则采用无损压缩的方式,通过对图像的差值编码和哈夫曼编码,实现对图像的高效压缩。

4. 图像分割和边缘检测图像分割是指将图像分成若干个区域,以实现对图像的目标提取和图像分析的目的。

而边缘检测是指通过检测图像中的边缘和轮廓,实现对图像的形状分析和目标识别。

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

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

《数字图像处理》实验报告数字图像处理是计算机科学与技术领域中的一个重要分支,它涉及到对图像进行获取、处理、分析和显示等一系列操作。

在本次实验中,我们将学习和探索数字图像处理的基本概念和技术,并通过实验来加深对这些概念和技术的理解。

首先,我们需要了解数字图像的基本概念。

数字图像是由像素组成的二维矩阵,每个像素代表图像中的一个点,像素的灰度值或颜色值决定了该点的亮度或颜色。

在实验中,我们将使用灰度图像进行处理,其中每个像素的灰度值表示了该点的亮度。

在数字图像处理中,最基本的操作之一是图像的获取和显示。

我们可以通过摄像头或者从文件中读取图像数据,然后将其显示在计算机屏幕上。

通过这种方式,我们可以对图像进行观察和分析,为后续的处理操作做好准备。

接下来,我们将学习一些常见的图像处理操作。

其中之一是图像的灰度化处理。

通过将彩色图像转换为灰度图像,我们可以减少图像数据的维度,简化后续处理的复杂度。

灰度化处理的方法有多种,例如将彩色图像的RGB三个通道的像素值取平均值,或者使用加权平均值的方法来计算灰度值。

另一个常见的图像处理操作是图像的平滑处理。

图像平滑可以减少图像中的噪声,并使得图像更加清晰。

常用的图像平滑方法包括均值滤波和高斯滤波。

均值滤波通过计算像素周围邻域像素的平均值来平滑图像,而高斯滤波则使用一个高斯核函数来加权平均邻域像素的值。

除了平滑处理,图像的锐化处理也是数字图像处理中的一个重要操作。

图像的锐化可以增强图像的边缘和细节,使得图像更加清晰和鲜明。

常用的图像锐化方法包括拉普拉斯算子和Sobel算子。

这些算子通过计算像素周围邻域像素的差异来检测边缘,并增强边缘的灰度值。

此外,我们还将学习一些图像的变换操作。

其中之一是图像的缩放和旋转。

通过缩放操作,我们可以改变图像的尺寸,使其适应不同的显示设备或应用场景。

而旋转操作可以将图像按照一定的角度进行旋转,以达到某种特定的效果。

最后,我们将学习一些图像的特征提取和分析方法。

数字的图像处理某实验报告材料(图像灰度变换处理)

数字的图像处理某实验报告材料(图像灰度变换处理)

数字图像处理实验报告班级:姓名:学号:数字图像处理实验报告一.实验名称:图像灰度变换二.实验目的:1 学会使用Matlab;2 学会用Matlab软件对图像灰度进行变换,感受各种不同的灰度变换方法对最终图像效果的影响。

三.实验原理:Matlab中经常使用的一些图像处理函数:读取图像:img=imread('filename'); //支持TIFF,JPEG,GIF,BMP,PNG,XWD等文件格式。

显示图像:imshow(img,G); //G表示显示该图像的灰度级数,如省略则默认为256。

保存图片:imwrite(img,'filename'); //不支持GIF格式,其他与imread相同。

亮度变换:imadjust(img,[low_in,high_in],[low_out,high_out]); //将low_in至high_in之间的值映射到low_out至high_out之间,low_in 以下及high_in以上归零。

绘制直方图:imhist(img);直方图均衡化:histeq(img,newlevel); //newlevel表示输出图像指定的灰度级数。

像平滑与锐化(空间滤波):w=fspecial('type',parameters);imfilter(img,w); //这两个函数结合将变得十分强大,可以实现photoshop里的任意滤镜。

图像复原:deconvlucy(img,PSF); //可用于图像降噪、去模糊等处理。

四.实验步骤:1.获取实验用图像:Fig3.10(b).jpg. 使用imread函数将图像读入Matlab。

2.产生灰度变换函数T1,使得:0.3r r < 0.35s = 0.105+2.6333(r–0.35) 0.35 ≤ r ≤ 0.65 1+0.3(r–1) r > 0.65用T1对原图像Fig3.10(b).jpg进行处理,打印处理后的新图像。

数字图像处理-实验报告

数字图像处理-实验报告

《数字图象处理》实验报告一、数字图像处理设计主要内容数字图象处理课程设计要求使学生掌握数字图像处理的基本算法的计算机实现,从而培养学生运用数字信号处理的原理解决生物医学、电子工程领域的实际问题的能力。

进一步提高程序设计及调试能力,初步掌握进行科学研究工作的主要步骤和方法,学习和掌握科学研究资料检索的方法,学习对已有资料进行消化总结的方法,学习撰写科学报告的基本方法。

二、前期工作1.查阅资料,对数字信号处理和图象处理基本理论和实践作一全面了解;2.根据实验内容和要求确定实验思路,熟悉Matlab语言,理解对数字信号处理进行计算机仿真原理;三、设计工作1.图像平滑a.利用二个低通邻域平均模板(3×3和9×9)对一幅图象进行平滑,验证模板尺寸对图象的模糊效果的影响。

b.利用一个低通模板对一幅有噪图象(GAUSS白噪声)进行滤波,检验两种滤波模板(分别使用一个5×5的线性邻域平均模板和一个非线性模板:3×5中值滤波器)对噪声的滤波效果。

c.选择一个经过低通滤波器滤波的模糊图象,利用sobel水平边缘增强高通滤波器(模板)对其进行高通滤波图象边缘增强,验证模板的滤波效果。

d.选择一幅灰度图象分别利用一阶Sobel算子和二阶Laplacian算子对其进行边缘检测,验证检测效果。

2.图像增强a.直方图均衡化增强图像对比度的MATLAB程序。

b.采用线性变换进行图像增强的MATLAB程序。

c.采用边界锐化算法增强图像的MATLAB程序。

四、程序设计1.利用二个低通邻域平均模板(3×3和9×9)对一幅图象进行平滑,验证模板尺寸对图象的模糊效果的影响。

程序如下:l=imread('E:/matlab/test1/sample.jpg');L=rgb2gray(l);subplot(1,3,1);imshow(L);title('原图');j=fspecial('average');j1=filter2(j,L)/255;subplot(1,3,2);imshow(j1);title('3*3 滤波');k=fspecial('average',9);k1=filter2(k,L)/255;subplot(1,3,3);imshow(k1);title('9*9 滤波');仿真结果如下图:原图3*3 滤波9*9 滤波2.利用一个低通模板对一幅有噪图象(GAUSS白噪声)进行滤波,检验两种滤波模板(分别使用一个5×5的线性邻域平均模板和一个非线性模板:3×5中值滤波器)对噪声的滤波效果。

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

目录实验一:数字图像的基本处理操作 (2)1.1:实验目的 (2)1.2:实验任务和要求 (2)1.3:实验步骤和结果 (2)1.4:结果分析 (6)实验二:图像的灰度变换和直方图变换 (7)2.1:实验目的 (7)2.2:实验任务和要求 (7)2.3:实验步骤和结果 (7)2.4:结果分析 (11)实验三:图像的平滑处理 (12)3.1:实验目的 (12)3.2:实验任务和要求 (12)3.3:实验步骤和结果 (12)3.4:结果分析 (16)实验四:图像的锐化处理 (17)4.1:实验目的 (17)4.2:实验任务和要求 (17)4.3:实验步骤和结果 (17)4.4:结果分析 (19)实验一:数字图像的基本处理操作1.1:实验目的1、熟悉并掌握MATLAB、PHOTOSHOP等工具的使用;2、实现图像的读取、显示、代数运算和简单变换。

3、熟悉及掌握图像的傅里叶变换原理及性质,实现图像的傅里叶变换。

1.2:实验任务和要求1.读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。

2.对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分别显示,注上文字标题。

3.对一幅图像进行平移,显示原始图像与处理后图像,分别对其进行傅里叶变换,显示变换后结果,分析原图的傅里叶谱与平移后傅里叶频谱的对应关系。

4.对一幅图像进行旋转,显示原始图像与处理后图像,分别对其进行傅里叶变换,显示变换后结果,分析原图的傅里叶谱与旋转后傅里叶频谱的对应关系。

1.3:实验步骤和结果1.对实验任务1的实现代码如下:a=imread('d:\tp.jpg');i=rgb2gray(a);I=im2bw(a,0.5);subplot(1,3,1);imshow(a);title('原图像');subplot(1,3,2);imshow(i);title('灰度图像');subplot(1,3,3);imshow(I);title('二值图像');subplot(1,3,1);imshow(a);title('原图像');结果如图1.1 所示:图1.1 原图及其灰度图像,二值图像2.对实验任务2的实现代码如下:a=imread('d:\tp.jpg');A=imresize(a,[800 800]);b=imread('d:\tp2.jpg');B=imresize(b,[800 800]);Z1=imadd(A,B);Z2=imsubtract(A,B);Z3=immultiply(A,B);Z4=imdivide(A,B);subplot(3,2,1);imshow(A);title('原图像 A'); subplot(3,2,2);imshow(B);title('原图像 B'); subplot(3,2,3);imshow(Z1);title('加法图像'); subplot(3,2,4);imshow(Z2);title('减法图像'); subplot(3,2,5);imshow(Z3);title('乘法图像'); subplot(3,2,6);imshow(Z2);title('除法图像');结果如图1.2所示:3.对实验任务3的实现代码如下:s=imread('d:\tp3.jpg');i=rgb2gray(s);i=double(i);j=fft2(i);k=fftshift(j); %直流分量移到频谱中心I=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);I=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);title('原图像');subplot(2,2,2);imshow(uint8(b));title('平移图像');subplot(2,2,3);imshow(A);title('离散傅里叶变换频谱');subplot(2,2,4);imshow(B);title('平移图像离散傅里叶变换频谱');结果如图1.3所示:4.对实验任务4的实现代码如下:s=imread('d:\tp3.jpg');i=rgb2gray(s);i=double(i);j=fft2(i);k=fftshift(j);I=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=imrotate(s,-90);b=rgb2gray(b);b=double(b);c=fft2(b);e=fftshift(c);I=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);title('原图像');subplot(2,2,2);imshow(uint8(b));title('平移图像');subplot(2,2,3);imshow(A);title('离散傅里叶频谱');subplot(2,2,4);imshow(B);title('平移图像离散傅里叶频谱');结果如图1.4所示:1.4:结果分析对MATLAB软件的操作开始时不太熟悉,许多语法和函数都不会使用,写出程序后,调试运行,最开始无法显示图像,检查原因,是有些标点符号没有在英文状态下输入和一些其他的细节,学会了imread(),imshow(),rgb2gray()等函数。

实验二:图像的灰度变换和直方图变换2.1:实验目的1、熟悉及掌握图像的采样原理,实现图像的采样过程,进行图像的灰度转换。

2、理解直方图的概念及应用,实现图像直方图的显示,及通过直方图均衡对图像进行修正。

2.2:实验任务和要求1、对一幅图像进行2倍、4倍、8倍和16倍减采样,显示结果。

2、显示一幅灰度图像a,改变图像亮度使其整体变暗得到图像b,显示两幅图像的直方图。

3、对一幅图像进行灰度变化,实现图像变亮、变暗和负片效果,在同一个窗口内分成四个子窗口来分别显示,注上文字标题。

4、对一副图像进行直方图均衡化,显示结果图像和对应直方图。

5、对一副图像进行如图所示的分段线形变换处理,试比较与直方图均衡化处理的异同。

2.3:实验步骤和结果1.对实验任务1的实现代码如下:a=imread('d:\tp2.jpg');b=rgb2gray(a);for m=1:4figure[width,height]=size(b);quartimage=zeros(floor(width/(m)),floor(height/(2*m)));k=1;n=1;for i=1:(m):widthfor j=1:(2*m):heightquartimage(k,n)=b(i,j);n=n+1;endk=k+1;n=1;endimshow(unit8(quartimage));end结果如图所示:2. 对实验任务2的实现代码如下:a=imread('d:\tp2.jpg');c=rgb2gray(a);b=c-46;subplot(3,2,1);imshow(c);title('原图像')subplot(3,2,2);imhist(c);title('原图像的直方图')subplot(3,2,3);imshow(b);title('变暗后的图像')subplot(3,2,4);imhist(b);title('变暗后的图像直方图'); d=imadjust(c,[0,1],[1,0]);subplot(3,2,5);imshow(d);title('反转图像');结果如图2.2所示:3. 对实验任务3的实现代码如下:a=imread('d:\tp.jpg');m=imadjust(a,[,],[0.5;1]);%图像变亮n=imadjust(a,[,],[0;0.5]);%图像变暗g=255-a;%负片效果subplot(2,2,1);imshow(a);title('原图像'); subplot(2,2,2);imshow(m);title('图像变亮'); subplot(2,2,3);imshow(n);title('图像变暗'); subplot(2,2,4);imshow(g);title('负片效果');结果如图所示:4. 对实验任务4的实现代码如下:b=imread('d:\tp.jpg');c=rgb2gray(b);j=histeq(c);subplot(2,2,1),imshow(c);subplot(2,2,2),imshow(j);subplot(2,2,3),imhist(c);subplot(2,2,4),imhist(j);结果如图2.4所示:5. 对实验任务5的实现代码如下:x1=0:0.01:0.125;x2=0.125:0.01:0.75;x3=0.75:0.01:1;y1=2*x1;y2=0.25+0.6*(x2-0.125);y3=0.625+1.5*(x3-0.75);x=[x1,x2,x3];y=[y1,y2,y3];plot(x,y);结果如图所示:2.4:结果分析这次实验主要是对图像的灰度变换和直方图均衡化,实验内容包括灰度拉伸、图像反转、图像的二值化以及直方图均衡。

相关文档
最新文档