热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

全景图技术概述

一、图像获取全景图像素材的获取有两种方式:一是采用专门全景设备,如全景相机或者带有鱼眼镜头或者广角镜头的相机;二是利用普通相机拍摄局部图像,然后经过投影后拼接形成全景图。第一种方法的优
 

一、图像获取

全景图像素材的获取有两种方式:一是采用专门全景设备,如全景相机或者带有鱼眼镜头或者广角镜头的相机;二是利用普通相机拍摄局部图像,然后经过投影后拼接形成全景图。

第一种方法的优点是操作简单,无需复杂建模,非常容易的能够形成全景图,缺点是专用设备价格非常昂贵,不易普及和使用。第二种方法对拍摄要求非常高,通常需要借助一些设备,如三角架等完成拍摄。相对前者更加复杂,但是费用低,仍然为目前的主流。

二、图像投影

由于相邻局部实景图像是在相机转过了一定的角度,在不同的视角上拍摄得到的,因此它们的投影平面存在一定的夹角。如果对局部图像直接进行无缝拼接,将会破坏实际场景中视觉的一致性,比如把一曲线变成了直线等,同时也很难进行无缝拼接。为了维持实际场景中的空间约束关系,必须把拍照得到的实景图像投影到某一曲面上,图像信息以曲面的形式保存在计算机上。投影完成后,去掉了旋转关系,保留了平移关系,为图像的拼接做好了准备。通常,比较常见的全景投影方式有:球面投影、柱面投影和立方体投影。

1、球面模型

2、圆柱面模型

3、立方体模型

全景图模型可以提供场景水平方向360度全方位浏览,球面全景和立方体全景还能够提供垂直方向180度的浏览,能使人们产生三维立体感,其场景能够拥有非常高的逼真度。

三、图像拼接

图像拼接技术是全景技术的关键技术之一,也是全景制作环节的关键环节,由于相机视角限制和全景相机价格的昂贵,对拼接技术的研究还是非常的有意义的。

1 、拼接的主要用途

图像拼接技术可以解决由于相机等成像仪器的视角大小的限制,不可能一次拍出很大图片而产生的问题。它利用计算机进行匹配,合成一幅宽角度图片,因而在实际使用中具有很广阔的用途。

2 、图像拼接的一般问题

图像拼接的关键是精确找出相邻两张图像中重叠部分的精确位置,然后确定两张图像之间的位置变换关系,最后进行拼接和边缘融合。由于照相机受环境和硬件等条件影响,得到的图像往往存在平移、旋转、缩放、透视形变、色差、扭曲等差别,这些差别大大增加了图像拼接的难度和复杂度。实际应用中最基本的拼接技术主要是考虑平移、缩放和旋转三种变化(A为原图像,A’为变换后的图像):

1)平移:A=A+k

2)缩放:A=sA,其中s为缩放比例;

3)旋转:A=rA,其中为旋转矩阵。

在这3种变化中,缩放和旋转是较难解决的问题,如何确定两图像间的缩放比例和旋转角度是图像拼接技术的难点。

3 、图像拼接技术流程和核心问题

图像拼接技术的基本流程如图所示。



核心问题:图像拼接效果与一关键技术息息相关,即图像的匹配。

4 、图像匹配

图像匹配的目的是搜索同名点,它是计算机视觉和数字摄影测量的核心课题之一,是指寻找部分重叠序列图像的重叠位置以及范围(也称图像对齐)。两幅图像可能取自不同的时间、不同的环境、不同的传感器或者不同的视角,这就造成了图像不仅存在噪声的影响,而且存在严重的灰度失真和几何失真。图像匹配就是假设有两个矩形区域AB,已知B中包含有一个区域A',A'A是相同的模块,求BA'的位置。

从宏观来看,图像匹配的方法可以分为灰度匹配和特征匹配两种。灰度匹配以常用的相关系数法为代表,它主要考虑局部区域内灰度的分布状况和统计特性;特征匹配要首先提取特征,如边缘特征,纹理特征,信息墒特征等,然后把这些特征用链码或者参数来表示,最后以这些特征为匹配基元。实际上,特征匹配常常和灰度匹配结合使用,即在灰度匹配时引入一些特征量进行约束。

图像匹配系统流程如图所示。



本部分涉及到的算法还有待进一步研究和整理。

四、反投影

要从全景图像重新构造出视点空间每一个视线方向所对应的视图,必须要对经过正投影处理过的全景图像进行反投影。全景图像的反投影算法解决的主要问题是:从全景图像中重新构造出球面视点空间每一个视线方向所对应的视图。

五、参考文献

1.全景图技术的研究,李云伟,华中科技大学硕士学位论文,2007.

2.全景图技术应用现状及若干技术问题浅析,胡雪瑾,《今日科苑》200924期,283.

3.全景图拼接算法的设计与实现,杨刚,《重庆工学院学报(自然科学版)》第21卷第9期,107-110.


推荐阅读
  • 深入解析Android自定义View面试题
    本文探讨了Android Launcher开发中自定义View的重要性,并通过一道经典的面试题,帮助开发者更好地理解自定义View的实现细节。文章不仅涵盖了基础知识,还提供了实际操作建议。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 1:有如下一段程序:packagea.b.c;publicclassTest{privatestaticinti0;publicintgetNext(){return ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 深入理解C++中的KMP算法:高效字符串匹配的利器
    本文详细介绍C++中实现KMP算法的方法,探讨其在字符串匹配问题上的优势。通过对比暴力匹配(BF)算法,展示KMP算法如何利用前缀表优化匹配过程,显著提升效率。 ... [详细]
  • 本文详细介绍了Java编程语言中的核心概念和常见面试问题,包括集合类、数据结构、线程处理、Java虚拟机(JVM)、HTTP协议以及Git操作等方面的内容。通过深入分析每个主题,帮助读者更好地理解Java的关键特性和最佳实践。 ... [详细]
  • 本文探讨了卷积神经网络(CNN)中感受野的概念及其与锚框(anchor box)的关系。感受野定义了特征图上每个像素点对应的输入图像区域大小,而锚框则是在每个像素中心生成的多个不同尺寸和宽高比的边界框。两者在目标检测任务中起到关键作用。 ... [详细]
  • 2023年京东Android面试真题解析与经验分享
    本文由一位拥有6年Android开发经验的工程师撰写,详细解析了京东面试中常见的技术问题。涵盖引用传递、Handler机制、ListView优化、多线程控制及ANR处理等核心知识点。 ... [详细]
  • 从零开始构建完整手机站:Vue CLI 3 实战指南(第一部分)
    本系列教程将引导您使用 Vue CLI 3 构建一个功能齐全的移动应用。我们将深入探讨项目中涉及的每一个知识点,并确保这些内容与实际工作中的需求紧密结合。 ... [详细]
  • 帝国CMS多图上传插件详解及使用指南
    本文介绍了一款用于帝国CMS的多图上传插件,该插件通过Flash技术实现批量图片上传功能,显著提升了多图上传效率。文章详细说明了插件的安装、配置和使用方法。 ... [详细]
  • 百度服务再次遭遇技术问题,疑似DNS解析故障
    近日晚间,百度多项在线服务出现加载异常,包括移动端搜索在内的多个功能受到影响。初步迹象表明,问题可能与DNS服务器解析有关。 ... [详细]
  • 技术分享:从动态网站提取站点密钥的解决方案
    本文探讨了如何从动态网站中提取站点密钥,特别是针对验证码(reCAPTCHA)的处理方法。通过结合Selenium和requests库,提供了详细的代码示例和优化建议。 ... [详细]
  • 本文详细介绍了如何解决Uploadify插件在Internet Explorer(IE)9和10版本中遇到的点击失效及JQuery运行时错误问题。通过修改相关JavaScript代码,确保上传功能在不同浏览器环境中的一致性和稳定性。 ... [详细]
  • 本文详细介绍了HTML中标签的使用方法和作用。通过具体示例,解释了如何利用标签为网页中的缩写和简称提供完整解释,并探讨了其在提高可读性和搜索引擎优化方面的优势。 ... [详细]
  • 本文介绍了如何在最新版本的Visual Studio Code中配置中文语言包,使用户能够更便捷地使用中文界面。文章详细描述了安装和配置步骤,并提供了相关补充说明。 ... [详细]
author-avatar
ds87vdsa
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有