Saya mencoba menemukan alat untuk membuat kerangka dataset vektor besar menggunakan QGIS dan bundelnya. Itu harus secara langsung dapat diprogram melalui Python atau commandline (QGIS, GRASS, OGR dll semua baik-baik saja).
Targetnya adalah poligon tipis besar dengan lubang yang mewakili area jalan dan saya perlu mendapatkan perkiraan jaringan jalan melalui kerangka.
Apa yang saya temukan sejauh ini:
- GRASS 7.0 memiliki
v.skeleton
yang seharusnya cukup baik tetapi tampaknya tidak akan diintegrasikan dengan QGIS dalam waktu dekat. - CGAL memiliki kerangka skeletonize, tentu saja, tetapi dukungan Python sangat buruk.
- pySkeleton tidak berfungsi untuk saya dan saya mungkin tidak punya waktu untuk menyelamatkan kode.
Alternatif lain (openJump skeletonizer, plugin ArcGIS lama ini ...) tidak dapat dengan mudah dicolokkan ke QGIS / Python.
Ada saran lain?
Jawaban:
Dokumen ini "Kerangka Poligon Menggunakan PostGIS" menjelaskan proses yang menggunakan alat-alat dari PostGIS dan GRASS , yang keduanya mungkin bisa dipanggil. Disebutkan menggunakan PostGIS untuk membuat kerangka vektor dan membersihkannya menggunakan PostGIS lagi atau GRASS.
Ada alat yang ada dari Toolbox Pemrosesan yang mudah-mudahan menyederhanakan hal-hal saat memanggil dari Python / command line seperti:
Impor ke PostGIS - gunakan untuk mengimpor dataset Anda.
PostGIS menjalankan SQL - gunakan untuk menjalankan
ST_StraightSkeleton
fungsi.v.clean - gunakan untuk menjalankan
rmdangle
alat.Semoga ini membantu!
sumber
Salah satu, opsi yang agak bulat mungkin menggunakan modul skeletonization grid SAGA ( http://www.saga-gis.org/saga_module_doc/2.1.3/imagery_segmentation_1.html ), baik melalui QGIS atau menggunakan
saga_cmd
utilitas baris perintah . Anda harus mengonversi poligon Anda menjadi raster SAGA terlebih dahulu.Kalau tidak, seperti yang dinyatakan oleh @ Alpha-beta-soup, Anda bisa menggunakan
v.skeleton
dari GRASS di baris perintah.Untuk menggunakan alat baris perintah dari dalam Python, gunakan
subprocess
modul untuk meneruskan string perintah ke sistem.sumber