摘要:當你駕輕就熟地用無人機拍攝了某個地區的航拍圖像后,除了分享到微信朋友圈里,還可以做些什么呢或許能助你開啟思路。
當你駕輕就熟地用無人機拍攝了某個地區的航拍圖像后,除了分享到微信朋友圈里,還可以做些什么呢?或許 OpenDroneMap 能助你開啟思路。
OpenDroneMap 是一個開源的航拍圖像處理工具,可以把航拍圖像進行點云、正射影像和高程模型等轉換處理。
一般的無人機用的都是「傻瓜式」的相機,其實這跟你用手機或普通數碼相機拍的沒差,只是拍攝的角度不一樣而已。它們拍出來的照片都是非量測影像(non-metric imagery),而 OpenDroneMap 則可以將這些非量測影像轉換成三維地理建模數據,并應用在地理信息系統中。
具體而言,OpenDroneMap 可以將航拍圖像處理為下面幾種格式的數據:
點云(Point Clouds)
紋理數字表面建模(Textured Digital Surface Models)
正射校正影像(Orthorectified Imagery)
數字高程模型(Digital Elevation Models)
……
OpenDroneMap 支持 Docker,這意味著你可以在不同的操作系統上運行 OpenDroneMap。下面以 Mac OS 為例,介紹 OpenDroneMap 的使用方法。
1、安裝 Docker CE到 Docker 官網 https://docs.docker.com/engine/installation/ 找到并下載適用于你所使用的操作系統的 Docker CE 版本(Docker EE 是企業版,暫時用不上)。經過「傻瓜式」的安裝后,可以在 Terminal 上輸入 docker --version 檢驗 Docker 是否安裝成功。
確認 Docker 成功安裝后,在 Terminal 上輸入以下指令:
docker pull opendronemap/opendronemap
Docker 就會從 Docker Hub 中下載 OpenDroneMap 的鏡像到本地中。為提高下載速度,建議提前使用 Proxifier 之類的工具(建議自行 Google)讓 Terminal 走上代理道路。鏡像下載完成后,在 Terminal 輸入 docker images 指令,就能查看到剛才下載的 OpenDroneMap 的鏡像了。
在 Finder 上任意一目錄新建一個名為 images 的文件夾,作為待處理圖片的存放位置。我的習慣是以「項目名 / images」的方式來對目錄進行命名,這樣能更直觀地管理文件。比如:
//odm_test_1/images
//odm_test_2/images
接下來,就需要把你需要進行處理的航拍影像拷貝到 images 文件夾中了,如果你暫時沒有這些航拍圖像的話,可以在 https://github.com/OpenDroneMap/odm_data 上下載范例素材。
我在網站上下載了「aukerman」素材的圖像文件,這個范例素材似乎是對某個綠化公園連續拍攝的航拍圖像,查看每個圖像文件的 info(Command + I),都能找到它的經緯度信息。我們可以用 OpenDroneMap 對這些文件進行「正射影像(拼接)」和「紋理網面建模」的處理。
在航拍圖像文件拷貝到 images 目錄以后,打開 Terminal 并定位到項目文件夾(比如 odm_test_1)中,執行以下指令:
docker run -it --rm -v $(pwd)/images:/code/images -v $(pwd)/odm_orthophoto:/code/odm_orthophoto -v $(pwd)/odm_texturing:/code/odm_texturing opendronemap/opendronemap
指令的作用是:通過 OpenDronMap 對 odm_test_1/images 目錄下的圖像文件同時進行「正射影像(odm_orthophoto)」和「紋理網面建模(odm_texturing)」的圖像處理(作為測試,為了節省時間,你可以只選取 odm_orthophoto 或 odm_texturing 其中一種處理方式):
指令解釋:
docker run -it --rm
Docker 的運行指令。-it 指讓 Docker 分配一個偽輸入終端并以交互模式運行容器;--rm 是指在容器運行完之后自動清除以節省電腦存儲空間。
-v $(pwd)/images:/code/images
-v 是用來將本地目錄綁定到容器中的,在本例子中,是讓 OpenDroneMap 知道待處理的照片在哪里;冒號前面,代表的是本地 images 路徑,其中 (pwd) 代表當前 Teminal 定位目錄的絕對路徑,你可以更改為其他目錄的絕對路徑;冒號后面,是指容器的路徑,這個是不能更改的。
-v $(pwd)/odm_orthophoto:/code/odm_orthophoto
這行指令,是指希望使用 OpenDroneMap 對圖像文件進行怎么樣的處理,你可以根據項目的需要,輸入不同的處理指令,OpenDroneMap 提供了以下幾種處理方式:
odm_meshing # 3D 網面建模
odm_texturing # 紋理網面建模
odm_georeferencing # 地理配準后的點云圖
odm_orthophoto # 正射影像圖
opendronemap/opendronemap
這是指明需要調用的鏡像,這里是調用 Repository 為 opendronemap/opendronemap 的鏡像,可以用該鏡像的 tag(如果有設置的話)和鏡像 ID 替代。
5、查看結果指令執行后,就交給程序去處理了。運行時間可能會稍長,請耐心等候,一切順利的話,Terminal 就會下面的提示:
然后在項目的文件夾中(比如 odm_test_1),就能在 odm_orthophoto 和 odm_texturing 目錄中看到對應的輸出結果了。
正射影像的輸出結果的 png 預覽圖:
或許有朋友會說,最后還不是一張常見的無人機俯視航拍圖,但其實 odm_orthophoto 的輸出結果還有一個后綴為 tif 的 GeoTIFF 文件,這可以應用在 QGIS 上作為光柵圖層,供地理信息分析之用(比如實現地圖的修測更新)。
小結上述教程中的 GIS 術語可能翻譯得不夠到位,如有不妥的地方望請指出。
整體來說,有 docker 這樣的工具能很大程度上減少配置開發環境的時間,也簡化了不少的操作步驟,不過需要注意的是 OpenDroneMap 的項目還是挺占用電腦空間的,所以在操作之前,最好能確保電腦有足夠的剩余空間。
上面的例子采用的是范例素材的航拍圖像,如果要實際應用到自己的項目中,則需要自己使用無人機,結合相關軟件的航線規劃和定時拍攝功能,對某一個地區進行連續拍攝,將拍攝的圖像文件導入到「images」文件夾中,再按教程步驟執行就能實現數據處理了。
此外,Docker 也有 Windows 版本,把教程中 Terminal 的操作換成 Windows 系統的 Cmd,或許也能實現(沒有嘗試過,所以不敢打包票)。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/27002.html
摘要:上一篇推送介紹的可以根據無人機航拍圖像的信息和圖像重疊度實現快速建模以及地圖構建,但命令行的操作界面難免會讓部分用戶感到不適應。有自己的官網,盡管是名稱上帶有字眼,但這并不意味著你可以在官網上對航拍圖像進行操作。 上一篇推送介紹的 OpenDroneMap 可以根據無人機航拍圖像的 GPS 信息和圖像重疊度實現快速建模以及地圖構建,但命令行的操作界面難免會讓部分用戶感到不適應。所以今天...
摘要:上一篇推送介紹的可以根據無人機航拍圖像的信息和圖像重疊度實現快速建模以及地圖構建,但命令行的操作界面難免會讓部分用戶感到不適應。有自己的官網,盡管是名稱上帶有字眼,但這并不意味著你可以在官網上對航拍圖像進行操作。 上一篇推送介紹的 OpenDroneMap 可以根據無人機航拍圖像的 GPS 信息和圖像重疊度實現快速建模以及地圖構建,但命令行的操作界面難免會讓部分用戶感到不適應。所以今天...
摘要:所謂的生成式對抗網絡是深度學習領域內最熱門的主題,有望以更少的人力創建更擅長學習的系統。警察與偽造者生成式對抗網絡減少深度學習所需要的數據生成式對抗網絡通過減少訓練深度學習算法所需的數據量來解決該問題。 如果您還未聽說過生成式對抗網絡(generative adversarial network,GAN),不用擔心,這篇文章將解答您的困惑。?所謂的生成式對抗網絡是深度學習領域內最熱門的主題,...
摘要:面對這類問題,有一個專門的機器學習分支來進行研究和解決。如圖所示,分別是三個類別的均值中心稱,將測試樣本進行后,與這個中心進行距離計算,從而獲得的類別。 分類非常常見,但如果每個類只有幾個標注樣本,怎么辦呢?筆者所在的阿里巴巴小蜜北京團隊就面臨這個挑戰。我們打造了一個智能對話開發平臺——Dialog Studio,以賦能第三方開發者來開發各自業務場景中的任務型對話,其中一個重要功能就是對意圖...
閱讀 2690·2021-11-08 13:16
閱讀 2367·2021-10-18 13:30
閱讀 2237·2021-09-27 13:35
閱讀 1993·2019-08-30 15:55
閱讀 2442·2019-08-30 13:22
閱讀 576·2019-08-30 11:24
閱讀 2077·2019-08-29 12:33
閱讀 1813·2019-08-26 12:10