实验一图像处理基本操作
图像处理实验报告
![图像处理实验报告](https://img.taocdn.com/s3/m/af56e540df80d4d8d15abe23482fb4daa58d1d19.png)
图像处理实验报告图像处理实验报告一、引言图像处理是计算机科学与工程领域的一个重要研究方向,它涉及到对数字图像进行获取、处理、分析和显示等一系列操作。
本实验旨在通过使用图像处理技术,对一幅给定的数字图像进行处理和分析,以探索图像处理的原理和应用。
二、实验目的本实验有以下几个目的:1. 理解图像处理的基本概念和原理;2. 掌握图像处理的常用技术和方法;3. 熟悉图像处理软件的使用。
三、实验步骤1. 图像获取在本实验中,我们选择了一张风景图作为实验对象。
该图像是通过数码相机拍摄得到的,保存在计算机中的文件格式为JPEG。
我们使用图像处理软件将该图像导入到程序中,以便进行后续的处理和分析。
2. 图像预处理在进行图像处理之前,我们需要对图像进行预处理。
预处理的目的是去除图像中的噪声、平滑图像的边缘等。
我们使用了均值滤波和中值滤波两种常用的图像平滑方法。
通过对比两种方法的效果,我们可以选择合适的方法来进行图像预处理。
3. 图像增强图像增强是指通过一系列的操作,使得图像在视觉上更加鲜明、清晰、易于观察。
在本实验中,我们使用了直方图均衡化和灰度拉伸两种图像增强方法。
直方图均衡化通过对图像的像素值进行变换,使得图像的直方图更加均匀,从而增强图像的对比度。
灰度拉伸则是通过对图像的像素值进行线性变换,将图像的灰度范围拉伸到更广的范围内,从而增强图像的细节。
4. 图像分割图像分割是将图像分成若干个互不重叠的区域,每个区域具有一定的意义和特征。
在本实验中,我们使用了阈值分割和边缘检测两种图像分割方法。
阈值分割是指通过设置一个合适的阈值,将图像中的像素分为两个类别。
边缘检测则是通过检测图像中的边缘信息,将图像分割为不同的区域。
5. 图像特征提取图像特征提取是指从图像中提取出具有一定意义和特征的信息。
在本实验中,我们选择了纹理特征和颜色特征两种常用的图像特征提取方法。
纹理特征提取通过对图像的纹理进行分析,提取出图像的纹理特征。
数字图像处理实验报告完整版
![数字图像处理实验报告完整版](https://img.taocdn.com/s3/m/e3337b7984254b35eefd34e0.png)
数字图像处理实验一 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-Matlab基本与图像处理基本操作
![实验1-Matlab基本与图像处理基本操作](https://img.taocdn.com/s3/m/44492a61905f804d2b160b4e767f5acfa1c78384.png)
图像处理工具箱简介
01
MATLAB图像处理工具箱是MATLAB软件中一个专门用于图像处理的工具箱, 它提供了一套完整的图像处理和分析工具,包括图像读取、显示、变换、滤波 、增强、分割、特征提取等功能。
02
该工具箱支持多种图像格式,如BMP、JPG、PNG、TIFF等,并提供了丰富的 图像处理函数和算法,方便用户进行图像处理和分析。
对未来学习的展望
• 深入学习图像处理算法:在未来的学习中,我们将进一步深入学习图像处理的 各种算法和原理,包括图像分割、特征提取、目标检测等,以便更好地应用在 实际问题中。
• 掌握更多图像处理软件:除了Matlab软件外,我们还将学习掌握其他常用的 图像处理软件,如OpenCV、Python图像处理库等,以便更灵活地处理各种 图像问题。
02
学习图像处理基本 操作
了解图像处理基本概念,学习图 像读取、显示、保存等基本操作。
03
掌握图像处理常用 函数
熟悉MATLAB中图像处理工具箱 的常用函数,如图像调整、滤波、 边缘检测等。
实验环境准备
MATLAB软件
确保计算机已安装MATLAB软件,并熟悉软件基 本操作。
图像处理工具箱
安装并配置MATLAB图像处理工具箱,以便进行 图像处理实验。
• 加强实验数据分析处理能力:在未来的实验中,我们将更加注重实验数据的分 析和处理,学习掌握更多的数据处理方法和技巧,以便更准确地评估实验结果 和性能。
• 拓展应用领域:图像处理技术在实际应用中具有广泛的应用领域,如医学影像 处理、智能交通、安全监控等。在未来的学习中,我们将积极探索这些应用领 域,并尝试将所学的图像处理技术应用到实际问题中。
使用图像处理工具箱中的特 征提取函数和分类器函数, 对图像进行特征提取和分类 识别。例如,可以使用灰度 共生矩阵提取图像纹理特征, 然后使用支持向量机(SVM) 进行分类识别。
数字图像处理实验报告
![数字图像处理实验报告](https://img.taocdn.com/s3/m/a0b30da508a1284ac85043c2.png)
目录实验一:数字图像的基本处理操作 (4):实验目的 (4):实验任务和要求 (4):实验步骤和结果 (5):结果分析 (8)实验二:图像的灰度变换和直方图变换 (9):实验目的 (9):实验任务和要求 (9):实验步骤和结果 (9):结果分析 (13)实验三:图像的平滑处理 (14):实验目的 (14):实验任务和要求 (14):实验步骤和结果 (14):结果分析 (18)实验四:图像的锐化处理 (19):实验目的 (19):实验任务和要求 (19):实验步骤和结果 (19):结果分析 (21)实验一:数字图像的基本处理操作:实验目的1、熟悉并掌握MATLAB、PHOTOSHOP等工具的使用;2、实现图像的读取、显示、代数运算和简单变换。
3、熟悉及掌握图像的傅里叶变换原理及性质,实现图像的傅里叶变换。
:实验任务和要求1.读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。
2.对两幅不同图像执行加、减、乘、除操作,在同一个窗口内分成五个子窗口来分别显示,注上文字标题。
3.对一幅图像进行平移,显示原始图像与处理后图像,分别对其进行傅里叶变换,显示变换后结果,分析原图的傅里叶谱与平移后傅里叶频谱的对应关系。
4.对一幅图像进行旋转,显示原始图像与处理后图像,分别对其进行傅里叶变换,显示变换后结果,分析原图的傅里叶谱与旋转后傅里叶频谱的对应关系。
:实验步骤和结果1.对实验任务1的实现代码如下:a=imread('d:\');i=rgb2gray(a);I=im2bw(a,;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('原图像');结果如图所示:图原图及其灰度图像,二值图像2.对实验任务2的实现代码如下:a=imread('d:\');A=imresize(a,[800 800]);b=imread('d:\');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('除法图像');结果如图所示:3.对实验任务3的实现代码如下:s=imread('d:\');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('平移图像离散傅里叶变换频谱');结果如图所示:4.对实验任务4的实现代码如下:s=imread('d:\');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('平移图像离散傅里叶频谱');结果如图所示::结果分析对MATLAB软件的操作开始时不太熟悉,许多语法和函数都不会使用,写出程序后,调试运行,最开始无法显示图像,检查原因,是有些标点符号没有在英文状态下输入和一些其他的细节,学会了imread(),imshow(),rgb2gray()等函数。
《图像处理》实验指导书
![《图像处理》实验指导书](https://img.taocdn.com/s3/m/a243ea798e9951e79b892745.png)
现场考核(60%)+实验报告(40%)
七、实验报告
实验结束后,撰写实验报告,实验报告主题部分应包括:算法原理、程序流程、算法各部分主 要函数代码以及功能注释、运行结果四部分,每部分占实验报告的 10%,按照撰写情况打分。
《图像处理》实验二 图像增强பைடு நூலகம்
一、实验意义及目的
(1)进一步掌握图像处理工具 Matlab,熟悉基于 Matlab 的图像处理函数。 (2)掌握各种图像增强方法。
功能:实现两幅图像相除。
调用格式:
C=imdivide(A,B)。
四、参考代码
参考代码中实现了彩色图像的灰度化、旋转、缩放两种几何变换以及镜像及拼接。
Image1=imread('peppers.jpg'); %红绿通道互换 Image2=Image1; Image2(:,:,1)=Image1(:,:,2); Image2(:,:,2)=Image1(:,:,1); imshow(Image2); imwrite(Image2,'changecolor.jpg');
《图像处理》实验指导书
蔡利梅 编
信息与电气工程学院
学生实验守则
一、学生进入实验室必须遵守实验室的规章制度,遵守课堂纪律,保持实验室的安静和整洁,爱护 实验室的一切设施。 二、实验课前要认真预习实验指导书,写出实验预习报告,并经教师批阅后方可进行实验。 三、实验课中要遵守操作规程,不要带电连接、更改或拆除线路。线路接好后,经指导老师检查后, 方可接通电源进行实验。对于软件上机实验,不得随意删改计算机中原有的文件。 四、学生实验前对实验所用仪器设备要了解其操作规程和使用方法,凡因不预习或不按使用方法进 行操作而造成仪器设备损坏者,除书面检查外,按学校规定进行赔偿。 五、实验中主意安全,遇到事故应立即关断电源并报告教师检查处理。 六、实验完毕后要做好整理工作,实验数据必须经指导教师签阅后,才能拆除线路,并将仪器、设 备、凳子等按规定放好,经同意后方可离开实验室。 七、因故缺课的学生可向实验室申请一次补做机会。无故缺课或无故迟到(15 分钟以上)的不予补 做,该次实验无成绩;累计三次者,该实验课以不及格论,并不得参加该门理论课程的考试。 八、实验室仪器设备不能擅自搬动调换,更不能擅自带出实验室。
数字图像处理实验一图像的基本操作和基本统计指标计算实验报告.doc
![数字图像处理实验一图像的基本操作和基本统计指标计算实验报告.doc](https://img.taocdn.com/s3/m/636fa43da6c30c2259019eb5.png)
实验一图像的基本操作和基本统计指标计算一、实验目的熟悉MATLAB图像处理工具箱,在掌握MATLAB基本操作的基础上,本课程主要依靠图像处理工具箱验证和设计图像处理算法。
对于初学者来说,勤学多练、熟悉MATLAB图像处理工具箱也是学号本课程的必经之路。
了解计算图像的统计指标的方法及其在图像处理中的意义。
了解图像的几何操作,如改变图像大小、剪切、旋转等。
二、实验主要仪器设备(1)台式计算机或笔记本电脑(2)MATLAB(安装了图像处理工具箱,即Image Processing Toolbox(IPT))(3)典型的灰度、彩色图像文件三、实验原理(1)将一幅图像视为一个二维矩阵。
(2)利用MATLAB图像处理工具箱读、写和显示图像文件。
①调用imread函数将图像文件读入图像数组(矩阵)。
例如“I=imread(‘tire.tif’);”。
其基本格式为:“A=imread(‘filename.fmt’)”,其中,A为二维矩阵,filename.为文件名,fmt 为图像文件格式的扩展名。
②调用imwrite函数将图像矩阵写入图像文件。
例如“imwrite(A,’test_image.jpg’);”。
其基本格式为“imwrite(a,filename.fmt)”。
③调用imshow函数显示图像。
例如“imshow(‘tire.tif’);”。
其基本格式为:I为图像矩阵,N为显示的灰度级数,默认时为256。
(3)计算图像有关的统计参数。
四、实验内容(1)利用MATLAB图像处理工具箱和Photoshop读、写和显示图像文件。
(2)利用MATLAB计算图像有关的统计参数。
五、实验步骤(1)利用“读图像文件I/O”函数读入图像Italy.jpg。
(2)利用“读图像文件I/O”的iminfo函数了解图像文件的基本信息:主要包括Filename(文件名)、FileModDate(文件修改时间)、Filesize(文件尺寸)、Format(文件格式)、FormatVersion (格式版本)、Width(图像宽度)、Height(图像高度)、BitDepth(每个像素的位深度)、ColorType (彩色类型)、CodingMethod(编码方法)等。
数字图像处理实验一图像的基本操作和基本统计指标计算实验报告
![数字图像处理实验一图像的基本操作和基本统计指标计算实验报告](https://img.taocdn.com/s3/m/174b9b63168884868762d668.png)
实验一图像的基本操作和基本统计指标计算一、实验目的熟悉MATLAB图像处理工具箱,在掌握MATLAB基本操作的基础上,本课程主要依靠图像处理工具箱验证和设计图像处理算法。
对于初学者来说,勤学多练、熟悉MATLAB图像处理工具箱也是学号本课程的必经之路。
了解计算图像的统计指标的方法及其在图像处理中的意义。
了解图像的几何操作,如改变图像大小、剪切、旋转等。
二、实验主要仪器设备(1)台式计算机或笔记本电脑(2)MATLAB(安装了图像处理工具箱,即Image Processing Toolbox(IPT))(3)典型的灰度、彩色图像文件三、实验原理(1)将一幅图像视为一个二维矩阵。
(2)利用MATLAB图像处理工具箱读、写和显示图像文件。
①调用imread函数将图像文件读入图像数组(矩阵)。
例如“I=imread(‘tire.tif’);”。
其基本格式为:“A=imread(‘filename.fmt’)”,其中,A为二维矩阵,filename.为文件名,fmt为图像文件格式的扩展名。
②调用imwrite函数将图像矩阵写入图像文件。
例如“imwrite(A,’test_image.jpg’);”。
其基本格式为“imwrite(a,filename.fmt)”。
③调用imshow函数显示图像。
例如“imshow(‘tire.tif’);”。
其基本格式为:I为图像矩阵,N为显示的灰度级数,默认时为256。
(3)计算图像有关的统计参数。
四、实验内容(1)利用MATLAB图像处理工具箱和Photoshop读、写和显示图像文件。
(2)利用MATLAB计算图像有关的统计参数。
五、实验步骤(1)利用“读图像文件I/O”函数读入图像Italy.jpg。
(2)利用“读图像文件I/O”的iminfo函数了解图像文件的基本信息:主要包括Filename(文件名)、FileModDate(文件修改时间)、Filesize(文件尺寸)、Format(文件格式)、FormatVersion (格式版本)、Width(图像宽度)、Height(图像高度)、BitDepth(每个像素的位深度)、ColorType (彩色类型)、CodingMethod(编码方法)等。
数字图像处理图像变换实验报告
![数字图像处理图像变换实验报告](https://img.taocdn.com/s3/m/3107551fc850ad02de8041fe.png)
实验报告实验名称:图像处理姓名:刘强班级:电信1102学号:1404110128实验一图像变换实验——图像点运算、几何变换及正交变换一、实验条件PC机数字图像处理实验教学软件大量样图二、实验目的1、学习使用“数字图像处理实验教学软件系统”,能够进行图像处理方面的简单操作;2、熟悉图像点运算、几何变换及正交变换的基本原理,了解编程实现的具体步骤;3、观察图像的灰度直方图,明确直方图的作用与意义;4、观察图像点运算与几何变换的结果,比较不同参数条件下的变换效果;5、观察图像正交变换的结果,明确图像的空间频率分布情况。
三、实验原理1、图像灰度直方图、点运算与几何变换的基本原理及编程实现步骤图像灰度直方图就是数字图像处理中一个最简单、最有用的工具,它描述了一幅图像的灰度分布情况,为图像的相关处理操作提供了基本信息。
图像点运算就是一种简单而重要的处理技术,它能让用户改变图像数据占据的灰度范围。
点运算可以瞧作就是“从象素到象素”的复制操作,而这种复制操作就是通过灰度变换函数实现的。
如果输入图像为A(x,y),输出图像为B(x,y),则点运算可以表示为:B(x,y)=f[A(x,y)]其中f(x)被称为灰度变换(Gray Scale Transformation,GST)函数,它描述了输入灰度值与输出灰度值之间的转换关系。
一旦灰度变换函数确定,该点运算就完全确定下来了。
另外,点运算处理将改变图像的灰度直方图分布。
点运算又被称为对比度增强、对比度拉伸或灰度变换。
点运算一般包括灰度的线性变换、阈值变换、窗口变换、灰度拉伸与均衡等。
图像几何变换就是图像的一种基本变换,通常包括图像镜像变换、图像转置、图像平移、图像缩放与图像旋转等,其理论基础主要就是一些矩阵运算,详细原理可以参考有关书籍。
实验系统提供了图像灰度直方图、点运算与几何变换相关内容的文字说明,用户在操作过程中可以参考。
下面以图像点运算中的阈值变换为例给出编程实现的程序流程图,如下:2、图像正交变换的基本原理及编程实现步骤数字图像的处理方法主要有空域法与频域法,点运算与几何变换属于空域法。
1 光电图像处理实验(图像基本操作).
![1 光电图像处理实验(图像基本操作).](https://img.taocdn.com/s3/m/0e3a15e5fab069dc50220176.png)
光电图像处理实验报告学生姓名:班级:学号:指导教师:实验日期:一、实验名称:图像基本操作二、实验目的:1.掌握MATLAB的操作窗口功能;2.熟练掌握MATLAB的图像处理基本操作,熟练掌握数字图像读取、显示、保存;3.熟练掌握MATLAB各种图像格式文件的互相转换。
三、实验原理:MATLAB是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。
它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
MATLAB和Mathematica、Maple并称为三大数学软件。
它在数学类科技应用软件中在数值计算方面首屈一指。
MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
MATLAB工作环境:桌面包括4个子窗口:命令窗口、工作空间窗口、当前路径窗口、历史命令窗口。
命令窗口是用户在提示符(>>)处键入MATLAB命令和表达式的地方,也是显示那些命令输出的地方。
工作空间窗口显示当前的变量名称和值。
双击可以启动数组编辑器。
当前路径窗口显示当前的工作目录。
工作目录的内容显示在当前目录窗口内。
可通过Set Path改变。
历史命令窗口包含用户已在命令窗口中输入的命令的记录。
如果要重新执行以前的MATLAB命令,可在历史命令窗口中双击该命令即可。
使用MATLAB编辑器创建M文件:MATLAB编辑器既是用于创建M文件的文本编辑器,也是调试器。
M文件用扩展符.m来表示。
可通过在命令输入窗口键入edit命令或在File菜单栏New,Blank M-File实现。
数字图像处理实验指导书
![数字图像处理实验指导书](https://img.taocdn.com/s3/m/6911ff086f1aff00bed51ed3.png)
数字图像处理实验指导书臧兰云电子工程学院实验一图像基本运算一、实验目的:1、了解数字图像处理基础2、掌握数字图像处理的基本运算方法3、学习利用matlab进行数字图像处理的基本方法二、实验内容:1、根据图像采样原理,试对lena图像分别进行4和16倍减采样,查看其减采样效果。
2、对一幅图像加入椒盐噪声,并通过减法运算提取出噪声。
3、两幅二值图像进行逻辑与、或、非运算。
4、实现把一幅图像旋转45°,并分别采用把转出显示区域的图像截去和扩大显示区域范围以显示图像的全部两种方式。
5、选取一幅大小为256*256像素的图像,分别将图比例放大1.5倍,比例缩小0.7倍,非比例放大到420*384像素,非比例缩小到150*180像素。
三、思考与总结:1、将一幅图像如果进行4倍、16倍和64倍增采样会出现什么情况?是否有其他方法可以实现图像的采样?2、图像的选转会导致图像的失真吗?若有,有什么办法可以解决这个问题?3、由非比例缩放得到的图片能够恢复到原图片吗?为什么?实验二图像变换及增强一、实验目的:1、掌握图像变换的应用2、掌握数字图像处理的空间域及频域的增强方法二、实验内容:1、构造一幅图像并对其旋转一定的角度,求原始图像及旋转后图像的频谱图。
2、对一幅灰度图像进行均衡化,灰度等级为8级。
3、对一幅灰度图像采用多种方法实现平滑、锐化滤波。
4、对一幅图像进行幂次变换。
三、思考与总结:1、图像变换在图像处理中的应用?2、什么是傅里叶变换的旋转性?3、以上实验分别可以应用到那些实际问题中? 实验三图像压缩编码一、实验目的:1、掌握图像压缩编码的概念2、比较图像压缩编码的各种方法二、实验内容:1、计算一幅灰度图像的熵。
2、选择一种方法对图像进行压缩,并计算压缩比。
三、思考与总结:1、注释程序功能2、以上实验可以应用到那些实际问题中?实验四图像分割及彩色图像处理一、实验目的:1、掌握图像分割的基本原理2、掌握彩色图像处理方法二、实验内容:1、用全局阈值法对图像进行分割2、实现sobel算子及Roberts等算子的边缘提取算法3、生成一幅大小为256*256的RGB图像。
关于图形图像处理实训报告总结【九篇】
![关于图形图像处理实训报告总结【九篇】](https://img.taocdn.com/s3/m/03e91b835ebfc77da26925c52cc58bd63186931d.png)
关于图形图像处理实训报告总结【九篇】实训报告总结:图形图像处理实训图形图像处理实训是计算机科学与技术专业的基础课程之一。
通过本次实训课程,我深入了解了图形图像处理的基本概念、方法和技术,并通过实际操作来提升了自己的实践能力。
下面是对本次实训的九篇报告总结:1. 实验一:图像读取与显示本次实验主要是学习如何读取和显示图像,以及使用Matplotlib库进行图像展示。
通过实验,我掌握了图像读取和显示的基本方法,并学会了基本的图像处理操作。
2. 实验二:图像的灰度变换实验二主要是学习图像的灰度变换,包括线性变换和非线性变换。
我学会了如何使用不同的灰度变换函数来调整图像的亮度和对比度,进一步提升图像的质量。
3. 实验三:图像的空间域滤波本次实验主要是学习图像的空间域滤波技术,包括均值滤波、中值滤波和高斯滤波等。
通过实验,我掌握了不同滤波方法的原理和实现方式,并学会了如何选择合适的滤波方法来降噪和模糊图像。
4. 实验四:图像的频域滤波实验四主要是学习图像的频域滤波技术,包括傅里叶变换和频域滤波等。
通过实验,我了解了傅里叶变换的原理和应用,并学会了如何使用频域滤波来实现图像的锐化和平滑。
5. 实验五:图像的形态学处理本次实验主要是学习图像的形态学处理技术,包括腐蚀、膨胀、开运算和闭运算等。
通过实验,我学会了如何使用形态学操作来改变图像的形状和结构,进一步改善图像的质量。
6. 实验六:图像的边缘检测实验六主要是学习图像的边缘检测技术,包括Sobel算子、Laplacian算子和Canny算子等。
通过实验,我了解了不同边缘检测方法的原理和应用,并学会了如何使用边缘检测来提取图像的轮廓和特征。
7. 实验七:图像的分割与聚类本次实验主要是学习图像的分割与聚类技术,包括阈值分割、区域生长和K均值聚类等。
通过实验,我掌握了不同分割与聚类方法的原理和应用,并学会了如何使用分割与聚类来识别和分析图像中的目标和区域。
8. 实验八:图像的特征提取与描述子实验八主要是学习图像的特征提取和描述子技术,包括尺度不变特征变换(SIFT)和方向梯度直方图(HOG)等。
ENVI图像处理基础实验教程
![ENVI图像处理基础实验教程](https://img.taocdn.com/s3/m/b82e229fb8f3f90f76c66137ee06eff9aef84929.png)
实验教程篇:提供一系列实验教程,让读者通过实践操作,巩固理论知识,提 高实际应用能力。
系统性强:目录涵盖了从基础知识到高级应用的各个方面,形成了一个完整的 知识体系。
实践性强:通过设置实验教程,使读者能够边学边做,加深对理论知识的理解。
案例丰富:专题应用篇中包含了大量实际案例,有助于读者理解遥感技术在各 个领域的应用。
内容摘要
《ENVI图像处理基础实验教程》不仅适合遥感图像处理与分析的初学者入门学习,也适合具有一 定基础的读者进一步提高自己的技能水平。通过本书的学习,读者可以掌握ENVI软件的基本操作 和遥感图像处理的核心技术,为后续的科研工作和实践应用打下坚实的基础。
精彩摘录
《ENVI图像处理基础实验教程》是一本深入浅出地介绍ENVI软件在图像处理 方面应用的书籍。ENVI(The Environment for Visualizing Images)是一 款功能强大的遥感图像处理软件,广泛应用于环境科学、城市规划、农业监测、 地质研究等多个领域。该书通过丰富的实验案例,使读者能够快速掌握ENVI软 件的基本操作,提升遥感图像的处理和分析能力。
在学习的过程中,我深刻体会到了ENVI软件的强大功能。通过对图像进行预处 理、增强、分类和提取等操作,我们能够从复杂的遥感数据中提取出有用的信 息,为后续的决策和分析提供有力的支持。而这本书则为我们提供了实现这些 操作的详细步骤和方法,使得我们能够更加高效地完成图像处理任务。
除了软件操作技巧,这本书还注重培养读者的实践能力和创新思维。在每个实 验章节中,作者都设计了具有挑战性的任务,鼓励读者动手实践,探索图像处 理的新方法和技术。这种教学方式不仅提高了我的学习兴趣,也锻炼了我的解 决问题的能力。
ENVI图像处理基础实验教程
数字图像处理实验(一)
![数字图像处理实验(一)](https://img.taocdn.com/s3/m/cef2819583d049649b6658f6.png)
数字图像处理实验(一)一、实验目的1)、了解“数字图像处理系统”的基本组成结构;2)、掌握微型数字图像处理系统的基本操作方法;3)、体验主要数字图像处理内容的效果。
二、实验的软、硬件平台:硬件:微型图像处理系统,包括:主机,PC机;T图像卡:CA-CPE-1000摄像机;软件:操作系统:WINDOWS2000应用软件:数字图像处理演示软件。
三、实验内容:1)、图像信息获取;2)、图像存储;3)、观察直方图均衡化处理的效果;4)、观察图像边缘增强处理效果;5)、拍摄自己的标准像。
四、实验步骤:1、图像信息的获取:1)、激活软件;2)、调整摄像机的光圈和聚焦,摄取一张明暗合适的图像;3)、存储图像;4)、调出该图像,验证是否成功存储了该图像。
2、观察图像均衡化处理效果1)、激活图像处理软件;2)、调整摄像机光圈,摄取一张偏暗的图像并存储该图像;3)、调用演示程序中的直方图统计功能,观察直方图形状;4)、调用直方图均衡化处理功能,观察处理结果,同时调用直方图统计功能,观察直方图形状;5)、调整摄像机光圈,拍摄一幅偏亮的图像,并存储;6)、调用直方图统计功能,观察直方图形状;7)、调用直方图均衡化处理功能进行处理;8)、调用直方图统计功能,统计其直方图;3、观察图像边缘增强处理效果1)、调出已存的图像;2)、调用边缘增强处理功能;3)、观察处理效果。
4、拍摄同学本人的标准像及侧面像;1)、激活系统;2)、调整摄像机的光圈和聚焦,获得清晰的图像;3)存储该图像(文件名用同学们的本名);4)、制作标准像的硬拷贝;打印两张,一张上交(附在实验报告中),一张自己保留;五、撰写实验报告1)、实验目的叙述;2)、实验环境描述;3)、实验项目及内容;4)、操作步骤详细描述;包括:系统的激活方法,菜单的运用等;5)、记录实验结果。
6)、基本原理介绍;7)、实验现象描述;8)、实验结果分析;六、思考问题直方图均衡化处理对偏暗的图像比较有效,如果图像偏亮,能否运用直方图均衡化处理方法改善图像质量?如果可以,请说出理由,如果不理想,也请说明理由。
数字图像处理基本操作及灰度调整实验报告
![数字图像处理基本操作及灰度调整实验报告](https://img.taocdn.com/s3/m/d7d02206effdc8d376eeaeaad1f34693dbef1079.png)
数字图像处理基本操作及灰度调整实验报告实验目的1.掌握数字图像处理的基本概念和原理。
2.学会使用Python编程语言进行图像处理。
3.理解并实现图像灰度调整的方法。
4.分析实验结果,讨论图像处理方法的优缺点。
2.1 数字图像处理概述数字图像处理(Digital Image Processing,DIP)是一门研究使用计算机对图像进行处理的技术。
它的目的是改善图像的质量,使之更适合人类或计算机对图像进行观察和分析。
数字图像处理涉及到图像采集、存储、传输、分析以及图像的恢复等方面。
2.2 图像的表示和描述数字图像由图像元素(像素)组成,每个像素有一个对应的灰度值。
灰度值表示像素的亮度,通常用8位二进制数表示,其范围为0~255。
像素的灰度值越高,亮度越高。
数字图像可以表示为一个矩阵,矩阵中的每个元素对应一个像素的灰度值。
彩色图像通常采用RGB颜色模型,每个像素包含三个分量,分别对应红色、绿色和蓝色通道的亮度。
2.3 图像灰度调整图像灰度调整是指调整图像像素的灰度值,以改善图像的质量。
常用的图像灰度调整方法有:1.线性灰度变换:通过线性映射关系改变图像灰度值,可以实现图像亮度的调整和对比度的拉伸。
2.直方图均衡化:通过调整图像的灰度直方图,使其均匀分布,可以提高图像的对比度。
•操作系统:Windows 10•编程语言:Python 3.8•图像处理库:OpenCV 4.5.2•集成开发环境:Visual Studio Code4.1 图像读取和显示首先,我们需要使用OpenCV库读取和显示图像。
以下是读取和显示图像的Python代码:4.2 图像灰度化为了便于后续的灰度调整操作,我们需要将彩色图像转换为灰度图像。
以下是图像灰度化的Python代码:4.3 灰度调整接下来,我们将对图像进行灰度调整。
首先,实现线性灰度变换。
以下是线性灰度变换的Python代码:4.4 图像直方图均衡化直方图均衡化是一种能够提高图像对比度的方法。
《数字图象处理》实验指导书
![《数字图象处理》实验指导书](https://img.taocdn.com/s3/m/23e60d0ecc17552707220821.png)
《数字图象处理》实验和大作业指导书计算机科学与工程学院目录目录 (1)实验一:数字图像读取及色彩、亮度、对比度变化 (2)实验二:数字图像变换与伽马校正 (3)实验三:数字图像的噪声去除 (4)实验四:图像的空间域锐化(拉普拉斯算子) (5)实验五:频率域低通和高通滤波 (6)实验六:数字图像复原 (7)实验七:人脸皮肤颜色分层 (8)大作业 (9)实验一:数字图像读取及色彩、亮度、对比度变化一、实验目的:了解数字图像的存储格式,并学会对图像的某些视觉特征作简单处理。
二、实验要求:1.从最常用的“.BMP”图像格式中读取图像数据;2.对数字图像的表示方式(如RGB、YUV)及各种表示方式之间的转换有初步了解;3.根据输入参数改变数字图像的色彩、亮度、对比度。
三、实验步骤:1.根据BMP格式,将图像内容读入内存数组;2.通过访问数字图像RGB三个通道的对应矩阵,改变数字图像的色彩;3.将数字图像的RGB表示转换为YUV表示;Y=0.30R+0.59G+0.11BU=0.70R-0.59G-0.11BV=-0.30R-0.59G+0.89B4.通过访问Y(亮度)通道,改变数字图像的亮度;5.通过Y(亮度)通道作灰度的线性变换,改变数字图像的对比度。
四、实验图像:实验二:数字图像变换与伽马校正一、实验目的:了解数字图像的灰度反变换和γ(0.4,0.6,0.8)校正。
二、实验要求:1. 对图像进行灰度变换。
2. 对图像进行γ校正。
三、实验步骤:1. 将BMP图像内容读入内存数组。
2. 调整图像的灰度,对图像进行灰度变换(反变换)。
3. 对图像进行γ较正,分别取值为0.4,0.6,0.8.四、实验图像:灰度变换γ较正实验三:数字图像的噪声去除一、实验目的:学会用滤波器去除图像中的噪声。
二、实验要求:1.用均值滤波器去除图像中的噪声; 2.用中值滤波器去除图像中的噪声; 3.比较两种方法的处理结果三、实验步骤:1.根据BMP 格式,将图像内容读入内存数组; 2.用均值滤波器去除图像中的噪声;3.用中值滤波器去除图像中的噪声;将两种处理方法的结果与原图比较; 4.注意两种处理方法对边缘的影响。
实验一 数字图像的基本操作与代数运算
![实验一 数字图像的基本操作与代数运算](https://img.taocdn.com/s3/m/9bd018a5c8d376eeafaa313b.png)
Filename: 'D:\MATLAB6p1\toolbox\images\imdemos\rice.tif'
FileModDate: '26-Oct-1996 06:11:58' FileSize: 65966 Format: 'tif'
FormatVersion: [] Width: 256
实验一 数字图像的基本操作与代数运算
一、实验目的
1、 了解 MATLAB 语言的基本用法; 2、 掌握 MATLAB 语言中图像数据与信息的读写方法; 3、 熟悉在 MATLAB 中对图像的类型、图像文件的格式进行转换的方法; 4、 理解数字图像处理中代数运算的基本作用;掌握在 MTLAB 中对图像进行代数运算
(b)imwrite
imwrite 函数用于输出图像,其语法格式为:
imwrite(X, MAP, filename, fmfmt 指定的格式将图像数据矩阵 X 和调色板 MAP 写入文
件 filename。
(c)imfinfo
imfinfo 函数用于读取图像文件的有关信息,其语法格式为
主要介绍一下如何读取矩阵的指定行或指定列,举例说明: x=4:6 %产生一个一维数组,范围从 4 到 6,步长为 1
图像处理综合实验报告
![图像处理综合实验报告](https://img.taocdn.com/s3/m/f11d8abcd5d8d15abe23482fb4daa58da0111c0a.png)
图像处理综合实验报告一、引言图像处理是计算机科学中的重要研究领域,其应用范围广泛,涵盖了图像增强、图像分割、图像识别等多个方面。
本实验旨在通过综合实验的方式,探索图像处理的基本方法和技术,并对实验结果进行分析和总结。
二、实验目的1. 了解图像处理的基本概念和原理;2. 熟悉常用的图像处理工具和算法;3. 掌握图像处理中常见的操作和技术;4. 分析实验结果并提出改进意见。
三、实验步骤1. 实验准备在实验开始之前,我们需要准备一台计算机和图像处理软件,例如MATLAB、Python等。
同时,需要收集一些图像数据作为实验样本。
2. 图像增强图像增强是图像处理中常用的操作,旨在改善图像的质量和视觉效果。
我们可以通过调整图像的亮度、对比度、色彩等参数来实现图像增强。
在实验中,我们可以选择一些常见的图像增强算法,如直方图均衡化、灰度拉伸等。
3. 图像滤波图像滤波是图像处理中常用的技术,用于去除图像中的噪声和平滑图像。
常见的图像滤波算法包括均值滤波、中值滤波、高斯滤波等。
在实验中,我们可以选择适合实验样本的滤波算法,并对比不同滤波算法的效果。
4. 图像分割图像分割是将图像划分为不同的区域或对象的过程。
常见的图像分割算法包括阈值分割、边缘检测、区域生长等。
在实验中,我们可以选择一种或多种图像分割算法,并对比它们的分割效果和计算复杂度。
5. 图像识别图像识别是图像处理的重要应用之一,它可以用于识别和分类图像中的对象或特征。
在实验中,我们可以选择一些常用的图像识别算法,如模板匹配、神经网络等,并通过实验样本进行图像识别的实验。
四、实验结果与分析1. 图像增强实验结果我们选取了一张低对比度的图像作为实验样本,经过直方图均衡化和灰度拉伸处理后,图像的对比度得到了明显的改善,细节部分更加清晰。
2. 图像滤波实验结果我们选取了一张带有高斯噪声的图像作为实验样本,经过均值滤波、中值滤波和高斯滤波处理后,图像的噪声得到了有效的去除,图像更加平滑。
《数字图像处理》实验一报告1
![《数字图像处理》实验一报告1](https://img.taocdn.com/s3/m/12a1671210a6f524ccbf8550.png)
成绩:数字图像处理实验报告实验一:图像文件认识学号:0967118218姓名:宁志强同组人:电脑编号:实验时间:2012年6 月18 日星期1数字图像处理实验报告一、实验名称图像文件认识二、实验目的1、掌握文本编辑工具UltraEdit的基本使用方法2、掌握BMP格式图像的基本组成3、掌握使用UltraEdit查看BMP格式图像的方法三、实验平台Windows XP、UltraEdit 16.20四、实验内容一、安装UltraEdit软件1、下载并安装UltraEdit软件。
二、获取4种形式BMP格式图像文件1、查找一副自己喜欢的图像,并用Windows自带的画图板软件打开;2、将打开的图像分别另存为24位、256色、16色、黑白两色BMP格式位图,命名规则为“文件名-图像位数内科大24位图内科大256色图内科大16色内科大单色图五、实验分析一、24位BMP格式图像文件名:图像-24.bmp工具:UE Studio位图文件头:0-1字节:42 4D:说明该图像文件的类型,即字符串“BM”。
2-5字节:7E EA 08 00:说明该文件的大小,即584318字节。
6-7字节:00 00:保留字,不用考虑。
8-9字节:00 00:保留字,不用考虑。
10-13字节:36 00 00 00:说明文件头到实际位图数据的偏移字节数,即54字节.位图信息头:0-3字节:28 00 00 00:说明该图形文件的结构的长度,即40。
4-7字节:D2 03 00 00:说明该图像的宽度,即978像素。
8-11字节:C7 00 00 00:说明该文件的高度,即199像素。
12-13字节:01 00:说明该图像的位平面数为1。
14-15字节:18 00:说明指定颜色位数为24。
16-19字节:00 00 00 00:说明该图像的压缩情况。
20-23字节:00 00 00 00:说明实际的位图数占用的字节数。
24-27字节:C4 0E 00 00:说明显示器的水平分辨率3780像素平米。
《数字图像处理》数字图像的基本操作实验
![《数字图像处理》数字图像的基本操作实验](https://img.taocdn.com/s3/m/cbfd4b18ef06eff9aef8941ea76e58fafab0453b.png)
《数字图像处理》数字图像的基本操作实验课程名称:数字图像处理实验类型:设计性实验项目名称:数字图像的基本操作一、实验目的和要求熟悉MATLAB图像处理常用工具函数的使用,巩固对子图像几何变换原理的理解。
二、实验内容运用MATLAB工具函数实现图像的平移、镜像、旋转等几何变换。
三、实验步骤及结果图像平移代码:I=imread('cameraman.tif');se=translate(strel(1),[25 25]);J=imdilate(I,se);subplot(1,2,1),imshow(I),title('原图')subplot(1,2,2),imshow(J),title('平移后的图');程序运行结果:图像的镜像程序:A=imread('cameraman.tif');[height,width]=size(A);tform=maketform('affine',[-1 0 0;0 1 0;width 0 1]); B=imtransform(A,tform,'nearest');tform2=maketform('affine',[1 0 0;0 -1 0;0 height 1]); C=imtransform(A,tform2,'nearest');subplot(1,3,1),imshow(A),title('原图像')subplot(1,3,2),imshow(B),title('水平镜像') subplot(1,3,3),imshow(C),title('垂直镜像');程序运行结果:旋转程序:I=imread('coins.png');J1=imrotate(I,45);J2=imrotate(I,45,'crop'); subplot(1,3,1);imshow(I) subplot(1,3,2);imshow(J1) subplot(1,3,3);imshow(J2); 程序运行结果:完成对图像cameraman.tif向右30,向下15的平移,分别显示平移后和原图相同大小的结果和没有裁剪完整的图像。
数字图像基本操作及灰度调整
![数字图像基本操作及灰度调整](https://img.taocdn.com/s3/m/f8c4210402020740be1e9be9.png)
subplot(1,2,2),imhist(B),
[m,n]=size(B);
S1=zeros(1,256);
fori=1:256
forj=1:i
S1(i)=GP(j)+S1(i);
end
end
S2=round((S1*256)+0.5);
fori=1:256
imfinfo('forest.tif','tif')
b
I=imread('b747.jpg'),
Imshow(B);B = rgb2gray(I)
2.
I=imread('tianya.jpg');
J=rgb2gray(I);
BW=im2bw(I);
HSV=rgb2hsv(I);
subplot(2,2,1);imshow(I);
a..2
I=imread('b747.jpg'),B = rgb2gray(I),
subplot(1,2,1), C=imadjust(B,[200/255;1],[]),imshow(C),
subplot(1,2,2),imhist(C)
b.1
I=imread('b747.jpg'),B = rgb2gray(I),
I=imread('b747.jpg'),
Imshow(B);B = rgb2gray(I)
对应结果如下:
图3-3
结果分析:
观察了图像数据
了解一下数字图像在MATLAB中的处理就是处理一个矩阵
rgb2gray()将真彩色图像转换成灰度图像或者将彩色色图转换成灰度色图
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验一图像处理基本操作一、 实验目的1、熟悉并掌握在MATLAB中进行图像类型转换及图像处理的基本操作。
2、熟练掌握图像处理中的常用数学变换。
二、实验设备1、计算机1台2、MATLAB软件1套3、实验图片三、实验原理1、数字图像的表示和类别一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f在坐标(x,y)处的幅度称为图像在该点的亮度。
灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由若干个二维图像组合形成的。
例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。
因此,许多为黑白图像处理开发的技术也适用于彩色图像处理,方法是分别处理三幅独立的分量图像即可。
图像关于x和y坐标以及幅度连续。
要将这样的一幅图像转化为数字形式,就要求数字化坐标和幅度。
将坐标值数字化称为取样,将幅度数字化称为量化。
采样和量化的过程如图1所示。
因此,当f的x、y分量和幅度都是有限且离散的量时,称该图像为数字图像。
作为MATLAB基本数据类型的数组十分适于表达图像,矩阵的元素和图像的像素之间有着十分自然的对应关系。
图1 图像的采样和量化图1 采样和量化的过程根据图像数据矩阵解释方法的不同,MATLAB把其处理为4类:✧亮度图像(Intensity images)✧二值图像(Binary images)✧索引图像(Indexed images)✧ RGB图像(RGB images)(1) 亮度图像一幅亮度图像是一个数据矩阵,其归一化的取值表示亮度。
若亮度图像的像素都是uint8类型或uint16类型,则它们的整数值范围分别是[0,255]和[0,65536]。
若图像是double 类型,则像素取值就是浮点数。
规定双精度double型归一化亮度图像的取值范围是[0 1]。
(2) 二值图像一幅二值图像是一个取值只有0和1的逻辑数组。
而一幅取值只包含0和1的uint8类型数组,在MATLAB中并不认为是二值图像。
使用logical函数可以把数值数组转化为逻辑数组。
创建一个逻辑图像,其语法为:B=logical(A)其中,A是由0和1构成的数值数组。
(3) 索引图像索引颜色通常也称为映射颜色,在这种模式下,颜色都是预先定义的,并且可供选用的一组颜色也很有限,索引颜色的图像最多只能显示256种颜色。
一幅索引颜色图像在图像文件里定义,当打开该文件时,构成该图像具体颜色的索引值就被读入程序里,然后根据索引值找到最终的颜色。
(4) RGB图像一幅RGB图像就是彩色像素的一个M×N×3数组,其中每一个彩色像素点都是在特定空间位置的彩色图像相对应的红、绿、蓝三个分量。
按照惯例,形成一幅RGB彩色图像的三个图像常称为红、绿和蓝分量图像。
2、数据类型表1列出了MATLAB为表示像素所支持的各种数据类型。
表中前8项称为数值数据类型,第9项称为字符类型,最后一项称为逻辑数据类型。
表1 数据类型名称描述double 双精度浮点数,范围:-10308 ~ 10308uint8 无符号8 bit整数,范围:0 ~ 255uint16 无符号16 bit整数,范围:0 ~ 65536uint32 无符号32 bit整数,范围:0 ~ 4294967295int8 有符号8 bit整数,范围:-128 ~ 127int16 有符号16 bit整数,范围:-32768 ~ 32767int32 有符号32 bit整数,范围:-2147483648 ~ 2147483647single 单精度浮点数,范围为:-10308 ~ 10308char 字符logical 值为0或13、图像文件的读、写和显示(1) 读图像imread函数用于读入各种图像文件,其一般的用法为[X,MAP]=imread( ‘filename’, ‘fmt’)其中,X为读出的图像数据,MAP为颜色表数据(或称调色板,亦即颜色索引矩阵,对灰度图像和RGB彩色图像,该MAP为空矩阵),fmt为图像的格式(可以缺省),filename 为读取的图像文件(可以加上文件的路径)。
例:[X,MAP]=imread(‘flowers.tif’, ‘tif’)(2) 写图像imwrite函数用于输出图像,其语法格式为:imwrite(X, MAP, filename, fmt)imwrite(X, MAP, filename, fmt) 按照fmt指定的格式将图像数据矩阵X和调色板MAP 写入文件filename。
(3) 显示图像MATLAB图像处理工具箱提供了imshow函数来显示各种图像,其语法如下:imshow(I, n)或imshow(I_BW);imshow(X, MAP);imshow(I_RGB)其中imshow(I, n)用于显示灰度图像,I是图像数据矩阵,n为灰度级数目(n可缺省,缺省值为256)。
其它的分别用于显示二值图像、索引色图像和RGB真彩色图像。
另外,对RGB彩色图像,还可以用imshow( RGB(:, :, 1) )、imshow( RGB(:, :, 2) )、imshow( RGB(:, :, 3) )分别显示RGB图像的R、G、B三个分量(注意:这样显示出的图像是以各分量值为对应的灰度值所显示的灰度图像)。
需要显示多幅图像时,可以使用figure语句,它的功能就是打开一个新的图像显示窗口。
也可以使用subplot函数将多幅图像显示在同一个图像显示窗口的不同区域位置。
例:I=imread(‘rice.tif’);imshow(I);J=imread(‘flowers.tif’);figure, imshow(J);4、图像类型的转化图像的类型主要有二值图像、灰度图像、索引图像和RGB彩色图像。
一幅图像的类型可以根据读入的图像数据的特点加以判断。
假设图像“flowers.tif”的大小为N×M,读取图像[X,MAP]=imread(’flowers.tif’, ’tif’)。
对灰度图像来说:X为N×M矩阵、MAP为空矩阵;对索引图像:X为N×M矩阵,而MAP不是空矩阵,一般为256×3矩阵;对RGB图像:X为N×M×3三维矩阵,MAP为空矩阵。
另外根据用imfinfo函数读取的图像文件的有关信息也可以确定图像的类型。
图像类型之间的转换有时非常有用。
表2是MATLAB提供的图像类型转换函数。
表2 MATLAB提供的图像类型转换函数函数功能dither 使用抖动方法,将灰度图像变成二值图像或由RGB图像创建索引图像gray2ind 根据一幅灰度图像创建索引图像grayslice 使用阈值截取方法,根据一幅灰度图像创建索引图像im2bw 使用阈值截取法,将灰度图像、索引图像或RGB图像转换为二值图像ind2gray 根据一幅索引图像创建一幅灰度图像ind2rgb 根据一幅索引图像创建一幅RGB图像mat2gray 通过数据缩放,在根据矩阵数据创建一幅灰度图像rgb2gray 根据一幅RGB图像创建一幅灰度图像rgb2ind 根据一幅RGB图像创建一幅索引图像上表中函数有类似的调用格式:函数的输入参数是图像数据矩阵(如果是索引图像,那么输入参数还包括调色板),返回值是转换后的图像(包括索引图像的调色板),只有函数im2bw的调用格式不同,其输入参数中还包括一个截取阈值,超过此阈值的像素被截取为1否则为0。
如:“[I_RGB, MAP]=imread('flowers.tif'); I_GRAY=rgb2gray(I_RGB);”将RGB图像转换为灰度图像。
5、代数运算设定A(x,y)和B(x,y)为输入图像,C(x,y)为输出图像。
(1) 加法运算C ( x , y ) = A ( x , y ) + B ( x , y )(2) 减法运算C ( x , y ) = A ( x , y ) —B ( x , y )(3) 乘法运算C ( x , y ) = A ( x , y ) ×B ( x , y )(4) 除法运算C ( x , y ) = A ( x , y ) / B ( x , y )图像相加的一个重要应用是对同一场景的多幅图像求平均值。
这点被经常用来有效地降低加性随机噪声的影响。
在求平均值的过程中,图像的静止部分不会改变,而对每一幅图像,各不相同的噪声图案则累积很慢。
对M幅图像进行平均,使图像中每一点的平方信噪比提高了M倍,幅度信噪比是功率信噪比的平方根,因此达到了提高信噪比降低噪声的作用。
在MATLAB中,可人为地往一幅图像中加入随机噪声,并通过多次相加求平均的方法降低所加入的噪声对图像的影响。
MATLAB中提供了给图像加入噪声的函数imnoise,imnoise的语法格式为J = imnoise(I, type)J = imnoise(I, type, parameters)其中J = imnoise(I, type)返回对原始图像I添加典型噪声的有噪图像J。
参数type和parameters 用于确定噪声的类型和相应的参数。
例:I = imread('eight.tif');J1 = imnoise(I, 'gaussian', 0, 0.02);J2 = imnoise(I, 'salt & pepper', 0.02);J3 = imnoise(I, 'speckle', 0.02);subplot(2,2,1), imshow(I), title('原图像');subplot(2,2,2), imshow(J1), title('加高斯噪声');subplot(2,2,3), imshow(J2), title('加椒盐噪声');subplot(2,2,4), imshow(J3), title('加乘性噪声');代数运算中需要有若干幅带有随机噪声的图像数据,在这里我们运用MATLAB中的FOR循环语句来完成产生多幅带有噪声的图像数据及将这些图像数据进行相加运算。
MATLAB中FOR END循环的用法如下:for end循环这种循环允许一组命令以固定的和预定的次数重复,循环的一般形式为:for variable = expressionstatementsend例:图像加噪声再通过多次相加求平均的方法去除噪声[I, M] = imread('eight.tif');J = imnoise(I, 'gaussian', 0, 0.02);subplot(1,2,1), imshow(I), title('原图像');subplot(1,2,2), imshow(J), title('加噪声后图像');[m, n] = size(I);K = zeros(m, n);for i = 1 : 100J = imnoise(I, 'gaussian', 0, 0.02);J1 = im2double(J);K = K + J1;endK = K / 100; %求图像的平均figure; imshow(K), title('相加求平均后的图像');6、几何运算(1) 图像的缩放MATLAB图像处理工具箱中的函数imresize可以用上述的三种方法对图像进行插值缩放,如果不指定插值方法,则默认为最邻近插值法。