Rasterio का उपयोग करके एकल बिंदु पर पिक्सेल मान प्राप्त करना


14

Rasterio का उपयोग करते हुए एक रेखापुंज में एक बिंदु पर एक एकल पिक्सेल मूल्य प्राप्त करने के लिए, यहां एक उदाहरण है: https://github.com/mapbox/rasterio/pull/275

हालांकि, रैस्टोरियो के भीतर एक प्रत्यक्ष एपीआई है (और न कि सीएलआई) जिसका उपयोग किसी रैस्टर में एक बिंदु पर मूल्य निकालने के लिए किया जा सकता है?

- संपादित करें

with rasterio.drivers():

    # Read raster bands directly to Numpy arrays.
    #
    with rasterio.open('C:\\Users\\rit\\38ERP.tif') as src:
        x = (src.bounds.left + src.bounds.right) / 2.0
        y = (src.bounds.bottom + src.bounds.top) / 2.0

        vals = src.sample((x, y))
        for val in vals:
            print list(val)

जवाबों:


12

पायो-एपीआई कमांड का समर्थन करने वाला पायथन एपीआई विधि यहाँ प्रलेखित है: https://rasterio.readthedocs.io/en/latest/api/rasterio._io.html#rasterio._io.DatitetReaderBase.sample

src.sample() x, y tuples पर एक पुनरावृत्ति लेता है, इसलिए करें: for val in src.sample([(x, y)]): print(val)


धन्यवाद! मुझे सिंटेक्स से परेशानी हो रही है। यह होना चाहिए: vals = src.sample((x, y))या vals = src.sample(x, y)? न तो काम करने लगता है
user1186

ऊपर मेरे प्रश्न में जोड़ा गया कोड
user1186

4
src.sample()x, yट्यूपल्स पर एक पुनरावृत्ति लेता है , इसलिए करते हैं for val in src.sample([(x, y)]): print(val)
sgillies
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.