| from rasterio.io import MemoryFile | |
| import matplotlib.pyplot as plt | |
| import numpy as np | |
| from PIL import Image | |
| from io import BytesIO | |
| def plot(sample, bands = ['B04', 'B03', 'B02'], scaling=2e3): | |
| img = [] | |
| for b in bands: | |
| img.append(read_tif_bytes(sample[b])) | |
| plt.imshow(np.stack(img, -1)/2e3) | |
| def read_tif_bytes(tif_bytes): | |
| with MemoryFile(tif_bytes) as mem_f: | |
| with mem_f.open(driver='GTiff') as f: | |
| return f.read().squeeze() | |
| def read_png_bytes(png_bytes): | |
| stream = BytesIO(png_bytes) | |
| return Image.open(stream) | |