14 votos

La lectura S3 Sentinel-2 archivos de imagen con rasterio

Actualmente estoy experimentando un 'Acceso Denegado' error después de usar rasterio para abrir el Sentinel-2 de AWS .jp2 archivos de imagen (actualmente alojado por Sinergise y se puede encontrar aquí).

Mi código es este:

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

La respuesta es:

---------------------------------------------------------------------------
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 

No estoy seguro de si estoy usando rasterio entornos aws correctamente, es el aws token de sesión clave necesaria incluso si los secretos y las claves de acceso se proporcionan? También debo agregar que esta función funciona correctamente si se proporciona con un Landsat-8 dirección url (es decir, http://landsat-pds.s3.amazonaws.com/L8/139/045/LC81390452014295LGN00/LC81390452014295LGN00_B1.TIF)

Versiones (instalado a través de la Anaconda):

rasterio - 0.36.0

python 2.7

Lo siento si el de arriba es vaga. Mi pregunta sería - ¿por qué hace este trabajo para Landsat-8, pero no Sentinel-2? ¿Cómo puede rasterio ser utilizado para abrir Sentinel-2 datos de AWS?

10voto

Florian Franzen Puntos 36

Yo creo que usted está usando mal la cubeta nombre. Cabe s3://sentinel-s2-l1c, no s3://sentinel-pds

Probar:

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

Ver más info aquí: http://sentinel-pds.s3-website.eu-central-1.amazonaws.com/ y https://aws.amazon.com/public-datasets/sentinel-2/

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X