Здравствуйте.
имеется shape файл в виде полигона и растр.
Задача, подсчитать количество пикселей в каждом полигоне, но при этом не учитывать те пиксели, которые частично входят в данный полигон. Другими словами, подсчитать только те пиксели, которые полностью находятся в полигоне.
Как это сделать в ERDAS 2010 или ArcGIS 10.
Заранее благодарю за ответ
Как подсчитать количество пикселей в полигоне?
-
- Интересующийся
- Сообщения: 34
- Зарегистрирован: 14 сен 2012, 11:37
- Репутация: 2
-
- Гуру
- Сообщения: 1018
- Зарегистрирован: 01 авг 2012, 13:55
- Репутация: 241
Re: Как подсчитать количество пикселей в полигоне?
ArcGIS 10 - зональная статистика вам в помощь.
-
- Интересующийся
- Сообщения: 34
- Зарегистрирован: 14 сен 2012, 11:37
- Репутация: 2
Re: Как подсчитать количество пикселей в полигоне?
Спасибо за ответ.lam писал(а):ArcGIS 10 - зональная статистика вам в помощь.
в ArcGIS зональной статистики в расчет берутся частичные полигоны, мне же нужно, чтобы в расчет брались только те пиксели, которые полностью находятся в данном полигоне. С утилитой Zonal Atributs из ERDASa то же самое.
Есть еще какие либо идеи?
-
- Гуру
- Сообщения: 4168
- Зарегистрирован: 15 окт 2010, 08:33
- Репутация: 1107
- Ваше звание: программист
- Откуда: Казань
Re: Как подсчитать количество пикселей в полигоне?
план а) брутфорсим, но нужно много места. Создаем (руками) табличку с углами ячеек, и ID - номером ячейки. Делаем point_in_poly, и считаем, сколько углов попало в полигон, если 4, то ячейка ваша.li_sasha писал(а):lam писал(а):Есть еще какие либо идеи?
план в) тоже брутфорсим, но менее тупо. Скорее всего, арка проверяет вхождение центра ячейки (нужно смотреть инструкцию). Если так, то создаем 4 растра, сдвинутых так, чтобы углы стали центрами, и делаем план (а) на растре
делать все это удобнее не в Арке, а в том же R или любой знакомой среде типа Матлаба.
-
- Гуру
- Сообщения: 1018
- Зарегистрирован: 01 авг 2012, 13:55
- Репутация: 241
Re: Как подсчитать количество пикселей в полигоне?
1. Конвертировать грид в Integerli_sasha писал(а):Спасибо за ответ.lam писал(а):ArcGIS 10 - зональная статистика вам в помощь.
в ArcGIS зональной статистики в расчет берутся частичные полигоны, мне же нужно, чтобы в расчет брались только те пиксели, которые полностью находятся в данном полигоне. С утилитой Zonal Atributs из ERDASa то же самое.
Есть еще какие либо идеи?
2. Конвертировать грид в точки
3. Построить прямоугольный буфер по точкам заданного размера, т.е. размера пикселя -
viewtopic.php?f=15&t=12791&p=81755&hili ... %80#p81755
4. Сделать выборку (Select By Location) тех прямоугольных буферов, которые полностью содержаться в полигонах и записать в новый слой.
5. Используя инструмент из тулбокса Spatial Join, присоединить к слою прямоугольных буферов информацию из слоя полигонов, а именно поле идентификации полигонов.
6. Посчитать количество прямоугольных буферов, т.е. пикселей, которые полностью содержаться в соответствующих полигонах, для этого открыть таблицу слоя прямоугольных буферов, указать поле идентификации полигонов и затем правая кнопка мыши - Summarize..., в результате будет создана таблица с количеством прямоугольных буферов, т.е. пикселей, которые полностью содержаться в соответствующих полигонах.
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 4 гостя