Tôi thực sự mới đối với Python và tôi muốn biết liệu có phương pháp nhanh nào để lấy giá trị ô của pixel raster theo pixel và tọa độ (tọa độ XY của tâm của mỗi pixel) bằng Python trong ArcGIS 10 không?
Để mô tả điều này hơn nữa, tôi cần lấy bản đồ X, ánh xạ Y và giá trị ô của pixel đầu tiên và gán ba giá trị đó cho ba biến và lặp lại bước này cho các pixel còn lại (lặp qua toàn bộ raster).
Tôi nghĩ rằng tôi cần phải mô tả câu hỏi của tôi nhiều hơn. Vấn đề là, tôi cần lấy vị trí XY của một pixel của raster đầu tiên và nhận các giá trị ô của một số raster khác tương ứng với vị trí XY đó. Quá trình này phải được lặp qua từng pixel của raster đầu tiên mà không tạo ra bất kỳ shapefile điểm trung gian nào vì nó sẽ thực sự tốn thời gian vì tôi phải xử lý raster với gần 8 tỷ pixel. Ngoài ra, tôi cần thực hiện việc này bằng Python trong ArcGIS 10.
@JamesS: Cảm ơn bạn rất nhiều vì lời đề nghị của bạn. Vâng, điều này sẽ làm việc cho một raster nhưng tôi cũng cần phải thu thập các giá trị ô cho một số raster khác. Vấn đề là, sau khi có tọa độ X và Y của pixel đầu tiên của raster thứ nhất, tôi cần lấy giá trị ô của raster thứ hai tương ứng với vị trí X, Y của raster thứ nhất, rồi raster thứ ba, v.v. Vì vậy, tôi nghĩ rằng khi lặp qua raster đầu tiên, việc lấy vị trí X và Y của pixel và nhận giá trị ô của raster khác tương ứng với vị trí đó nên được thực hiện đồng thời nhưng tôi không chắc chắn. Điều này có thể được thực hiện bằng cách chuyển đổi raster đầu tiên thành shapefile điểm và thực hiện trích xuất đa trị trích xuất thành hàm điểm trong ArcGIS 10 nhưng tôi
@hmfly: Cảm ơn, Có, phương thức này (RastertoNumpyarray) sẽ hoạt động nếu tôi có thể lấy tọa độ của một hàng và giá trị cột đã biết của mảng.
@whuber: Tôi không muốn thực hiện bất kỳ phép tính nào, tất cả những gì tôi cần làm là ghi tọa độ XY và giá trị ô vào tệp văn bản và đó là tất cả