




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、全景拼接算法简介罗海风2014.12.11目录1. 概述12. 主要步骤22.1.图像获取22.2鱼眼图像矫正 22.3图片匹配22.4图片拼接22.5图像融合22.6全景图像投射23. 算法技术点介绍33.1图像获取33.2鱼眼图像矫正 43.3图片匹配43.3.1与特征无关的匹配方式43.3.2根据特征进行匹配的方式53.4图片拼接53.5图像融合63.5.1平均叠加法63.5.2线性法73.5.3加权函数法73.5.4多段融合法(多分辨率样条)73.6全景图像投射73.6.1柱面全景图73.6.2球面全景图73.6.3多面体全景图84. 开源图像算法库OPENCV拼接模块84.1 STI
2、TCHING _DETAIL 程序运行流程 84.2 STITCHING_DETAIL 程序接口介绍 94.3测试效果105. 小结10参考资料101. 概述全景视图是指在一个固定的观察点,能够提供水平方向上方位角360度,垂直方向上180度的自由浏览(简化的全景只能提供水平方向360度的浏览)。目前市场中的全景摄像机主要分为两种:鱼眼全景摄像机和多镜头全景摄像机。鱼眼全景摄像机是由单传感器配套特殊的超广角鱼眼镜头,并依赖图像校正技术还原图像的鱼眼全景摄像机。鱼眼全景摄像机 最终生成的全景图像即使经过校正也依然存在一定程度的失真和不自然。多镜头全景摄像机可以避免鱼眼镜头图像失真的缺点,但是或多
3、或少也会存在融合边缘效果不真实、角度有偏差或分割融合后有”附加感的缺撼。本文档中根据目前所查找到的资料,对多镜头全景视图拼接算法原理进行简要的介绍。2. 主要步骤2.1.图像获取通过相机取得图像。通常需要根据失真较大的鱼眼镜头和失真较小的窄视角镜头决定算法处理方式。单镜 头和多镜头相机在算法处理上也会有一定差别。2.2鱼眼图像矫正若相机镜头为鱼眼镜头,则图像需要进行特定的畸变展开处理。2.3图片匹配根据素材图片中相互重叠的部分估算图片间匹配关系。主要匹配方式分两种:A 与特征无关的匹配方式。最常见的即为相关性匹配。B.根据特征进行匹配的方式。最常见的即为根据SIFT, SURF等素材图片中局部
4、特征点,匹配相邻图片中的特征点,估算图像间投影变换矩阵。2.4图片拼接根据步骤2.3所得图片相互关系,将相邻图片拼接至一起。2.5图像融合对拼接得到的全景图进行融合处理。2.6全景图像投射将合成后的全景图投射至球面、柱面或立方体上并建立合适的视点,实现全方位的视图浏览。图1:opencv stitching模块进行图像拼接的处理流程(部分步骤可选)3. 算法技术点介绍3.1图像获取由于鱼眼镜头和常规镜头在生成全景图方面存在很大差异,其校正算法完全不同,因此需分开讨论。 但是校正后的图像进行拼接步骤时的处理方法一定程度上可通用。A 单常规镜头拍摄多张图片方式(手持)该方式很常见,在目前多种手机上
5、均有相关全景功能。B.多个常规镜头组成的相机(或单镜头旋转扫描方式)图2 :三星2014年发布的360度全景照相机Project Beyond ,内置16个摄像头C 鱼眼镜头拍摄图3 :理光2013年发布双鱼眼全景相机 RICOH THETA3.2鱼眼图像矫正若为鱼眼镜头采集的到的图像,必须对图像进行矫正。鱼眼镜头图像校正算法通常有两种:一种是球 面坐标定位法,一种是经纬映射法。具体推导过程见参考资料【1】鱼眼照片生成全景图算法的研究与实现,矫正效果如下图所示:球tta宦标得51的的展幵图图4:鱼眼图像及校正后的展开图3.3图片匹配3.3.1与特征无关的匹配方式与特征无关的匹配方式常见的为相关
6、性匹配,一般都用于没有复杂变换的图像拼接情况下。该方式计 算简单,仅为普通的灰度模板匹配。具体细节见参考文档【2】全景图生成技术研究。图5 :模板匹配法示意图332根据特征进行匹配的方式基于特征的匹配首先从图像上选取特征信息,然后识别出两幅图像对应的特征信息。常用的特征信息 有特征轮廓,特征曲线,特征点,多采用特征点匹配法。进行特征点匹配的第一步是提取所有素材图片的局部特征点。普遍来讲,一张图片所包含的特征点通 常就是周围含有较大信息量的点,而仅通过这些富有特征的局部,基本就可以推测岀整张图片。常见的特 征点包括SIFT,FAST,SURF等。图6: SITF特征点检测效果图。青色内容为检测到
7、的SIFT特征点。由于特征点由特征向量表示,所以图中每个特征点显示为一个箭头。形成特征向量之后下一个问题就是如何匹配了。最基本的方式可以称作“最邻近搜索” (NearestNeighbour ),实际上也就是找在 128维空间上直线距离最近的的特征向量,这个求直线距离的方式和2维无异,最近的特征向量也就被认为是互相匹配。SIFT原作者使用的方式是增加了 k-d tree算法来高效率地完成高维度上的最邻近搜索。特征点匹配效果如下图所示。图6: SITF特征点匹配效果图3.4图片拼接在以上步骤中得到了图像间的匹配关系,就可以根据这些关系进行图像的拼接了。按照图像匹配的不 同方式,拼接处理也分两大类
8、:A 根据模板匹配的方式,可得到图片见的平移(或者包括缩放)参数,继而根据参数进行图像拼接 操作;B.根据特征点匹配的方式,则利用这些匹配的点来估算单应矩阵(Homography Estimation ),也就是把其中一张通过个关联性和另一张匹配的方法。单应矩阵H效果如下:亞11 地1 如通过单应矩阵H,可以将原图像中任意像素点坐标转换为新坐标点,转换后的图像即为适合拼接的结 果图像。下图即为找出符合几何约束的特征点之后,通过单应矩阵来对齐两张图片的内容。1*1 KANSAC 谑IW I(fi UAH 知W i曲曲i Im pj. ipi-jsdg x& a nomeanffev图7 :根据特
9、征点进行图像拼接的效果图图8 :多张图像拼接效果3.5图像融合图像拼接后,需要对图像重叠部分进行融合处理。图像融合技术决定了最终图像合成质量,常用的有 平均叠加法,线性法,加权法,多段融合法等。具体见参考文档【2】全景图生成技术研究。3.5.1 平均叠加法平均叠加法是直接对图像进行平均叠加。这是最简单的融合方法,会岀现明显的拼接缝隙3.5.2线性法柱面图像的拼接多采用简单的线性法。图像映射到柱面坐标下,图像间就是简单的纯平面平移变换, 局部对准后,对重叠区域用线性法融合。该方法适合柱面全景图生成,或者仅具有平移变换的两幅图像融 合。3.5.3加权函数法加权函数法与线性法类似,也是广泛应用的融合
10、方法之一。该方法能有效去除边界缝隙,但在拼合区 往往岀现叠影模糊的现象。3.5.4多段融合法(多分辨率样条)多段融合法是目前比较好的融合方法,拼接成的图像既清晰又光滑无缝,能避免缝隙问题和叠影现象。 另外,如果选取好的最佳缝隙线,还能处理有轻微运动物体的图像拼接。但该方法运算量大是其明显缺陷。3.6全景图像投射3.6.1柱面全景图固定视点,使相机在水平面内旋转一周拍摄场景,得到一组具有重叠区域的连续环视图像序列,将这组图像序列无缝拼合,并投影到柱面空间坐标,就得到了衣服柱面全景图。柱面投影就是讲图像投影到柱 面上,它是一种透视投影而非平行投影,通俗的讲就是要活的从投影中心这一点上观察图像在柱面
11、上的成 像。下图表示将三维空间上的点(X,Y,Z)映射到柱面模型上得到对应于柱面模型上的点( x,y,z)的过程其中B为观察视域中心与X轴夹角,h为柱面模型高度,(x,y,z)为(X,Y,Z)在柱面模型上的投影。(r) KW定,世坏抱摄E唱图像町世界坐标系内衲柱麻塑标垂上点讨应芙垂示总图图9 :柱面全景图生成模型其中,图10 :柱面全景图效果图详细的柱面投影模型的推导过程,见参考文档【5】柱面全景图拼接算法的研究 3.6.2球面全景图球面全景图是通过求取图像映射到球面的参数,将图像映射到球面模型上,然后得到的平面反展开图 就是球面全景图或者部分球面全景图。图11:球面投影变换结果图图12 :球
12、面全景图拼接效果363多面体全景图以景物中心为固定视点来观察整个场景,并将周围场景的图像记录在以该点为中心的环境映射到多面体上,这样环境映射以多面体全景图像的方式来提高其中心视点的场景描述。多面体全景图中以立方体最为简单,立方体全景图是由6幅广角为90度的画面组成。图13 :立方体全景图效果4. 开源图像算法库OpenCV拼接模块开源图像算法库OpenCV在2.4.0版本后集成了一个全景图拼接模块stitch,其中一个较详细的样例代码stitching_detail.cpp简要介绍如下:4.1 stitching_detail 程序运行流程1. 命令行调用程序,输入源图像以及程序的参数2. 特
13、征点检测,判断是使用surf还是orb,默认是surf。3. 对图像的特征点进行匹配,使用最近邻和次近邻方法,将两个最优的匹配的置信度保存下来。4. 对图像进行排序以及将置信度高的图像保存到同一个集合中,删除置信度比较低的图像间的匹配,得到 能正确匹配的图像序列。这样将置信度高于门限的所有匹配合并到一个集合中5. 对所有图像进行相机参数粗略估计,然后求出旋转矩阵6. 使用光束平均法进一步精准的估计出旋转矩阵。7. 波形校正,水平或者垂直8. 拼接9. 融合,多频段融合,光照补偿,4.2 stitching_detailimg1 img2 img3程序接口介绍输入图像-preview compo
14、se_megapix以 预 览 模 式 运 行 程 序, 比 正常 模式要快, 但 输 出图 像 分辨 率低,拼 接 的 分辨率 设置为 0.6-try_gpu(yes|no) 是否使用 GPU( 图形处理器 ),默认为 no/* 运动估计参数 */-work_megapix-work_megapix 图像匹配的分辨率大小,图像的面积尺寸变为work_megapix*100000 ,默认为 0.6-features (surf|orb)选择 surf 或者 orb 算法进行特征点计算,默认为 surf-match_conf 特征点检测置信等级,最近邻匹配距离与次近邻匹配距离的比值, surf
15、默认 为 0.65 , orb 默认为 0.3-conf_thresh 两幅图来自同一全景图的置信度,默认为 1.0-ba (reproj|ray) 光束平均法的误差函数选择,默认是 ray 方法-ba_refine_mask (mask) -wave_correct (no|horiz|vert)波形校验 水平,垂直或者没有 默认是 horiz-save_graph 将匹配的图形以点的形式保存到文件中, Nm 代表匹配的数量, NI 代表正确匹配的数量, C 表示置信度/* 图像融合参数 :*/-warp(plane|cylindrical|spherical|fisheye|stereog
16、raphic|compressedPlaneA2B1|compressedPlaneA1.5B1|compressedPlanePortraitA2B1|compressedPlanePortraitA1.5B1|paniniA2B1|paniniA1.5B1|paniniPortraitA2B1|paniniPortraitA1.5B1|mercator|transverseMercator)选择融合的平面,默认是球形-seam_megapix 拼接缝像素的大小 默认是 0.1 -seam (no|voronoi|gc_color|gc_colorgrad)拼接缝隙估计方法 默认是 gc_c
17、olor-compose_megapix 拼接分辨率,默认为 -1-expos_comp (no|gain|gain_blocks) 光照补偿方法,默认是 gain_blocks-blend (no|feather|multiband) 融合方法,默认是多频段融合-blend_strength 融合强度, 0-100. 默认是 5.-output 输出图像的文件名,默认是 result,jpg命令使用实例,以及程序运行时的提示:4.3测试效果图14 : usb摄像头拍摄的办公室 90度视角的六张图像图15 :生成的全景图OpenCV的图像拼接模块效果良好,但是由于考虑到及其缺乏条件的情况,因此
18、算法方面采用了很多很复 杂的方法,如待拼接的图像顺序不明,基于特征点的图像匹配,迭代优化估计相机焦距参数等,耗时十分 长(此例子中,耗时大约十几分钟)。当有合适的硬件配合时,整个算法流程可以大大简化。5. 小结本文档根据网上搜集到的部分信息,对全景拼接算法进行了概括性的介绍,并展示了开源图像算法库 opencv的全景图拼接效果测试效果。根据已有的结果,可以看出,以opencv全景模块为算法流程蓝本,过程过于复杂,暂时无法实现实时性。而相对的,利用一些先验知识(如素材图像顺序)和硬件条件(相机参数,拍摄约束等),可以大大简化图像拼接算法流程和难度,关键的步骤如图像几何模型投影等内容,又已经搜集到了相关文献,可以 学习详细推导过程,从而自行编程实现完整算法流程。参考资料1. 鱼眼照片生成全景图算法的研究与实现,程菊明等,计算机工程与应用,20072. 全景图生成技术
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- WB/T 1141-2024数字化仓库数据分类与接口要求
- 玻璃企业创新能力提升策略考核试卷
- 组织竞争力分析与提升策略考核试卷
- 空调器压缩机性能分析考核试卷
- 环境保护与绿色金融发展考核试卷
- 经纪人如何制定艺人长期发展计划考核试卷
- 物流信息技术与应用考核试卷
- 海洋油气开发工程技术的可持续发展考核试卷
- 山西省运城市临猗县临晋中学2025年高三下学期第三次(线上)周考数学试题含解析
- 兰州工商学院《中西文化交流史》2023-2024学年第一学期期末试卷
- 2025年财务管理的前沿动态试题及答案
- 猪场转让合同范本
- (二模)石家庄市2025届高三教学质量检测(二)生物试卷(含标准答案)
- 有关电除颤的试题及答案
- 脑卒中中西医结合护理
- 2025北京外国语大学辅导员考试题库
- 2023年江苏省高中信息技术青年教师教学基本功大赛试卷
- 2025年保密观知识测试题及答案
- 开学第一课:学习哪吒精神勇闯难关做阳光少年2024-2025学年初中班会课课件
- 家长讲堂:法制主题教育
- 2024年江苏省南京市中考数学试卷真题(含答案逐题解析)
评论
0/150
提交评论