Alat open source untuk mengkonversi DEM ke model 3D

11

Saya ingin mengonversi file DEM (Digitial Elevation Model) (mis. Dari SRTM) menjadi model 3D yang kemudian dapat saya edit dengan alat pemodelan 3D biasa (misalnya Meshlab / Blender / dll.). Namun saya menggunakan Ubuntu Linux.

Jadi, apakah ada program / alat open source yang bisa melakukan ini? Dan jika demikian, dapatkah Anda memberi saya panduan sederhana tentang cara mengkonversi DEM ke model 3D. (program baris perintah ditangguhkan)

Rory
sumber

Jawaban:

7

Blender memiliki API Python. Oleh karena itu, saya menggunakan Python di Blender dan mengimpor perpustakaan GDAL dan membangun mesh Blender-asli langsung dari data GIS. Satu-satunya hal yang perlu Anda perhatikan adalah bahwa versi GDAL yang Anda miliki cocok dengan versi Python dalam rilis Blender yang Anda gunakan.

Plugin EDIT:
Jika Anda tidak ingin menulis skrip Anda sendiri menggunakan Blender Python API dan GDAL, ada beberapa plugin yang tersedia sebagai standar yang dapat membantu:

  1. Impor DXF
  2. Ada importir untuk OBJ, X3D dan VRML dan beberapa sistem GIS 3D akan mengekspor ke ini (misalnya ArcScene dan NVIZ) meskipun rute ini mungkin harus benar-benar gratis.

Ada tambahan untuk data XYZ tetapi tidak standar dan ditujukan terutama untuk data molekuler, meskipun mungkin Anda bisa membengkokkannya sesuai keinginan Anda. Untuk berbagai importir luar biasa untuk Blender lihat di sini . Ada importir PDS .IMG di Blender tetapi GDAL hanya dapat membaca file IMS PDS (jangan bingung dengan file Erdas IMG yang berbeda).

Jadi, sungguh, taruhan terbaik Anda jika Anda memiliki GeoTiff, ASC atau hampir semua data raster ketinggian lainnya adalah dengan menulis skrip kecil untuk beralih ke raster karena tidak ada plugin yang sudah jadi untuk sebagian besar kasus penggunaan, kecuali Anda dapat ekspor DTM Anda ke DXF, VRML atau OBJ.

MappaGnosis
sumber
Apakah ada plugin tertentu atau sesuatu yang dapat saya unduh dan mainkan?
Rory
1
Best terbaik Anda adalah skrip Anda sendiri - lihat suntingan saya.
MappaGnosis
4

Saya telah menemukan bahwa NVIZ (yang merupakan bagian dari paket GRASS) adalah alat yang berguna untuk memvisualisasikan data DEM sebagai model 3D.

Untuk menginstal plugin GRASS (jika Anda sudah menginstal QGIS), cukup arahkan ke Plugin -> Kelola dan Instal Plugin -> Dapatkan Lebih Banyak dan instal GRASS. Pastikan dicentang di daftar Kelola dan Instal Plugin Anda!

  1. Setelah Anda menginstal GRASS, mulailah dengan menambahkan layer raster Anda. Anda dapat melakukannya dengan menavigasi ke Layer -> Add Raster Layer -> Pilih

  2. Kemudian buat mapset baru di GRASS. Lakukan dengan menavigasi ke Plugin -> GRASS -> Mapset baru atau gunakan bilah alat GRASS yang seharusnya terlihat. A. Pilih lokasi untuk dataset GRASS Anda B. Masukkan nama lokasi baru pilihan Anda C. Pilih proyeksi yang diinginkan D. Pilih wilayah dari daftar turun bawah atau pilih secara manual menggunakan koordinat lat / panjang (Anda dapat mencari lat / panjang lokasi Anda di web) E. Masukkan nama mapset baru dan kemudian klik Selesai.

  3. Selanjutnya Anda ingin memuat DEM atau layer raster Anda ke GRASS. Anda akan melakukan ini dengan A. Navigasi ke Plugins -> GRASS -> Buka alat GRASS B. Di bawah "Modules List", pilih "r.in.gdal.qgis" C. Di bawah "Loaded layer", pilih layer Anda dari daftar dropdown, dan beri nama file output D. Klik "Run"

  4. Sekarang Anda perlu menambahkan lapisan raster GRASS ke mapset Anda A. Arahkan ke Plugins -> GRASS -> Tambahkan lapisan raster GRASS atau klik. B. Pilih lokasi dan peta Anda, lalu pilih layer Anda dan Klik "OK"

  5. Anda mungkin ingin mewarnai raster Anda. Jika demikian, A. Pastikan Anda memilih layer raster keluaran yang benar B. Arahkan ke Plugin -> GRASS -> Buka alat GRASS C. Di bawah "Modul Daftar", klik "r.colors.table". D. Pilih layer input, dan kemudian pilih "Type of color table" E. Tekan "Run".

  6. SEKARANG untuk bagian yang menyenangkan. Visualisasi dalam 3D menggunakan NVIZ. Jadi, Anda ingin A. Mengatur wilayah peta spesifik untuk pemodelan 3D dengan menavigasi ke Plugin -> GRASS -> Edit Wilayah GRASS Saat Ini. Kemudian pilih secara manual wilayah yang diinginkan dengan menggambar bingkai merah dengan mouse Anda atau atur koordinat di kotak dialog yang muncul. (Ini membantu NVIZ menentukan resolusi apa yang akan digunakan) B. Navigasi ke Plugin -> GRASS -> Buka alat GRASS C. Di bawah "Modul Daftar", pilih "nviz" D. Pilih raster untuk Ketinggian dan Warna (mereka bisa sama satu), dan klik pada kotak di sebelah kanan (yang berarti "Gunakan wilayah peta ini") E. Tekan "Run"

Kemudian bermain-main dengan berbagai pandangan, ketinggian dan pencahayaan hingga Anda memiliki gambar yang diinginkan!

Semoga ini bisa membantu dan beri tahu saya jika Anda memiliki pertanyaan!

Zizah
sumber
Saya akan perhatikan bahwa saya mengalami masalah dengan proyeksi saat menggunakan lapisan SRTM. Adakah yang punya saran?
Zizah
Masalah apa?
MarkusN
2

Belum pernah mencobanya, tetapi di sini adalah NVIZ . Yang Anda butuhkan adalah QGIS, yang dapat Anda unduh untuk Ubuntu Linux.

Akheloes
sumber
1

nviz bukan aplikasi mandiri, ini adalah bagian dari GRASS GIS , untuk visualisasi dan animasi 3D. Jika Anda ingin mengekspor raster, Anda memerlukan GRASS GIS (atau GRASS di QGIS). Anda dapat mengekspor DEM dalam berbagai format file , termasuk Terragen Heightfield (.ter), VTK, PovRay, xyz, dll.

Anda juga dapat menggunakan Paraview untuk membuka file VTK dan mengekspornya ke berbagai format lainnya

Tetapi Blender juga memiliki plugin untuk mengimpor DEMS secara langsung, sebagai Blender Digital Elevation Importir atau mengimpor shapefile dan raster ( ESRI Shapefile impor / ekspor dan importir raster georeferensi ), misalnya.

Kodex juga menghadirkan solusi untuk memvisualisasikan data QGIS dengan Blender dengan format SVG

Lihat juga Shaded Relief in Blender dengan data SRTM

gen
sumber
1

Anda cukup menambahkan file dem sebagai * .tif dalam blender dengan addon "import image as plane". Lihat posting ini di mana Anda dapat melihat bagaimana saya membuat beberapa peta 3d resolusi tinggi menggunakan dem in blender: -> /gis//a/80842/24809

Setelah memuat dem ke dalam blender, Anda juga dapat mengeditnya karena Anda dapat mengedit gambar.

Antoine
sumber
0

Sudahkah Anda mencoba Importir DEM USGS & GTOPO30 ?

Pecinta kucing
sumber
Beberapa tangkapan layar (dan nama file) pada halaman itu membuatnya terlihat seperti program MS Windows. Saya butuh sesuatu yang bisa bekerja di Linux.
Rory
Saya tidak yakin apakah itu berfungsi di Linux atau tidak. Mungkin Anda dapat memeriksa dokumentasinya untuk ini.
Catlover
0

IMO kombinasi gdal2xyz.py dan triangle dan konfigurasi ulang file output triangle (.node, .ele) dalam salah satu format teks yang didukung blender atau meshlab harus berfungsi.

huckfinn
sumber