Ketika mulai bekerja dengan Python dan ArcGIS 9.3, saya berasumsi akan ada cara sederhana untuk mendapatkan gambar raster ke dalam array Python sehingga saya dapat memanipulasinya sebelum menyimpannya kembali sebagai gambar raster lainnya. Namun, sepertinya saya tidak tahu bagaimana melakukan ini.
Jika memungkinkan, lalu bagaimana caranya?
arcpy
raster
arcgis-9.3
Robintw
sumber
sumber
http://help.arcgis.com/en/arcgisdesktop/10.0/help/index.html#/RasterToNumPyArray/000v0000012z000000/
ArcGIS 10 memiliki kemampuan untuk menulis dan membaca array numPy.
sumber
fmark sudah menjawab pertanyaan itu, tetapi di sini ada beberapa contoh kode Python OSGEO yang saya tulis untuk membaca raster (tif) ke dalam array NumPy, mengklasifikasikan ulang data dan kemudian menuliskannya ke file tif baru. Anda dapat membaca dan menulis format apa pun yang didukung gdal.
sumber
Mengakses ArcObjects dari Python? membahas integrasi objek busur dengan python.
Mungkin kode dalam sampel ini dapat diadaptasi sehingga dapat dipanggil dari python.
Saya tidak yakin apakah ada cara untuk melewatkan array byref kembali ke python. Jika ada, maka IPixelBlock.PixelDatabyRef akan layak untuk dicoba.
sumber
Anda dapat menyimpan raster Anda sebagai kisi ascii ESRI dan membaca / memanipulasi file itu dengan numpy.
Ini memberikan beberapa poin awal: http://sites.google.com/site/davidpfinlayson2/esriasciigridformat
Tapi hati-hati - sepertinya format grid ascii tidak selalu mengikuti spec, jadi membacanya dengan benar setiap waktu bisa menjadi tantangan.
sumber
Saya tidak yakin Anda dapat memanipulasi raster pixel demi pixel, tetapi Anda dapat menggunakan objek geoprocessing bersamaan dengan python API.
Anda dapat menggunakan kotak alat apa pun untuk manipulasi semacam itu. Contoh skrip adalah:
Ini adalah tindak lanjut dari pertanyaan Anda . Masih tidak mungkin. Tidak yakin pada versi 10.0.
sumber
Cara termudah adalah dengan mengubah raster ke netCDF dan kemudian membukanya dan berjalan melalui grid. Saya melakukan banyak hal yang sama untuk sebuah proyek yang melibatkan mengubah raster menjadi data fitur berdasarkan data yang ditugaskan ke sel raster. Saya melihat ini sejak lama, dan sampai pada kesimpulan berjalan data grid akan lebih mudah dari netCDF.
sumber