#python #opencv #image-processing #python-requests #sharepoint-2013
#python #opencv #обработка изображений #python-запросы #sharepoint-2013
Вопрос:
Мне нужно прочитать тысячи изображений, размещенных на сайте sharepoint, я сохраняю их URL-адреса в списке, а затем считываю их в цикле со следующим кодом:
def url_to_image(url):
resp = requests.get(url).raw
image = np.asarray(bytearray(resp.read()), dtype="uint8")
image = cv2.imdecode(image, cv2.IMREAD_COLOR)
return image
Все идет хорошо, за исключением того, что скорость резко меняется между разными итерациями.
поведение, которое я смог обнаружить, заключается в том, что я могу читать и обрабатывать ~ 20 изображений подряд со скоростью 0-3 секунды на изображение, что достаточно хорошо, но затем следующие ~ 10 изображений занимают очень много времени, 10-35 секунд на изображение, и поэтому оно повторяется снова и снова.
Моей первой мыслью было, что это связано с размером изображения,
но я несколько раз запускал код для одних и тех же данных изображений, и каждый раз он вел себя по-разному.
Я проверил время для каждой части кода, и похоже, что застрявшая часть — это read() ответа.
Я попробовал также другой метод, напрямую используя api sharepoint rest, но поведение было похожим.
Насколько мне известно, проблем с сервером или подключением нет, поскольку я делаю кучу других запросов без каких-либо проблем.
Любая помощь будет высоко оценена.
Комментарии:
1. Является ли sharepoint регулирующим скорость передачи данных или скорость соединения? Может быть, получите 19; подождите пару секунд, затем получите 19; ….
2. Попробовал ваше предложение, но безуспешно.