Страница 1 из 1

Landsat как бы посчитать маски автоматом?

Добавлено: 11 авг 2011, 16:08
Boris
Опишу задачу более пространно:
1. Есть много сцен Landsat 1Т на одну "сцену" - с одним номером столбца/строки. В принципе это может быть и любой другой спутник, просто ландсатов действительно много.
2. Все сцены Landsat, имеют немного разную привязку, а значимая часть каждого канала сдвинута внутри сцены и кроме того имеет "зубчики" по краям. Про полосатый L7 речи не идет.
3. Для того, что бы сравнивать разновременные снимки хотелось бы до того, как начнешь их обрабатывать знать какая территория должна быть рассмотрена.
4. В пределах одной сцены построить маску для всех каналов по областям, где на всех каналах не будут значений NoData пакетно можно. Хотя и не без танцев с бубном.
А вот как построить такую же маску для каналов из разных сцен? Желательно пакетно. Растровые калькуляторы, как я вижу не любят смотреть на геопривязку. Выходит надо как-то увеличить размерность растров, что бы они перекрывали общую область?
GDAL warp ил megre как я понял могут объединять файлы с учетом геопривязки, но они игнорируют NoData только в одном файле (ну я так понял), а тут надо что бы если хотя бы в одном NoData, то и на выходе - то же.
Или не заморачиваться и все в векторе быстренько пересечь?

Re: Landsat как бы посчитать маски автоматом?

Добавлено: 11 авг 2011, 19:19
Александр Мурый
Короче, надо для каждой из сцен сделать маску таким образом, чтобы в неё вошли все NoData из всех каналов этой сцены. Так?

Re: Landsat как бы посчитать маски автоматом?

Добавлено: 11 авг 2011, 19:19
KolesovDmitry
В GRASS GIS такое делается в полпинка, но ставить его ради одной задачи... зависит от того, насколько действительно много растров -- если очень-очень много, то затраты окупятся. Если других решений не подскажут, с удовольствием помогу вам с процессом импорта-маскировани-экспорта в GRASS.

Re: Landsat как бы посчитать маски автоматом?

Добавлено: 11 авг 2011, 20:28
Boris
amuriy писал(а):Короче, надо для каждой из сцен сделать маску таким образом, чтобы в неё вошли все NoData из всех каналов этой сцены. Так?
Нет. Эту часть пути я уже прошел. Ведь внутри сцены все растры и их привязка одинаковая. По крайней мере я так надеюсь, если и это не так, :( то вопрос в целом от этого не меняется. Меняется только объем вычислений.
Для каждой сцены маска как логическая AND над всеми поля по условию (ячейка <> NoData) уже посчитана. ( Спасибо добрым людям, которые пишут в блогах).
Теперь надо эти маски сложить в пределах одной СЦЕНЫ. Ну не виноват я, что и набор каналов = сцена, и место на земле, перекрываемое Path/Row то же называется СЦЕНОЙ. По крайней мере в http://glovis.usgs.gov/
Вот маски в пределах этой сцены (Path/Row) я и хотел бы сложить. По моему разумению у них и размерность и привязка разная.

Re: Landsat как бы посчитать маски автоматом?

Добавлено: 11 авг 2011, 20:31
Boris
KolesovDmitry писал(а):В GRASS GIS такое делается в полпинка, но ставить его ради одной задачи... зависит от того, насколько действительно много растров -- если очень-очень много, то затраты окупятся. Если других решений не подскажут, с удовольствием помогу вам с процессом импорта-маскировани-экспорта в GRASS.
Спасибо. Их не на столько много - 11 сцен (как место на земле) на полсотни сцен как набора каналов.

Re: Landsat как бы посчитать маски автоматом?

Добавлено: 06 фев 2012, 22:11
rhot
Решён ли вопрос? Если да, то как?