计算机图像处理实验报告
工作报告之图像处理实验报告

图像处理实验报告【篇一:数字图像处理实验报告】数字图像处理实验报告班级:通信103学号:201027201姓名:计富威指导教师:孙洁实验一 matlab数字图像处理初步一、实验目的与要求1.熟悉及掌握在matlab中能够处理哪些格式图像。
2.熟练掌握在matlab中如何读取图像。
3.掌握如何利用matlab来获取图像的大小、颜色、高度、宽度等等相关信息。
4.掌握如何在matlab中按照指定要求存储一幅图像的方法。
5.图像间如何转化。
二、实验内容及步骤1.利用imread( )函数读取一幅图像,假设其名为”第一个.tif”,存入一个数组中;i=imread(第一个.tif);2.利用whos命令提取该读入图像”第一个.tif”的基本信息; whos i3.利用imshow()函数来显示这幅图像;imshow(i);第一个.tif4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;imfinfo(第一个.tif);5.利用imwrite()函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为flower.jpg;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。
imwrite(i,第一个.jpg,quality,50)6.同样利用imwrite()函数将最初读入的tif图象另存为一幅bmp图像,设为flower.bmp。
imwrite(i,第一个.bmp);7.用imread()读入图像:lenna256.jpg 和camemaman.jpg;b=imread(lena256.bmp);c=imread(cameraman.tif);8.用imfinfo()获取图像lenna256.jpg和camemaman.jpg 的大小;imfinfo(lena256.bmp);imfinfo(cameraman.tif);9.用figure,imshow()分别将lenna256.jpg和camemaman.jpg显示出来,观察两幅图像的质量。
数字图像处理实验报告——图像分割实验

实验报告课程名称数字图像处理导论专业班级_______________姓名 _______________学号_______________电气与信息学院与谐勤奋求就是创新一.实验目得1.理解图像分割得基本概念;2.理解图像边缘提取得基本概念;3.掌握进行边缘提取得基本方法;4.掌握用阈值法进行图像分割得基本方法.二。
实验内容1.分别用Roberts,Sobel与拉普拉斯高斯算子对图像进行边缘检测。
比较三种算子处理得不同之处;2.设计一个检测图1中边缘得程序,要求结果类似图2,并附原理说明。
3.任选一种阈值法进行图像分割、图1 图2三.实验具体实现1.分别用Roberts,Sobel与拉普拉斯高斯算子对图像进行边缘检测。
比较三种算子处理得不同之处;I=imread(’mri、tif');imshow(I)BW1=edge(I,’roberts’);figure ,imshow(BW1),title(’用Roberts算子’)BW2=edge(I,’sobel’);figure,imshow(BW2),title(’用Sobel算子 ')BW3=edge(I,’log’);figure,imshow(BW3),title(’用拉普拉斯高斯算子’)比较提取边缘得效果可以瞧出,sober算子就是一种微分算子,对边缘得定位较精确,但就是会漏去一些边缘细节.而Laplacian—Gaussian算子就是一种二阶边缘检测方法,它通过寻找图象灰度值中二阶过零点来检测边缘并将边缘提取出来,边缘得细节比较丰富。
通过比较可以瞧出Laplacian-Gaussian算子比sober算子边缘更完整,效果更好。
2.设计一个检测图1中边缘得程序,要求结果类似图2,并附原理说明.i=imread('m83、tif’);subplot(1,2,1);imhist(i);title('原始图像直方图');thread=130/255;subplot(1,2,2);i3=im2bw(i,thread);imshow(i3);title('分割结果’);3.任选一种阈值法进行图像分割、i=imread('trees、tif’);subplot(1,2,1);imhist(i);title('原始图像直方图’);thread=100/255;subplot(1,2,2);i3=im2bw(i,thread);imshow(i3);title('分割结果’)1、分别用Roberts,Sobel与拉普拉斯高斯算子对图像进行边缘检测。
图像处理实验报告

图像处理实验报告图像处理实验报告一、引言图像处理是计算机科学与工程领域的一个重要研究方向,它涉及到对数字图像进行获取、处理、分析和显示等一系列操作。
本实验旨在通过使用图像处理技术,对一幅给定的数字图像进行处理和分析,以探索图像处理的原理和应用。
二、实验目的本实验有以下几个目的:1. 理解图像处理的基本概念和原理;2. 掌握图像处理的常用技术和方法;3. 熟悉图像处理软件的使用。
三、实验步骤1. 图像获取在本实验中,我们选择了一张风景图作为实验对象。
该图像是通过数码相机拍摄得到的,保存在计算机中的文件格式为JPEG。
我们使用图像处理软件将该图像导入到程序中,以便进行后续的处理和分析。
2. 图像预处理在进行图像处理之前,我们需要对图像进行预处理。
预处理的目的是去除图像中的噪声、平滑图像的边缘等。
我们使用了均值滤波和中值滤波两种常用的图像平滑方法。
通过对比两种方法的效果,我们可以选择合适的方法来进行图像预处理。
3. 图像增强图像增强是指通过一系列的操作,使得图像在视觉上更加鲜明、清晰、易于观察。
在本实验中,我们使用了直方图均衡化和灰度拉伸两种图像增强方法。
直方图均衡化通过对图像的像素值进行变换,使得图像的直方图更加均匀,从而增强图像的对比度。
灰度拉伸则是通过对图像的像素值进行线性变换,将图像的灰度范围拉伸到更广的范围内,从而增强图像的细节。
4. 图像分割图像分割是将图像分成若干个互不重叠的区域,每个区域具有一定的意义和特征。
在本实验中,我们使用了阈值分割和边缘检测两种图像分割方法。
阈值分割是指通过设置一个合适的阈值,将图像中的像素分为两个类别。
边缘检测则是通过检测图像中的边缘信息,将图像分割为不同的区域。
5. 图像特征提取图像特征提取是指从图像中提取出具有一定意义和特征的信息。
在本实验中,我们选择了纹理特征和颜色特征两种常用的图像特征提取方法。
纹理特征提取通过对图像的纹理进行分析,提取出图像的纹理特征。
计算机图像处理学习报告

主要学习内容1.数字图像处理( Digital Image Processing )又称为计算机图像处理, 它是指将图像信号转换成数字信号并利用计算机对其进行处理的过程, 以提高图像的实用性, 从而达到人们所要求的预期结果。
例如: 对照片反差进行变换;对被噪声污染的工业电视图像去除噪声;从卫星图片中提取目标物特征参数等等。
与人类对视觉机理着迷的历史相比, 数字图像处理还是一门相对年轻的学科。
但在其短短的历史中, 它却以程度不同的成功被应用于几乎所有与成像有关的领域。
由于其表现方式(用图像显示)所固有的魅力, 它几乎吸引了从科学家到平民百姓太多的注意。
几个新的技术发展趋势将进一步刺激该领域的成长: 包括由低价位微处理器支持的并行处理技术;用于图像数字化的低成本的电荷耦合器件(CCD);用于大容量、低成本存储阵列的新存储技术;以及低成本、高分辨的彩色显示系统。
另一个推动力来自于稳定涌现出的新的应用。
在商业、工业、医学应用中, 数字成像技术的使用持续增长。
尽管军费在削减, 在遥感成像中却更多地使用了数字图像处理技术。
低成本的硬件加上正在兴起的几个非常重要的应用, 我们可以预料到数字图像处理在将来会发挥更重要的作用。
2.图像增强技术图像增强是指按特定的需要突出一幅图像中的某些信息, 同时, 削弱或去除某些不需要的信息的处理方法。
其主要目的是处理后的图像对某些特定的应用比原来的图像更加有效。
图像增强技术主要包含直方图修改处理、图像平滑化处理、图像尖锐化处理和彩色处理技术等。
空间域平滑技术为了抑制噪声改善图像质量所进行的处理称为图像平滑或去噪。
它可以在空间域或频率域中进行。
此处介绍空间域的几种平滑方法。
(1)局部平滑法局部平滑发又称邻域平均法或移动平均法。
它是利用像素邻域内的各像素的灰度平均值代替该像素原来的灰度值, 实现图像的平滑。
邻域平均法是将当前像素邻域内各像素的灰度平均值作为其输出值的去噪方法。
其作用相当于用这样的模板同图像卷积。
东北大学计算机图像处理实验报告

计算机图像处理实验报告学院:信息学院班级:电子信息工程姓名:学号:实验内容:数字图像处理1、应用MATLAB语言编写显示一幅灰度图像、二值图像、索引图像及彩色图像的程序,并进行相互之间的转换;(1)、显示一副真彩RGB图像代码:I=imread('cartoon.jpg'); %读取彩色图像>>imshow(I);效果:(2)、RGB转灰度图像代码:graycartoon=rgb2gray(I); %彩色图像转换为灰度图像>> subplot(1,2,1);>> subimage(I);>> subplot(1,2,2);>> subimage(graycartoon);效果:(3)、RGB转索引图像代码:[indcartoon,map]=rgb2ind(I,0.7); %彩色图像转换为索引图像>> subplot(1,2,1);>> subimage(I);>> subplot(1,2,2);>> subimage(indcartoon,map);效果:(4)、索引图像转RGB代码:I1=ind2rgb(indcartoon,map); %索引图像转换为彩色图像>>subplot(1,2,1);>>subimage(indcartoon,map);>>subplot(1,2,2);>>subimage(I1);效果:(5)、索引转灰度图像代码:i2gcartoon=ind2gray(indcartoon,map); %索引图像转换为灰度图像>>subplot(1,2,1);>>subimage(indcartoon,map);>>subplot(1,2,2);>>subimage(i2gcartoon);效果:(6)、灰度转索引图像代码:[g2icartoon,map]=gray2ind(graycartoon,64); %灰度转索引图像>>subplot(1,2,1);>>subimage(graycartoon);>>subplot(1,2,2);>>subimage(g2icartoon,map);效果:(7)、RGB转二值图像代码:r2bwcartoon=im2bw(I,0.5);>>subplot(1,2,1);>>subimage(I);>>subplot(1,2,2);>>subimage(r2bwcartoon);效果:(8)灰度转二值图像代码:g2bwcartoon=im2bw(graycartoon,0.5);subplot(1,2,1);>>subimage(graycartoon);>>subplot(1,2,2);>>subimage(g2bwcartoon);效果:(9)、索引转二值图像代码:[indcartoon,map]=rgb2ind(I,0.7);>> subplot(1,2,1);>> subimage(I);>> subplot(1,2,2);>> subimage(indcartoon,map);>> i2bwcartoon=im2bw(indcartoon,map,0.7);>>subplot(1,2,1);>>subimage(indcartoon,map);>>subplot(1,2,2);>>subimage(i2bwcartoon);效果:2、应用MATLAB工具箱演示一幅图像的傅里叶变换、离散余弦变换,观察其频谱图。
《计算机图像处理技术》实验报告

计算机图像处理技术实验报告专业:信息管理与信息系统班级:2010级3班学号:_______________________姓名:_______________________2012-2013学年第二学期经济与管理学院实验名称:基础实验指导教师:实验日期: 2013年3月___日实验地点:8教5楼成绩:_________ 项目一:实验目的:(1)掌握填充工具、笔刷工具等的属性和基本用法。
(2)了解笔刷工具的高级用法。
实验内容与基本要求:(1)制作带鲜花纹理的枫叶画笔。
(2)该枫叶画笔需要有动态形状、动态角度以及动态颜色。
(3)利用定义好的画笔进行创作一幅秋叶图。
实验步骤:1.新建一个ps文件,在图层中画一个枫叶和鲜花的图案2.分别选中所画的图案,在选择“编辑|定义画笔预设“,保存自定义画笔图案。
3.选择“画笔“,选中画笔工具栏中的“形状动态”、“颜色动态”和“散布”,并对其参数进行相应设置。
4.新建一个图层命名为“秋叶图”,选择画笔工具,打开“画笔预设选取器”,选择已创建的“枫叶”图案,色板设置为红色,然后在图层上绘制秋叶图案。
项目二实验目的:(1)熟悉选区的概念,掌握常用的对选区的操作方法。
(2)通过该实例,理解选区用法,涉及到一些层的用法,理解选区和层的关系。
实验内容与基本要求:(1)制作一张花卉展的门票。
(2)必须具有门票的一切特征。
(3)利用前面学习到的图像处理知识,并使用自由套索工具、多边形套索工具、磁性套索工具、魔术棒等选择工具对鲜花等原始资料进行选择,处理,使门票具有一定的艺术效果。
实验步骤:1.导入一张花卉图片。
2.使用矩形选区工具在导入的花卉图片中创建一般门票大小的选区,并设置描边(15PX),然后再选3.新建文字图层,设置主题。
内容包括:标题(中国花卉展览)、时间、地点、主办单位、票面金额、编号等。
字体都为楷体。
字体大小:标题30,其余为18号字体。
4.选择画笔工具,笔尖形状设为“星形14PX”,间距设为39%,然后再门票图案两端分别绘制两条黑色虚线。
数字图像处理实验报告

数字图像处理实验报告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编程语言和相关库实现了图像的读取、显示、灰度化、二值化、平滑处理、边缘检测和直方图均衡化等操作。
《数字图像处理》实验报告

《数字图像处理》实验报告数字图像处理是一门将图像进行数字化处理的学科,它通过计算机算法和技术手段对图像进行分析、增强、压缩和重建等操作。
在本次实验中,我们学习了数字图像处理的基本概念和常用算法,并通过实验来探索其应用和效果。
首先,我们进行了图像的读取和显示实验。
通过使用Python中的OpenCV库,我们能够轻松地读取图像文件,并将其显示在屏幕上。
这为我们后续的实验奠定了基础。
同时,我们还学习了图像的像素表示方法,了解了图像由像素点组成的原理。
这使我们能够更好地理解后续实验中的算法和操作。
接下来,我们进行了图像的灰度化实验。
灰度化是将彩色图像转换为灰度图像的过程。
在实验中,我们使用了不同的算法来实现灰度化操作,包括平均值法、最大值法和加权平均法等。
通过比较不同算法得到的灰度图像,我们发现不同算法对图像的处理效果有所差异,这使我们深入理解了灰度化的原理和应用。
随后,我们进行了图像的直方图均衡化实验。
直方图均衡化是一种用于增强图像对比度的方法。
在实验中,我们使用了直方图均衡化算法来对图像进行处理,并观察了处理前后的效果变化。
通过实验,我们发现直方图均衡化能够显著提高图像的对比度,使图像更加清晰和鲜明。
在进一步探索图像处理技术的过程中,我们进行了图像的滤波实验。
滤波是一种常用的图像处理操作,它通过对图像进行卷积操作来实现。
在实验中,我们学习了不同类型的滤波器,包括均值滤波器、高斯滤波器和中值滤波器等。
通过比较不同滤波器对图像的处理效果,我们发现每种滤波器都有其适用的场景和效果。
此外,我们还进行了图像的边缘检测实验。
边缘检测是一种用于提取图像边缘信息的方法。
在实验中,我们学习了不同的边缘检测算法,包括Sobel算子、Canny算子和Laplacian算子等。
通过比较不同算法对图像的处理效果,我们发现每种算法都有其独特的特点和应用。
最后,我们进行了图像的压缩实验。
图像压缩是一种将图像数据进行压缩以减小文件大小的方法。
计算机图像处理实验报告

计算机图像处理实验报告计算机图像处理实验报告实验一 MATLAB数字图像处理基本操作一、实验目的与要求1.熟悉MATLAB软件的开发环境、基本操作以及图像处理工具箱,为编写图像处理程序奠定基础。
2.掌握二值、灰度和彩色图像的读、写和显示方法,以及图像的高、宽、颜色等参数的获取方法。
3.根据实验内容进行问题的简单分析和初步编码。
二、实验内容1、读入一幅RGB图像(sunset.jpg),分别转换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示这三幅图像,注上文字标题,即“原图像”、“灰度图像”、“二值图像”。
源代码:A=imread('C:\Users\宗正\Desktop\学习\2016图像实验指导书\sunset.jpg');I=rgb2gray(A);J=im2bw(I);figure(1);subplot(2,2,1);imshow(A);title('原图像');subplot(2,2,2);imshow(I);title('灰度图像');subplot(2,2,3);imshow(J);title('二值图像');运行结果:2、说明以下程序的显示结果为何是一幅几乎全黑的图像。
clear; close all;myi=zeros(20,20);myi(2:2:18,2:2:18)=1;myi=uint8(myi);figure, imshow(myi,'notruesize');解释:如图,该矩阵任一3*3单元仅有中心元素为1,其余元素为0,0占绝大部分,所以整体为黑色3、阅读分析下列程序,对每条语句给出注释,运行并解释最终执行结果;若将for 循环改为方框中的程序,有何不同?clear all;close all;I=imread('d:\lena512.jpg'); [height,width]=size(I); figure;subplot(2,3,1);imshow(I);title('原图像');L=1;for m=1:5 L=2*L;k=1;n=1; for i=1:L:heightfor j=1:L:widthquartimage(k,n)=I(i,j);n=n+1;endk=k+1;n=1;endsubplot(2,3,m+1);imshow(uint8(quartimage)); End 改变前:改变后:4、编写程序将一幅灰度图像(orangutan.tif)每两行之间增加一行,即将图像的高度拉伸一倍、宽度不变,然后将其存储为图像文件。
关于图形图像处理实训报告总结【九篇】

关于图形图像处理实训报告总结【九篇】实训报告总结:图形图像处理实训图形图像处理实训是计算机科学与技术专业的基础课程之一。
通过本次实训课程,我深入了解了图形图像处理的基本概念、方法和技术,并通过实际操作来提升了自己的实践能力。
下面是对本次实训的九篇报告总结:1. 实验一:图像读取与显示本次实验主要是学习如何读取和显示图像,以及使用Matplotlib库进行图像展示。
通过实验,我掌握了图像读取和显示的基本方法,并学会了基本的图像处理操作。
2. 实验二:图像的灰度变换实验二主要是学习图像的灰度变换,包括线性变换和非线性变换。
我学会了如何使用不同的灰度变换函数来调整图像的亮度和对比度,进一步提升图像的质量。
3. 实验三:图像的空间域滤波本次实验主要是学习图像的空间域滤波技术,包括均值滤波、中值滤波和高斯滤波等。
通过实验,我掌握了不同滤波方法的原理和实现方式,并学会了如何选择合适的滤波方法来降噪和模糊图像。
4. 实验四:图像的频域滤波实验四主要是学习图像的频域滤波技术,包括傅里叶变换和频域滤波等。
通过实验,我了解了傅里叶变换的原理和应用,并学会了如何使用频域滤波来实现图像的锐化和平滑。
5. 实验五:图像的形态学处理本次实验主要是学习图像的形态学处理技术,包括腐蚀、膨胀、开运算和闭运算等。
通过实验,我学会了如何使用形态学操作来改变图像的形状和结构,进一步改善图像的质量。
6. 实验六:图像的边缘检测实验六主要是学习图像的边缘检测技术,包括Sobel算子、Laplacian算子和Canny算子等。
通过实验,我了解了不同边缘检测方法的原理和应用,并学会了如何使用边缘检测来提取图像的轮廓和特征。
7. 实验七:图像的分割与聚类本次实验主要是学习图像的分割与聚类技术,包括阈值分割、区域生长和K均值聚类等。
通过实验,我掌握了不同分割与聚类方法的原理和应用,并学会了如何使用分割与聚类来识别和分析图像中的目标和区域。
8. 实验八:图像的特征提取与描述子实验八主要是学习图像的特征提取和描述子技术,包括尺度不变特征变换(SIFT)和方向梯度直方图(HOG)等。
图像处理实习报告

图像处理实习报告篇一:图像处理综合实验报告专业综合实验报告——图像处理学院:专业:班级:学号:姓名:指导教师:XX.12.1实验二图像变换一、实验目的学习灰度变换修正图像的颜色和灰度的方法。
学习图像直方图的生成和修正技术的原理和实现方法,理解其对于观察图像的意义。
了解图像变换的意义和手段,熟练掌握傅里叶变换等图像正交变换方法,了解二维频谱的分布特点。
二、实验要求1.掌握灰度变换函数的用法,对图像进行灰度变换,增强对比度,显示变换前后的图像以及它们的灰度直方图。
2.选择一幅直方图不均匀的图像,对其作直方图均衡化处理,显示处理前后的图像以及它们的灰度直方图。
三、实验内容1.直方图均衡化处理I1=imread('h1.bmp'); % 读入原图像I2=imread('h2.bmp'); % 读入原图像I3=imread('h3.bmp'); % 读入原图像I4=imread('h4.bmp'); % 读入原图像J=histeq(I); %对原图像进行直方图均衡化处理imshow(I); %显示原图像title('原图像'); %给原图像加标题名figure,imshow(J); %对原图像进行屏幕控制;显示直方图均衡化后的图像 title('直方图均衡化所得图像'); %给直方图均衡化后的图像加标题名figure;subplot(121); %对直方图均衡化后的图像进行屏幕控制;作一幅子图作为并排两幅图的第imhist(I,64); %将原图像直方图显示为64级灰度 title('原图像直方图'); %给原图像直方图加标题名subplot(122); %作第2幅子图imhist(J,64); %将均衡化后图像的直方图显示为64级灰度 title(‘均衡变换后的直方图’); %给均衡化后图像直方图加标题名1幅图2. 显示图像频谱I=imread('chuizhi.bmp');%读入原图像文件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); %显示原图像的频谱四、思考题1.直方图是什么概念?它反映了图像的什么信息?答:直方图是图像亮度分布的概率密度函数,是图像最基本的统计特征,它反映的是图像的灰度值的分布情况和图像的明暗分布规律,。
《计算机图形图像处理(设计)》实验报告

《计算机图形图像处理》实验报告册学院:旅游与环境学院专业:地理信息系统教师:肖冰(副教授)组员:周伟(41209163)刘杰(41209165)苟芬(41209190)马芳(41209179)陈家浩(41209166)基于MATLAB图像增强处理实验时间:2015年6月24日实验背景:图像增强处理可以使得处理后的图像对给定的应用比原来的图像更加有效同时可以有效的改善图像质量。
实验目的:1.了解MATLAB 的操作环境和基本功能。
2.掌握MATLAB 中图像增强处理的几种技术的使用。
3.加深理解图像增强处理的实验原理。
实验环境: Windws7MATLAB 7.0二.实验原理数字图像处理是指将图像信号转换成数字格式并利用计算机对其进行处理的过程。
在图像处理中,图像增强技术对于提高图像的质量起着重要的作用。
本文先对图像增强的原理以及各种增强方法进行概述,然后着重对灰度变换、直方图均衡化、平滑和锐化等几种常用的增强方法进行了深入的研究,在学习数字图像的基本表示与处理方法的基础上,针对图像增强的普遍性问题,研究和实现常用的图像增强方法及其算法,通过Matlab 实验得出的实际处理效果来对比各种算法的优缺点,讨论不同的增强算法的适用场合,并对其图像增强方法进行性能评价。
三.实验内容及步骤:实验流程图如下:1. 彩色图像的均衡化步骤:1统计原图像素每个像素的个数2统计原图像<每个灰度级的像素的累积个数3家里灰度级得映射规则4将原图每个像素点的灰度映射到新图1.clear all2.I=imread('F:\computer\哪吒.jpg '); %读入JPG彩色图像文件3.imshow(I) %显示出来4.title('哪吒')5.I_gray = rgb2gray(I); %灰度化后的数据存入数组6.imwrite(I_gray,'灰度图.bmp'); %保存灰度图像7.figure,imshow(I_gray);8.title('灰度图')9.10.[height,width]=size(I_gray); %测量图像尺寸参数11.p=zeros(1,256); %预创建存放灰度出现概率的向量12.for i=1:height13.for j=1:width14. p(I_gray(i,j) + 1) = p(I_gray(i,j) + 1) + 1;15. end16.end17.s=zeros(1,256);18.s(1)=p(1);19.for i=2:25620. s(i)=p(i) + s(i-1); %统计图像中<每个灰度级像素的累积个数,s(i):0,1,```,i-121.end22.23.for i=1:25624. s(i) = s(i)*256/(width*height); %求灰度映射函数25.if s(i) > 25626. s(i) = 256;27. end28.end29.30.%图像均衡化31.I_equal = I;32.for i=1:height33.for j=1:width34. I_equal(i,j) = s( I(i,j) + 1);35. end36.end37.figure,imshow(I_equal) %显示均衡化后的图像38.title('均衡化后图像')39.imwrite(I_equal,'哪吒.bmp');结果显示如下:2对于灰度图的直方图均衡化:有些图像在低值灰度区间上频率较大,使得图像中较暗区域中的细节看不清楚。
图像处理 实验报告

图像处理实验报告图像处理实验报告一、引言图像处理是计算机科学与工程领域的重要研究方向之一,它涉及到对图像进行获取、处理、分析和识别等一系列操作。
本实验旨在通过对图像处理算法的实现和应用,探索图像处理的基本原理和方法。
二、实验目的1. 学习图像处理的基本概念和算法;2. 掌握常用的图像处理工具和软件;3. 实现并应用图像处理算法,提高图像质量和识别效果。
三、实验方法1. 实验环境:使用Python编程语言和OpenCV图像处理库;2. 实验工具:Jupyter Notebook;3. 实验步骤:a) 图像读取:使用OpenCV读取图像文件,并将其转换为灰度图像;b) 图像增强:对灰度图像进行直方图均衡化,增强图像的对比度;c) 图像滤波:使用高斯滤波器对图像进行平滑处理,去除噪声;d) 边缘检测:应用Canny算法进行边缘检测,并提取图像中的边缘信息;e) 图像分割:使用基于阈值的方法对图像进行分割,得到目标区域;f) 特征提取:计算图像中目标区域的形状、纹理等特征;g) 图像识别:使用机器学习算法对提取的特征进行分类和识别。
四、实验结果与分析1. 图像增强:经过直方图均衡化处理后,图像的对比度得到了明显的提升,细节更加清晰;2. 图像滤波:高斯滤波器的应用能够有效平滑图像,去除噪声,使图像更加平滑自然;3. 边缘检测:Canny算法能够准确地检测出图像中的边缘,提取出目标物体的轮廓;4. 图像分割:基于阈值的分割方法能够将图像中的目标区域与背景区域分离开来,方便后续的特征提取和识别;5. 特征提取:通过计算目标区域的形状、纹理等特征,可以对图像进行更加细致的描述和识别;6. 图像识别:应用机器学习算法对提取的特征进行分类和识别,可以实现对图像中目标物体的自动识别和分类。
五、实验总结通过本次实验,我们深入学习了图像处理的基本原理和方法,并通过实际操作实现了图像的增强、滤波、边缘检测、分割、特征提取和识别等一系列操作。
数字图像处理实验报告

数字图像处理实验报告引言数字图像处理是一门研究如何对图像进行数字化处理的学科,它的应用广泛,涵盖了图像的获取、增强、压缩、分割等多个方面。
本次实验旨在探索数字图像处理的基本原理和常用技术,并通过实践操作加深对数字图像处理的理解。
实验目的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图像处理命令一、实验目的1、熟悉并掌握MATLAB工具的使用;2、实现图像的读取、显示、代数运算和简单变换。
二、实验环境MATLAB2012a版本、WIN7计算机三、常用函数●读写图像文件1 imreadimread函数用于读入各种图像文件,如:a=imread('e:\w01.tif')2 imwriteimwrite函数用于写入图像文件,如:imwrite(a,'e:\w02.tif',’tif’) 3 imfinfoimfinfo函数用于读取图像文件的有关信息,如:imfinfo('e:\w01.tif')●图像的显示1 imageimage函数是MATLAB提供的最原始的图像显示函数,如:a=[1,2,3,4;4,5,6,7;8,9,10,11,12];image(a);2 imshowimshow函数用于图像文件的显示,如:i=imread('e:\w01.tif');imshow(i);title(‘原图像’)%加上图像标题3 colorbarcolorbar函数用显示图像的颜色条,如:i=imread('e:\w01.tif');imshow(i);colorbar;4 figurefigure函数用于设定图像显示窗口,如:figure(1); /figure(2);5 subplot把图形窗口分成多个矩形部分,每个部分可以分别用来进行显示。
Subplot(m,n,p)分成m*n个小窗口,在第p个窗口中创建坐标轴为当前坐标轴,用于显示图形。
6 plot绘制二维图形plot(y)Plot(x,y)xy可以是向量、矩阵。
图像类型转换1 rgb2gray把真彩图像转换为灰度图像i=rgb2gray(j)2 im2bw通过阈值化方法把图像转换为二值图像I=im2bw(j,level)Level表示灰度阈值,取值范围0~1(即0.n),表示阈值取自原图像灰度范围的n%3 imresize改变图像的大小I=imresize(j,[m n])将图像j大小调整为m行n列图像运算1 imadd两幅图像相加,要求同样大小,同种数据类型Z=imadd(x,y)表示图像x+y2 imsubstract两幅图像相减,要求同样大小,同种数据类型Z=imsubtract(x,y)表示图像x-y3 immultiplyZ=immultiply(x,y)表示图像x*y4 imdivideZ=imdivide(x,y)表示图像x/y四、心得体会学习了matlab中基本的图像处理命令,为以后图像处理打下了较好的基础。
大学计算机实验报告二

实验二图像处理(理科)实验类型:基本(含4个学时综合实验)学时:6姓名:学号:班级:日期:请输入你的班级和做实验的日期。
按照《大学计算机基础实验指导》第3章多媒体技术基础实验中的实验内容,完成各项实验操作后,填写该实验报告。
注意:每一题实验内容做完后将图片保存为jpg文件格式,然后单击“插入/图片/来自文件”命令,将图片文件插入到实验报告中。
一、实验目的1.掌握文件压缩软件的使用方法。
2.掌握图像处理的基本知识。
3.掌握Photoshop CS2的基本编辑方法。
4.了解Photoshop CS2中的一些特殊技巧。
二、实验报告内容1.参照P83~85的操作提示,将素材文件“蝴蝶”、“蓝天草地.jpg”合成,将合成的图片文件保存为jpg文件格式,然后单击“插入/图片/来自文件”命令,将图片文件插入到下面:2.参照P87~89的操作提示,制作双胞胎效果,可选用素材文件“girl.jpg”或自己的某一幅照片或其他的图像文件。
要求添加如拍摄者(自己的学号+姓名)、拍摄时间等文字信息,将完成的图片文件保存为jpg文件格式,然后单击“插入/图片/来自文件”命令,将图片文件插入到下面:《大学计算机基础》电子实验报告实验二 图像处理将此电子实验报告以自己的学号姓名和实验序号为文件名(如:070000001张三实验五)保存后上传到FTP服务器3.参照P89~P90的操作提示,制作老照片,可选用素材文件“人物.jpg ”或自己的某一幅照片或其他的图像文件,要求添加如拍摄者(自己的学号+姓名)等文字信息,将完成的图片文件保存为jpg 文件格式,然后单击“插入/图片/来自文件”命令,将图片文件插入到下面:4.参照P91的操作提示,制作特殊效果,可选用素材文件“人物.jpg”或自己的某一幅照片或其他的图像文件,将完成的图片文件保存为jpg文件格式,然后单击“插入/图片/来自文件”命令,将图片文件插入到下面:《大学计算机基础》电子实验报告实验二 图像处理将此电子实验报告以自己的学号姓名和实验序号为文件名(如:070000001张三实验五)保存后上传到FTP服务器5.参照P92~P94的操作提示,制作风雪交加的场景,可选用素材文件“雪景.jpg ”或自己的某一幅照片或其他的图像文件,要求添加如拍摄者(自己的学号+姓名)等文字信息,将完成的图片文件保存为jpg 文件格式,然后单击“插入/图片/来自文件”命令,将图片文件插入到下面:6.(选做)参照P94~P101的操作提示,完成水中倒影的制作,要求添加如拍摄者(自己的学号+姓名)等文字信息,将完成的图片文件保存为jpg文件格式,然后单击“插入/图片/来自文件”命令,将图片文件插入到下面:《大学计算机基础》电子实验报告实验二 图像处理将此电子实验报告以自己的学号姓名和实验序号为文件名(如:070000001张三实验五)保存后上传到FTP服务器7.参照P102~P103的操作提示,完成合成图像的制作,要求添加如拍摄者(自己的学号+姓名)等文字信息,将完成的图片文件保存为jpg 文件格式,然后单击“插入/图片/来自文件”命令,将图片文件插入到下面:8.参照P104~P105的操作提示,将照片转成水墨荷花图,要求添加如拍摄者(自己的学号+姓名)等文字信息,将完成的图片文件保存为jpg文件格式,然后单击“插入/图片/来自文件”命令,将图片文件插入到下面:《大学计算机基础》电子实验报告实验二 图像处理将此电子实验报告以自己的学号姓名和实验序号为文件名(如:070000001张三实验五)保存后上传到FTP服务器9.(选做)参照P110~P113的操作提示,制作素材文件“大树”、“湖光山色2”的合成图像,要求添加如拍摄者(自己的学号+姓名)等文字信息,将完成的图片文件保存为jpg 文件格式,然后单击“插入/图片/来自文件”命令,将图片文件插入到下面:10.(选做)参照P113~P117的操作提示,制作3D效果的物体,将完成的图片文件保存为jpg文件格式,然后单击“插入/图片/来自文件”命令,将图片文件插入到下面:11.参照P78~P80的操作提示,将你的实验报告文件(文件名为自己的学号)进行压缩,将实验教材中如图3-4所示的WinRAR主窗口抓图,粘贴至此:《大学计算机基础》电子实验报告实验二 图像处理将此电子实验报告以自己的学号姓名和实验序号为文件名(如:070000001张三 实验五)保存后上传到FTP服务器三、保存和上传实验报告将此电子实验报告以自己的学号文件名(如:080000001)保存在E 盘或F 盘的目录下后上传至htp://218.199.185.226/moodle 相应位置处。
图像处理综合实验报告

图像处理综合实验报告一、引言图像处理是计算机科学中的重要研究领域,其应用范围广泛,涵盖了图像增强、图像分割、图像识别等多个方面。
本实验旨在通过综合实验的方式,探索图像处理的基本方法和技术,并对实验结果进行分析和总结。
二、实验目的1. 了解图像处理的基本概念和原理;2. 熟悉常用的图像处理工具和算法;3. 掌握图像处理中常见的操作和技术;4. 分析实验结果并提出改进意见。
三、实验步骤1. 实验准备在实验开始之前,我们需要准备一台计算机和图像处理软件,例如MATLAB、Python等。
同时,需要收集一些图像数据作为实验样本。
2. 图像增强图像增强是图像处理中常用的操作,旨在改善图像的质量和视觉效果。
我们可以通过调整图像的亮度、对比度、色彩等参数来实现图像增强。
在实验中,我们可以选择一些常见的图像增强算法,如直方图均衡化、灰度拉伸等。
3. 图像滤波图像滤波是图像处理中常用的技术,用于去除图像中的噪声和平滑图像。
常见的图像滤波算法包括均值滤波、中值滤波、高斯滤波等。
在实验中,我们可以选择适合实验样本的滤波算法,并对比不同滤波算法的效果。
4. 图像分割图像分割是将图像划分为不同的区域或对象的过程。
常见的图像分割算法包括阈值分割、边缘检测、区域生长等。
在实验中,我们可以选择一种或多种图像分割算法,并对比它们的分割效果和计算复杂度。
5. 图像识别图像识别是图像处理的重要应用之一,它可以用于识别和分类图像中的对象或特征。
在实验中,我们可以选择一些常用的图像识别算法,如模板匹配、神经网络等,并通过实验样本进行图像识别的实验。
四、实验结果与分析1. 图像增强实验结果我们选取了一张低对比度的图像作为实验样本,经过直方图均衡化和灰度拉伸处理后,图像的对比度得到了明显的改善,细节部分更加清晰。
2. 图像滤波实验结果我们选取了一张带有高斯噪声的图像作为实验样本,经过均值滤波、中值滤波和高斯滤波处理后,图像的噪声得到了有效的去除,图像更加平滑。
数字图像处理实验报告

数字图像处理实验报告数字图像处理实验报告一、引言数字图像处理是计算机科学与工程领域中的一个重要研究方向。
通过使用数字化技术,对图像进行采集、传输、存储和处理,可以实现对图像的增强、恢复、分析和识别等功能。
本实验旨在通过对数字图像处理算法的实践应用,探索图像处理的原理和方法。
二、实验目的本实验的主要目的是掌握数字图像处理的基本概念和算法,并通过实际操作加深对图像处理原理的理解。
具体目标包括:1. 学习使用图像处理软件,如Photoshop或Matlab等。
2. 掌握图像增强的方法,如直方图均衡化、滤波和锐化等。
3. 理解图像压缩和编码的原理,如JPEG和PNG等格式。
4. 了解图像分割和边缘检测的基本算法,如阈值分割和Canny边缘检测等。
三、实验过程1. 图像增强图像增强是指通过一系列算法和技术,改善图像的质量和视觉效果。
在实验中,我们可以使用直方图均衡化算法来增强图像的对比度和亮度。
该算法通过将图像的像素值映射到一个更大的范围内,使得图像的亮度分布更加均匀。
2. 图像滤波图像滤波是指通过一系列滤波器对图像进行处理,以实现去噪、平滑和锐化等效果。
在实验中,我们可以使用平滑滤波器(如均值滤波器和高斯滤波器)来去除图像中的噪声。
同时,我们还可以使用锐化滤波器(如拉普拉斯滤波器和Sobel滤波器)来增强图像的边缘和细节。
3. 图像压缩和编码图像压缩是指通过减少图像的数据量来减小图像文件的大小,从而实现存储和传输的效率提升。
在实验中,我们可以使用JPEG和PNG等压缩算法来对图像进行压缩和编码。
JPEG算法通过对图像的频域进行离散余弦变换和量化,实现对图像的有损压缩。
而PNG算法则采用无损压缩的方式,通过对图像的差值编码和哈夫曼编码,实现对图像的高效压缩。
4. 图像分割和边缘检测图像分割是指将图像分成若干个区域,以实现对图像的目标提取和图像分析的目的。
而边缘检测是指通过检测图像中的边缘和轮廓,实现对图像的形状分析和目标识别。
图像处理实验报告实验报告

一、实验目的1、熟悉位图文件的文件格式,掌握位图数据读取并在屏幕上显示的方法。
2、掌握在计算机上进行直方图均衡化以及线性增强的方法。
3、通过实验体会一些主要的分割算子对图像处理的效果,以及各种因素对分割效果的影响。
4、熟练掌握应用MATLAB软件编程进行图像处理。
二、实验环境一台pc机,MATLAB软件编程环境。
三、实验内容1、图像的现实和读取:运用MATLAB软件编程,读取指定的256色灰度图像的数据,显示该文件的文件头和信息头数据的值,并在屏幕上显示该图象。
2、直方图的显示和均衡化:运用MATLAB软件编程,实现内容1中图像直方图的显示和均衡化。
3、图像分割:使用Prewitt 算子、Sobel 算子对图像进行边缘检测处理,完成图像分割实验。
4、图像增强:编写线性增强的程序及相应的显示程序,对指定图象进行线性增强,将原始图象及增强后的图象都显示于屏幕上,比较增强的效果。
四、实验步骤1、打开计算机,启动MATLAB程序。
2、图像读取与显示。
MATLAB中从图像文件中读取数据用函数imread(),这个函数的作用就是将图像文件的数据读入矩阵中,用imshow()函数显示出来。
imread('C:\Users\weixiaoxu\Desktop\图像处理\图像处理.jpg','jpg');imshow('C:\Users\weixiaoxu\Desktop\图像处理\图像处理.jpg');title('原图像')3、直方图的显示A=imread('C:\Users\weixiaoxu\Desktop\图像处理\图像处理.jpg','jpg'); figure;imhist(A),title('对应直方图')4、直方图均衡化MATLAB提供了histeq函数(自动直方图均衡化)I=imread('C:\Users\weixiaoxu\Desktop\图像处理\图像处理.jpg','jpg'); K=histeq(I);figure;imshow(K),title('经直方图均衡化后的图')figure;imhist(K),title('直方图均衡化后的直方图')5、图像的边缘检测用Sobel算子做边缘检测[A,map]=imread('C:\Users\weixiaoxu\Desktop\图像处理\图像处理.jpg','jpg'); image=double(A);u=zeros(1,9);k=zeros(1,9);for i=2:255,for j=2:255,u(1)=0*image(i,j);u(2)=2*image(i,j+1);u(3)=1*image(i-1,j+1);u(4)=0*image(i-1,j);u(5)=-1*image(i-1,j-1);u(6)=-2*image(i,j-1);u(7)=-1*image(i+1,j-1);u(8)=0*image(i+1,j);u(9)=1*image(i+1,j+1);rimage1(i,j)=abs(sum(u));k(1)=0*image(i,j);k(2)=0*image(i,j+1);k(3)=1*image(i-1,j+1);k(4)=2*image(i-1,j);k(5)=1*image(i-1,j-1);k(6)=0*image(i,j-1);k(7)=-1*image(i+1,j-1);k(8)=-2*image(i+1,j);k(9)=-1*image(i+1,j+1);rimage2(i,j)=abs(sum(k));xiaoqiu(i,j)=rimage1(i,j)+rimage2(i,j);end,end,figure,imshow(xiaoqiu,map),title('Sobel锐化');用prewitt算子做边缘检测[A,map]=imread('C:\Users\weixiaoxu\Desktop\图像处理\图像处理.jpg','jpg'); image=double(A);u=zeros(1,9);k=zeros(1,9);for i=2:255,for j=2:255,u(1)=0*image(i,j);u(2)=1*image(i,j+1);u(3)=1*image(i-1,j+1);u(4)=0*image(i-1,j);u(5)=-1*image(i-1,j-1);u(6)=-1*image(i,j-1);u(7)=-1*image(i+1,j-1);u(8)=0*image(i+1,j);u(9)=1*image(i+1,j+1);rimage1(i,j)=abs(sum(u));k(1)=0*image(i,j);k(2)=0*image(i,j+1);k(3)=-1*image(i-1,j+1);k(4)=1*image(i-1,j);k(5)=1*image(i-1,j-1);k(6)=0*image(i,j-1);k(7)=-1*image(i+1,j-1);k(8)=-1*image(i+1,j);k(9)=-1*image(i+1,j+1); rimage2(i,j)=abs(sum(k));xiaoqiu(i,j)=rimage1(i,j)+rimage2(i,j);end,end,figure,imshow(xiaoqiu,map),title('prewitt边缘检测');7、图像的处理均值滤波I=imread('C:\Users\weixiaoxu\Desktop\图像处理\图像处理.jpg','jpg');h=fspecial('average',3);I2=uint8(round(filter2(h,I)));imshow(I2),title('均值滤波')中值滤波I=imread('C:\Users\weixiaoxu\Desktop\图像处理\图像处理.jpg','jpg');I3=medfilt2(I,[3,3]);imshow(I3),title('中值滤波')五、实验总结通过本次试验基本掌握了应用MATLAB软件编程进行图像处理的方法,熟悉了位图文件的文件格式,掌握了位图数据读取显示,直方图均衡化以及线性增强的方法,并学会了运用分割算子对图像进行边缘检测和图像分割处理的方法。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机图像处理实验报告实验一 MATLAB数字图像处理基本操作一、实验目的与要求1.熟悉MATLAB软件的开发环境、基本操作以及图像处理工具箱,为编写图像处理程序奠定基础。
2.掌握二值、灰度和彩色图像的读、写和显示方法,以及图像的高、宽、颜色等参数的获取方法。
3.根据实验内容进行问题的简单分析和初步编码。
二、实验内容1、读入一幅RGB图像(sunset.jpg),分别转换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示这三幅图像,注上文字标题,即“原图像”、“灰度图像”、“二值图像”。
源代码:A=imread('C:\Users\宗正\Desktop\学习\2016图像实验指导书\sunset.jpg');I=rgb2gray(A);J=im2bw(I);figure(1);subplot(2,2,1);imshow(A);title('原图像');subplot(2,2,2);imshow(I);title('灰度图像');subplot(2,2,3);imshow(J);title('二值图像');运行结果:2、说明以下程序的显示结果为何是一幅几乎全黑的图像。
clear; close all;myi=zeros(20,20);myi(2:2:18,2:2:18)=1;myi=uint8(myi);figure, imshow(myi,'notruesize');解释: 如图,该矩阵任一3*3单元仅有中心元素为1,其余元素为0,0占绝大部分,所以整体为黑色3、阅读分析下列程序,对每条语句给出注释,运行并解释最终执行结果;若将for 循环改为方框中的程序,有何不同?clear all;close all;I=imread('d:\lena512.jpg');[height,width]=size(I);figure;subplot(2,3,1);imshow(I);title('原图像');L=1;for m=1:5 L=2*L;k=1;n=1; for i=1:L:heightfor j=1:L:widthquartimage(k,n)=I(i,j);n=n+1;endk=k+1;n=1;endsubplot(2,3,m+1);imshow(uint8(quartimage)); End改变前:改变后:4、编写程序将一幅灰度图像(orangutan.tif)每两行之间增加一行,即将图像的高度拉伸一倍、宽度不变,然后将其存储为图像文件。
要求拉伸后图像的奇数行对应原图像的各行,偶数行是原图像相邻两行的灰度平均值(即偶数行由插值得到),并将结果与MATLAB图像处理工具箱中提供的改变图像大小的函数imresize(imresize(I,[m n])将图像I大小调整为m行n列)的处理结果进行比较。
代码:A=imread('C:\Users\宗正\Desktop\学习\2016图像实验指导书\orangutan.tif');[m,n]=size(A);A=double(A);I=zeros(2*m-1,n);for i=1:2*m-1if(mod(i,2)==1)I(i,:)=A((i+1)/2,:);elseI(i,:)=(A(i/2,:)+A(i/2+1,:))/2;endendfigure(1);subplot(1,2,1);imshow(floor(uint8(I)));title('自定义修改');I=imresize(uint8(A),[2*m-1,n]); subplot(1,2,2);imshow(I);title('imresize修改结果');运行结果:实验二图像直方图及灰度变换一、实验目的与要求1.掌握图像灰度直方图的概念及其计算方法,编写灰度直方图统计程序。
2.通过对图像直方图的分析,学习应用直方图法解决诸如图像二值化等具体问题。
3.熟悉直方图均衡化的计算过程及其应用。
4.掌握图像灰度变换技术,通过调整图像的对比度和亮度等参数,改善视觉效果。
二、实验相关知识直方图是图像最基本的统计特征,是图像亮度分布的概率密度函数,反映了图像灰度值的分布情况。
直方图是多种空间域处理技术的基础。
直方图操作能有效地用于图像增强,如通过直方图均衡化处理,可使图像在整个灰度级范围内的分布均匀化,即在每个灰度级上都具有相同的像素点数,从而获得较好的视觉效果。
另外,直方图固有的信息也可用在图像分割等其它图像处理的应用中。
灰度级变换技术可用g(x,y)=T[f(x,y)]的形式表示,其中f(x,y)为输入图像,g(x,y)为输出图像,T是对图像f进行某种处理的操作。
由于(x,y)处的g值仅由f在该点处的亮度决定,T也称为一个亮度或灰度级变换函数,它与位置坐标(x,y)无关,所以通常写成如下的简化形式s=T(r),其中r和s分别表示图像f和g在相应点(x,y)的亮度。
利用灰度变换可调整一幅图像的明暗、对比度等。
三、实验内容1、编写一个图像灰度直方图统计函数my_imhist,选择一幅图像利用my_imhist显示其直方图,将结果与MATLAB图像处理工具箱中提供的灰度直方图函数imhist的处理结果进行比较,并在同一窗口中显示出来。
源代码:function my_imhist(A)[m,n]=size(A);x=1:256;y=zeros(1,256);for i=1:m*ny(A(i)+1)=y(A(i)+1)+1;endbar(x,y);运行结果:2、利用以上编写的函数my_imhist或imhist,估算图像iris.tif中瞳孔的半径(以像素为单位)。
3、利用MATLAB提供的图像直方图修正函数histeq,选择一幅直方图不均匀的图像如pout.tif,对其进行直方图均衡化处理,显示处理前后的图像以及它们的灰度直方图,体会直方图均衡化算法的特点。
源代码:function myfun4(A)[m,n]=size(A);I=zeros(m,n);b=zeros(1,256);for i=1:m*nb(A(i)+1)=b(A(i)+1)+1;endc=zeros(1,256);for i=1:256c(i)=b(i)/(m*n); endfor i=2:256c(i)=c(i-1)+c(i); endfor i=1:m*nI(i)=256*c(A(i)); endimshow(uint8(I)); figure(1);subplot(2,2,1); imshow(A);title('原图像'); subplot(2,2,2); imshow(uint8(I)); subplot(2,2,3); imhist(A);subplot(2,2,4); imhist(floor(uint8(I)));运行结果:4、按照教材68页上的公式(4.1.6)⎪⎩⎪⎨⎧≤≤+---<≤+---<≤=f f g M y x f b d b y x f b M d M by x f a c a y x f a b c d a y x f y x f a c y x g ),(]),()][/()[(),(]),()][/()[(),(0),()/(),( (4.1.6) 以及公式γ)),((),(y x f c y x g ⋅=,分别编程实现图像的分段线性灰度变换和非线性灰度变换。
利用自己编写的代码对图像bottle.tif 进行灰度调整,使拍摄主体瓶子的花纹更加清晰地表现出来,以改善视觉效果。
将同一个图形窗口分成四个子窗口来分别显示灰度变换前、后的图像以及它们的灰度直方图,注上文字标题。
并考虑利用MATLAB 提供的imadjust 函数是否能完成同样的工作。
代码:I=imread('C:\Users\宗正\Desktop\学习\2016图像实验指导书\bottle.tif');[m,n]=size(I);J=zeros(m,n);a=255/3;b=2*a;M=255;c=a+20;d=M-c;for i=1:m*nif(I(i)>=0&&I(i)<a)J(i)=(c/a)*I(i);elseif(I(i)>=a&&I(i)<b)J(i)=(d-c)/(b-a)*(I(i)-a)+c;elseJ(i)= (d-b)/(d-a)*(I(i)-b)+d;endendendfigure(1);subplot(2,2,1);imshow(I);title('原图像');subplot(2,2,2);imshow(uint8(J));title('变换后');subplot(2,2,3);imhist(I);subplot(2,2,4);imhist(uint8(J));运行结果:。