Быстрый способ выделения объектов с использованием python - PullRequest
0 голосов
/ 14 апреля 2020

Я тестирую различные методы для извлечения среднего и стандартного отклонения из растрового многоканального изображения, добавляя их в шейп-файл, но я заметил, что они намного медленнее, чем зональная статистика в QGIS. Я использовал rasterstats, rsgislib, pktools, и в моем случае они заняли почти 2 дня. Учитывая, что некоторые методы, такие как Rasterstats и QGIS, позволяют мне извлекать одну полосу за раз, но они все еще очень медленные. Есть ли способ ускорить добычу? Может быть, использовать графический процессор. Существуют такие программы, как Orfeo toolbox, которые делают это за несколько минут. В моем случае у меня есть шейп-файл с миллионом полигонов, из которого я должен получить информацию. Возможно, GDAL можно было бы оптимизировать для такого рода анализа.

Мой код, используемый до сих пор, - это растровые значения ниже, но в моем случае он все еще очень медленный.

gdf['mean'] = pd.DataFrame(zonal_stats(vectors=gdf['geometry'], raster='raster.tif', stats='mean'))['mean']
...