《图形图像显示》PPT课件.ppt

上传人:tia****nde 文档编号:12945827 上传时间:2020-06-04 格式:PPT 页数:26 大小:252.31KB
返回 下载 相关 举报
《图形图像显示》PPT课件.ppt_第1页
第1页 / 共26页
《图形图像显示》PPT课件.ppt_第2页
第2页 / 共26页
《图形图像显示》PPT课件.ppt_第3页
第3页 / 共26页
点击查看更多>>
资源描述
第11章图形图像显示,图形图像显示是将连续数据或者离散进行数据可视化的一种重要处理方法。MATLAB是基于向量(数组)的高级程序语言,从本质上,MATLAB就可以提供对图形和图像处理提供有效的技术支持。本章对MATLAB的图像处理,图像格式与MATLAB图像类型,MATLAB图像显示方法和MATLAB图形显示命令等基础内容进行了简单介绍,并介绍了VC+调用MATLAB函数进行绘图和图像处理的方法,最后给出了综合实例。,11.1VC+和MATLAB图形图像处理混合编程原则,图形图像处理的基本内容包括:以二维和三维的方式显示图形。对不同类型的图象进行读写和显示。处理的图像类型包括二进制图像、灰度图像、索引图像、RGB图像和磁盘图像等。,11.2.1VC+的图像处理方法,VC+处理图形图像比较复杂,在VC+中提供了操作图像的基础COM对象类IPicture,如果需要读取bmp,jpg等图像文件,则需要编写代码实现图像的打开(读取),并在VC+运行界面的视图区显示。,11.2.2VC+图形处理方法,在VC+MFC中没有提供现成的类或函数实现正玹,余玹曲线等曲线的绘制功能。通常需要使用类似的函数进行变通实现,可以使用折线函数PolylineTo(),Polyline()等函数。函数的基本语法格式为:BOOLPolylineTo(constPOINT*lpPoints,intnCount);BOOLPolyline(LPPOINTlpPoints,intnCount);,11.2.3VC+和MATLAB图形图像处理的接口设计,VC+和MATLAB混合编程进行图形图像处理,通常采用Matcom方法进行混合编程,即将MATLAB的源代码译成同等功能的C+源代码。然后在具体的工程中包含必要的lib,dll以及h文件,就可以完全脱离MATLAB环境实现对MATLAB函数和过程的有效调用。,11.3MATLAB图像处理基础,本节主要介绍如何显示图像,查看内存中的图像,图像灰度分布直方图均衡化,图像文件的保存和查看图像文件中的内容等内容。,11.3.1显示图像,为了显示图像,首先清除MATLAB所有的工作平台变量,关闭已打开的图形窗口。其程序代码如下:clear;closeall;,11.3.2查内存中的图像,使用whos命令来查看图像数据I是如何存储在内存中,其命令格式为:whos执行后MATLAB中会得到如下图像的信息:NameSizeBytesClassI29124069840uint8arrayGrandtotalis69840elementsusing69840bytes,11.3.3图像灰度分布直方图均衡化,为了观察图像当前状态下亮度分布情况,可以通过使用imhist()函数创建描述该图像灰度分布的直方图。调入MATLAB自带的图像文件pout.tif,避免直方图覆盖图像数组I的显示结果。,11.3.4图像文件的保存,将前面进行灰度值处理后的图像I2保存到磁盘上。若希望将该图像保存为PNG格式的图像文件,可以使用imwrite()函数并指定一个文件名,该文件的扩展名为.png。其命令格式为:imwrite(I2,pout2.png);,11.3.5查新生成文件的内容,利用imfinfo()函数可以观察上述语句将什么内容保存在磁盘上。需要注意的是:在imfinfo()函数语句行末尾不要加上分号,以保证MATLAB能够显示图像输出结果;另外,要保证此时的路径与调用imwrite()函数时的路径一致。使用方法为,imfinfo(pout2.png),11.4.1常用图像格式,图像格式指的是存储图像采用的文件格式。不同类型的操作系统下使用不同的图像处理软件,所支持的图像格式都有可能不同。在实际应用中经常会遇到的图像格式包括TIF、GIF、TIFF、PCX、WMF、JPEG、PSD、PCD等。,11.4.2MATLAB图像类型,图像类型是指数组数值与像素颜色之间定义的关系,它与图像格式概念有所不同,在MATLAB图像处理工具箱中,有五种类型的图像1.二进制图像2.索引图像3.多帧图像4.灰度图像5.RGB图像,11.4.3MATLAB图像类型转换,MATLAB图像处理工具箱支持索引图像、灰度图像、二进制图像和真色彩(RGB)图像等基本图像类型。这些图像类型可以根据需要进行相互转换,MATLAB中图像类型的转换主要通过函数来实现,11.5MATLAB图像显示命令,图像的显示过程就是将图像从一组离散数据还原为一幅可见的图像。图像的显示是提高图像处理分析性能非常有用的一个手段,通过图像的显示,可以监视图像处理过程,并与处理分析交互地控制处理分析过程。图像显示最重要的特性是图像的大小、光度分辨率、灰度线性、平坦能力和噪声特性等,这些特性将共同决定一个数字图像显示系统的质量,以及其在特定应用中的适用性等性能指标。,11.5.1MATLAB图像的读写和显示,1.读写图像文件2.图像的显示函数,11.5.2二进制图像的显示方法,在MATLAB中,二进制图像是一个逻辑类,仅包括0和1两个数值。像素0显示为黑色,像素1显示为白色。显示时,也可通过NOT()命令,对二进制图象进行取反,使数值0显示为白色;1显示为黑色。Imshow()函数显示二进制位图的语法如下:imshow(BW),11.5.3灰度图像的显示方法,存储灰度图像只需要一个数据矩阵进行显示。数据类型可以是double,0,1;也可以是uint8。调用imshow函数显示灰度图像的语法如下:imshow(I)imshow(I,N),11.5.4索引图像的显示方法,索引图像包含两个结构:一个是调色板,另一个是图像数据矩阵。调色板是一个有3列和若干行的色彩映象矩阵,矩阵每行代表一种颜色,3列分别代表红、绿、蓝色强度的双精度数。利用imshow()函数显示MATLAB的索引图像时,可以同时指定图像的数据矩阵和颜色映射表,语法格式为,imshow(X,map)其中,对于X中的每个像素,imshow都将其显示为存储在map映射表矩阵的相应的行所对应的颜色。,11.5.5RGB图像的显示方法,1.image(RGB)2.imshow(RGB),11.5.6磁盘图像的直接显示,可以使用以下命令直接显示硬盘上的图像文件,语法格式为,imshowfilename其中,参数filename为要显示的图像文件的文件名。如果图像是多帧的,那么imshow()函数将仅显示第一帧。但需注意,在使用这种方式时,图像数据没有保存在MATLAB的工作空间中。如果希望将图像装入工作空间中,需使用getimage()函数从当前的句柄图形图像对象中获取图像数据,其简单的语法形式为:rgbgetimage;,11.6MATLAB图形显示命令,MATLAB提供了很多图形显示命令。用户可以根据需要选择不同的命令进行二维图形、三维图形、以及饼图,直方图等特殊图形的绘制,一些图形显示命令的功能简介如下,具体的使用语法格式可以参考MATLAB的帮助文件。,11.7VC+和MATLAB图形图像处理应用实例,本节给出了VC+中调用MATLAB函数画图、利用Matcom绘制动态曲线以及二维和三维曲线绘制综合应用的三个实例。,11.7.1VC+中调用MATLAB函数画图,通过VC+编程调用MATLAB函数进行绘图主要有两种方法,一种方法是在VC+中调用MATAB生成的COM组件,调用COM组件的方法,第二种方法是通过MATCOM的方法调用MATLAB函数的方法。第一种方法在第七章已经介绍并给出了实例,本节将介绍第二种方法。,11.7.2利用Matcom绘制动态曲线,在实际的科学研究和工程应用中,绘制曲线图形通常会涉及到静态曲线和动态曲线,静态曲线由于函数关系明确,规律明显,可以直接用公式进行表述,所以可以使用MATLAB中的plot()函数,根据自变量和因变量之间的关系绘制出静态曲线,如正玹曲线和余玹曲线等。但是另外一种类型的曲线,如工程采样信号随着不同时刻,波形发生变化,通常成为动态曲线,本节将介绍如何利用Matcom绘制动态曲线。,11.7.3二维和三维曲线绘制综合应用,在工程应用中,一些绘图系统经常会涉及二维和三维曲线的绘制和显示。例如机械计算机辅助设计及制造系统(CAD/CAM),建筑设计系统,地理信息系统(GIS)等等。本实例作为一个图形绘制和显示的综合应用实例,介绍如何采用MATCOMC+矩阵库的图形函数进行各种类型的数据显示功能,具体的功能包括三维数据、等高线显示,二维数据的显示等等。,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!