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

рассчёт произвольной зональной статистики

Добавлено: 18 дек 2012, 16:18
jerry-maori
Ситуация следующая:
есть исходный растр и сеть полигонов
Задача:
посчитать внутри каждого полигона энтропию (соотношение пикселей разного цвета)
С ходу задача не решилась. Пришлось тащить матрицу в виде ASCII в Matlab и считать там.
А есть ли какие решения внтури самого ArcGIS ?

Заранее спасибо.

Re: рассчёт произвольной зональной статистики

Добавлено: 18 дек 2012, 16:28
lam
jerry_maori писал(а):посчитать внутри каждого полигона энтропию (соотношение пикселей разного цвета)
Уточните по какой формуле Вы определяете "соотношение пикселей разного цвета внутри каждого полигона".

Re: рассчёт произвольной зональной статистики

Добавлено: 18 дек 2012, 16:46
jerry-maori
Шеннон, -sum(p.^log(p)), где p - отношение числа пикселей данного цвета к общему числу пикселей внутри полигона

Re: рассчёт произвольной зональной статистики

Добавлено: 19 дек 2012, 09:23
lam
jerry_maori писал(а):Шеннон, -sum(p.^log(p)), где p - отношение числа пикселей данного цвета к общему числу пикселей внутри полигона
Что такое p. и чем оно отличается от p? p=quantity pixel red/quantity pixel all?

Re: рассчёт произвольной зональной статистики

Добавлено: 19 дек 2012, 09:57
jerry-maori
пусть в квадрте N пикселей разного цвета. тогда pi=ni/N доля пикселя цвета i.
в итоге получим вектор p
и считаем для него индекс Шеннона

Re: рассчёт произвольной зональной статистики

Добавлено: 20 дек 2012, 09:10
lam
Вот эта тема должна Вам помочь - viewtopic.php?f=16&t=12306
Чтобы работать со значениями каждого пикселя в гриде, предлагаю перейти к узлам этого грида в виде точечного шейпа.