基于MFC的图片浏览器的设计与实现
以下是资料介绍,如需要完整的请充值下载.
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
1.无需注册登录,支付后按照提示操作即可获取该资料.
2.资料以网页介绍的为准,下载后不会有水印.资料仅供学习参考之用.
密 惠 保
资料介绍:
一、选题的目的和意义
图像是现代信息社会中最基本的信息,它使信息变得栩栩如生,更加符合人们的日常交流习惯,因此它成为人类获取和交换信息的主要来源。如今数字图像处理的应用日益广泛,逐步成为信息科学、工程学、医学、生理学、遥感技术、地理学甚至社会科学等许多学科的重要基础,同时作为一种实用技术广泛应用于军事、气象、交通、探矿、水利、农业甚至娱乐等领域。尤其是价格低廉的高性能计算机和诸如数码相机及扫描仪这样的图像采集设备出现后,数字图像处理技术被大量的应用到影视、游戏等公众及娱乐领域,与人类的生活密切相关。
所谓图像处理技术包括有数据的采集、编码、压缩、传播等技术,而在不同的系统上和不同的软件中采用不同的图像表示方式,即以不同的图像格式,来表示数字图像。因此,一个通用的图像处理软件应该能支持多种不同的图像格式,至少应能支持常用的几种图像格式。本设计所实现的图片浏览软件拟支持以下几种图像格式:BMP、PCX、TGA、JPEG、GIF。这几种图像格式均为在图像处理领域及实际应用中广泛使用的图像格式。
因此本选题具有较好的实用价值和意义。
二、国内外的发展现状、趋势
图形、图象是人类最容易接收的信息媒体。中国有句古语:“百闻不如一见”,这说明图形、图象也是信息量极其丰富的媒体,一幅图画可以形象、生动、直观地表现出大量的信息,具有文字和声音所不可比拟的优点。
计算机图形图像系统的发展经历了初创、发展、普及和实用化四个时期,初创期开始于20世纪于60年代,当时大多采用中、大型机进行处理。图形用矢量型随机扫描显示,图像用像素型光栅扫描显示,理论技术研究的重点放在处理算法上。
20世纪70年代进入发展期,开始大量采用中小型机来进行处理,图形处理也逐渐改用光栅扫描显示,与此同时,图形系统大量用于电气、机械和建筑CAD,并确立了三维图形算法。特别是在这一时期出现了CT和卫星遥感图像,对图形图像处理技术的发展和应用起到了很好的促进作用。到了20世纪80年代,图形图像处理技术进入普及期。此时的微型机已经能够担当起图形图像处理的任务,而且无论是图形还是图像都采用了光栅扫描显示。20世纪90年代是图形图像技术的实用化时期,许多高分辨率的三维彩色活动图形图像在各类应用领域中出现,如电视会议、视频点播和影视制作等。处理信息量巨大,要求处理速度极高,实时产生高质量的图形图像是我们不断的追求目标。
近三十年来,数字图像处理技术已迅速发展成为一门独立而有强大生命力的新兴学科。随着计算机技术和半导体工业的发展,数字图像处理技术将更加迅速向广度和深度发展,图像处理的应用领域必然涉及到人类生活和工作的方方面面。
1.航天和航空技术方面的应用
数字图像处理技术在航天和航空技术方面的应用,例如,JPL对月球、火星照片的处理之外,另一方面的应用是在飞机遥感和卫星遥感技术中。许多国家每天派出很多侦察飞机对地球上有兴趣的地区进行大量的空中摄影。对由此得来的照片进行处理分析,以前需要雇用几千人,而现在改用配备有高级计算机的图像处理系统来判读分析,既节省人力,又加快了速度,还可以从照片中提取人工所不能发现的大量有用情报。从60年代末以来,美国及一些国际组织发射了资源遥感卫星(如LANDSAT系列)和天空实验室(如SKYLAB),由于成像条件受飞行器位置、姿态、环境条件等影响,图像质量总不是很高。因此,以如此昂贵的代价进行简单直观的判读来获取图像是不合算的,而必须采用数字图像处理技术。如 LANDSAT系列陆地卫星,采用多波段扫描器(MSS),在900km高空对地球每一个地区以18天为一周期进行扫描成像,其图像分辨率大致相当于地面上十几米或100米左右(如1983年发射的LANDSAT-4,分辨率为30m)。这些图像在空中先处理(数字化、编码)成数字信号存入磁带中,在卫星经过地面站上空时,再高速传送下来,然后由处理中心分析判读。这些图像无论是在成像、存储、传输过程中,还是在判读分析中,都必须采用很多数字图像处理方法。现在世界各国都在利用陆地卫星所获取的图像进行资源调查(如森林调查、海洋泥沙和渔业调查、水资源调查等)、灾害检测(如病虫害检测、水火检测、环境污染检测等)、资源勘察(如石油勘查、矿产量探测、大型工程地理位置勘探分析等)、农业规划(如土壤营养、水份和农作物生长、产量的估算等)、城市规划(如地质结构、水源及环境分析等)。我国也陆续开展了以上诸方面的一些实际应用,并获得了良好的效果。在气象预报和对太空其他星球研究方面,数字图像处理技术也发挥了相当大的作用。
2.生物医学工程方面的应用
数字图像处理在生物医学工程方面的应用十分广泛,而且很有成效。除了上面介绍的CT技术之外,还有一类是对医用显微图像的处理分析,如红细胞、白细胞分类、染色体分析、癌细胞识别等。此外,在X光肺部图像增晰、超声波图像处理、心电图分析、立体定向放射治疗等医学诊断方面都广泛地应用图像处理技术。
3.通信工程方面的应用
当前通信的主要发展方向是声音、文字、图像和数据结合的多媒体通信。具体地讲是将电话、电视和计算机以三网合一的方式在数字通信网上传输。其中以图像通信最为复杂和困难,因图像的数据量十分巨大,如传送彩色电视信号的速率达100Mbit/s以上。要将这样高速率的数据实时传送出去,必须采用编码技术来压缩信息的比特量。从一定意义上讲,编码压缩是这些技术成败的关键。除了已应用较广泛的熵编码、DPCM编码、变换编码外,目前国内外正在大力开发研究新的编码方法,如分行编码、自适应网络编码、小波变换图像压缩编码等。
4.工业和工程方面的应用
在工业和工程领域中图像处理技术有着广泛的应用,如自动装配线中检测零件的质量、对零件进行分类、印刷电路板疵病检查、弹性力学照片的应力分析、流体力学图片的阻力和升力分析、邮政信件的自动分拣、在一些有毒或放射性环境内识别工件及物体的形状和排列状态、先进的设计和制造技术中采用工业视觉等。其中值得一提的是研制具备视觉、听觉和触觉功能的智能机器人,将会给工农业生产带来新的激励,目前已在工业生产中的喷漆、焊接、装配中得到有效的利用。
5.军事公安方面的应用
在军事方面图像处理和识别主要用于导弹的精确末制导,各种侦察照片的判读,具有图像传输、存储和显示的军事自动化指挥系统、飞机、坦克和军舰模拟训练系统等;公安业务图片的判读分析、指纹识别、人脸鉴别、不完整图片的复原以及交通监控、事故分析等。目前已投入运行的高速公路不停车自动收费系统中的车辆和车牌的自动识别都是图像处理技术成功应用的例子。
6.文化艺术方面的应用
目前这类应用有电视画面的数字编辑、动画的制作、电子图像游戏、纺织工艺品设计、服装设计与制作、发型设计、文物资料照片的复制和修复、运动员动作分析和评分等,现在已逐渐形成一门新的艺术——计算机美术。
三、课题研究的基本内容
该课题的设计目的是为了将专业知识应用于实践,同时掌握一些图像处理的基本知识和方法,为以后打下良好的基础及做必要的知识储备。
其建设目标为设计一个通用的图像查看和浏览软件,该软件能支持多种不同的图像格式,如BMP、PCX、TGA、JPEG、GIF等。这几种图像格式均为在图像处理领域及实际应用中广泛使用的图像格式。该软件能实现对图片进行读、写、显示等功能,以及图像处理中一些常用的变换算法,如图像的放大、缩小、旋转及百叶窗、马赛克等显示特效,并将这些功能集成。
四、研究内容及拟采用的方法和手段
针对以上情况,需要解决的关键性技术问题有:
(1)研究各个图像格式的编码及解码方法。由于图像质量的提高是建立在图像数据增大的基础上的,而图像数据量的增大将不可避免地减低图像处理的速度,并且给存储和传递带来困难。因此,如何有效地控制数字图像的存储量已成为数字图像处理的一项重要课题。数据压缩技术是控制数据量的基本技术。所谓数据压缩,就是用更少的数据位存储相同容量的信息,目的是更高效地存储信息。各种图像格式都可以采用一种,甚至多种不同的数据压缩算法来压缩数据量,因此图像格式和压缩算法是密切相关的。而开发图像处理软件也应首先了解图像的编码及解码方法。
(2)在Windows环境下,目前比较流行的可视化开发工具主要有:Visual C++、Visual Basic、C++
Builder、Delphi、Power Builder及JBuilder等。而本软件采用Microsoft Visual C++ 6.0作为开发工具,并使用MFC Application Framework作为本软件的基本架构。采用C++来进行图像编程的主要原因是,与Java和C#等现代编程语言相比,C++在程序运行的效率、内存使用的可控性和编程的灵活性上具有优势。因此本设计使用Microsoft Visual C++ 6.0作为软件的开发平台。
(3)针对不同格式的图像编码与解码方法,设计出不同的解码模块,实现对图片进行读、写、显示及转换等功能。
(4)利用图像处理中一些常用的变换算法,实现图像的放大、缩小、旋转及百叶窗、马赛克等显示特效,并将这些功能集成。