傻大方


首页 > 学习 >

基于VC++的图像融合技术的实现( 二 )

傻大方摘要:【基于VC++的图像融合技术的实现( 二 )|摘要近年来|图像融合已成为图】国内外在图像融合的不同层次上开展了大量的模型和算法的研究,取得了很多宝贵的研究成果,涌现出大量文献,但由于系统介绍图像融合理论、方法和应...



按关键词阅读:


国内外在图像融合的不同层次上开展了大量的模型和算法的研究,取得了很多宝贵的研究成果,涌现出大量文献,但由于系统介绍图像融合理论、方法和应用的书籍非常少,使很多刚刚踏入这一研究领域的初学者感到学习起来相当困难,这也不利于图像融合研究和应用的进一步普及和深人发展 。
1
第1章面向对象技术与MFC概述
1.1面向对象技术
面向对象技术是一种以对象为基础,以事件或消息来驱动对象执行处理的程序设计技术 。它以数据为中心而不是以功能为中心来描述系统,数据相对于功能而言具有更强的稳定性 。它将数据和对数据的操作封装在一起,作为一个整体来处理,采用数据抽象和信息隐蔽技术,将这个整体抽象成一种新的数据类型——类,并且考虑不同类之间的联系和类的重用性 。类的集成度越高,就越适合大型应用程序的开发 。另一方面,面向对象程序的控制流程由运行时各种事件的实际发生来触发,而不再由预定顺序来决定,更符合实际 。事件驱动程序的执行围绕消息的产生与处理,靠消息循环机制来实现 。在实际编程时可以采用搭积木的方式来组织程序,站在“巨人”的肩上实现自己的目标 。面向对象程序的设计方法使得程序结构清晰、简单,提高了代码的重用性,有效减少了程序的维护量,提高了软件的开发效率 。
面向对象技术强调在软件开发过程中面向客观世界或问题域中的事物,采用人类在认识客观世界的过程中普遍运用的思维方法,直观、自然地描述客观世界中的有关事物 。面向对象技术的基本特征主要有抽象性、封装性、继承性和多态性 。
在结构上,面向对象程序与面向过程程序有很大不同 。面向对象程序由类的定义和类的使用两部分组成:在主程序中定义各对象并规定他们之间传替消息的规律,程序中的一切操作都通过向对象发送消息来实现;对象接到消息后,启动消息处理函数完成相应的操作 。面向对象程序设计(Object Oriented Programming,OOP)方法出现之前,程序员用面向过程的方法开发程序 。面向过程的方法把密切相关、相互依赖的数据和对数据的操作相互分离这种实质上的依赖与形式上的分离使得大型程序不但难以编写,而且难以调试和修改 。
1.2 MFC概述
2
MFC (Microsoft Foundation Class Library)中的各种类结合起来构成了一个应用程序框架,它的目的就是让程序员在此基础上来建立Windows下的应用程序,这是一种相对SDK来说更为简单的方法 。因为总体上,MFC框架定义了应用程序的轮廓,并提供了用户接口的标准实现方法,程序员所要做的就是通过预定义的接口把具体应用程序特有的东西填入这个轮廓 。Microsoft Visual C++提供了相应的工具来完成这个工作:AppWizard可以用来生成初步的框架文件(代码和资源等);资源编辑器用于帮助直观地设计用户接口;ClassWizard用来协助添加代码到框架文件;最后,编译,则通过类库实现了应用程序特定的逻辑 。
MFC抽象出众多类的共同特性,设计出一些基类作为实现其他类的基础 。这些类中,最重要的类是CObject和CCmdTarget 。CObject是MFC的根类,绝大多数MFC类是其派生的,包括CCmdTarget 。CObject 实现了一些重要的特性,包括动态类信息、动态创建、对象序列化、对程序调试的支持,等等 。所有从CObject派生的类都将具备或者可以具备CObject所拥有的特性 。CCmdTarget通过封装一些属性和方法,提供了消息处理的架构 。MFC中,任何可以处理消息的类都从CCmdTarget派生 。针对每种不同的对象,MFC都设计了一组类对这些对象进行封装,每一组类都有一个基类,从基类派生出众多更具体的类 。
MFC以“C++”为基础,自然支持虚拟函数和动态约束 。但是作为一个编程框架,有一个问题必须解决:如果仅仅通过虚拟函数来支持动态约束,必然导致虚拟函数表过于臃肿,消耗内存,效率低下 。于是,MFC建立了消息映射机制,以一种富有效率、便于使用的手段解决消息处理函数的动态约束问题 。这样,通过虚拟函数和消息映射,MFC类提供了丰富的编程接口 。程序员继承基类的同时,把自己实现的虚拟函数和消息处理函数嵌入MFC的编程框架 。MFC编程框架将在适当的时候、适当的地方来调用程序的代码 。
3
第2章Visual C++的简介与图像融合
2.1 Visual C++发展
2.1.1 Visual C++简介
VC++是微软公司开发的一个IDE(集成开发环境),换句话说,就是使用c++的一个开发平台.vc++是Windows平台上的C++编程环境,学习VC要了解很多Windows平台的特性并且还要掌握MFC、ATL、COM等的知识,难度比较大 。VC作为一个主流的开发平台一直深受编程爱好者的喜爱,但是很多人却对它的入门感到难于上青天,究其原因主要是大家对他错误的认识造成的,严格的来说 VC++不是门语言,虽然它和C++之间有密切的关系,如果形象点比喻的话,可以C++看作为一种”工业标准”,而VC++则是某种操作系统平台下的”厂商标准”,而”厂商标准”是在遵循”工业标准”的前提下扩展而来的 。从最早期的1.0版本,发展到最新的6.0版本,Visual C++已经有了很大的变化,在界面、功能、库支持方面都有许多的增强 。


稿源:(未知)

【傻大方】网址:/a/2021/0402/0021244160.html

标题:基于VC++的图像融合技术的实现( 二 )


上一篇:基于单片机的电子万年历

下一篇:基于单片机出租车计费器的设计