我有以下代碼如何將S3存儲桶中的圖像文件直接讀入內存?
import matplotlib.pyplot as plt
import matplotlib.image as mpimg
import numpy as np
import boto3
s3 = boto3.resource('s3', region_name='us-east-2')
bucket = s3.Bucket('sentinel-s2-l1c')
object = bucket.Object('tiles/10/S/DG/2015/12/7/0/B01.jp2')
object.download_file('B01.jp2')
img=mpimg.imread('B01.jp2')
imgplot = plt.imshow(img)
plt.show(imgplot)
和它的作品。但是它首先將文件下載到當前目錄中的問題。是否可以直接在RAM中讀取文件並將其解碼爲圖像?
這應該可以正常工作,但是在引擎蓋下,一個真實的文件被創建並且一旦關閉就會被銷燬。 – NoamG
@NoamG謝謝!我誤解了'tempfile'模塊的工作原理。更新了我的答案。 –