Trích xuất dữ liệu hình ảnh

Lấy dữ liệu hình ảnh từ Earth Engine

Để chuyển dữ liệu hình ảnh từ Earth Engine sang Google Drive, Cloud Storage hoặc một tài sản Earth Engine, bạn có thể sử dụng Export và công việc này sẽ do Earth Engine xử lý toàn bộ. Nếu công việc xuất của bạn gặp vấn đề về việc mở rộng quy mô (ví dụ: mất nhiều thời gian hơn một ngày, trả về lỗi bộ nhớ hoặc hết thời gian chờ) hoặc bạn đã quen thuộc với một khung như Apache Beam, Spark hoặc Dask, thì bạn nên sử dụng các phương thức trích xuất dữ liệu được mô tả tại đây. Bạn có thể mở rộng quy mô quy trình công việc được triển khai trong các khung này bằng các công cụ của Google Cloud, chẳng hạn như Dataflow hoặc Dataproc.

Cụ thể, hướng dẫn này mô tả các phương thức tạo yêu cầu cho dữ liệu hình ảnh theo cách thủ công bằng cách sử dụng getPixels hoặc computePixels. Ở đây, "dữ liệu hình ảnh" có nghĩa là các mảng nhiều chiều của các giá trị pixel có tỷ lệ và phép chiếu nhất quán. Khu vực, tỷ lệ, phép chiếu và/hoặc kích thước được chỉ định trong yêu cầu. Trang ImageFileFormat liệt kê các định dạng đầu ra có thể có. Đích đến đầu ra bao gồm Cloud Storage hoặc bất kỳ thư mục nào được gắn cục bộ. Yêu cầu thủ công làm tăng độ phức tạp, nhưng có thể mở rộng quy mô cho khối lượng công việc lớn hơn.

Nhận dữ liệu hình ảnh từ các thành phần hiện có

Sử dụng getPixels để lấy dữ liệu hình ảnh từ các tài sản hiện có trên Earth Engine. Bạn truyền trực tiếp mã thành phần vào yêu cầu, vì vậy, bạn không thể thực hiện bất kỳ phép tính nào trên các pixel trước khi trích xuất các pixel đó. Hệ thống sẽ trả về một khối pixel trong vùng, tỷ lệ, phép chiếu và định dạng được chỉ định. Ví dụ sau đây minh hoạ cách lấy chuỗi thời gian của NDVI từ một tập hợp hình ảnh MODIS bằng getPixels.

Lấy dữ liệu hình ảnh từ hình ảnh được tính toán

Sử dụng computePixels để lấy dữ liệu hình ảnh từ một hình ảnh được tính toán, chẳng hạn như hình ảnh tổng hợp. Với computePixels, bạn truyền một đối tượng ee.Image đã tính toán thông qua tham số expression. Hệ thống sẽ trả về một khối pixel được tính toán trong vùng, tỷ lệ, phép chiếu và định dạng được chỉ định. Ví dụ sau đây cho thấy cách lấy các mảng dữ liệu đa phổ từ một ảnh tổng hợp Sentinel-2 không có mây.

Tải song song các yêu cầu theo cách thủ công

Mặc dù có thể gửi yêu cầu cho bất kỳ mục đích nào với số lượng bất kỳ, nhưng bạn nên chạy song song các yêu cầu cho quy trình công việc lớn hơn. Để thực hiện nhiều yêu cầu như vậy song song, bạn nên sử dụng điểm cuối có khối lượng lớn của Earth Engine. Số lượng yêu cầu song song mà bạn có thể có được là do hạn mức yêu cầu tương tác đồng thời của bạn đặt ra. Hãy xem trang về số lượng lớn của Earth Engine để biết thông tin chi tiết về thời điểm sử dụng điểm cuối có số lượng lớn.

Đa luồng

Bạn có thể sử dụng luồng để thực hiện các yêu cầu đồng thời. Phương pháp này được minh hoạ trong sổ tay mẫu getPixelscomputePixels.

Apache Beam

Bạn có thể sử dụng quy trình Apache Beam để chạy song song các yêu cầu. Bạn có thể chạy các quy trình này trên máy hoặc dưới dạng công việc trên Google Dataflow. Để biết ví dụ, hãy xem bài đào tạo về Địa lý vì mục đích tốt hoặc bài minh hoạ về Con người, Hành tinh và AI. Ngoài ra, các thư viện song song khác bao gồm DaskApache Spark.