实验1_基于MATLAB的图像基本操作

合集下载

实验1-Matlab基本与图像处理基本操作

实验1-Matlab基本与图像处理基本操作

图像处理工具箱简介
01
MATLAB图像处理工具箱是MATLAB软件中一个专门用于图像处理的工具箱, 它提供了一套完整的图像处理和分析工具,包括图像读取、显示、变换、滤波 、增强、分割、特征提取等功能。
02
该工具箱支持多种图像格式,如BMP、JPG、PNG、TIFF等,并提供了丰富的 图像处理函数和算法,方便用户进行图像处理和分析。
对未来学习的展望
• 深入学习图像处理算法:在未来的学习中,我们将进一步深入学习图像处理的 各种算法和原理,包括图像分割、特征提取、目标检测等,以便更好地应用在 实际问题中。
• 掌握更多图像处理软件:除了Matlab软件外,我们还将学习掌握其他常用的 图像处理软件,如OpenCV、Python图像处理库等,以便更灵活地处理各种 图像问题。
02
学习图像处理基本 操作
了解图像处理基本概念,学习图 像读取、显示、保存等基本操作。
03
掌握图像处理常用 函数
熟悉MATLAB中图像处理工具箱 的常用函数,如图像调整、滤波、 边缘检测等。
实验环境准备
MATLAB软件
确保计算机已安装MATLAB软件,并熟悉软件基 本操作。
图像处理工具箱
安装并配置MATLAB图像处理工具箱,以便进行 图像处理实验。
• 加强实验数据分析处理能力:在未来的实验中,我们将更加注重实验数据的分 析和处理,学习掌握更多的数据处理方法和技巧,以便更准确地评估实验结果 和性能。
• 拓展应用领域:图像处理技术在实际应用中具有广泛的应用领域,如医学影像 处理、智能交通、安全监控等。在未来的学习中,我们将积极探索这些应用领 域,并尝试将所学的图像处理技术应用到实际问题中。
使用图像处理工具箱中的特 征提取函数和分类器函数, 对图像进行特征提取和分类 识别。例如,可以使用灰度 共生矩阵提取图像纹理特征, 然后使用支持向量机(SVM) 进行分类识别。

实验一 MATLAB_图像处理实验报告

实验一 MATLAB_图像处理实验报告

实验一 MATLAB_图像处理实验报告实验报告课程名称数字图像处理实验名称图像的几何变换姓名__吴征宇学号____ 3101110002 专业班级_ 实验日期__20XX_ 年_10 _月_18 日成绩_____ __ 指导教师___ _一、实验目的掌握图像平移、缩放、旋转与镜像变换;二、实验原理图像平移,自写平移函数function outImage=immove(inImage,Tx,Ty) [m, n] = size(inImage);%计算图象大小outImage = uint8(zeros(m+abs(Ty), n+abs(Tx))); if(Tx>0&&Ty>0) %往右下角平移的情况outImage(1+Ty:m+Ty,1+Tx:n+Tx) = inImage; else if(Tx0) %往左下角平移的情况outImage(1+Ty:m+Ty,1:n) = inImage; else % 往右上角平移的情况outImage(1:m,1+Tx:n+Tx) = inImage; end endend 主函数I=imread('C:\\Documents and Settings\\student\\桌面\\'); J=rgb2gray(I);imshow(J);title('原图像'); H=immove(J,100,-100);figure;imshow(H);title('平移后图像'); B=immove(J,80,-50);figure;imshow(B);title('平移后图像'); G=imresize(J,);figure;imshow(G);title('缩放后图像'); C=imresize(J,2);figure;imshow(C);title('缩放后图像'); D=imrotate(J,30);figure;imshow(D);title('旋转后图像'); E=imrotate(J,54);figure;imshow(E);title('旋转后图像'); F = flipdim(J,1);figure;imshow(F);title('垂直镜像图像'); G = flipdim(J,2);figure;imshow(G);title('水平镜像图像');三、实验环境Window 20XX Matlab1.利用imread( )函数读取一幅图像,假设其名为,存入一个数组中;a=imread('')2.利用whos 命令提取该读入图像的基本信息;3.利用imshow 函数来显示这幅图像;4.利用imfinfo函数来获取图像文件的压缩,颜色等等其他的详细信息;5.利用imwrite 函数来压缩这幅图象,将其保存为一幅压缩了像素的jpg文件,设为;语法:imwrite(原图像,新图像,‘quality’,q), q取0-100。

1.实验一 MatLab数字图像处理初步

1.实验一 MatLab数字图像处理初步

实验一MATLAB数字图像处理初步一、实验目的与要求1. 熟悉并掌握在MATLAB中能够处理的图像类型。

2. 熟练掌握在MATLAB中如何读取图像。

3. 掌握利用MATLAB获取图像的大小、颜色、高度、宽度等相关信息。

4. 掌握在MATLAB中按照指定要求存储一幅图像。

5. 掌握图像间的转化。

二、实验设备与软件(1) PC计算机系统(2) MATLAB软件,包括图像处理工具箱(Image Processing Toolbox)(3) 实验图片三、实验原理及知识点1、数字图像的表示和类别一幅图像可以被定义为一个二维函数f(x,y),其中x和y是空间(平面)坐标,f在坐标(x,y)处的振幅称为图像在该点的亮度。

灰度是用来表示黑白图像亮度的一个术语,而彩色图像是由若干个二维图像组合形成的。

例如,在RGB彩色系统中,一幅彩色图像是由三幅独立的分量图像(红、绿、蓝)组成的。

因此,许多为黑白图像处理开发的技术也适用于彩色图像处理,方法是分别处理三幅独立的分量图像即可。

图像关于x和y坐标以及振幅连续。

要将这样的一幅图像转化为数字形式,就要求数字化坐标和振幅。

将坐标值数字化称为取样,将振幅数字化称为量化。

采样和量化的过程如图1所示。

因此,当f的x、y分量和振幅都是有限且离散的量时,称该图像为数字图像。

作为MATLAB基本数据类型的数组十分适于表达图像,矩阵的元素和图像的像素之间有着十分自然的对应关系。

图1 图像的采样和量化根据图像数据矩阵解释方法的不同,MATLAB把其处理为4类:✧亮度图像(Intensity images)✧二值图像(Binary images)✧索引图像(Indexed images)✧RGB图像(RGB images)(1) 亮度图像一幅亮度图像是一个数据矩阵,其归一化的取值表示亮度。

若亮度图像的像素都是uint8类型或uint16类型,则它们的整数值范围分别是[0,255]和[0,65536]。

基于matlab的图像处理课程设计

基于matlab的图像处理课程设计

基于matlab的图像处理课程设计一、课程目标知识目标:1. 学生能理解图像处理的基本概念,掌握图像的数字化表示方法。

2. 学生能掌握Matlab软件的基本操作,运用其图像处理工具箱进行图像的读取、显示和保存。

3. 学生能掌握图像处理的基本算法,如灰度变换、图像滤波、边缘检测等,并理解其原理。

技能目标:1. 学生能运用Matlab进行图像处理操作,解决实际问题。

2. 学生能通过编程实现图像处理算法,具备一定的程序调试和优化能力。

3. 学生能运用所学知识,结合实际问题,设计简单的图像处理程序。

情感态度价值观目标:1. 学生通过学习图像处理,培养对计算机视觉和人工智能领域的兴趣,激发创新意识。

2. 学生在课程实践中,培养团队协作精神,提高沟通与表达能力。

3. 学生能认识到图像处理技术在生活中的广泛应用,增强学以致用的意识。

分析课程性质、学生特点和教学要求,本课程目标旨在使学生在掌握基本图像处理知识的基础上,通过Matlab软件的实践操作,培养其编程能力和解决实际问题的能力。

同时,注重培养学生的团队协作和情感态度,使其在学习过程中获得成就感,激发学习兴趣。

课程目标将具体分解为学习成果,以便后续教学设计和评估。

二、教学内容1. 图像处理基础理论:- 数字图像概念及表示方法- 图像处理的基本操作:读取、显示、保存- 像素运算与邻域处理2. Matlab基础操作:- Matlab软件安装与界面介绍- 数据类型与基本运算- 矩阵运算与函数编写3. 图像处理算法:- 灰度变换与直方图处理- 图像滤波:低通滤波、高通滤波- 边缘检测:Sobel算子、Canny算子4. 实践项目:- 图像增强与去噪- 图像分割与特征提取- 目标检测与跟踪5. 教学大纲:- 第一周:图像处理基础理论,Matlab基础操作- 第二周:灰度变换与直方图处理,图像滤波- 第三周:边缘检测,实践项目一- 第四周:图像分割与特征提取,实践项目二- 第五周:目标检测与跟踪,课程总结与展示教学内容根据课程目标,结合教材章节进行选择和组织,确保科学性和系统性。

matlab图像的基本操作

matlab图像的基本操作

图像的基本操作与图像变换一:实验目的通过实验了解并掌握图像的基本操作、图像的傅里叶变换及频谱、傅里叶变换的可分离性和旋转不变性。

二:实验代码(1)二值图像的逻辑运算代码imag1=zeros(256,256);imag1(120:180,100:190)=1;subplot(2,3,1);imshow(imag1);title('image1');imag2=zeros(256,256);imag2(90:140,90:140)=1;subplot(2,3,2);imshow(imag2);title('image2');logical_and=imag1&imag2;subplot(2,3,3);imshow(logical_and);title('image1 and image2');logical_or=imag1|imag2;subplot(2,3,4);imshow(logical_or);title('image1 or image2');imag1complement=~imag1;subplot(2,3,5);imshow(imag1complement);title('Notimage1');imag2complement=~imag2;subplot(2,3,6);imshow(imag2complement);title('Notimage2');二值图像的逻辑运算图像(2)二值图像的傅里叶分析代码: imag=zeros(256,256); imag(100:150,100:150)=1; subplot(2,3,1);imshow(imag); title('原始二值图像'); I=fft(imag);subplot(2,3,2);imshow(log(abs(I)),[]); title('第一一维FFT'); J=fftshift(fft(I'));subplot(2,3,3);imshow(log(abs(J)),[]); title('第二次一维FFT');subplot(2,3,4);imshow(angle(J),[]); title('相频特性1'); B=fftshift(fft2(imag));subplot(2,3,5);imshow(log(abs(B)),[]); title('二维FFT');subplot(2,3,6);imshow(angle(B),[]); title('相频特性2');二值图像的傅里叶分析效果image1image2image1 and image2image1 or image2Notimage1Notimage2(3)灰度图像的二维FFT 及IFFT,比较还原后的图像与原图像的差异代码: close all; clear all;load imdemos saturn2; imshow(saturn2); title('土星图像');B=fftshift(fft2(saturn2));figure;imshow(log(abs(B)),[]); colormap(jet(64));colorbar; title('傅里叶谱'); I=ifft2(B);figure;imshow(abs(I),[]);title('傅里叶反变换图');灰度图像的二维FFT 及IFFT,比较还原后的图像与原图像的效果原始二值图像第一一维FFT第二次一维FFT相频特性1二维FFT相频特性2土星图像傅里叶谱2468101214傅里叶反变换图(4)载入图像,将图像进行差值旋转,并比较旋转前后的的傅里叶频谱代码:close all;clear all;I=imread('C:\Documents and Settings\Administrator\桌面\untitled.bmp');J=imrotate(I,35,'bilinear');subplot(2,2,1);imshow(I);title('原图像');subplot(2,2,2);imshow(J);title('旋转后的图像');A=fftshift(fft2(I));subplot(2,2,3);imshow(log(abs(A)),[]);title('原图像的幅度谱');B=fftshift(fft2(J));subplot(2,2,4);imshow(log(abs(B)),[]);title('旋转后图像的幅度谱');载入图像,将图像进行差值旋转,并比较旋转前后的的傅里叶频谱的效果原图像旋转后的图像原图像的幅度谱旋转后图像的幅度谱。

MATLAB课程设计(基于MATLAB的图像处理的基本运算)

MATLAB课程设计(基于MATLAB的图像处理的基本运算)

MATLAB课程设计(基于MATLAB的图像处理的基本运算)课程设计任务书学⽣姓名:专业班级:指导教师:⼯作单位:题⽬: 基于MATLAB的图像处理的基本运算初始条件①MATLAB软件②数字信号处理与图像处理基础知识要求完成的主要任务:(1)能够对图像亮度和对⽐度变化调整,并⽐较结果。

(2)编写程序通过最近邻插值和双线性插值等算法将⽤户所选取的图像区域进⾏放⼤和缩⼩整数倍的和旋转操作,并保存,⽐较⼏种插值的效果。

(3)图像直⽅图统计和直⽅图均衡,要求显⽰直⽅图统计,⽐较直⽅图均衡后的效果。

(4)对图像加⼊各种噪声,⽐较效果。

时间安排:第1周:安排任务,分组第2-17周:设计仿真,撰写报告第18周:完成设计,提交报告,答辩地点:鉴主3楼计算机实验室指导教师签名: 2010年⽉⽇系主任(或责任教师)签名: 2010年⽉⽇摘要MATLAB是—套⾼性能的数值计算和可视化软件,它集数值分析、矩阵运算、信号处理和图形显⽰于⼀体,构成—个⽅便的、界⾯友好的⽤户环境。

MATLAB强⼤的扩展功能为各个领域的应⽤提供了基础,由各个领域的专家相继给出了MATLAB ⼯具箱,其中主要有信号处理,控制系统,神经⽹络,图像处助,鲁棒控制,⾮线性系统控制设计,最优化,⼩波,通信等⼯具箱,这此⼯具箱给各个领域的研究和⼯程应⽤提供了有⼒的⼯具。

借助于这些“巨⼈肩膀上的⼯具”,各个层次的研究⼈员可直现⽅便地进⾏分析、计算及设计⼯作,从⽽⼤⼤地节省了时间。

本次课程设计的⽬的在于较全⾯了解常⽤的数据分析与处理原理及⽅法,能够运⽤相关软件进⾏模拟分析。

通过对采集的图像进⾏常规的图像的亮度和对⽐度的调整,并进⾏最近邻插值和双线性插值等算法将⽤户所选取的图像区域进⾏放⼤和缩⼩整数倍的和旋转操作,并保存,⽐较⼏种插值的效果,以及对图像进⾏直⽅图和直⽅图均衡并加⼊噪声进⾏对⽐,达到本次课程设计的⽬的关键词:MATLAB 亮度和对⽐度插值放⼤旋转噪声AbstractMATLAB is - set of high-performance numerical computation and visualization software, which combines numerical analysis, matrix computation, signal processing and graphics in one form - a convenient, user-friendly user environment.MATLAB is a powerful extension application in various fields to provide a basis by experts in various fields have been given a MATLAB toolbox, which are signal processing, control systems, neural networks, image processing support, robust control, nonlinearcontrol system design, optimization, wavelets, communications toolkit, which this kit to the various areas of research and engineering applications a powerful tool.With these "tools on the shoulders of giants," researchers at all levels can now be easily analyzed directly, calculation and design work, which greatly saves time.The training aims to strengthen the basis of a more comprehensive understanding of commonly used data analysis and processing principles and methods related to the use of simulation software.Images collected by conventional image brightness and contrast adjustments, and the nearest neighbor interpolation and bilinear interpolation algorithm to the user selected image area to zoom in and out several times and rotate the whole operation, and save, comparethe effect of several interpolation and the image histogram and histogram and compared with noise, to the purpose of this course design.Keywords: MATLAB brightness and contrast rotation interpolation noise amplification ⽬录1.MATLAB简介 (1)1.1 MATLA的基本⽤途 (1)1.2 MATLAB的语⾔特点 (1)1.3 MATLAB系统构成 (1)2.数据采集 (2)2.1图像的选取 (2)2.2 图像亮度和对⽐度的调整 (2)2.2.1 编辑M⽂件 (2)2.2.2 MATLAB⽀持的图像格式和类型 (3)2.2.3 图像的读取 (3)2.2.4调整图像亮度和对⽐度 (4)3.图像的⼏何操作 (6)3.1插补操作 (6)3.1.1 插补功能介绍 (6)3.1.2 插补具体操作 (6)3.2 放缩操作 (8)3.2.1放缩功能介绍 (8)3.2.2 具体操作 (9)3.3 旋转操作 (10)3.3.1 旋转功能介绍 (10)3.3.2 具体操作 (10)4.直⽅图统计 (12)4.1灰度图的获取 (12)4.1.1 灰度图的转换功能介绍 (12)4.1.2 具体操作 (12)4.2直⽅图以及直⽅图均衡 (13)4.2.1 直⽅图函数功能介绍 (13)4.2.2 直⽅图具体操作 (14)5.图像的噪声处理 (15)5.1添加噪声的功能介绍 (15)5.2添加噪声的具体操作 (16)6.总结(⼼得体会) (18)7.参考⽂献 (19)1.MATLAB简介1.1 MATLA的基本⽤途MATLAB是矩阵实验室(Matrix Laboratory)之意。

数字图像处理实验一图像的基本操作和基本统计指标计算实验报告

数字图像处理实验一图像的基本操作和基本统计指标计算实验报告

实验一图像的基本操作和基本统计指标计算一、实验目的熟悉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(编码方法)等。

(学习matlab基本实验) MATLAB图像基本操作命令

(学习matlab基本实验) MATLAB图像基本操作命令

实验一MATLAB图像基本操作命令一、实验目的本次实验是基础实验,旨在加强学生的实验操作水平和使用MTALB软件能力,包括以下几个部分:a)开始使用MA TLABb)显示图像,理解图像的模型c)使用图像的不同格式,理解图像压缩的意义d)对图像做简单的操作本次实验需要熟练使用以下几个MA TLAB命令:imread, imwrite, imshow,figure二、实验准备实验基于MA TLAB软件,实验课开始前安装好MA TLAB软件以及相关的实验数据三、实验步骤a)开始使用MA TLABMA TLAB软件安装好后在其安装目录下有一个work文件夹,是MA TLAB的默认工作目录。

将本目录下的实验图像拷入MA TLAB下的work文件夹内。

实验图像一文件夹中放置了作为本次实验素材的原始图像。

启动Matlab。

图1 MA TLAB启动后在图1所指示command window窗口中键入cd pic命令,如图2所示。

以后的操作都在”>>”后键入命令。

图2 MA TLAB启动后b)显示图象1.显示灰度图像命令格式Image=imread('灰度图像文件名');imshow(Image,[])此实验分两步完成,先用imread命令将图像文件读入图像像素矩阵Image,然后用imshow命令将该矩阵在屏幕上显示,如图3所示。

其中‘灰度图像文件名’必须是pic 文件夹中所包含灰度图像的名字。

例1Image=imread('aa.bmp ');imshow(Image,[]);图3为执行的结果。

图32.彩色图像显示和分解将三维像素值矩阵分解成三个矩阵,并将它们分别显示出来,可以看到RGB文件的三原色分解。

命令格式Image=imread('彩色图像文件名');imshow(Image,[]);imread和imshow也用来显示彩色图像,其中‘彩色图像文件名’必须是pic文件夹中所包含彩色图像的名字。

MATLAB实验一:图像的输入与输出

MATLAB实验一:图像的输入与输出

MATLAB实验一:图像的输入与输出实验目的本实验的目的是学习如何在MATLAB中进行图像的读取、显示和保存等基本操作,了解不同图像格式的特点和使用场景。

实验内容图像读取与显示在MATLAB中,可以通过imread()函数读取图像。

例如,读取一张名为“lena.png”的图像:lena = imread('lena.png');读取的图像将以矩阵的形式存储在lena变量中,可以通过imshow()函数将其显示:imshow(lena);执行以上代码,会打开一个名为“lena”的窗口,显示读取的图像。

除了常见的PNG格式外,MATLAB还支持读取JPG、BMP、TIFF等多种图像格式。

对于不同的格式,imread()函数可能需要不同的参数设置。

例如,对于JPG 格式的图像,可以通过指定“jpg”字符串来读取:lena_jpg = imread('lena.jpg', 'jpg');图像保存在MATLAB中,可以通过imwrite()函数将图像保存到文件中。

例如,将lena变量保存为PNG格式的文件:imwrite(lena, 'lena_copy.png');执行以上代码,会在当前文件夹生成一个名为“lena_copy.png”的文件,其中包含了lena变量所表示的图像。

与imread()函数类似,imwrite()函数也支持多种图像格式。

例如,将lena 图像保存为JPG格式:imwrite(lena, 'lena_copy.jpg', 'jpg');图像格式转换在MATLAB中,可以使用im2double()函数将图像转换为双精度浮点数格式,方便进行后续数学计算。

例如,将lena图像转换为双精度浮点数格式:lena_double = im2double(lena);同样地,im2uint8()函数可以将图像转换为8位无符号整数格式,方便进行图像处理。

使用Matlab技术进行图像处理的基本步骤

使用Matlab技术进行图像处理的基本步骤

使用Matlab技术进行图像处理的基本步骤使用Matlab进行图像处理的基本步骤在数字时代,图像处理成为了一个热门的话题,越来越多的人开始使用计算机进行图像处理。

在众多图像处理软件中,Matlab无疑是最受欢迎的之一。

它不仅提供了强大的图像处理功能,还提供了友好的用户界面,使得图像处理变得更加简单。

本文将介绍使用Matlab进行图像处理的基本步骤。

第一步:读入图像图像处理的第一步是读入待处理的图像。

Matlab提供了多种读取图像文件的函数,最常用的是imread函数。

其中,imread函数需要传入图像文件的路径作为参数,然后返回一个表示图像的矩阵。

例如,我们可以使用以下代码读入一张名为"image.jpg"的图像:```Matlabimage = imread('image.jpg');```第二步:显示图像读入图像后,我们通常需要将其显示在屏幕上,以便进一步的处理。

Matlab提供了imshow函数用于显示图像。

以下是显示图像的示例代码:```Matlabimshow(image);```通过调用imshow函数,Matlab会自动弹出一个窗口,将图像显示在其中。

第三步:图像预处理在进行进一步的图像处理之前,通常需要对图像进行一些预处理操作,以使后续处理更加准确。

常见的图像预处理操作包括灰度化、去噪和平滑等。

下面我们以灰度化为例进行说明。

灰度化是指将彩色图像转化为灰度图像,使得每个像素只有一个灰度值。

在Matlab中,我们可以使用rgb2gray函数将彩色图像转化为灰度图像。

以下是灰度化的示例代码:```Matlabgray_image = rgb2gray(image);```通过调用rgb2gray函数,我们可以将图像image转化为灰度图像,并保存在gray_image中。

第四步:图像处理经过预处理后,我们可以开始进行具体的图像处理操作。

Matlab提供了丰富的图像处理函数,涵盖了图像增强、图像滤波、边缘检测等多个领域。

用MATLAB做的图像基本处理

用MATLAB做的图像基本处理

用MATLAB做的图像基本处理MATLAB是一种用于科学计算、数据分析和可视化的编程语言和开发环境。

它在许多领域中被广泛地使用,包括工程、物理学、计算机科学等。

通过MATLAB,可以方便地对图像进行处理和分析。

本文介绍了如何使用MATLAB对图像进行基本处理。

这些处理包括图像的读取、显示、缩放、裁剪、旋转、翻转、颜色转换、灰度化、二值化、滤波等。

图像的读取和显示在MATLAB中,可以使用imread函数读取图像。

例如,下面的代码可以读取一张名为test.jpg的图像:I = imread('test.jpg');读取图像后,可以使用imshow函数显示图像。

例如,下面的代码可以显示上面读取的图像:imshow(I);图像的缩放和裁剪使用MATLAB可以方便地对图像进行缩放和裁剪。

缩放可以使用imresize函数,裁剪可以使用imcrop函数。

例如,下面的代码可以将图像I缩放为原来的一半并显示缩放后的图像:I2 = imresize(I, 0.5);imshow(I2);下面的代码可以将图像I的左上角截取出来并显示:J = imcrop(I, [11 size(I,2)/2 size(I,1)/2]);imshow(J);图像的旋转和翻转使用MATLAB可以方便地对图像进行旋转和翻转。

旋转可以使用imrotate函数,翻转可以使用flip函数。

例如,下面的代码可以将图像I逆时针旋转45度并显示旋转后的图像:I3 = imrotate(I, -45);imshow(I3);下面的代码可以将图像I水平翻转并显示翻转后的图像:I4 = flip(I, 2);imshow(I4);图像的颜色转换和灰度化使用MATLAB可以方便地对图像进行颜色转换和灰度化。

颜色转换可以使用imresize函数,灰度化可以使用rgb2gray函数。

例如,下面的代码可以将彩色图像I转换为灰度图像并显示灰度图像:I5 = rgb2gray(I);imshow(I5);图像的二值化和滤波使用MATLAB可以方便地对图像进行二值化和滤波。

实验1 Matlab基本操作

实验1 Matlab基本操作

实验1 Matlab基本操作一、实验目的1、熟悉MATLAB的实验环境;2、了解MATLAB产品族及主要功能;3、掌握MATLAB通用指令和常用快捷键;4、掌握MATLAB帮助系统。

二、实验原理MATLAB环境是一种为数值计算、数据分析和图形显示服务的交互式的环境。

MATLAB有3种窗口,即:命令窗口(The Command Window)、m-文件编辑窗口(The Edit Window)和图形窗口(The Figure Window),而Simulink另外又有Simulink模型编辑窗口。

1、命令窗口(The Command Window)当MATLAB启动后,出现的最大的窗口就是命令窗口。

用户可以在提示符“>>”后面输入交互的命令,这些命令就立即被执行。

在MATLAB中,一连串命令可以放置在一个文件中,不必把它们直接在命令窗口内输入。

在命令窗口中输入该文件名,这一连串命令就被执行了。

因为这样的文件都是以“.m”为后缀,所以称为m-文件。

2、m-文件编辑窗口(The Edit Window)我们可以用m-文件编辑窗口来产生新的m-文件,或者编辑已经存在的m-文件。

在MATLAB主界面上选择菜单“File/New/M-file”就打开了一个新的m-文件编辑窗口;选择菜单“File/Open”就可以打开一个已经存在的m-文件,并且可以在这个窗口中编辑这个m-文件。

3、图形窗口(The Figure Window)图形窗口用来显示MATLAB程序产生的图形。

图形可以是2维的、3维的数据图形,也可以是照片等。

三、系统的在线帮助help 命令①当不知系统有何帮助内容时,可直接输入help以寻求帮助:>> help(回车)②当想了解某一主题的内容时,如输入:>> help syntax (了解Matlab的语法规定)③当想了解某一具体的函数或命令的帮助信息时,如输入:>> help sqrt (了解函数sqrt的相关信息)lookfor命令现需要完成某一具体操作,不知有何命令或函数可以完成,如输入:>> lookfor line (查找与直线、线性问题有关的函数)四、实验内容1、运行 MATLAB 软件,观察 MATLAB 桌面环境的组成部分,设置不同的显示方式以及字体;2、观察 Launch Pad 中的内容,了解 MATLAB 产品族和常用工具箱;3、在命令窗口中输入demo,观察 MATLAB 自带的演示程序;4、练习使用 MATLAB 通用指令clear,clc, exit,quit,dir,ls,what,diary,format;5、在命令窗口或 M 文件编辑器中练习如下快捷键的使用:1) 上下方向键(直接使用和索引使用两种方式);2) Tab键;3) Home键;4) End键;5) Ctrl+R;6) Ctrl+T;7) Ctrl+I。

matlab图像处理实验报告

matlab图像处理实验报告

matlab图像处理实验报告Matlab图像处理实验报告引言:图像处理是一门研究如何对图像进行获取、存储、传输、处理和显示的学科。

而Matlab作为一种强大的科学计算软件,被广泛应用于图像处理领域。

本实验报告旨在介绍Matlab在图像处理中的应用。

一、图像获取与显示在图像处理的第一步,我们需要获取图像并进行显示。

Matlab提供了丰富的函数和工具箱来实现这一目标。

我们可以使用imread函数来读取图像文件,imwrite函数来保存图像文件。

而imshow函数则可以用于图像的显示。

通过使用这些函数,我们可以轻松地加载图像文件,并在Matlab中显示出来。

二、图像的基本操作在图像处理中,我们经常需要对图像进行一些基本的操作,如图像的缩放、旋转、裁剪等。

Matlab提供了一系列的函数来实现这些操作。

通过imresize函数,我们可以实现图像的缩放操作。

而imrotate函数则可以用于图像的旋转。

此外,imcrop函数可以用于图像的裁剪。

三、图像的滤波处理图像的滤波处理是图像处理中的重要内容之一。

Matlab提供了多种滤波函数,如均值滤波、中值滤波、高斯滤波等。

这些滤波函数可以用于图像的平滑处理和噪声的去除。

通过调用这些函数,我们可以有效地改善图像的质量。

四、图像的边缘检测边缘检测是图像处理中的一项重要任务,它可以用于提取图像中的边缘信息。

在Matlab中,我们可以使用多种边缘检测算法来实现这一目标,如Sobel算子、Prewitt算子、Canny算子等。

这些算子可以有效地提取图像中的边缘,并将其显示出来。

五、图像的特征提取图像的特征提取是图像处理中的关键步骤之一,它可以用于提取图像中的重要特征。

在Matlab中,我们可以使用各种特征提取算法来实现这一目标,如颜色直方图、纹理特征、形状特征等。

通过提取这些特征,我们可以对图像进行分类、识别等任务。

六、图像的分割与识别图像的分割与识别是图像处理中的热门研究方向之一。

MATLAB数字图像处理实验--图像基本运算

MATLAB数字图像处理实验--图像基本运算

MATLAB数字图像处理实验--图像基本运算一、实验目的1.理解图像点运算、代数运算、几何运算的基本定义和常见方法;2.掌握在MTLAB中对图像进行点运算、代数运算、几何运算的方法;3.掌握在MATLAB中进行插值的方法4.运用MATLAB语言进行图像的插值缩放和插值旋转5.进一步熟悉了解MATLAB语言的应用。

二、实验设备与软件1.PC计算机系统2.MATLAB软件,包括图像处理工具箱(Image Processing Toolbox)3.实验图片三、实验内容及结果分析3.1图像的点运算选择pout.tif作为实验图像,实验原理及内容参照《MATLAB图像处理编程及应用》程序代码:I=imread('pout.tif');figure;subplot(1,3,1);imshow(I);title('原图');J=imadjust(I,[0.3;0.6],[0.1;0.9]);subplot(1,3,2);imshow(J);title('线性扩展');I1=double(I);I2=I1/255;C=2;K=C*log(1+I2);subplot(1,3,3);imshow(K);title('非线性扩展');M=255-I;figure;subplot(1,3,1);imshow(M);title('灰度倒置');N1=im2bw(I,0.4);N2=im2bw(I,0.7);subplot(1,3,2);imshow(N1);title('二值化阈值0.4');subplot(1,3,3);imshow(N2);title('二值化阈值0.7');执行结果:原图线性扩展非线性扩展灰度倒置二值化阈值0.4二值化阈值0.7实验1结果图3.2图像的代数运算选择两幅图像,一幅是原图像,一幅为背景图像,采用正确的图像代数运算方法,分别实现图像叠加、混合图像的分离和图像的局部显示效果。

数字图像处理实习1—Matlab图像处理初步

数字图像处理实习1—Matlab图像处理初步

实验1——Matlab图像处理初步
实验目的:熟悉Matlab语言关于图像处理的基本操作
实验内容:练习imread、imshow、iminfo、imwrite、subplot、for等命令以及矩阵计算有关命令。

实验要求:
1、读取并显示cameraman.tif图像(提示:imread)。

2、将图像中间的1/3部分(如图)分别作如下处理,其余部分不变
a) 每个像素点的值都乘以2,即f(x,y)=2*f(x,y),显示处理前后的图像(提
示:imshow),同一个图像窗口左右显示(提示:subplot),左边显示原
始图像,右边显示处理后图像,处理后图像保存为cameraman1.bmp(提
示:imwrite)
b) 每个像素点取反色,即f(x,y)=255-f(x,y);显示处理前后的图像,同一个
图像窗口上下显示(提示:subplot),上边显示原始图像,下边显示处理
后图像,处理后图像保存为cameraman2.bmp(提示:imwrite)
3、撰写实验报告并附上所用程序和结果。

f=imread('cameraman.tif');
[m n]=size(f);
g=f;
r=round(m/3);
c=round(n/3);
for i=r:2*r
for j=c:2*c
g(i,j)=2*f(i,j);
end
end
subplot(2,1,1),imshow(f);
subplot(2,1,2),imshow(g);
imwrite(g,'cameraman1.bmp','bmp');
2013-12-16。

MATLAB图像处理命令及图形基本操作实验报告

MATLAB图像处理命令及图形基本操作实验报告

实验(一)常用MATLAB图像处理命令及图形基本操作
end
end
end
for i=1:m
for j=1:n
out(i,j,1)=R(i,j);
% imshow(out)
out(i,j,2)=G(i,j);
out(i,j,3)=B(i,j);
end
end
out=out/256;
figure(1),imshow(out)
%imshow(out)
size(out)
imwrite(out,'PseudoColor.tiff');
end
4、读入一幅RGB图像,变换为灰度图像和二值图像,并在同一个窗口内分成三个子窗口来分别显示RGB图像和灰度图像,注上文字标题。

RGB=imread('f:\1.jpg')
gray = rgb2gray(RGB)
I = im2bw(RGB,0.5)
subplot(3,1,1);imshow(a);title('原图像');
subplot(3,1,2);imshow(i);title('灰度图像');colormap(gray);
subplot(3,1,3);imshow(I);title('二值图像');
实验结果如图所示:
四、实验总结:
Imread 是读入文件的操作代码,subplot是将多个图画到一个平面上的工具本次实验在老师的带领下熟悉了matlab软件的具体操作
通过书写代码,操作程序实现了灰度图像转换为伪彩色图像;
通过书写代码实现了读入一幅RGB图像,并将其变换为灰度图像和二值图像,然后在同一个窗口中显示RGB图像和灰度图像。

matlab 图像 实验报告

matlab 图像 实验报告

matlab 图像实验报告Matlab图像实验报告引言:Matlab是一种强大的计算机编程语言和开发环境,广泛应用于科学计算、数据分析和图像处理等领域。

本实验报告旨在介绍基于Matlab的图像处理实验,包括图像读取、图像处理和图像显示等方面的内容。

一、图像读取图像读取是图像处理的第一步,通过读取图像可以获取图像的像素信息。

在Matlab中,可以使用imread函数来读取图像文件。

例如,通过以下代码可以读取一张名为"image.jpg"的图像:```matlabimage = imread('image.jpg');```二、图像处理1. 灰度化处理灰度化处理是将彩色图像转换为灰度图像的过程。

在Matlab中,可以使用rgb2gray函数来实现灰度化处理。

以下是一个简单的示例:```matlabgray_image = rgb2gray(image);```2. 图像增强图像增强是通过一系列的处理方法来改善图像的质量和视觉效果。

在Matlab中,有多种图像增强方法可供选择,如直方图均衡化、滤波和边缘检测等。

以下是一个直方图均衡化的示例:```matlabenhanced_image = histeq(gray_image);```3. 图像分割图像分割是将图像划分为若干个区域的过程,每个区域具有相似的特征。

在Matlab中,可以使用各种图像分割算法,如阈值分割和基于区域的分割。

以下是一个简单的阈值分割示例:```matlabthreshold = graythresh(enhanced_image);binary_image = imbinarize(enhanced_image, threshold);```三、图像显示图像显示是将处理后的图像展示给用户的过程。

在Matlab中,可以使用imshow函数来显示图像。

以下是一个简单的示例:```matlabimshow(binary_image);```四、实验结果与讨论本次实验中,我们选择了一张名为"image.jpg"的彩色图像进行处理。

实验一 Matlab_图像处理基本操作

实验一 Matlab_图像处理基本操作

实验一Matlab 图像处理基本操作和付立叶变换一、matlab基本操作1. 显示图像>> I1=imread('D:\图像\LENA.BMP');>> imshow(I1);>> I2=imread('D:\图像\***.BMP');>> imshow(I2);2、检查内存(数组)中的图像:>> whos3、保存图像:>> imwrite(I2,'lena_2G.png'); % 将图像由原先的bmp格式另存为png格式4、多幅图像显示>> I1=imread('D:\图像\LENA.BMP');>> figure //出现图形显示窗口>> subplot(1,2,1),imshow(I1);>> I2=imread('D:\图像\**.BMP');>> subplot(1,2,2),imshow(I2);二、傅里叶变换1.目的:a、理解傅里叶变换的原理b、掌握傅里叶变换的性质2.实验步骤:a. 首先构造一幅黑白二值图像,在128×128的黑色背景中心产生一个4×4的白色方块,对其进行傅里叶变换;(Matlab中用fft2实现2D傅里叶变换)b.把低频分量移到图象中心,而把高频分量移到四个角上;(方法有两种:其一,在FT以前对测试图象逐点加权(-1)^(i+j);其二,利用FFTSHIFT函数);c.利用图象增强中动态范围压缩的方法增强2DFT;(Y=C*log(1+abs(X)));d.构造一幅黑白二值图像,在128×128的黑色背景中令第32行至36行、第32列至第36列的值为1(即产生一个4×4的白色方块),对其进行傅里叶变换;e. 将上图旋转300,再进行傅里叶变换 (imrotate )f. 构造二幅黑白二值图像,在128×128的黑色背景中分别令第60行至68行、第60列至第68列的值为1,第64行至65行、第64列至第65列的值为1产生两幅图像,分别对这两幅图像进行傅里叶变换3、原理分析、技术讨论、回答问题a. 对于第二幅图像(第一步与第四步图像的比较),说明FOURIER 变换具有以下性质:)//(20000),(),(N vy M ux j e v u F y y x x f +-⇔--πb. 对于第三幅图像(第一步与第五步图像的比较),说明FOURIER 变换具有以下性质:θcos r x = θs i n r y = αωc o s =u αωs i n=v ),(),(00θαωθθ+⇔+F r fc. 对于第四幅图像(第一步与第六步图像的比较),说明FOURIER 变换具有以下性质:)/,/(||1),(b v a u F ab by ax f = 4、结果如下六、M文件如下:a=zeros(128,128);a(63:66,63:66)=1;A=fft2(a);b=fftshift(A);for i=1:128for j=1:128B(i,j)=log(1+abs(A(i,j)));endendh=zeros(128,128);h(32:36,32:36)=1;H=fft2(h);h1=imrotate(h,30);H1=fft2(h1);i=zeros(128,128);i(60:68,60:68)=1;I=fft2(i);j=zeros(128);j(64:65,64:65)=1;J=fft2(j);figure;subplot(221),imshow(a);title('原图');subplot(222),imshow(A);title('FT');subplot(223),imshow(b);title('低中高角FT'); subplot(224),imshow(B);title('增强2DFT');figure;subplot(221);imshow(a);title('Step 1原图'); subplot(222);imshow(A);title('Step 1FT'); subplot(223);imshow(h);title('Step 4原图'); subplot(224);imshow(H);title('Step 4FT');figure;subplot(221),imshow(a);title('Step 1原图'); subplot(222),imshow(A);title('Step 1FT'); subplot(223),imshow(h1);title('Step 5原图'); subplot(224),imshow(H1);title('Step 5FT');figure;subplot(321);imshow(a);title('Step 1原图'); subplot(322);imshow(A);title('Step 1FT'); subplot(323),imshow(i);title('Step 6原图1'); subplot(324),imshow(I);title('Step 6原图1FT'); subplot(325),imshow(j);title('Step 6原图2'); subplot(326),imshow(J);title('Step 6原图2FT');。

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

第1次实验基于MATLAB的图像基本操作
二、实验内容和要求:
1.实现图像Baboon.bmp(MATLAB自带)的读入(可使用imread)和显示(可使用imshow)操作,代码加上足够的注释,需要建立一个M文件实现。

I=imread('F:\标准图像\Baboon.bmp');//读入图像
imshow(I);//显示图像
2.编程实现将一幅RGB图像转换为二值图像,并在一个窗口同时显示处理过程中得到的每一个图像和原图像,同时需要给图像加上标题。

(原始数据可以是任意的RGB图像)。

需要新建一个M文件实现。

figure,subplot(1,3,1),imshow(I(:,:,1)),title('R');
subplot(1,3,2),imshow(I(:,:,2)),title('G');
subplot(1,3,3),imshow(I(:,:,3)),title('B');
3.计算图象统计参数:
读取图像(文件名为‘cameraman.tif’);
最大值
最小值
均值
K=imread('cameraman.tif');
d_max=max(K(:))
d_min=min(K(:))
d_mean=mean(K(:))
4.利用帮助系统了解im2double,imresize,image函数的作用和语法,并利用这些函数处理已知图像pout.tif(MATLAB自带)并显示处理前后效果。

J=imread('pout.tif');
J1=im2double(J);
figure,subplot(1,2,1),imshow(J),title('Before')
subplot(1,2,2),imshow(J1),title('After')
J2=imresize(J,0.3);
figure,subplot(1,2,1),imshow(J),title('Before')
subplot(1,2,2),imshow(J2),title('After')
figure,subplot(1,2,1),imshow(J),title('Before')
subplot(1,2,2),image(J);title('After')
1。

相关文档
最新文档