Индексы вегетации в ENVI

Программы и алгоритмы для обработки данных дистанционного зондирования: ERDAS, ENVI и другие.
Аватара пользователя
Sergey_USU
Новоприбывший
Сообщения: 3
Зарегистрирован: 23 май 2010, 16:52
Репутация: 0

Индексы вегетации в ENVI

Сообщение Sergey_USU » 23 май 2010, 20:49

Здравствуйте!
У меня возник вопрос при использовании индексов вегетации в ENVI (правда пользователь этой программы я еще не очень опытный :) ).
В ENVI есть встроенный индекс вегетации NDVI, который получается из двух каналов (RED и NIR). При этом через инструмент Band Math можно составлять другие индексы, например, трех канальные (+Green). Но если требуется составить более сложный индекс вегетации, который нельзя выразить одним выражением, а нужно использовать if, and и or. В справке написано, что and и or использовать вроде можно, но вот как использовать ветвление не знаю :( . Можете помочь?
Вообще задача у меня стоит в идентификации лесов, т.е. в простой идентификации от почвы и других объектов (или вообще идентификация растительности). Если может кто помочь, буду очень рад!

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

Re: Индексы вегетации в ENVI

Сообщение nadiopt » 24 май 2010, 14:07

лес от не-леса можно даже неконтролируемой классификацией отличить
а что за хитрый индекс вы хотите составить?
ин гроссен фамилен нихт клювен клац клац

Аватара пользователя
Sergey_USU
Новоприбывший
Сообщения: 3
Зарегистрирован: 23 май 2010, 16:52
Репутация: 0

Re: Индексы вегетации в ENVI

Сообщение Sergey_USU » 24 май 2010, 21:41

Мне нужно посчитать индекс, который называется TCHVI (three-channel vegetation index)
TCHVI=((RED-GR)-(NIR-RED))/(abs(RED-GR)+abs(NIR-RED)) (*)

индекс зависит от значения яркости пикселя, в некоторых случаях в виде (*) он принимает значения +1 или -1; алгоритм его вычисления представляется следующим образом:

D1=RED-GR, D2=NIR-RED

if ((D1>0 and D2<0) or (D1<0 and D2>0)) { TCHVI=(D1+D2)/(absD1+absD2) }

if ((D1>0 and D2>0) or (D1<0 and D2<0)) { TCHVI=(D1-D2)/(absD1+absD2) }

//взято из статьи: Бондур В.Г., Чимитдоржиев Т.Н. Дистанционное зондирование растительности оптико-микроволновыми методами. Известия ВУЗов. Геодезия и аэрофотосъемка. 2008 г.

alexandr cherepanov
Гуру
Сообщения: 534
Зарегистрирован: 30 ноя 2006, 13:31
Репутация: 116
Откуда: Moscow

Re: Индексы вегетации в ENVI

Сообщение alexandr cherepanov » 24 май 2010, 23:55

pro файл скопируйте в sav_add

FUNCTION TCHVI, b2, b3, b4
; D1=RED-GR
b100 = float(b3)-float(b2)
; D2=NIR-RED
b200 = float(b4)-float(b3)
; (absD1+absD2)
b300 = abs(b100)+abs(b200)
b1=(b100 gt 0 and b200 lt 0 or b100 lt 0 and b200 gt 0)*((b100+b200)/b300)+(b100 gt 0 and b200 gt 0 or b100 lt 0 and b200 lt 0)*((b100-b200)/b300)
RETURN, b1
END

Запускается через Band Math выражением
TCHVI(b2, b3, b4)

Проверьте выражение, может что не так записал

Аватара пользователя
Sergey_USU
Новоприбывший
Сообщения: 3
Зарегистрирован: 23 май 2010, 16:52
Репутация: 0

Re: Индексы вегетации в ENVI

Сообщение Sergey_USU » 25 май 2010, 16:50

Спасибо! Вроде получилось.

olgagolubeva
Новоприбывший
Сообщения: 12
Зарегистрирован: 14 мар 2011, 14:04
Репутация: 0

Re: Индексы вегетации в ENVI

Сообщение olgagolubeva » 14 мар 2011, 14:34

добрый день!
помогите пожалуйста, как сделать индекс NDVI.
Я делаю через spectral - vegetation analisis- vegetation index calculator.....что дальше

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

Re: Индексы вегетации в ENVI

Сообщение nadiopt » 14 мар 2011, 16:49

смотрим картинку
Вложения
энви_вег.JPG
энви_вег.JPG (67.03 КБ) 16088 просмотров
ин гроссен фамилен нихт клювен клац клац

olgagolubeva
Новоприбывший
Сообщения: 12
Зарегистрирован: 14 мар 2011, 14:04
Репутация: 0

Re: Индексы вегетации в ENVI

Сообщение olgagolubeva » 14 мар 2011, 18:52

у меня такая картинка
Вложения
111.jpg
111.jpg (51.88 КБ) 16075 просмотров

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

Re: Индексы вегетации в ENVI

Сообщение nadiopt » 14 мар 2011, 19:15

ну ды надо сказать OK
ин гроссен фамилен нихт клювен клац клац

olgagolubeva
Новоприбывший
Сообщения: 12
Зарегистрирован: 14 мар 2011, 14:04
Репутация: 0

Re: Индексы вегетации в ENVI

Сообщение olgagolubeva » 14 мар 2011, 20:26

я нажимаю ОК.
НО он выдает мне ошибку(см.картинку)
Вложения
12.jpg
12.jpg (23.5 КБ) 16061 просмотр

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

Re: Индексы вегетации в ENVI

Сообщение nadiopt » 14 мар 2011, 21:21

ааа ну я в таком случае использую band math хотя говорят что значения каналов можно вручную в hdr прописать
ин гроссен фамилен нихт клювен клац клац

olgagolubeva
Новоприбывший
Сообщения: 12
Зарегистрирован: 14 мар 2011, 14:04
Репутация: 0

Re: Индексы вегетации в ENVI

Сообщение olgagolubeva » 14 мар 2011, 21:45

что писать в диалоговом окне
Вложения
123.jpg
123.jpg (32.96 КБ) 16052 просмотра

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

Re: Индексы вегетации в ENVI

Сообщение nadiopt » 14 мар 2011, 22:05

как в посте про bandmath
viewtopic.php?f=20&t=5620
а потом про бэнды он сам спросит
ин гроссен фамилен нихт клювен клац клац

olgagolubeva
Новоприбывший
Сообщения: 12
Зарегистрирован: 14 мар 2011, 14:04
Репутация: 0

Re: Индексы вегетации в ENVI

Сообщение olgagolubeva » 14 мар 2011, 22:42

спасибо, вообщем что то получилось)Но картинка местности осталась прежней. Нужно что то дальше делать, чтоб получить картинку о существующей растительности и ее состоянии
Например получить такую же картину как (см.картинку)Изображение

funkyman
Участник
Сообщения: 69
Зарегистрирован: 21 ноя 2010, 17:43
Репутация: 0
Откуда: Пенза
Контактная информация:

Re: Индексы вегетации в ENVI

Сообщение funkyman » 14 мар 2011, 23:29

а вы картинку то раскрашивали?

Ответить

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

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

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