Индексы вегетации в ENVI
- Sergey_USU
- Новоприбывший
- Сообщения: 3
- Зарегистрирован: 23 май 2010, 16:52
- Репутация: 0
Индексы вегетации в ENVI
Здравствуйте!
У меня возник вопрос при использовании индексов вегетации в ENVI (правда пользователь этой программы я еще не очень опытный ).
В ENVI есть встроенный индекс вегетации NDVI, который получается из двух каналов (RED и NIR). При этом через инструмент Band Math можно составлять другие индексы, например, трех канальные (+Green). Но если требуется составить более сложный индекс вегетации, который нельзя выразить одним выражением, а нужно использовать if, and и or. В справке написано, что and и or использовать вроде можно, но вот как использовать ветвление не знаю . Можете помочь?
Вообще задача у меня стоит в идентификации лесов, т.е. в простой идентификации от почвы и других объектов (или вообще идентификация растительности). Если может кто помочь, буду очень рад!
У меня возник вопрос при использовании индексов вегетации в ENVI (правда пользователь этой программы я еще не очень опытный ).
В ENVI есть встроенный индекс вегетации NDVI, который получается из двух каналов (RED и NIR). При этом через инструмент Band Math можно составлять другие индексы, например, трех канальные (+Green). Но если требуется составить более сложный индекс вегетации, который нельзя выразить одним выражением, а нужно использовать if, and и or. В справке написано, что and и or использовать вроде можно, но вот как использовать ветвление не знаю . Можете помочь?
Вообще задача у меня стоит в идентификации лесов, т.е. в простой идентификации от почвы и других объектов (или вообще идентификация растительности). Если может кто помочь, буду очень рад!
- nadiopt
- Гуру
- Сообщения: 4744
- Зарегистрирован: 29 янв 2009, 13:27
- Репутация: 495
- Ваше звание: хрюкало
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Индексы вегетации в ENVI
лес от не-леса можно даже неконтролируемой классификацией отличить
а что за хитрый индекс вы хотите составить?
а что за хитрый индекс вы хотите составить?
ин гроссен фамилен нихт клювен клац клац
- Sergey_USU
- Новоприбывший
- Сообщения: 3
- Зарегистрирован: 23 май 2010, 16:52
- Репутация: 0
Re: Индексы вегетации в ENVI
Мне нужно посчитать индекс, который называется 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 г.
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 г.
-
- Гуру
- Сообщения: 534
- Зарегистрирован: 30 ноя 2006, 13:31
- Репутация: 116
- Откуда: Moscow
Re: Индексы вегетации в ENVI
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)
Проверьте выражение, может что не так записал
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
Спасибо! Вроде получилось.
-
- Новоприбывший
- Сообщения: 12
- Зарегистрирован: 14 мар 2011, 14:04
- Репутация: 0
Re: Индексы вегетации в ENVI
добрый день!
помогите пожалуйста, как сделать индекс NDVI.
Я делаю через spectral - vegetation analisis- vegetation index calculator.....что дальше
помогите пожалуйста, как сделать индекс NDVI.
Я делаю через spectral - vegetation analisis- vegetation index calculator.....что дальше
- nadiopt
- Гуру
- Сообщения: 4744
- Зарегистрирован: 29 янв 2009, 13:27
- Репутация: 495
- Ваше звание: хрюкало
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Индексы вегетации в ENVI
смотрим картинку
- Вложения
-
- энви_вег.JPG (67.03 КБ) 16092 просмотра
ин гроссен фамилен нихт клювен клац клац
-
- Новоприбывший
- Сообщения: 12
- Зарегистрирован: 14 мар 2011, 14:04
- Репутация: 0
- nadiopt
- Гуру
- Сообщения: 4744
- Зарегистрирован: 29 янв 2009, 13:27
- Репутация: 495
- Ваше звание: хрюкало
- Откуда: Санкт-Петербург
- Контактная информация:
-
- Новоприбывший
- Сообщения: 12
- Зарегистрирован: 14 мар 2011, 14:04
- Репутация: 0
Re: Индексы вегетации в ENVI
я нажимаю ОК.
НО он выдает мне ошибку(см.картинку)
НО он выдает мне ошибку(см.картинку)
- Вложения
-
- 12.jpg (23.5 КБ) 16065 просмотров
- nadiopt
- Гуру
- Сообщения: 4744
- Зарегистрирован: 29 янв 2009, 13:27
- Репутация: 495
- Ваше звание: хрюкало
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Индексы вегетации в ENVI
ааа ну я в таком случае использую band math хотя говорят что значения каналов можно вручную в hdr прописать
ин гроссен фамилен нихт клювен клац клац
-
- Новоприбывший
- Сообщения: 12
- Зарегистрирован: 14 мар 2011, 14:04
- Репутация: 0
Re: Индексы вегетации в ENVI
что писать в диалоговом окне
- Вложения
-
- 123.jpg (32.96 КБ) 16056 просмотров
- nadiopt
- Гуру
- Сообщения: 4744
- Зарегистрирован: 29 янв 2009, 13:27
- Репутация: 495
- Ваше звание: хрюкало
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Индексы вегетации в ENVI
ин гроссен фамилен нихт клювен клац клац
-
- Новоприбывший
- Сообщения: 12
- Зарегистрирован: 14 мар 2011, 14:04
- Репутация: 0
Re: Индексы вегетации в ENVI
спасибо, вообщем что то получилось)Но картинка местности осталась прежней. Нужно что то дальше делать, чтоб получить картинку о существующей растительности и ее состоянии
Например получить такую же картину как (см.картинку)
Например получить такую же картину как (см.картинку)
-
- Участник
- Сообщения: 69
- Зарегистрирован: 21 ноя 2010, 17:43
- Репутация: 0
- Откуда: Пенза
- Контактная информация:
Re: Индексы вегетации в ENVI
а вы картинку то раскрашивали?
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя