CN108986183B - 一种全景地图的制作方法 - Google Patents
一种全景地图的制作方法 Download PDFInfo
- Publication number
- CN108986183B CN108986183B CN201810789872.9A CN201810789872A CN108986183B CN 108986183 B CN108986183 B CN 108986183B CN 201810789872 A CN201810789872 A CN 201810789872A CN 108986183 B CN108986183 B CN 108986183B
- Authority
- CN
- China
- Prior art keywords
- coordinate
- panoramic
- matching
- point
- picture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/206—Drawing of charts or graphs
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明涉及一种全景地图的制作方法,包括以下步骤:将全景照片转换为字节流添加到计算机的物理内存中作临时存储,生成缓存图片;将缓存图片进行编号,自动匹配拼接相邻编号的缓存图片,生成全景缓存图片;对全景缓存图片进行处理,生成全景图片,并实现定位点与坐标点的转化以及进行坐标匹配;将生成好的全景图片进行像素点处理,并通过散列运算,将像素点的分布在全景图片上排列,生成全景图坐标文件;全景图坐标文件生成后,采用交互点作为中心画一个球体,并将3D坐标映射到2D坐标,通过转换得到屏幕2D坐标;通过坐标嵌入,执行坐标匹配,生成全景地图。本发明通过全景图拼接方法对全景匹配图进行拼接,生成全景地图。
Description
技术领域
本发明涉及全景地图技术领域,具体涉及一种全景地图的制作方法。
背景技术
随着计算机技术的飞速发展,多媒体所包含的种类也越来越多,所能表现的效果也越来越多,而一些比较传统的表现方式也越来越无法满足大部分客户对于展示方式的要求。在传统的表现方式中,展示的手段无非是静态的平面图片和动态的视频,也有进行三维全景进行展示的。静态图片只能提供场景的某一角度图像,即使是广角镜头,也不能有效全面的对场景进行表现;而动态视频虽然可以让用户对场景有全面的了解,可图像视角依然有限,观看方式取决于拍摄者的拍摄方式,并不自由。三维建模的方式可以解决静态图片和动态视频都存在的问题,但是代价很高,真实性也并不总是令人满意。所以,在我们需要真实、全面、直观的表现某一场景时,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,
进一步的,步骤(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是子图在该坐标系中的坐标,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,
综上所述,本发明将无人机或者全景相机拍摄的全景照片采用如图1所示的全景地图的制作方法,先匹配相邻图片,再获取相邻的坐标点,然后根据相互匹配的坐标获取最大相似位置,最后根据最大相似位置对全景图片进行无缝拼接,从而生成360全景地图。采用本发明所述的方法制成的全景地图,具有坐标,支持兴趣点的展示和网格的展示。采用本发明所述的方法制作而成的全景地图,具有以下优点:(1)真实性强,实景场景的逼真摄影表现。(2)播放设备硬件要求低,大众化电脑均可播放,无需专门工作站。(3)开发周期短,开发成本低,拍摄制作比三维制作速度快,成本低。(4)导览性、交互操作性强,可与flash技术的导览无缝结合。(5)画面质量高,高清晰度的全屏场景,令细节表现完美。(6)数据量小,非常适合网络式访问观看。
以上所述的实施例仅仅是对本发明的优选实施方式进行描述,并非对本发明的范围进行限定,在不脱离本发明设计精神的前提下,本领域普通技术人员对本发明的技术方案作出的各种变形和改进,均应落入本发明权利要求书确定的保护范围内。
Claims (4)
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的取值范围为:
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)坐标即可对两张具有一定重合度的图片进行拼接。
4.根据权利要求1所述的一种全景地图的制作方法,其特征在于,步骤(5)中所述的“将3D坐标映射到2D坐标,通过转换得到屏幕2D坐标”,具体包括以下步骤:
将3D坐标映射到2D坐标,设存储坐标的载体为vector,vector以相机为参考,转换为2D坐标;但此时的2D坐标为笛卡尔坐标,原点在中间位置,需要转换为原点在左上角的屏幕坐标,通过将屏幕容器宽度的一半widthHalf、屏幕容器高度的一半heightHalf与存储坐标的载体vector进行换算来得到屏幕2D坐标。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810789872.9A CN108986183B (zh) | 2018-07-18 | 2018-07-18 | 一种全景地图的制作方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810789872.9A CN108986183B (zh) | 2018-07-18 | 2018-07-18 | 一种全景地图的制作方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108986183A CN108986183A (zh) | 2018-12-11 |
CN108986183B true CN108986183B (zh) | 2022-12-27 |
Family
ID=64549950
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810789872.9A Active CN108986183B (zh) | 2018-07-18 | 2018-07-18 | 一种全景地图的制作方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108986183B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110377366A (zh) * | 2019-07-24 | 2019-10-25 | 山东健康医疗大数据有限公司 | 一种拼接多区域的地图展现方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079151A (zh) * | 2006-10-13 | 2007-11-28 | 浙江师范大学 | 一种基于序列静态图像的360°环视全景生成方法 |
CN103716595A (zh) * | 2014-01-08 | 2014-04-09 | 深圳英飞拓科技股份有限公司 | 全景拼接摄像机和球机联动控制方法及装置 |
CN103854335A (zh) * | 2012-12-05 | 2014-06-11 | 厦门雅迅网络股份有限公司 | 一种行车记录仪全景视频生成方法 |
US9036044B1 (en) * | 2013-07-22 | 2015-05-19 | Google Inc. | Adjusting camera parameters associated with a plurality of images |
CN105976324A (zh) * | 2016-05-19 | 2016-09-28 | 温州大学城市学院 | 一种车载图像拼接方法 |
CN106799993A (zh) * | 2017-01-09 | 2017-06-06 | 智车优行科技(北京)有限公司 | 街景采集方法和系统、车辆 |
CN107451952A (zh) * | 2017-08-04 | 2017-12-08 | 追光人动画设计(北京)有限公司 | 一种全景视频的拼接融合方法、设备以及系统 |
CN107993197A (zh) * | 2017-12-28 | 2018-05-04 | 哈尔滨工业大学深圳研究生院 | 一种全景相机的拼接方法及系统 |
-
2018
- 2018-07-18 CN CN201810789872.9A patent/CN108986183B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101079151A (zh) * | 2006-10-13 | 2007-11-28 | 浙江师范大学 | 一种基于序列静态图像的360°环视全景生成方法 |
CN103854335A (zh) * | 2012-12-05 | 2014-06-11 | 厦门雅迅网络股份有限公司 | 一种行车记录仪全景视频生成方法 |
US9036044B1 (en) * | 2013-07-22 | 2015-05-19 | Google Inc. | Adjusting camera parameters associated with a plurality of images |
CN103716595A (zh) * | 2014-01-08 | 2014-04-09 | 深圳英飞拓科技股份有限公司 | 全景拼接摄像机和球机联动控制方法及装置 |
CN105976324A (zh) * | 2016-05-19 | 2016-09-28 | 温州大学城市学院 | 一种车载图像拼接方法 |
CN106799993A (zh) * | 2017-01-09 | 2017-06-06 | 智车优行科技(北京)有限公司 | 街景采集方法和系统、车辆 |
CN107451952A (zh) * | 2017-08-04 | 2017-12-08 | 追光人动画设计(北京)有限公司 | 一种全景视频的拼接融合方法、设备以及系统 |
CN107993197A (zh) * | 2017-12-28 | 2018-05-04 | 哈尔滨工业大学深圳研究生院 | 一种全景相机的拼接方法及系统 |
Non-Patent Citations (1)
Title |
---|
全景图拼接算法的设计与实现;杨刚;《重庆工学院学报(自然科学版)》;20070930;第21卷(第9期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN108986183A (zh) | 2018-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112053446B (zh) | 一种基于三维gis的实时监控视频与三维场景融合方法 | |
CN110300292B (zh) | 投影畸变校正方法、装置、系统及存储介质 | |
CN108564527B (zh) | 基于神经网络的全景图内容补全和修复的方法及装置 | |
US20120105581A1 (en) | 2d to 3d image and video conversion using gps and dsm | |
US11044398B2 (en) | Panoramic light field capture, processing, and display | |
JP2015022510A (ja) | 自由視点画像撮像装置およびその方法 | |
WO2023280038A1 (zh) | 一种三维实景模型的构建方法及相关装置 | |
CN112954292B (zh) | 一种基于增强现实的数字博物馆导览系统和方法 | |
CN109769110B (zh) | 一种3d小行星动态图的生成方法、装置及便携式终端 | |
CN111161398B (zh) | 一种图像生成方法、装置、设备及存储介质 | |
US11922568B2 (en) | Finite aperture omni-directional stereo light transport | |
CN109801354B (zh) | 全景处理方法和装置 | |
WO2020184174A1 (ja) | 画像処理装置および画像処理方法 | |
CN109859612A (zh) | 一种街景数据的三维注释的方法及其系统 | |
CN116109765A (zh) | 标注对象的三维渲染方法、装置、计算机设备、存储介质 | |
CN114283243A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN112288878B (zh) | 增强现实预览方法及预览装置、电子设备及存储介质 | |
CN108986183B (zh) | 一种全景地图的制作方法 | |
CN110047035B (zh) | 全景视频热点交互系统及交互设备 | |
CN114089836B (zh) | 标注方法、终端、服务器和存储介质 | |
CN113436247B (zh) | 一种图像处理方法、装置、电子设备及存储介质 | |
CN112312041B (zh) | 基于拍摄的图像校正方法、装置、电子设备及存储介质 | |
CN114332356A (zh) | 一种虚实画面结合方法和装置 | |
CN111260544B (zh) | 数据处理方法及装置、电子设备和计算机存储介质 | |
CN109379577B (zh) | 一种虚拟视点的视频生成方法、装置及设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |