Как мне интегрировать входные данные объекта ответа с кодом, которому нужен путь к файлу? - PullRequest
0 голосов
/ 31 января 2019

У меня есть код, который может взять файлы изображений JP2, которые я сохранил на своем компьютере, и преобразовать их в массивы.Код выглядит следующим образом:

import rasterio
import numpy as np

arrs = []

with rasterio.open('...image_file_path.jp2') as f:
    arrs.append(f.read(1))

data = np.array(arrs, dtype=arrs[0].dtype)

Я написал скрипт, который может использовать запросы для получения этих изображений:

image_response = requests.get('https://image_url.jp2')

Теперь у меня вопрос, как объединить эти методы?мне просто не удается использовать rasterio.open (image_response), как мне попытаться достичь своей цели?Есть ли у объектов ответа врожденный путь к файлу?Любая помощь с благодарностью

1 Ответ

0 голосов
/ 31 января 2019

Я разобрался с решением.Для этого существуют пакеты BytesIO и StringIO.Полный код выглядит следующим образом:

import rasterio
import numpy as np
import requests
from io import BytesIO

image_response = requests.get('https://image_url.jp2')

arrs = []

with rasterio.open(BytesIO(image_response.content)) as f:
    arrs.append(f.read(1))

data = np.array(arrs, dtype=arrs[0].dtype)

Спасибо за ваше время!

...