Вопросы по ".vrt Format"

Ответить
Boris
Гуру
Сообщения: 4116
Зарегистрирован: 10 апр 2006, 22:34
Статьи: 3
Проекты: 1
Репутация: 407
Откуда: Париж

Вопросы по ".vrt Format"

Сообщение Boris » 02 июн 2015, 02:19

1. Можно ли задать объединение многих растров, при котором пиксели NoData не учитываются при наложении на данные? Этакий виртуальный аналог gdal_merge.
2. При объединении многих растров, если надо извлечь некоторый прямоугольник из виртуального растра, созданного как сказано в п.1, то считаются ВСЕ растры в память или только в пределах прямоугольника?
3. При работе с тяжелыми растрами имеет ли смысл? Т.к. есть около 1.5 ТБ растров, из которых периодически нужны не крупные фрагменты, но обязательно "слитые".
4. Если для каждого растра построена "пирамида растров", то это как то помогает при обработке?

Заранее спасибо за ответы.

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Статьи: 7
Проекты: 2
Репутация: 261
Откуда: Москва

Re: Вопросы по ".vrt Format"

Сообщение Дмитрий Барышников » 02 июн 2015, 09:37

1. Надо проверять, но кажется - да
2. Только в пределах прямоугольника (еще GDAL кэширует открытые растры для ускорения доступа - только хэндл файла)
3. Возможно, смотря что необходимо
4. Да, помогает, но для vrt растра стоит сделать свою пирамиду тоже для крупных масштабов. Тогда при отображении всего растра будет браться пирамида vrt, при приближении к определенному уровню, сшитые пирамиды исходных растров.

Boris
Гуру
Сообщения: 4116
Зарегистрирован: 10 апр 2006, 22:34
Статьи: 3
Проекты: 1
Репутация: 407
Откуда: Париж

Re: Вопросы по ".vrt Format"

Сообщение Boris » 03 июн 2015, 01:01

Спасибо за ответы.
Уточняю п.3: нужно оперативно, получать фрагменты из набора растров, созданных по-планшетно с перехлестом в NoData, иногда не только за пределами планшета, но и внутри него. Получать пока означает "вырезать" прямоугольником (верхний левый - нижний правый без поворота) в исходной проекции растра, но в перспективе может быть, что и в окно программы.
П.4 можно чуть подробней:
а) построить чем? все тем же gdaladdo ?
б) вот прямо так и указать весь VRT растр и масштаб 2,4,... ? А не упадет?

Аватара пользователя
Дмитрий Барышников
Гуру
Сообщения: 2572
Зарегистрирован: 17 ноя 2009, 19:17
Статьи: 7
Проекты: 2
Репутация: 261
Откуда: Москва

Re: Вопросы по ".vrt Format"

Сообщение Дмитрий Барышников » 03 июн 2015, 13:01

3) Есть такой API RasterIO (http://www.gdal.org/classGDALDataset.ht ... 1ab5fbc667) который позволяет запросить любой кусок растра по пиксельным координатам (причем не важно какой растр реальный или виртуальный). Так что там проблем нет. Софт который использует GDAL должен уметь пользоваться этим API.
4.a) да
4.б) да, так и указать. Только надо так подобрать уровни, что бы не пересекалось с пирамидами отдельных растров: vrt_width (vrt_height) / level > raster_width (raster_height). Т.е. делаем пирамиды растров 2, 4, 8, ... raster_width (raster_height) / level > 64. Далее делаем пирамиды всего vrt - от vrt_width (vrt_height) / level > raster count x * 64 (raster count y * 64) и до vrt_width (vrt_height) / level > 64
Упасть не должен, но может сильно свопить.

P.S. 64 взял с потолка. Это минимальный размер пирамидного слоя в пикеселах.

Boris
Гуру
Сообщения: 4116
Зарегистрирован: 10 апр 2006, 22:34
Статьи: 3
Проекты: 1
Репутация: 407
Откуда: Париж

Re: Вопросы по ".vrt Format"

Сообщение Boris » 04 июн 2015, 00:28

Спасибо за разъяснения! Буду экспериментировать.

Ответить

Вернуться в «GDAL/OGR»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 18 гостей