Интерполяции растра (полученного по индексу NDVI)

Программы и алгоритмы для обработки данных дистанционного зондирования: ERDAS, ENVI и другие.
Аватара пользователя
WeMaN
Завсегдатай
Сообщения: 268
Зарегистрирован: 16 фев 2009, 10:49
Репутация: 0

Интерполяции растра (полученного по индексу NDVI)

Сообщение WeMaN » 26 дек 2017, 09:49

Граждане, добрый день!
Задача такая.
1. Есть снимок WV-2
2. С помощью него в ENVI 5.3, на нужный участок, построил карту на основе индекса NDVI
3. В итоге получил растр со значением ячеек от -1 до 1
4. Дело в том, что значения больше 0,8 на данном растре не нужны
5. С помощью маски в ENVI 5.3 удалил с растра все значения от 0,8 до 1
6. В итоге получил растр с "дырками"
7. Задача такая, как внутри этих дырок интерполировать значения рядом расположенных ячеек
8. Софт есть как ENVI 5.3, так и GM, ArcGIS и QGIS
9. Формат растра исходный формат ENVI, но при желании его можно конвертнуть хоть в TIFF, хоть во что.
10. Пример растра скинуть не могу, ограничен в возможностях интернета (пишу с телефона)

Спасибо за внимание! Если что не написал, уточню, спрашивайте :wink:

Аватара пользователя
jerry-maori
Гуру
Сообщения: 556
Зарегистрирован: 22 авг 2012, 17:02
Репутация: 121
Ваше звание: it-дворник
Откуда: Нижний Новгород
Контактная информация:

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение jerry-maori » 26 дек 2017, 10:30

ну технически в GDAL (вроде) есть fill hole в растре.
Но как-то сама задача странно выглядит.

freeExec
Гуру
Сообщения: 768
Зарегистрирован: 23 апр 2011, 10:32
Проекты: 1
Репутация: 108
Откуда: Ульяновск

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение freeExec » 26 дек 2017, 10:42

Может тогда не удалять, а заменить всё на 0,79

Аватара пользователя
WeMaN
Завсегдатай
Сообщения: 268
Зарегистрирован: 16 фев 2009, 10:49
Репутация: 0

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение WeMaN » 26 дек 2017, 13:45

jerry-maori писал(а):
26 дек 2017, 10:30
ну технически в GDAL (вроде) есть fill hole в растре.
Но как-то сама задача странно выглядит.
ну почему странно, не использовать же растр с дырками?
Ничего необычного тут нет, вот есть для ENVI утилита, которая убирает известные всем диагональные полосы в Landsat 7, Вот ссылка - https://yceo.yale.edu/how-fill-gaps-landsat-etm-images
По идее должен быть инструмент который делает это для разных растров. Чисто технически, можно сделать растр 2 вектор, получить полигоны или точки, сделать GRID, применить в ArcGIS какой то метод интерполяции (кригинг, IDL) и получить растр. Но как то это уж очень заморочено, задача не сложная. Вот наподобие решения есть, см. ссылку выше. К сожалению работает только с L7...
freeExec писал(а):
26 дек 2017, 10:42
Может тогда не удалять, а заменить всё на 0,79
Нет ну вы что, там же не всегда рядом лежащий пиксель равен 0,79!

Аватара пользователя
jerry-maori
Гуру
Сообщения: 556
Зарегистрирован: 22 авг 2012, 17:02
Репутация: 121
Ваше звание: it-дворник
Откуда: Нижний Новгород
Контактная информация:

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение jerry-maori » 26 дек 2017, 14:06

полосатость ландсата - дык там вроде сенсор протух слегка.. т.е. это артефакт строго инородного по отношению к системе происхождения..
а раз уж получили значения -- то с ними и жить надо.
есть инструмент...
http://www.gdal.org/gdal_fillnodata.html

alexandr cherepanov
Гуру
Сообщения: 515
Зарегистрирован: 30 ноя 2006, 13:31
Статьи: 3
Проекты: 1
Репутация: 89
Откуда: Moscow

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение alexandr cherepanov » 26 дек 2017, 14:15

Envi Classic
Topographic ->Replace Bad Values


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

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение gamm » 26 дек 2017, 15:03

WeMaN писал(а):
26 дек 2017, 13:45
Нет ну вы что, там же не всегда рядом лежащий пиксель равен 0,79!
так вы еще хуже хотите поступить, заменить правильные (расчетные) значения неизвестно чем из соседних пикселей.

MYS
Интересующийся
Сообщения: 27
Зарегистрирован: 02 ноя 2011, 09:11
Репутация: 16

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение MYS » 26 дек 2017, 15:12

Постановка вопроса в варианте ТС в принципе возможна, если предполагается, что значения>0.8 не отражают на самом деле свойства NDVI на поверхности.

Например, есть лужок, на нем стоят зеленые шатры. У шатров NDVI >0.8, но нам хочется получить непрерывную поверхность для лужка, в том числе, под шатрами.

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2795
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 44
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение Natalia Novoselova » 26 дек 2017, 16:56

WeMaN писал(а):
26 дек 2017, 09:49
4. Дело в том, что значения больше 0,8 на данном растре не нужны
5. С помощью маски в ENVI 5.3 удалил с растра все значения от 0,8 до 1
А чего снимок, если не секрет?

Значения NDVI от 0.8 до 1 - могут быть лишь на очень хороших и мощных тропических лесах. Где-то так ненарушеннная Амазонская сельва. Деградированные тропические леса - уже на границе 0.8 и его меньше.

И вам такие территории "не нужны"?

Но я сомневаюсь, что вы картируете тропические леса. Тогда что дает у вас такое высокое значение NDVI? Вы уверены, что ничего не напутали с созданием самой карты? ИМХО, в пределах России NDVI не должно уходить выше 0.8..
пусть специалисты меня поправят, если я не права.

Аватара пользователя
nadiopt
Гуру
Сообщения: 4699
Зарегистрирован: 29 янв 2009, 13:27
Статьи: 4
Репутация: 460
Ваше звание: хрюкало
Откуда: Санкт-Петербург
Контактная информация:

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение nadiopt » 26 дек 2017, 17:14

не люблю индексов, но вот в этой статье: http://gis-lab.info/qa/ndvi.html - за 0.8 вылетают и хвойно-широколиственные, как и лиственные леса, то есть явно не только тропики
ин гроссен фамилен нихт клювен клац клац

Аватара пользователя
Natalia Novoselova
Гуру
Сообщения: 2795
Зарегистрирован: 15 янв 2013, 20:14
Репутация: 44
Ваше звание: Лиса
Откуда: **
Контактная информация:

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение Natalia Novoselova » 26 дек 2017, 17:29

nadiopt писал(а):
26 дек 2017, 17:14
но вот в этой статье:
Где об этом сказано в этой статье? Там вообще нет упоминаний типов леса, и нет слов, что хвойно-широколиственные и лиственные леса имеют NDVI>0.8

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

Научные статьи могли бы это сказать, но я не помню значений NDVI для лесов умеренных широт.

Аватара пользователя
jerry-maori
Гуру
Сообщения: 556
Зарегистрирован: 22 авг 2012, 17:02
Репутация: 121
Ваше звание: it-дворник
Откуда: Нижний Новгород
Контактная информация:

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение jerry-maori » 26 дек 2017, 18:11

NDVI -- величина мало того, что механистическая, так ещё и достаточно колдунская...
Имхо надо не пикселя выбрасывать, а сначала разобраться -- с чего бы банька то сгорела (в смысле почему там не может быть выше 0.8 и почему в данной точке выше).. может в этих якобы аутлаерах вааще весь смысл и цимес зашит...

Аватара пользователя
WeMaN
Завсегдатай
Сообщения: 268
Зарегистрирован: 16 фев 2009, 10:49
Репутация: 0

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение WeMaN » 27 дек 2017, 09:01

Граждане!
Сначала по теме вопроса
Я обязательно с вами подискутирую по поводу значения выше 0,8, но давайте не будем углубляться в частности.
Вопрос звучит ведь, не "какой объект может быть выше 0,8", правильно?
Стоит задача - интерполировать в "дырки" которые no data, значения полученные по расчётам какого - нибудь алгоритма интерполяции, чтобы картинка не была рваной.
Для примера, я вам привёл ситуацию с Landsat 7, где по сути такая же задача была, есть полосы no data и в них интерполируются значения.
К слову, хорошо работает та утилита, для L7, я в своё время пользовался.
Так вот, интересно, есть ли такой инструмент и для других задач, не связанных с Landsat 7 :) А именно чтобы закрыть "дырки".
Спасибо alexandr cherepanov и lam за инструменты, буду пробовать, о результатах доложу.

Уважаемые, Natalia Novoselova и nadiopt я уже давно на форуме, и насколько знаю, у вас достаточно богатый опыт работы с космоснимками, и с растрами в частности, вы ни разу не сталкивались с заполнением no data на растре интерполированными значениями?

Игорь Белов
Гуру
Сообщения: 1549
Зарегистрирован: 04 янв 2011, 22:00
Статьи: 12
Проекты: 1
Репутация: 960
Откуда: Казань

Re: Интерполяции растра (полученного по индексу NDVI)

Сообщение Игорь Белов » 27 дек 2017, 09:33

Вы желаете странного. Вот модельный профиль поля NDVI в Вашей интерпретации:
img_20171227_093438.png
img_20171227_093438.png (3.98 КБ) 801 просмотр
Ни о каком интерполировании не может быть и речи, вместо дырок должны быть значения 0,8. Выше freeExec уже озвучил эту простую истину.
И задача в случае Landsat 7 по сути совершенно другая.

Ответить

Вернуться в «Обработка ДДЗ»

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

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