Penyederhanaan geometri (generalisasi)


22

Apa cara yang disarankan untuk menyederhanakan geometri? Ingatlah proyeksi proyeksi, dan penyederhanaan geometri misalnya.

Saya pernah mendengar tentang mengonversi ke proyeksi 'equi-jauh' yang memungkinkan penyederhanaan tanpa distorsi, dan kemudian mengonversi kembali ke proyeksi yang Anda pilih.


4
Saya tidak yakin tetapi "generalisasi" mungkin merupakan tag yang lebih deskriptif untuk ini. Sederhanakan, setidaknya dalam konteks ArcGIS, adalah metode untuk memastikan kebenaran topologi. Wikipedia mengatakan penyederhanaan adalah bagian dari Generalisasi Kartografi. en.wikipedia.org/wiki/Cartographic_generalization
Kirk Kuykendall

Saran bagus @Kirk
John Weldon

Jawaban:


11

Seperti yang disebutkan glennon, algoritma standar untuk melakukan ini adalah Douglas-Peucker , yang merupakan algoritma default yang digunakan dalam perangkat lunak seperti PostGIS (yaitu GEOS) via St_Simplify, ArcGIS via Generalizedan GRASS via v.generalize. Artikel Wikipedia juga menautkan ke implementasi Python .

GRASS mendukung sejumlah algoritma berbeda, seperti yang dijelaskan di halaman bantuan untuk v.generalisasi .

Pada masalah proyeksi, saya pikir dalam hal ini herring merah yang dapat diabaikan. Satu-satunya masalah yang muncul dalam pikiran adalah berpotensi memadatkan garis untuk mencegah mereka menjadi terlalu disederhanakan.



3

Jika dengan "penyederhanaan", maksud Anda adalah pengurangan sederhana dari jumlah titik, gunakan algoritma penyaringan dasar, seperti filter peucker Douglass. Tautan yang bermanfaat untuk itu: http://mapshaper.org/

Jika dengan "penyederhanaan", maksud Anda mendapatkan bentuk yang lebih sederhana, algoritme penyaringan tidak selalu cocok. Algoritma generalisasi yang lebih maju harus digunakan. Beberapa dokumen tentang algoritma tersebut dapat ditemukan di sana: http://generalisation.icaci.org/ , dengan beberapa contoh hasil: http://generalisation.icaci.org/index.php/result . Hanya beberapa dari algoritma ini yang diimplementasikan dalam perangkat lunak GIS komersial yang umum. Beberapa dapat diakses menggunakan ini: http://webgen.geo.uzh.ch/


situs aci.ign.fr tidak dapat diakses. Apakah Anda tahu di mana kami dapat menemukan contoh "algoritma generalisasi lanjutan" yang Anda sebutkan?
radouxju

Url telah berubah, periksa: generalisation.icaci.org
julien

2

Jika Anda menyederhanakan geometri karena keterbatasan daya pemrosesan komputer, Anda mungkin ingin mempertimbangkan membuat mipmaps dengan masker alpha terkait untuk setiap geometri pada berbagai tingkatan.


Sangat menarik, maukah Anda menguraikannya?
John Weldon

Nah, untuk melakukan ini, Anda perlu merasterisasi setiap geometri vektor ke dalam bitmap untuk setiap level yang Anda izinkan pengguna memperbesar dan memperkecil peta. Kemudian, alih-alih menggambar geometri vektor untuk setiap level berulang kali, Anda hanya akan membuat bitmap saja. Jadi, perhitungan untuk rasterisasi geometri (yang mahal jika Anda memiliki satu ton simpul) dilakukan di depan alih-alih setiap kali pengguna melakukan suatu tindakan. Topeng alfa muncul ke dalam gambar ketika Anda menggambar bitmap - itu digunakan sehingga hanya bentuk itu sendiri yang digambar.
Jon Bringhurst

1

Ini adalah topik yang sulit, karena Anda harus mempertimbangkan semacam resolusi dataset Anda. Kapan verteks geometri sama dengan verteks lain? Saya tidak pernah mendengar tentang konversi dan konversi kembali, meskipun itu akan menjadi ujian yang menarik.

Geometri sederhana, menurut OGC, geometri yang tidak berpotongan sendiri, dan dalam hal poligon, geometri yang berorientasi dengan benar, untuk kulit terluar dan kulit dalam dan selanjutnya.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.