पढ़ना S3 प्रहरी -2 छवि फ़ाइलों के साथ rasterio


12

मैं वर्तमान में सेंटिनल -2 AWS .jp2 छवि फ़ाइलों (वर्तमान में Sinergise द्वारा होस्ट किया गया है और यहां पाया जा सकता है ) को खोलने के लिए rasterio का उपयोग करने के बाद एक 'एक्सेस अस्वीकृत' त्रुटि का सामना कर रहा हूं ।

मेरा कोड इस तरह दिखता है:

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 session टोकन कुंजी की आवश्यकता है भले ही गुप्त और पहुँच कुंजी प्रदान की गई हो? मुझे यह भी जोड़ना चाहिए कि यदि लैंडसैट -8 url (अर्थात http://landsat-pds.s3.amazonaws.com/L8/139/045/LC81390452014295LGNN00-LC81390452014295LGN00_B1.TIF ) के साथ यह फ़ंक्शन सही ढंग से काम करता है

संस्करण (एनाकोंडा के माध्यम से स्थापित):

रैस्टोरियो - 0.36.0

अजगर - 2.7

क्षमा करें यदि उपरोक्त अस्पष्ट है। मेरे सवाल होंगे - यह काम लैंडसैट -8 के लिए क्यों होता है लेकिन सेंटिनल -2 के लिए नहीं? सेंटिनल -2 एडब्ल्यूएस डेटा को खोलने के लिए रैस्टोरियो का उपयोग कैसे किया जा सकता है?

जवाबों:


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 - AWS पर प्रहरी -2 विशेष रूप से बताता है: "LOCATION s3: // sentinel-s2-l1c"
user2856

हां, उत्तर में URL के साथ काम करता है। उत्तर स्वीकार किया जाना चाहिए। नोट: मुफ्त JPEG 2000 ड्राइवरों का उपयोग करके इन JP2 फ़ाइलों तक पहुँच का प्रदर्शन खराब है। आपको स्रोत से GDAL का उपयोग करने की आवश्यकता होगी, उदाहरण के लिए, JP2 के साथ अच्छा प्रदर्शन प्राप्त करने के लिए, मुफ्त-मुफ्त एसडीएसडी एसडीके नहीं। मुझे आश्चर्य होता है कि क्या कोई कारण है कि वे GeoTIFF के बजाय JP2 के साथ गए हैं?
sgillies

@sgillies Dsoes का मतलब है कि rasterio manylinux पहिए इस प्रदर्शन को भी प्रभावित करते हैं? क्या आपने संयोग से कोई (सार्वजनिक) बेंचमार्क / तुलना की है?
कर्स्टन

1
मैं पहियों के साथ MrSID SDK वितरित नहीं कर सकता और इसलिए वे मुफ्त जैस्पर-आधारित JP2 ड्राइवर का उपयोग करते हैं। मेरे पास प्रकाशित करने के लिए बेंचमार्क नहीं हैं।
sgillies
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.