一种全景地图的制作方法技术

技术编号:19747466 阅读:24 留言:0更新日期:2018-12-12 05:07
本发明专利技术涉及一种全景地图的制作方法,包括以下步骤:将全景照片转换为字节流添加到计算机的物理内存中作临时存储,生成缓存图片;将缓存图片进行编号,自动匹配拼接相邻编号的缓存图片,生成全景缓存图片;对全景缓存图片进行处理,生成全景图片,并实现定位点与坐标点的转化以及进行坐标匹配;将生成好的全景图片进行像素点处理,并通过散列运算,将像素点的分布在全景图片上排列,生成全景图坐标文件;全景图坐标文件生成后,采用交互点作为中心画一个球体,并将3D坐标映射到2D坐标,通过转换得到屏幕2D坐标;通过坐标嵌入,执行坐标匹配,生成全景地图。本发明专利技术通过全景图拼接方法对全景匹配图进行拼接,生成全景地图。

【技术实现步骤摘要】
一种全景地图的制作方法
本专利技术涉及全景地图
,具体涉及一种全景地图的制作方法。
技术介绍
随着计算机技术的飞速发展,多媒体所包含的种类也越来越多,所能表现的效果也越来越多,而一些比较传统的表现方式也越来越无法满足大部分客户对于展示方式的要求。在传统的表现方式中,展示的手段无非是静态的平面图片和动态的视频,也有进行三维全景进行展示的。静态图片只能提供场景的某一角度图像,即使是广角镜头,也不能有效全面的对场景进行表现;而动态视频虽然可以让用户对场景有全面的了解,可图像视角依然有限,观看方式取决于拍摄者的拍摄方式,并不自由。三维建模的方式可以解决静态图片和动态视频都存在的问题,但是代价很高,真实性也并不总是令人满意。所以,在我们需要真实、全面、直观的表现某一场景时,360全景无疑是最好的选择。现有技术中的全景图制作大多引用插件实现,引用插件需要导包,需要通过外部程序生成全景图的切图文件,要花费大量的时间与精力对图片进行切图,过程繁琐,不利于开发使用。
技术实现思路
本专利技术的目的在于提供一种全新的全景制作方法,该方法能够解决现有技术中存在的不足,通过全景图拼接算法对全景匹配图进行拼接,生成全景地图。为实现上述目的,本专利技术采用了以下技术方案:一种全景地图的制作方法,该方法包括以下步骤:(1)采集全景照片,将全景照片转换为字节流添加到计算机的物理内存中作临时存储,生成缓存图片。(2)将缓存图片进行编号,并且自动匹配拼接相邻编号的缓存图片,生成全景缓存图片。(3)对全景缓存图片进行处理,平滑衔接部分的缝隙及瑕疵,生成全景图片,并将连接关系和点的经纬度保存至图数据库中,将点的经纬度保存至空间数据库中,实现定位点与坐标点的转化,计算坐标点到另一个坐标点之间的距离,并进行坐标匹配。(4)将生成好的全景图片进行像素点处理,并通过散列运算,将像素点的分布在全景图片上排列,生成全景图坐标文件。(5)全景图坐标文件生成后,采用交互点作为中心画一个球体,并将3D坐标映射到2D坐标,通过转换得到屏幕2D坐标。(6)通过坐标嵌入,执行坐标匹配,生成全景地图。进一步的,步骤(2)中所述的“自动匹配拼接相邻编号的缓存图片”,具体包括以下步骤:设模板图为T,匹配图为M,在匹配图M中设定搜索范围,找出与模板图T具有最大相似性的位置:(21)将标准模式的模板图T叠放在匹配图M上进行搜索,模板图T左下角像素点称为参考点A(i,j),以控制搜索方向,在过M的左下角像素建立坐标系,其中,i和j是子图在该坐标系中的坐标,i和j的取值范围为:0≤i≤W-TW,0≤j≤H-TH,其中,W表示匹配图M的宽度,TW表示模板图T的宽度,H表示匹配图M的高度,TH表示模板图T的高度。(22)模板图T在匹配图M中按像素逐点搜索,逐点计算子图强度Is、模板强度It、子图与模板互相关强度Is×It,采用标准相似度的计算公式计算两张匹配图之间的相似度,直到找出具有最大相似度的两张匹配图,获取A(i,j)坐标即可对两张具有一定重合度的图片进行拼接。所述标准相似度是根据两张匹配图提供的参数,计算出这两张图之间的吻合性,标准相似度的计算公式为:根据Schwarz不等式可知()0≤R(i,j)≤1,且当比值为常数时,R(i,j)取极大值1。进一步的,步骤(5)中所述的“将3D坐标映射到2D坐标,通过转换得到屏幕2D坐标”,具体包括以下步骤:将3D坐标映射到2D坐标,设存储坐标的载体为vector,vector以相机为参考,转换为2D坐标;但此时的2D坐标为笛卡尔坐标,原点在中间位置,需要转换为原点在左上角的屏幕坐标,通过将屏幕容器宽度的一半widthHalf、屏幕容器高度的一半heightHalf与存储坐标的载体vector进行换算来得到屏幕2D坐标。由以上技术方案可知,本专利技术涉及360全景地图的页面制作,通过全景图拼接方法对全景匹配图进行拼接,生成全景地图。本专利技术通过将每张具有一定重合度的图片进行拼接,去除了全景切图等一系列繁琐的步骤,免去了全景插件的项目文件导入,节省了空间内存,提高了全景图加载的效率。附图说明图1是本专利技术的方法流程图;图2是模块匹配示意图。具体实施方式下面结合附图对本专利技术做进一步说明:一种全景地图的制作方法,该方法包括以下步骤:(1)采集全景照片,将全景照片转换为字节流添加到计算机的物理内存中作临时存储,生成缓存图片。在步骤(1)中,要计算缓存图片的大小。计算BMP图像方法有以下三种:在BMP的文件格式中规定每行的字节数必须是4的整数倍,不是4的整数倍要补齐。法一:lpbmiHeader->biSizeImage=(cx*biBitCount+31)/32*4*cy;法二:lpbmiHeader->biSizeImage=((cx*biBitCount+31)&~31)/8*cy;法三:lpbmiHeader->biSizeImage=((cx*biBitCount+31)&~31)>>3*cy。(2)将缓存图片进行编号,并且自动匹配拼接相邻编号的缓存图片,生成全景缓存图片。(3)对全景缓存图片进行处理,平滑衔接部分的缝隙及瑕疵,生成全景图片,并将连接关系和点的经纬度保存至图数据库中,将点的经纬度保存至空间数据库中,实现定位点与坐标点的转化,计算坐标点到另一个坐标点之间的距离,并进行坐标匹配。(4)将生成好的全景图片进行像素点处理,并通过散列运算,将像素点的分布在全景图片上排列,生成全景图坐标文件,以json的形式存储。(5)全景图坐标文件生成后,采用交互点作为中心画一个球体,鼠标移动,球体就跟着移动。将3D坐标映射到2D坐标,设存储坐标的载体为vector,vector以相机为参考,转换为2D坐标;但此时的2D坐标为笛卡尔坐标,原点在中间位置,需要转换为原点在左上角的屏幕坐标,通过将屏幕容器宽度的一半widthHalf、屏幕容器高度的一半heightHalf与存储坐标的载体vector进行换算来得到屏幕2D坐标。由于2D坐标没有z方向,空间上会有两个对称点投影到相同的2D平面上,其解决方法如下:首先创建frustum对象,frustum对象用来确定相机的可视区域;然后创建一个4*4矩阵对象cameraViewProjectMatrix,把cameraViewProjectMatrix转换为相机的法线矩阵,直接把cameraViewProjectMatrix设置到frustum对象上。获取相机的法线,设置frustum沿着相机法线方向,并采用frustum.intersectObject函数判断标记点是否在frustum的可视区域内。(6)通过坐标嵌入,执行坐标匹配,生成全景地图。在该全景地图中,坐标点可隐藏可展示,默认隐藏,通过鼠标点击调用获取坐标。进一步的,步骤(2)中所述的“自动匹配拼接相邻编号的缓存图片”,具体包括以下步骤:设模板图为T,匹配图为M,在匹配图M中设定搜索范围,找出与模板图T具有最大相似性的位置:(21)如图1所示,将标准模式的模板图T叠放在匹配图M上进行搜索,模板图T左下角像素点称为参考点A(i,j),以控制搜索方向,在过M的左下角像素建立坐标系,其中,i和j是子图本文档来自技高网...

【技术保护点】
1.一种全景地图的制作方法,其特征在于,该方法包括以下步骤:(1)采集全景照片,将全景照片转换为字节流添加到计算机的物理内存中作临时存储,生成缓存图片;(2)将缓存图片进行编号,并且自动匹配拼接相邻编号的缓存图片,生成全景缓存图片;(3)对全景缓存图片进行处理,平滑衔接部分的缝隙及瑕疵,生成全景图片,并将连接关系和点的经纬度保存至图数据库中,将点的经纬度保存至空间数据库中,实现定位点与坐标点的转化,计算坐标点到另一个坐标点之间的距离,并进行坐标匹配;(4)将生成好的全景图片进行像素点处理,并通过散列运算,将像素点的分布在全景图片上排列,生成全景图坐标文件;(5)全景图坐标文件生成后,采用交互点作为中心画一个球体,并将3D坐标映射到2D坐标,通过转换得到屏幕2D坐标;(6)通过坐标嵌入,执行坐标匹配,生成全景地图。

【技术特征摘要】
1.一种全景地图的制作方法,其特征在于,该方法包括以下步骤:(1)采集全景照片,将全景照片转换为字节流添加到计算机的物理内存中作临时存储,生成缓存图片;(2)将缓存图片进行编号,并且自动匹配拼接相邻编号的缓存图片,生成全景缓存图片;(3)对全景缓存图片进行处理,平滑衔接部分的缝隙及瑕疵,生成全景图片,并将连接关系和点的经纬度保存至图数据库中,将点的经纬度保存至空间数据库中,实现定位点与坐标点的转化,计算坐标点到另一个坐标点之间的距离,并进行坐标匹配;(4)将生成好的全景图片进行像素点处理,并通过散列运算,将像素点的分布在全景图片上排列,生成全景图坐标文件;(5)全景图坐标文件生成后,采用交互点作为中心画一个球体,并将3D坐标映射到2D坐标,通过转换得到屏幕2D坐标;(6)通过坐标嵌入,执行坐标匹配,生成全景地图。2.根据权利要求1所述的一种全景地图的制作方法,其特征在于,步骤(2)中所述的“自动匹配拼接相邻编号的缓存图片”,具体包括以下步骤:设模板图为T,匹配图为M,在匹配图M中设定搜索范围,找出与模板图T具有最大相似性的位置:(21)将标准模式的模板图T叠放在匹配图M上进行搜索,模板图T左下角像素点称为参考点A(i,j),以控制搜索方向,在过M的左下角像素建立坐标系,其中,i和j是子图在该坐标系中的坐标,i和j的取值范...

【专利技术属性】
技术研发人员:邵永培何广
申请(专利权)人:合肥亿图网络科技有限公司
类型:发明
国别省市:安徽,34

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1