图象拼接是在全景视频系统.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
图象拼接是在全景视频系统

摘要 ? 图象拼接是在全景视频系统、地理信息系统等应用中经常遇到的一个问题,本文基于网格匹配的方法对边界部分有重叠的图象提出了一种行之有效的对准算法,并通过平滑因子对图象实现了无缝拼接。并应用文档视窗模型实现了该算法,并完成了位图文件的显示、存储等操作,具有一定的普遍意义。 关键词: ??? 图象拼接,算法,重叠图象,文档视窗,位图文件,图象显示 文章正文 一、????? 多文档视窗模型概述 MFC的AppWizard可以生成三种类型的应用程序:基于对话框的应用、单文档应用(SDI)和多文档应用(MDI)。三种应用中,以多文档应用(MDI)最为复杂,其功能也最强大。当我们用AppWizard生成一个多文档应用时,系统由CMultiDocTemplate自动生成了一个从Cdocument类继承的文档类,一个从Cview类继承的视窗类,一个从CMDIChildWnd类继承的框架类。当我们每次建立一个新的文档时,程序根据文档模板生成一个新实例,这些我们均可不用关心AppWizard已经自动生成了代码。但如果我们要在程序中使用多个不同的文档类时,则需自己建立文档模板并控制文档实例的建立。假设我们要向一基于多文档的工程MDI中增加一Test的文档。具体步骤如下: 1、用ClassWizard建立一个框架类CTestFrame基类选CMDIChildWnd。 2、用ClassWizard建立一个文档类CTestDoc基类选CDocument。 3、用ClassWizard建立一个文档类CTestView基类选CView。 4、将三个类的头文件加入应用类CMDIApp中。 5、创建新文档模板,在CMDIApp::InitInstance()函数中加入如下代码 ???CMultiDocTemplate* pDocTemplate; ??? pDocTemplate = new CMultiDocTemplate( ???????IDR_TESTTYPE, ???????RUNTIME_CLASS(CTestDoc), ???????RUNTIME_CLASS(CTestFrame), ???????RUNTIME_CLASS(CTestView)); ??? AddDocTemplate(pDocTemplate); 6、定义一菜单项ID号为ID_NEWTEST,利用ClassWizard将其处理函数加入应用类(或主框架类),在其处理函数CMDIApp::OnNewtest()函数中加入如下代码 ??? POSITION curTemplatePos = GetFirstDocTemplatePosition(); ??? while(curTemplatePos != NULL) ??? { ???????//取下一个文档模板指针 ???????CDocTemplate* curTemplate =GetNextDocTemplate(curTemplatePos); ???????CString str; ???????curTemplate-GetDocString(str, CDocTemplate::docName);?? //取文档名称 ???????if(str == _T(Test))???//判断当前文档文档是否Test类 ???????{ ?????????? curTemplate-OpenDocumentFile(NULL); //创建新的文档实例 ?????????? return; } ???????} ??? 这样我们就建立了一个新的文档类。注意在5中创建文档模板时我们用到了一文档类型资源IDR_TESTTYPE,该资源ID在资源文件中定义如下(未包括图标和菜单的定义): STRINGTABLE PRELOAD DISCARDABLE BEGIN ??? ………. ??? IDR_TESTTYPE????? \nTest\nTest\n\n\nMDI.Document\nTest Document END ??文档类型标识包括七个子串,包括窗口标题、文档名称、文件扩展名等。在6中curTemplate-GetDocString(str, CDocTemplate::docName);取的就是第二个子串,文档名称。文档建立之后我们就可以对其进行操作了。当然文档类和视窗类,文档类和主窗口类,以及不同文档类之间进行通信也是较为复杂的,并非几句话就能说清楚,如不熟悉文档视窗的读者请参看其它有关资料。 二、????? 重叠图象拼接技术 1.算法思想 在实现全景

文档评论(0)

f8r9t5c + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8000054077000003

1亿VIP精品文档

相关文档