이미지 데이터 추출

Earth Engine에서 이미지 데이터 가져오기

Earth Engine에서 Google Drive, Cloud Storage 또는 Earth Engine 애셋으로 이미지 데이터를 가져오려면 Export를 사용하면 되며 작업은 Earth Engine에서 완전히 처리됩니다. 내보내기 작업에 확장 문제가 있거나 (예: 하루 이상 걸림, 메모리 또는 시간 초과 오류 반환) 이미 Apache Beam, Spark 또는 Dask와 같은 프레임워크에 익숙한 경우 여기에 설명된 데이터 추출 방법을 사용하는 것이 좋습니다. 이러한 프레임워크에 구현된 워크플로는 Dataflow 또는 Dataproc와 같은 Google Cloud 도구를 사용하여 확장할 수 있습니다.

특히 이 가이드에서는 getPixels 또는 computePixels를 사용하여 이미지 데이터를 수동으로 요청하는 방법을 설명합니다. 여기서 '이미지 데이터'는 일관된 배율과 투영이 적용된 픽셀 값의 다차원 배열을 의미합니다. 지역, 크기, 투영 또는 크기가 요청에 지정됩니다. ImageFileFormat 페이지에는 가능한 출력 형식이 나열되어 있습니다. 출력 대상에는 Cloud Storage 또는 로컬에 마운트된 디렉터리가 포함됩니다. 수동 요청은 복잡성을 증가시키지만 더 큰 워크로드로 확장할 수 있습니다.

기존 확장 소재에서 이미지 데이터 가져오기

getPixels를 사용하여 기존 Earth Engine 애셋에서 이미지 데이터를 가져옵니다. 애셋 ID를 요청에 직접 전달하므로 픽셀을 추출하기 전에 픽셀에 대한 계산을 실행할 수 없습니다. 지정된 지역, 크기, 투영, 형식의 픽셀 블록이 반환됩니다. 다음 예에서는 getPixels를 사용하여 MODIS 이미지 모음에서 NDVI의 시계열을 가져오는 방법을 보여줍니다.

계산된 이미지에서 이미지 데이터 가져오기

computePixels를 사용하여 합성 이미지와 같은 계산된 이미지에서 이미지 데이터를 가져옵니다. computePixels를 사용하면 계산된 ee.Image 객체를 expression 매개변수를 통해 전달합니다. 지정된 지역, 크기, 투영, 형식의 계산된 픽셀 블록이 반환됩니다. 다음 예는 구름이 없는 Sentinel-2 합성물에서 멀티스펙트럴 데이터 패치를 가져오는 것을 보여줍니다.

요청 수동 병렬 처리

어떤 목적으로든 어떤 양이든 요청할 수 있지만 더 큰 워크플로의 요청은 병렬화하는 것이 좋습니다. 이러한 요청을 동시에 많이 처리하려면 Earth Engine 대용량 엔드포인트를 사용해야 합니다. 허용되는 동시 요청 수는 동시 대화형 요청 할당량에 의해 설정됩니다. 대용량 엔드포인트를 사용해야 하는 경우는 Earth Engine 대용량 페이지를 참고하세요.

멀티스레딩

스레드를 사용하여 동시 요청을 할 수 있습니다. 이 접근 방식은 getPixelscomputePixels 예시 노트북에서 보여줍니다.

Apache Beam

Apache Beam 파이프라인을 사용하여 요청을 병렬화할 수 있습니다. 이러한 파이프라인은 로컬에서 실행하거나 Google Dataflow 작업으로 실행할 수 있습니다. 예를 보려면 이러한 Geo for Good 교육 또는 이러한 사람, 지구, AI 데모를 참고하세요. 또는 다른 병렬 처리 라이브러리로는 DaskApache Spark가 있습니다.