360°全景拼接技术简介本文为技术简介,详细算法可以参考后面的参考资料。1.概述全景图像(Panorama)通常是指大于双眼正常有效视角(大约水平90度,垂直70度)或双眼余光视角(大约水平180度,垂直90度),在一个固定的观察点,能够提供水平方向上方位角360度,垂直方向上180度的自由浏览(简化的全景只能提供水平方向360度的浏览),乃至360度完整场景范围拍摄的照片。生成全景图的方法,通常有三种:一是利用专用照相设备,例如全景相机,带鱼眼透镜的广角相机等。其优点是容易得到全景图像且不需要复杂的建模过程,但是由于这些专用设备价格昂贵,不宜普遍适用。二是计算机绘制方法,该方法利用计算机图形学技术建立场景模型,然后绘制虚拟环境的全景图。其优点是绘制全景图的过程不需要实时控制,而且可以绘制出复杂的场景和真实感较强的光照模型,但缺点是建模过程相当繁琐和费时。三是利用普通数码相机和固定三脚架拍摄一系列的相互重叠的照片,并利用一定的算法将这些照片拼接起来,从而生成全景图。近年来随着图像处理技术的研究和发展,图像拼接技术已经成为计算机视觉和计算机图形学的研究焦点。目前出现的关于图像拼接的商业软件主要有Ptgui、UleadCool360及ArcSoftPanoramaMaker等,这些商业软件多是半自动过程,需要排列好图像顺序,或手动点取特征点。2.全景图类型:1)柱面全景图柱面全景图技术较为简单,发展也较为成熟,成为大多数构建全景图虚拟场景的基础。这种方式是将全景图像投影到一个以相机视点为中心的圆柱体内表面,视线的旋转运动即转化为柱面上的坐标平移运动。这种全景图可以实现水平方向360度连续旋转,而垂直方向的俯仰角度则由于圆柱体的限制要小于180度。柱面全景图有两个显著优点:一是圆柱面可以展开成一个矩形平面,所以可以把柱面全景图展开成一个矩形图像,而且直接利用其在计算机内的图像格式进行存取;二是数据的采集要比立方体和球体都简单。在大多数实际应用中,360度的环视环境即可较好地表达出空间信息,所以柱面全景图模型是较为理想的一种选择。2)立方体全景图立方体全景图由六个平面投影图像组成,即将全景图投影到一个立方体的内表面上。这种方式下图像的采集和相机的标定难度较大,需要使用特殊的拍摄装置,依次在水平、垂直方向每隔90度拍摄一张照片,获得六张可以无缝拼接于一个立方体的六个面上的照片。这种方法可以实现水平方向360度旋转、垂直方向180度俯仰的视线观察。3)球面全景图球面全景图是指将源图像拼接成一个球体的形状,以相机视点为球心,将图像投影到球体的内表面。与立方体全景图类似,球面全景图也可以实现水平方向360度旋转、垂直方向180度俯仰的视线观察。球面全景图的拼接过程及存储方式较柱面全景图大为复杂,这是因为生成球面全景图的过程中需要将平面图像投影成球面图像,而球面为不可展曲面。因此这是一个平面图像水平和垂直方向的非线性投影过程,同时也很难找到与球面对应且易于存取的数据结构来存放球面图像。目前国内外在这方面提出的研究算法较其他类型全景图少,而且在可靠性和效率方面也存在一些问题。3.主要内容3.1图像获取由于鱼眼镜头和常规镜头在生成全景图方面存在很大差异,其校正算法完全不同,因此需分开讨论。但是校正后的图像进行拼接步骤时的处理方法一定程度上可通用。A.单常规镜头拍摄多张图片方式(手持)该方式很常见,在目前多种手机上均有相关全景功能。B.多个常规镜头组成的相机(或单镜头旋转扫描方式)图1:三星的360度全景照相机ProjectBeyond,内置16个摄像头C.鱼眼镜头拍摄图2:理光双鱼眼全景相机RICOHTHETA3.2鱼眼图像矫正若为鱼眼镜头采集的到的图像,必须对图像进行矫正。鱼眼镜头图像校正算法通常有两种:一种是球面坐标定位法,一种是经纬映射法。矫正效果如下图所示:图3:鱼眼图像及校正后的展开图3.3图片匹配3.3.1与特征无关的匹配方式与特征无关的匹配方式常见的为相关性匹配,一般都用于没有复杂变换的图像拼接情况下。该方式计算简单,仅为普通的灰度模板匹配。图4:模板匹配法示意图3.3.2根据特征进行匹配的方式基于特征的匹配首先从图像上选取特征信息,然后识别出两幅图像对应的特征信息。常用的特征信息有特征轮廓,特征曲线,特征点,多采用特征点匹配法。进行特征点匹配的第一步是提取所有素材图片的局部特征点。普遍来讲,一张图片所包含的特征点通常就是周围含有较大信息量的点,而仅通过这些富有特征的局部,基本就可以推测出整张图片。常见的特征点包括SIFT,FAST,SURF等。图5:SITF特征点检测效果图。青色内容为检测到的SIFT特征点。由于特征点由特征向量表示,所以图中每个特征点显示为一个箭头。形成特征向量之后下一个问题就是如何匹配了。最基本的方式可以称作“最邻近搜索”(NearestNeighbour),实际上也就是找在128维空间上直线距离最近的的特征向量,这个求直线距离的方式和2维无异,最近的特征向量也就被认为是互相匹配。SIFT原作者使用的方式是增加了k-dtree算法来高效率地完成高维度上的最邻近搜索。特征点匹配效果如下图所示。图6:SITF特征点匹配效果图3.4图片拼接在以上步骤中得到了图像间的匹配关系,就可以根据这些关系进行图像的拼接了。按照图像匹配的不同方式,拼接处理也分两大类:A.根据模板匹配的方式,可得到图片见的平移(或者包括缩放)参数,继而根据参数进行图像拼接操作;B.根据特征点匹配的方式,则利用这些匹配的点来估算”单应矩阵”(HomographyEstimation),也就是把其中一张通过个关联性和另一张匹配的方法。通过单应矩阵H,可以将原图像中任意像素点坐标转换为新坐标点,转换后的图像即为适合拼接的结果图像。下图即为找出符合几何约束的特征点之后,通过单应矩阵来对齐两张图片的内容。图7:根据特征点进行图像拼接的效果图图8:多张图像拼接效果3.5图像融合图像拼接后,需要对图像重叠部分进行融合处理。图像融合技术决定了最终图像合成质量,常用的有平均叠加法,线性法,加权法,多段融合法等。3.5.1平均叠加法平均叠加法是直接对图像进行平均叠加。这是最简单的融合方法,会出现明显的拼接缝隙。3.5.2线性法柱面图像的拼接多采用简单的线性法。图像映射到柱面坐标下,图像间就是简单的纯平面平移变换,局部对准后,对重叠区域用线性法融合。该方法适合柱面全景图生成,或者仅具有平移变换的两幅图像融合。3.5.3加权函数法加权函数法与线性法类似,也是广泛应用的融合方法之一。该方法能有效去除边界缝隙,但在拼合区往往出现叠影模糊的现象。3.5.4多段融合法(多分辨率样条)多段融合法是目前比较好的融合方法,拼接成的图像既清晰又光滑无缝,能避免缝隙问题和叠影现象。另外,如果选取好的最佳缝隙线,还能处理有轻微运动物体的图像拼接。但该方法运算量大是其明显缺陷。3.6全景图像投射3.6.1柱面全景图固定视点,使相机在水平面内旋转一周拍摄场景,得到一组具有重叠区域的连续环视图像序列,将这组图像序列无缝拼合,并投影到柱面空间坐标,就得到了衣服柱面全景图。柱面投影就是讲图像投影到柱面上,它是一种透视投影而非平行投影,通俗的讲就是要活的从投影中心这一点上观察图像在柱面上的成像。下图表示将三维空间上的点(X,Y,Z)映射到柱面模型上得到对应于柱面模型上的点(x,y,z)的过程。其中θ为观察视域中心与X轴夹角,h为柱面模型高度,(x,y,z)为(X,Y,Z)在柱面模型上的投影。图9:柱面全景图生成模型图10:柱面全景图效果图3.6.2球面全景图球面全景图是通过求取图像映射到球面的参数,将图像映射到球面模型上,然后得到的平面反展开图就是球面全景图或者部分球面全景图。图11:球面投影变换结果图图12:球面全景图拼接效果3.6.3多面体全景图以景物中心为固定视点来观察整个场景,并将周围场景的图像记录在以该点为中心的环境映射到多面体上,这样环境映射以多面体全景图像的方式来提高其中心视点的场景描述。多面体全景图中以立方体最为简单,立方体全景图是由6幅广角为90度的画面组成。图13:立方体全景图效果4.应用随着具有拍摄功能的便携式数字终端产品的日益普及,使得采用手持普通数码相机或手机的的方式可以直接获取全景图素材,通过拼接软件可以制作各种360度的全景图,可以为虚拟漫游、数字娱乐、旅游展示、远程教育、电子商务等领域提供更好的临场感。360度全景技术还可以实现场景中的热点连接、多场景之间虚拟漫游、雷达方位导航等功能。360度全景技术广泛应用于宾馆酒店、旅游景点、房产家居、休闲会所、汽车展示、城市建筑规划等网络虚拟展示。360度全景图技术已经开始用于网站中,腾讯、新浪已经把这种技术加入到自己的网站之中。360度全景图的一个展示如下:参考资料:1.罗海风《全景拼接算法简介》2.利用普通数码相机制作全景图研究3.鱼眼照片生成全景图算法的研究与实现,程菊明等,计算机工程与应用,20074.360度全景城市网站:全景图生成技术研究,李艳丽,山东大学硕士毕业论文,20076.球面全景图像生成技术的研究,杨燕等,20077.全景图像拼接技术研究现状综述,江铁等,重庆工商大学学报,20128.柱面全景图拼接算法的研究,付金红,哈尔滨理工大学硕士毕业论文,20059.合成全景图中计算机视觉技术的知识和原理10.SIFT特征提取分析11.全景摄像机图像矫正的核心算法12.三星发布360度全景相机ProjectBeyond13.理光发布双鱼眼镜头全景相机