Menganalisis perbedaan antara dua shapefile untuk memasukkan hasilnya ke dalam shapefile baru?


9

Saya memiliki dua shapefile poligon dari wilayah yang sama dari dua tahun yang berbeda (1985 dan 1997) dan saya perlu menganalisis perbedaan antara kedua shapefile yang menghasilkan polifon shapefile ketiga yang hanya menampilkan perbedaan.

Shapefile meliputi area dalam kota dengan bangunan, taman, area tertutup / tertutup dan area perairan. Saya perlu mencari tahu misalnya jika sebuah bangunan dirancang / dibangun atau jika taman dipindahkan atau ditutup atau hal-hal serupa. Ada perbedaan antara bentuk.

Saya perlu hasilnya berada di bentuk ketiga, baru. Apakah ada cara otomatis untuk mencapai ini?

Saya bekerja dengan geodatabase file proprietary di ArcGIS 10.1, jadi saya lebih suka solusi di ArcGIS. Tetapi jika ada cara mudah melakukan ini di QGIS, saya akan menyambutnya juga.

Saya pikir mungkin untuk bekerja dengan analisis topologi di ArcGIS tapi saya tidak yakin misalnya bagaimana membandingkan bentuk dengan atribut: Setiap bentuk memiliki bidang "tipe" dalam tabel atribut dan saya perlu membandingkan tidak hanya bentuk tetapi jenis poligon.

Catatan, Menemukan perbedaan antara shapefile menggunakan ArcGIS untuk Desktop? terdengar mirip, tapi saya sedang mencari output dalam format file bentuk poligon.

Ini adalah proses deteksi perubahan pada data vektor (tidak ada masalah penginderaan jauh). Ada beberapa komentar yang bagus dalam jawaban ini tetapi tidak ada solusi sama sekali.


1
Ketika Anda mengatakan perbedaan, apakah maksud Anda perbedaan dalam geometri, atribut, atau keduanya? Apakah ini proses deteksi perubahan?
Ryan Garnett

Ya ini adalah proses deteksi perubahan. Pertama saya perlu perubahan geometri, sekunder saya perlu perubahan atribut. Tetapi geometri lebih penting karena output harus divisualisasikan dalam beberapa cara.
Afr

Jawaban:


2

Sementara saya berpikir bahwa Jawaban Ryan adalah tindakan yang paling masuk akal, Anda bisa menggunakan Intopect Geoprocessing Tool menggunakan kedua kacamata Anda sebagai input.

Output yang Anda dapatkan, akan mengandung atribut dari kedua input. Anda dapat memeriksa fitur yang memiliki nilai berbeda di dua bidang 'tipe'.

Ada beberapa batasan untuk proses ini:

  • Pertama, Intersect Tool seperti semua alat yang terlalu banyak hanya dapat beroperasi pada jumlah simpul yang terbatas . Jika Anda memiliki terlalu banyak simpul dalam data Anda, Anda harus mem-tile data Anda dan menjalankan proses secara bertahap.

  • Anda akan menemukan banyak sliver poligon di output.

  • Ini mensyaratkan bahwa kelas fitur Anda sepenuhnya mencakup bidang Minat Anda, dan tidak ada Kesenjangan.


Ini berhasil, terima kasih! Ini solusi yang cukup mendasar tetapi itu sesuatu yang bisa saya kerjakan.
Afr

6

Ada beberapa cara untuk melakukan ini. Saya telah menyelesaikan ini di masa lalu dengan hasil yang bagus menggunakan kombinasi atribut dan pemrosesan raster. Premis dari proses ini adalah untuk menetapkan setiap fitur dengan nilai n (1, 2, 4, 8, 16, 32, 64, dll.). Menetapkan nilai-nilai ini memastikan bahwa ketika Anda mengurangi layer satu (1985) dari layer 2 (1997) Anda mendapatkan nilai unik, yang mengidentifikasi apa yang berubah. Misalnya, jika 1 = bangunan, 2 = taman, 4 = meterai / tidak tertutup dan 8 = air; dengan mengurangi nilai, tidak ada cara untuk mendapatkan nilai yang sama. Saat Anda menambahkan kolom nilai ini, Anda ingin mengonversi poligon menjadi raster, menggunakan ArcGIS atau QGIS. Saya akan merekomendasikan Anda untuk mengatur ukuran piksel raster ke nilai yang kecil (yaitu: jika data dikumpulkan dari citra Quickbird, lalu atur ke ukuran piksel dari citra Quickbird). Menggunakan Kalkulator Raster (dalam ArcGIS atau QGIS) kurangi Layer2 dari Layer1. Ini akan menghasilkan Layer3, yang diubah ke lapisan. Anda dapat mengonversi data ini kembali ke lapisan poligon untuk analisis GIS lebih lanjut. Jika Anda ingin informasi lebih lanjut, atau spesifik, saya dapat berbagi lebih banyak dengan Anda.


Ini adalah pendekatan yang sangat bagus, tetapi saya tidak akan mengubah bentuk saya menjadi data raster dan kembali karena saya akan kehilangan terlalu banyak informasi. Apakah ini mungkin dicapai hanya dengan layer vektor?
Afr

Anda bisa melakukan sesuatu yang mirip dengan vektor, tetapi tidak menggunakan pendekatan nilai. Anda mungkin ingin bermain dengan alat Perbedaan Simetris yang tersedia di ArcGIS dan QGIS. Saya tidak mengetahui pendekatan berbasis vektor yang meniru pendekatan yang saya uraikan.
Ryan Garnett

pendekatan Anda mengingatkan saya untuk menggunakan operasi bitwise seperti dijelaskan di sini blog.millermedeiros.com/...
geogeek

Apakah ARCGIS 9.2 memiliki alat perbedaan simetris. Saya tidak dapat menemukan Versi ARCGIS mana yang dapat digunakan untuk analisis perbedaan simetris ini?
Bandrush Barda

Saya yakin Anda memerlukan lisensi ArcInfo. Jika Anda tidak memiliki jenis lisensi itu, Anda dapat mengunduh ETGeoWizards. Perbedaan Simetris adalah alat yang tersedia di tab Geoprocessing. QGIS juga memiliki Perbedaan Simetris dalam alat Vektor, yang gratis.
Ryan Garnett

0

Untuk melakukan deteksi perubahan di ArcGIS, dari dua file poligon, gunakan operasi overlay (UNION). Itu memberi Anda matriks transisi yang menunjukkan rincian perubahan (mungkin dalam tutupan lahan).


Saya pikir ini hanya variasi dari jawaban yang diterima tetapi dengan instruksi yang kurang rinci. Juga, meskipun Union dan Intersect adalah operasi overlay poligon, Intersect yang akan saya gunakan dalam kasus ini untuk meminimalkan ukuran output dan setiap set data antara.
PolyGeo
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.