傾斜攝影測量知識基礎
所謂“站在巨人的肩膀上”在這篇文章中就很好的體現出來了,本文的一些圖和一些概念就是借鑑“巨人”發表的文章中的圖和概念。這還得感謝這些“巨人”把我們領向一條光明大道。我不是攝影測量的專業人士,GIS圈也只是個剛入門的菜鳥。請允許我從一個菜鳥的角度,來說說那些菜鳥入門級的傾斜攝影測量知識。 近些年,傾斜攝影測量在GIS圈掀起了一陣巨浪,有人說他顛覆傳統的測繪領域,有人說他替代了傳統建模方式。正因為傾斜攝影測量被帶上了這麼多光環,人們開始對他有形形色色的猜想,讓它變得越來越神祕。就讓我們們來看看傾斜攝影資料的效果圖。
我們先來看看傾斜攝影測量,和我們傳統的影像有什麼區別? 從資料採集的方式來看,傳統影像是通過飛機上搭載的航攝儀對地面連續攝取相片,而後經過一系列的內業處理得到的影像資料,獲取的成果只有地物俯視角度資訊,也就是視角垂直於地面。而傾斜攝影測量測試通過飛機或無人機搭載5個相機從前、後、左、右、垂直五個方向對地物進行拍攝,再通過內業的幾何校正、平差、多視影像匹配等一系列的處理得到的具有地物全方位資訊的資料。簡單理解就是,影像上地物是在一個平面的,傾斜攝影測量地物是具有真實高度的。
我們知道了傾斜攝影資料採集的方式,通過傾斜攝影資料加工的關鍵技術,比如多視影像聯合平差、多視影像關鍵匹配、數字表面模型生產和真正射影像糾正等,得到地表資料更多的側面資訊,加上內業資料處理,得到資料的三維模型。 下面,小夥伴們一起來揭開傾斜攝影測量資料神祕的面紗吧!傾斜攝影測量的資料本質上來看是mesh模型,什麼是mesh模型呢?mesh模型就是網格面模型,它是點雲通過一些演算法,比如區域增長法、八叉樹演算法和波前演算法等等構成的。而點雲是在同一空間參考系下用來表示目標空間分佈和目標表面特性的海量點集合。內業軟體基於幾何校正,聯合平差等處理流程,可計算出基於影像的超高密度點雲,如下圖: 最後經過紋理對映構建真實三維模型,如下圖: 下面我們說說傾斜攝影測量常用的處理軟體。目前國內外比較流行的傾斜攝影自動建模軟體如下: 1) 法國Acute3D公司的Smart3DCapture。基於圖形運算單元GPU的快速三維場景運算軟體,可運算生成基於真實影像的超高密度點雲,它能無需人工干預地從簡單連續影像中生成逼真的三維場景模型。 國內有多家重要的資料生產單位正在使用該軟體。 2) 法國INFOTERRA公司的畫素工廠(Pixel Factory)StreetFactory子系統通過對獲得的傾斜影像進行幾何處理、多視匹配、三角網構建,提取典型地物的紋理特徵,並對該紋理進行視覺化處理,最終得到三維模型。 3) 美國蘋果公司收購C3公司所採用自動建模技術。 4) 美國Pictometry公司的Pictometry傾斜影像處理軟體提供了EFSElectronic Field Study。 5) 國內有多家企業及單位對傾斜模型也有比較深入的研究,形成自己獨特的模型工藝流程。 目前網路上可以方便找到Smart3DCapture Viewer,並且在Acute3D官網提供了示範的資料, 感興趣的同學不妨下載試用,下載地址:http://www.acute3d.com/s3c-viewer/。 好,囉嗦了這麼多,我們們言歸正傳,超圖可以用傾斜攝影測量的資料做些啥呢? 傾斜攝影測量的資料格式很多,超圖目前支援的是OSGB檔案格式的傾斜模型,OSGB檔案格式自帶了多級金子塔的模型精度級別,為了充分利用其LOD結構,超圖平臺通過scp索引檔案直接載入模型,SuperMap iDesktop 7C版本已經為使用者提供了生成scp的工具,通過在場景中直接載入scp的方式,可以快速的在三維場景中顯示不同精度的LOD層級。這裡得說明下LOD這個概念,LOD(Level of Detail)是GIS平臺提高效能的一個重要法寶,即對同一個資料從清晰到模糊有多層。當螢幕視角距離某個地物近時,軟體自動呼叫最清晰層的資料;當螢幕視角遠離該地物時,則自動切換為模糊層的資料。想在前年使用超圖對接OSGB資料時,使用的還是資料匯入,再生成模型快取的方式,這種方式耗時長而且資料載入慢,這樣做完全不利於使用者體驗。現在以這種scp直接載入資料的方式,真是好太多太多了。 傾斜攝影測量的資料有這麼多的好處,比如瀏覽速度快、資料載入快、資料精度高、資料真實性高、人員成本低、和資料獲取耗時短等等,但是用過的人都知道,單體化是傾斜攝影測量應用的一大問題,為什麼這麼說呢?我們們的傾斜攝影資料是一個整體,不像簡單模型那樣是一個或者同類物件組成的,所以我們們想要傾斜模型像簡單模型那樣能夠進行查詢、分析和編輯等功能,這就是傾斜模型存在的一個大問題。 那麼什麼叫單體化?我們有必要先了解下這個概念。簡單的說單體化也就是獲取或者分離一個場景中的單個或者一類物件。怎樣獲取或者分離呢?不同的人有不同的看法,比如說一些人認為應該用切割的方式來獲取或者分離;而超圖則是用向量化的方式來獲取或者分離,這主要是超圖得益於二三維一體化的技術,將二三維的向量資料與傾斜攝影測量資料相結合,實現了資料的單體化,有了這個法寶,什麼查詢,分析,編輯等等功能的實現就水到渠成了。小菜我就以這兩種方式來談談單體化問題。 提倡切割的人認為,單體化單體化,不僅僅是要單體,而且還要實現分離的效果,最後把同類的給分離出來,完成分離之後給後期基於此資料做查詢、分析和編輯等功能時提供方便。現在我們來看看切割出來的效果:
上面兩張圖看來切割的方式展現出來的效果還蠻不錯的,有條有理的,但是當你拉近到一定程度的時候效果是這樣的: 這樣看來切割的缺點就不言而喻了,出現的鋸齒狀是使用者最不願看到的,而且這也不是傾斜攝影該有的展示效果。這是效果問題,那麼對於傾斜攝影的話,我們後續還要進行資料處理,切割之後的傾斜攝影要替換人工精細建模的時候, 如何才能把鋸齒狀邊緣與精細模型的邊緣對接上去,使它們能夠達到無縫結合?要隱藏某種地物的時候露出鋸齒狀的空洞,該如何解決?而且這樣切割之後,也拋棄了傾斜攝影資料自帶的LOD的優點,導致GIS平臺只能用按照普通模型的方法來構建LOD。這些都應該是 “切割工程師”需要考慮的。 說完了切割我們們來一起來探討下向量化的方式,何謂向量化?向量化則是用簡單的面資料,通過貼附的方式展現在傾斜攝影模型資料上,在保證效果、不破壞原始資料和LOD的同時,最大的好處還在於它打通了基於三維的傾斜攝影與基於二維的向量面之間的關鍵“關卡”,實現三維和二維GIS的完美一體化。現在小菜我就給大家帶來大神做的向量化的單體化的效果圖: 看到了這樣的效果,小夥伴們是怎樣想的呢?上面我們們介紹了單體化的內容,現在我們們來說說向量化解決了傾斜攝影資料的一個重大問題水面“破洞”現象,“破洞”是由於水面的高反射現象使得相機在獲取水面資訊的時候被“致盲”了,使得那片區域的資訊不準確。下面我們們來看看修補前後的效果圖: 超圖彌補的還不止一個傾斜攝影資料本身的問題,比如樹的還原度不高等問題。大家都知道相機是有拍攝盲區,比如立交橋的下面,建築的屋簷下面,這些被遮擋的地方,而這盲區也是不可避免的,就像人的眼睛不能看到遮擋物後面的區域,這片區域就是我們所謂的盲區 。對於這個區域目前各個公司有不同的想法,目前聽來,才疏學淺的我覺得,傾斜攝影測量+街景的想法很靠譜,既可以利用現有的資源,同時還能彌補互相的不足 ,不過街景資料的覆蓋程度和資料更新的演算法也是個問題,那就讓我們拭目以待。下面這幅圖就給大家說明了相機盲區和樹的還原度問題。 在小菜我看來,傾斜資料的價值還需要挖掘,它能提供給我們的價值遠不止目前看到的,隨之資料精度的不斷提高,採集速度的加快,有可能在未來的某一天,傾斜攝影測量的資料可能會成為人們瞭解現實環境的重要手段。 但是猶如上文提及到的一系列功能模組,我們也可以看到傾斜攝影的一些缺陷:比如傾斜攝影相機的盲點區域,比如立交橋下、房屋遮擋處;水面的“破洞”現象;不規則模型的還原度不高,比如說樹等等,造成這些缺陷的主要原因還在於傾斜攝影相機的拍攝技巧、硬體、還原模型的計算方式等因素。在這裡小菜我也希望大家一起努力的學習把傾斜攝影這個技術提升到一個新的高度,也讓我們的數字化城市、數字化地球更加真實、漂亮、更具觀賞性。未來是我們們的!
本文轉載自https://blog.csdn.net/supermapsupport/article/details/47129077
相關文章
- 傾斜攝影技術構建圖撲 WebGIS 智慧展館Web
- 傾斜攝影三維模型的立體裁剪的問題分析模型
- 如何實現傾斜攝影三維模型OSGB格式輕量化模型
- 傾斜攝影osgb格式檔案,進行座標轉換
- 五款傾斜攝影與三維資料處理工具介紹:GISBox、Cesiumlab、OSGBLab、靈易智模、傾斜伴侶
- Web測試基礎-Html基礎知識WebHTML
- 航拍傾斜攝影 Web 3D GIS 數字孿生智慧火電廠Web3D
- 【1】測試基礎知識
- 無人機航測傾斜攝影測量內業工作站叢集的搭建方法與操作步驟詳解:以CC軟體(Context Capture)為例無人機ContextAPT
- 軟體測試基礎知識
- 介面測試--基礎小知識
- 介面測試之基礎知識
- 效能測試基礎知識體系
- Hive資料傾斜Hive
- 基礎知識
- salesforce零基礎學習(九十九)Salesforce Data Skew(資料傾斜)Salesforce
- web技術分享| WebRTC控制攝像機平移、傾斜和縮放Web
- 遊戲基礎知識——遊戲的“自我賦權”和“非自我賦權”傾向遊戲
- 滲透測試基礎知識----MySQL 配置MySql
- 效能測試必備基礎知識(二)
- 軟體效能測試基礎知識分享
- AI 基礎知識AI
- Webpack 基礎知識Web
- Dart基礎知識Dart
- RabbitMQ基礎知識MQ
- webpack基礎知識Web
- javascript基礎知識JavaScript
- ThinkPHP基礎知識PHP
- Laravel基礎知識Laravel
- Redis基礎知識Redis
- Docker基礎知識Docker
- 程式基礎知識
- Envoy基礎知識
- DockerFile基礎知識Docker
- Nginx基礎知識Nginx
- CSS基礎知識CSS
- Java基礎知識Java
- PRML 基礎知識