Растры: районирование по площади и кластеризация по времени

Вопросы по нескольким пакетам сразу, или вопросы, которые непонятно к какой ГИС отнести
Ответить
nickleb
Гуру
Сообщения: 964
Зарегистрирован: 22 май 2010, 20:20
Репутация: 154

Растры: районирование по площади и кластеризация по времени

Сообщение nickleb » 01 авг 2015, 08:27

Здравствуйте. Есть площадное распределение некоей характеристики в пределах одного домейна за длительный временной ряд - регулярные растры. Каждый растр - карта за единицу времени временного ряда. Требуется выполнить и районирование по площади, и кластеризацию по времени. Каким "продвинутым" инструментарием? R?
Последний раз редактировалось nickleb 01 авг 2015, 08:41, всего редактировалось 1 раз.

nickleb
Гуру
Сообщения: 964
Зарегистрирован: 22 май 2010, 20:20
Репутация: 154

Re: Растры: районирование по площади и кластеризация по врем

Сообщение nickleb » 01 авг 2015, 08:38

nickleb писал(а):Здравствуйте. Есть площадное распределение некоей характеристики в пределах одного домейна за длительный временной ряд - регулярные растры. Каждый растр - карта за единицу времени временного ряда. Требуется выполнить и районирование по площади, и кластеризацию по времени. Каким "продвинутым" инструментарием? R?
Если R - то какой package?

gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Растры: районирование по площади и кластеризация по врем

Сообщение gamm » 01 авг 2015, 12:03

непонятно, чего вы получить хотите. Если растры во времени меняются, то районирование предполагает выделение устойчивых пространственных структуру, которые во времени меняться не будут. Может, вы хотите взять паттерны изменения пикселя во времени, и их классифицировать, что даст районирование по "динамическим паттернам"? тогда, если данных много (как я подозреваю), то Кохоненовский SOM (пиксель - объект, данные по времени - вектор, описывающий его). И можно подумать о стандартизации, например (если ряд длинный) то работать не с самими рядами, а с производными им.Савицкого-Галая, или результатом фильтрации. Можно еще попробовать что-то типа PCA/DFA (тыц) для выделения "типичных" временных паттернов, и т.д. А потом раскрасить классы градиентной легендой (близкие классы близким цветом), и нанести на карту. Будет креативно - я бы показал, да NDA не дает :-)

nickleb
Гуру
Сообщения: 964
Зарегистрирован: 22 май 2010, 20:20
Репутация: 154

Re: Растры: районирование по площади и кластеризация по врем

Сообщение nickleb » 01 авг 2015, 12:14

gamm писал(а):что-то типа PCA/DFA (тыц) для выделения "типичных" временных паттернов, и т.д. )
gamm, спасибо! ссылочку на хороший vignette дали...

KolesovDmitry
Гуру
Сообщения: 810
Зарегистрирован: 22 авг 2007, 14:58
Репутация: 123
Откуда: Казань

Re: Растры: районирование по площади и кластеризация по врем

Сообщение KolesovDmitry » 07 сен 2015, 20:17

nickleb, полазьте тут: https://github.com/KolesovDmitry/remote_sensing (в конце README есть ссылки на конкретные примеры, но там блокнотов чуть больше, чем по ссылкам - смотрите в коде). Задачу решали почти такую, как в вашем описании, и экспериментировали с разными методами (почти все, что посоветовал gamm, было реализовано) -- в блокнотах есть графики и код. В нашем случае больше всего подошел вариант с такой последоватеьностью действий:
1) Преобразование Фурье.
2) Фильтрация от шумов (зануление коэффициентов высокочастотных компонент).
3) Кластеризация по наиболее значимым коэффициентам на базе SOM.

nickleb
Гуру
Сообщения: 964
Зарегистрирован: 22 май 2010, 20:20
Репутация: 154

Re: Растры: районирование по площади и кластеризация по врем

Сообщение nickleb » 07 сен 2015, 21:45

KolesovDmitry писал(а):nickleb, полазьте тут: https://github.com/KolesovDmitry/remote_sensing (в конце README есть ссылки на конкретные примеры, но там блокнотов чуть больше, чем по ссылкам - смотрите в коде). Задачу решали почти такую, как в вашем описании, и экспериментировали с разными методами (почти все, что посоветовал gamm, было реализовано) -- в блокнотах есть графики и код. В нашем случае больше всего подошел вариант с такой последоватеьностью действий:
1) Преобразование Фурье.
2) Фильтрация от шумов (зануление коэффициентов высокочастотных компонент).
3) Кластеризация по наиболее значимым коэффициентам на базе SOM.
Спасибо! Прекрасный ресурс подготовлен Вами, Dmitry. Сколько труда вложено... Посмотрю, поразбираюсь с превеликим удовольствием. Ежели, что - так Вас ещё и gammпоспрошаю. За план действий отдельное спасибо.

KolesovDmitry
Гуру
Сообщения: 810
Зарегистрирован: 22 авг 2007, 14:58
Репутация: 123
Откуда: Казань

Re: Растры: районирование по площади и кластеризация по врем

Сообщение KolesovDmitry » 07 сен 2015, 22:11

nickleb писал(а):Прекрасный ресурс подготовлен Вами, Dmitry. Сколько труда вложено...
Это было сделано на пару с bolotoved'ом -- как побочный продукт наших с ним экспериментов по классификации растительности по динамике NDVI. Мы разбирались с эффективностью разных методов и нужно было где-то собрать в одну кучу код и результаты. Так что там довольно сырое все, поскольку не было цели создать законченный продукт. Но все это идет под открытой лицензией -- так что если есть желание дополнить чем-то еще -- присоединяйтесь :)
Стройте графики "было" -- "метод" -- "стало" и коммитьте :)

gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Растры: районирование по площади и кластеризация по врем

Сообщение gamm » 08 сен 2015, 01:01

Для классификации растительности есть одна проблемы - (а) фазовый сдвиг (ранняя весна,поздняя весна), который поменяет коэффициенты, плюс (б) растяжение/сжатие во времени. У нас народ использовал коррелятор, чтобы совместить фенологические фазы (зеленую волну в разные годы) и классифицировать форму динамики, которая обусловлена видом, освободив её от погодных факторов..

Кстати, у Кохонена на случай (а) есть assom, но я не знаю, где он реализован. В случае Фурье это классификация мощностного спектра вместо коэффициентов, может товарищи так и делали

Для (б) годится только коррелятор.

И для сглаживания у нас использовали gamm (из пакета mgcv R), поскольку Фурье на коротких сериях не очень хорош.

[ Сообщение с мобильного устройства ]

KolesovDmitry
Гуру
Сообщения: 810
Зарегистрирован: 22 авг 2007, 14:58
Репутация: 123
Откуда: Казань

Re: Растры: районирование по площади и кластеризация по врем

Сообщение KolesovDmitry » 08 сен 2015, 08:36

gamm писал(а):Для классификации растительности есть одна проблемы - (а) фазовый сдвиг (ранняя весна,поздняя весна), который поменяет коэффициенты, плюс (б) растяжение/сжатие во времени.
Это, конечно, так, но мы решили, что если использовать данные не за один год, а сразу большой ряд, то можно будет найти "усредненную идеальную" форму NDVI. Благо сейчас накоплено данных за десяток с гаком лет (мы делали упор на MODIS).

Хотя, если честно, то мы не проверяли гипотезу о том, что многолетние данные можно "усреднять" при помощи Фурье. Но у нас выходило, что наиболее значимые гармоники кратны N (N=число анализируемых лет) и при небольшом числе используемых гармоник (визуально) выделялась "идеальная форма" NDVI.

gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Растры: районирование по площади и кластеризация по врем

Сообщение gamm » 08 сен 2015, 08:57

Это, конечно, так, но мы решили, что если использовать данные не за один год, а сразу большой ряд, то можно будет найти "усредненную идеальную" форму NDVI. [/quote]
мы тоже использовали весь Модис, выбирая только вегетационный период. Для Фурье плохо то, что там дырки в данных, и сдвиг фазы между годами (к чему Фурье очень чувствителен). Поэтому должно выделять пересечение годовых кривых, но нужно смотреть, что и как делалось, и что получилось.

KolesovDmitry
Гуру
Сообщения: 810
Зарегистрирован: 22 авг 2007, 14:58
Репутация: 123
Откуда: Казань

Re: Растры: районирование по площади и кластеризация по врем

Сообщение KolesovDmitry » 08 сен 2015, 12:49

gamm, не могли бы вы рассказать, подробнее про коррелятор? У меня сложности с пониманием того, как им пользоваться: что такое коррелятор я представляю (или думаю, что представляю), но я не могу понять, как брать эталон, для того, чтобы коррелятор построить.
Ведь для того, чтобы найти эталонное поведение, мы должны знать (плюс-минус), что именно мы ищем. А вся цель работы как раз и состоит в том, чтобы обнаружить основные шаблоны поведения кривых.

gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Растры: районирование по площади и кластеризация по врем

Сообщение gamm » 08 сен 2015, 13:20

KolesovDmitry писал(а):gamm, не могли бы вы рассказать, подробнее про коррелятор?
могу, заходите - в пятницу у меня похоже будут окна с утра, утрясется расписание - в личку сообщу. :-)

Ответить

Вернуться в «Общий - ПО»

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

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