rasterio로 S3 Sentinel-2 이미지 파일 읽기


12

rasterio를 사용하여 Sentinel-2 AWS .jp2 이미지 파일 (현재 Sinergise에서 호스팅하며 여기 에서 찾을 수 있음 ) 을 연 후 '액세스 거부'오류가 발생했습니다 .

내 코드는 다음과 같습니다

import rasterio

access_key = '*****************'
secret_access_key = '***********************'
region_name = 'eu-central-1'

Session = rasterio.env.Env(aws_access_key_id=access_key,
             aws_secret_access_key=secret_access_key,
             region_name=region_name)

url = 's3://sentinel-pds/tiles/10/S/DG/2015/12/7/0/B01.jp2'

with Session:
    with rasterio.open(url) as dataset:
            print dataset

응답은 다음과 같습니다.

---------------------------------------------------------------------------
CPLE_AWSAccessDenied                      Traceback (most recent call last)
<ipython-input-1-4f6da7274649> in <module>()
     12 
     13 with Session:
---> 14     with rasterio.open(url) as dataset:
     15         print dataset

/Users/Barney/anaconda/lib/python2.7/site-packages/rasterio/__init__.pyc in open(path, mode, driver, width, height, count, crs, transform, dtype, nodata,  **kwargs)
    191         raise ValueError(
    192             "mode string must be one of 'r', 'r+', or 'w', not %s" % mode)
--> 193     s.start()
    194     return s
    195 

rasterio/_base.pyx in rasterio._base.DatasetReader.start (rasterio/_base.c:2847)()

rasterio/_base.pyx in rasterio._base.DatasetReader.start (rasterio/_base.c:2799)()

rasterio/_err.pyx in rasterio._err.CPLErrors.check (rasterio/_err.c:1773)()

CPLE_AWSAccessDenied: Access Denied 

rasterio aws 환경을 올바르게 사용하고 있는지 확실하지 않습니다. 비밀 및 액세스 키가 제공 되어도 AWS 세션 토큰 키가 필요합니까? 또한 Landsat-8 URL이 제공되는 경우이 기능이 올바르게 작동 함을 추가해야합니다 (예 : http://landsat-pds.s3.amazonaws.com/L8/139/045/LC81390452014295LGN00/LC81390452014295LGN00_B1.TIF )

버전 (Anaconda를 통해 설치) :

래스터 리오-0.36.0

파이썬-2.7

위의 내용이 모호한 경우 죄송합니다. 내 질문은-왜 Landsat-8에서는 작동하지만 Sentinel-2에서는 작동하지 않습니까? Sentinel-2 AWS 데이터를 여는 데 rasterio를 어떻게 사용할 수 있습니까?

답변:


9

버킷 이름이 잘못되었다고 생각합니다. 그것은해야 s3://sentinel-s2-l1c하지s3://sentinel-pds

시험:

url = 's3://sentinel-s2-l1c/tiles/10/S/DG/2015/12/7/0/B01.jp2'

자세한 내용은 여기를 참조하십시오 : http://sentinel-pds.s3-website.eu-central-1.amazonaws.com/https://aws.amazon.com/public-datasets/sentinel-2/


+1 -AWSSentinel-2에 구체적으로 다음과 같이 명시되어 있습니다. "LOCATION s3 : // sentinel-s2-l1c"
user2856

네, 답변의 URL과 함께 작동합니다. 답변을 수락해야합니다. 참고 : 무료 JPEG 2000 드라이버를 사용하여 이러한 JP2 파일에 액세스하면 성능이 저하됩니다. JP2에서 적절한 성능을 얻으려면 예를 들어, 무료 MrSID SDK를 사용하여 소스에서 GDAL을 빌드해야합니다. GeoTIFF 대신 JP2를 사용하는 이유가 있는지 궁금합니다.
sgillies

@sgillies 많은 리눅스 휠이 이러한 성능 저하를 겪는다는 의미의 Dsoes? 우연히 (공용) 벤치 마크 / 비교를 했습니까?
Kersten

1
MrSID SDK를 휠과 함께 배포 할 수 없으므로 무료 Jasper 기반 JP2 드라이버를 사용합니다. 게시 할 벤치 마크가 없습니다.
sgillies
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.