Mengekstraksi sel raster dari citra berdasarkan nilai RGB menggunakan ArcGIS Desktop?


9

Saya punya beberapa foto udara (format: IMAGINE Image) yang cukup detail untuk melihat ke hidran dan bentuk hidran yang didigitalkan berdasarkan beberapa data CAD. Proyek saya adalah untuk QC lokasi hydrant shapefile dengan mengecek langsung dengan citra. Apakah mungkin untuk mengekstrak nilai RGB dari citra yang cocok dengan nilai RGB hidran kebakaran?

Fire hydrant (merah):

Keran kebakaran

Saya mencari untuk memilih nilai sel (yang telah saya tuliskan) yang mirip dengan nilai sel hidran api dan kemudian mengekstrak sel-sel tersebut (baik file raster sel-sel tersebut atau shapefile yang memplot lokasi lokasi sel yang sama). Saya berasumsi bahwa ada sangat sedikit fitur dalam citra yang memiliki Nilai RGB kemerahan yang serupa.

Setelah melihat Jawaban Arron dan bermain-main dengan pendekatan yang diawasi dan tidak diawasi (lihat komentar saya di bawah), saya tidak dapat memperoleh alat untuk melakukan apa yang saya inginkan sampai saya mulai juga melihat output raster kepercayaan dari Klasifikasi Kemungkinan Maksimum dari Klasifikasi Kemungkinan Maksimum alat. Saya tidak yakin apa yang seharusnya disimbolkan oleh output raster tetapi dari hanya dengan melihat nilai sel level 14, tetapi ia menangkap semua hidran api.

output raster: output raster lokasi hidran kebakaran: lokasi hidran kebakaran

Langkah saya selanjutnya adalah menggunakan alat Raster untuk Polygon mengkonversi jejak hidran raster menjadi poligon. Saya menjalankan alat sekarang dan dalam satu jam terakhir hanya berhasil mencapai 11%. Area tempat saya bekerja besar, pada 1x1 mil jadi saya mengerti bahwa mungkin butuh waktu jika ada banyak sel raster kecil untuk dikonversi menjadi poligon. Apakah ada saran untuk menjalankan beberapa alat untuk membersihkan beberapa data sehingga mempercepat proses konversi raster ke poligon? Saya mungkin tidak perlu menjalankan alat ini karena jejak raster melakukan pekerjaan yang sangat baik dalam menangkap hidran tetapi saya tertarik untuk mempercepat proses karena saya melihat ini sedang digunakan dalam aplikasi lain di masa depan.


Apakah maksud Anda ekstraksi seperti alat Extract Values ​​to Points di Spatial Analyst? Atau Anda ingin lebih banyak fungsi?
Baltok

1
Saya mencari fungsionalitas lebih dari itu. Alat itu menambahkan nilai-nilai pencitraan ke titik di mana ia berada. Untuk mendapatkan ide visual, saya mengunggah gambar ke dropbox: [Tautan] ( dropbox.com/s/z0fyc9euy99chw1/FireHydrant.png ) Saya kira saya seharusnya menjadi sedikit lebih jelas. Saya mencari untuk memilih nilai sel (yang telah saya tuliskan) yang mirip dengan nilai sel hidran api dan kemudian mengekstrak sel-sel tersebut (baik file raster sel-sel tersebut atau shapefile yang memplot lokasi lokasi sel yang sama). Beritahu saya jika Anda membutuhkan saya untuk membersihkan yang lainnya.
Sethdd

Jadi, Anda berasumsi bahwa hidran dalam citra menggunakan nilai RGB unik yang tidak digunakan fitur lain? Yaitu, tidak ada fitur lain dalam citra yang kemerahan? Dalam hal ini, Anda mungkin dapat menggunakan Extract By Attributes dan masukkan nilai yang telah Anda tulis.
Baltok

1
Saya berasumsi bahwa ada sangat sedikit fitur dalam citra yang memiliki Nilai RGB kemerahan yang serupa. Jika fitur selain hidran dipilih, saya akan baik-baik saja dengan itu. Saya juga mencoba ekstrak dengan atribut tetapi tidak ada yang diekstraksi dengan menggunakan nilai RGB merah mendominasi. Masalahnya mungkin timbul karena tidak bisa memasukkan ketiga nilai RGB ke pembangun Query karena warna merah membutuhkan 2 nilai lainnya. Satu-satunya opsi yang harus saya pilih di pembuat kueri adalah ObjectID, Value, dan Count sehingga saya tidak akan tahu bagaimana cara membuat kueri dengan semua 3 nilai RGB.
Sethdd

Poin yang bagus. Tidak yakin bagaimana cara mengekstrak hanya sel-sel itu. Mudah-mudahan, seorang guru raster akan berpadu.
Baltok

Jawaban:


9

Hidran kebakaran Anda akan memiliki tanda tangan spektral yang sangat unik, oleh karena itu saya akan menggunakan klasifikasi kemungkinan maksimum terawasi untuk mengklasifikasikan raster Anda. Alternatifnya adalah menjalankan algoritma ISODATA untuk pendekatan tanpa pengawasan . Coba alur kerja (sebagian) berikut:

  1. Buka Klasifikasi Tanpa Pengawasan Iso Cluster di ArcGIS
  2. Masukkan ALL 3 band (yaitu R, G, B) ke dalam GUI (lihat terlampir)
  3. Setelah Anda memiliki raster rahasia, temukan hidran di dalam raster dan gunakan tab identifikasi untuk menentukan nilai piksel yang membentuk hidran (misalnya, nilai piksel 10 hingga 14)
  4. Klasifikasi ulang gambar Anda sehingga semua piksel yang terdiri atas hidran diklasifikasikan sebagai "1" dan semua nilai lainnya "0". Ini akan menghasilkan raster biner.
  5. Sekarang, tampilkan hanya 1 sebagai merah dan 0 sebagai transparan. Anda harus dapat menilai perbedaan secara visual sekarang.

Atau, untuk pendekatan kuantitatif, jalankan Raster ke Polygon untuk menempatkan poligon di sekitar hidran Anda (yaitu 1) piksel. Anda dapat menjalankan sejumlah statistik pada poligon asli dan turunan Anda sekarang.

Perlu diingat bahwa Anda akan memiliki kontrol lebih besar terhadap kelas jika Anda menggunakan klasifikasi kemungkinan maksimum yang diawasi

EDIT:

Coba juga menggunakan citra udara resolusi tinggi CIR 4-band yang tersedia dari Earth Explorer . Band IR dekat (4) akan memberi Anda kontras yang jauh lebih besar antara hidran dan rumput hijau di sekitarnya. Ini kemungkinan merupakan area perkotaan, jadi Anda mungkin dapat memperoleh citra resolusi sangat tinggi untuk bidang yang Anda minati.

masukkan deskripsi gambar di sini


Ini persis apa yang saya cari! Saya telah bermain-main dengan alat ini (yang tidak diawasi) mencoba berbagai ukuran kelas dan sampai pada kesimpulan bahwa 40 menawarkan hasil terbaik. Downside adalah nilai pixel untuk fire hydrant tidak berurutan berkisar (yaitu 10-14). Saya harus memilih beberapa nilai mulai dari 3-39. Karena saya melihat pada kisaran yang luas, itu berantakan untuk melihat hanya hidran karena tidak menangkap esensi dari apa yang hidran tetapi lain. Saya merasa itu karena gambarnya tidak cukup detail untuk mendapatkan tanda tangan yang unik.
Sethdd

@Sethdd Saya telah mengedit posting untuk memasukkan info / ide tambahan.
Aaron

Terima kasih Arron untuk info tambahannya. Saya melihat Earth Explorer dan sayangnya, mereka tidak memiliki citra beresolusi tinggi untuk lokasi yang saya butuhkan. Saya mengedit posting asli saya yang menjelaskan beberapa keberhasilan yang saya miliki.
Sethdd

Saya harus berpikir tadi malam, dan bertanya-tanya apakah mungkin untuk memilih kisaran nilai RGB. Saya melihat kisaran nilai RGB dari masing-masing band untuk nuansa merah berbeda pada fire hydrant dan menemukan bahwa kisarannya adalah: R: 152-208 G: 67-182 B: 77-179 Saya kemudian membawa masing-masing band dan melambangkan rentang nilai unik yang dinyatakan di atas. Pemikiran saya adalah jika saya dapat mengekspor rentang nilai dari setiap band melalui klasifikasi ulang (setiap sel = 1), saya kemudian dapat menggunakan kalkulator raster untuk menambahkan setiap output raster dan hanya menyimpan sel dengan nilai 3 karena itu akan menjadi fitur saya.
Sethdd

Saya memeriksa Earth Explorer dan tidak dapat menemukan citra 2009 yang Anda sebutkan. Btw, Lokasi situs studi saya di Perth Amboy, NJ. Saya tahu OGIS memiliki citra 2007 yang direvisi pada 2009. Mungkinkah itu yang Anda maksudkan? Saya memeriksa dataset tertentu dan citra yang saya miliki jauh lebih detail. Saya tidak tahu skalanya tetapi jauh lebih baik daripada apa pun yang bisa saya temukan.
Sethdd
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.