簡介:本方案利用智能算法處理3D攝像頭的點云數據生成GeoJSON漆改,然后使用leaflet框架將GeoJSON渲染成地圖,并在其上實現常規(guī)地圖具有的交互操作睦裳,為用戶提供室內定位乓序、導航阳懂、查找服務。
描述:
????????常見的電子地圖都是瓦片地圖展东,瓦片地圖的原理用一張圖就可以表示出來赔硫,如下:
指將一定范圍內的地圖按照一定的尺寸和格式,按縮放級別或者比例尺琅锻,切成若干行和列的正方形柵格圖片卦停,對切片后的正方形柵格圖片被形象的稱為瓦片(Tile)。然后采用金字塔地圖模型在前端展示這些瓦片即可恼蓬。? ? ? ? ? ?
????????我們的方案并未采用瓦片地圖模式惊完,而是把GeoJSON這種地圖通用格式數據所攜帶的地理信息直接繪制到前端來生成地圖。這種方式后端傳送給前端的是GeoJSON數據处硬,不是一張張的瓦片小槐。
????????GeoJSON是一種對各種地理數據結構進行編碼的格式,基于Javascript對象表示法的地理空間信息數據交換格式荷辕。GeoJSON對象可以表示幾何凿跳、特征或者特征集合。GeoJSON支持下面幾何類型:點疮方、線控嗜、面、多點骡显、多線疆栏、多面和幾何集合。GeoJSON里的特征包含一個幾何對象和其他屬性惫谤,特征集合表示一系列特征壁顶。
? ? ? ? 我們使用了leaflet框架進行GeoJSON地圖的自動化繪制,省了我們自己寫代碼解析GeoJSON溜歪,把GeoJSON里的點若专、線、面通過canvas繪制到前端的麻煩蝴猪。leaflet框架還提供了相當豐富的API供我們對繪制的地圖進行操作调衰,如自定義圖層的展現樣式膊爪、給具體圖層綁定事件等。再加上眾多l(xiāng)eaflet插件窖式,就可以實現大部分地圖都具有的功能蚁飒,如導航、定位等萝喘。
? ? ? ? 至于GeoJSON里的地圖數據是如何來的淮逻,我們后端的同事使用了一個開源的算法,然后用大量專用3D攝像頭拍攝出來的點云數據訓練這個算法阁簸,使其識別點云數據里的房間爬早、墻、門窗等室內元素启妹,從中提取出來我們需要的地圖數據筛严,生成我們需要的GeoJSON。市面上的3D攝像頭已經不少饶米,如Intel的RealSense攝像頭桨啃、微軟的Kinect攝像頭等,都能夠提供點云數據檬输。
????????這樣一旦有新的場館需要我們提供室內地圖服務照瘾,我們就可以派人攜帶3D攝像頭去現場拍攝,然后用算法處理3D攝像頭拍攝出來的點云數據生成這個場館的GeoJSON丧慈,然后前端就可以在應用中繪制出該場館的室內地圖析命,再結合藍牙定位或者Wi-Fi定位等技術,為客戶提供室內導航逃默、定位鹃愤、規(guī)劃路徑、查找房間等服務完域。
創(chuàng)新點:
? ? ? ? 1软吐、室內地圖場景多、變化頻繁吟税,再加上位于建筑物內部关噪,地圖數據采集比采集室外地圖數據困難了許多,本方案利用算法處理3D攝像頭數據解決了室內地圖數據采集難這個痛點問題乌妙。
? ? ? ? 2、我們采用更為輕巧的GeoJSON數據格式來傳輸地圖數據建钥,可以對室內地圖進行定制化生成藤韵。
帶來的影響:
? ? ? ? 目前我們利用這個方案制作了體檢中心、會展中心兩個應用POC熊经,探索室內地圖方面的商業(yè)化應用泽艘,相信隨著研究的深入欲险,這方面的應用會越來越多,越來越成熟匹涮。