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

Разделение объектов с разными площадями

Добавлено: 05 июн 2014, 14:57
Loup
Привет! Не знаю, как четко озаглавить тему, но проблема следующая. Есть растр, представляющий из себя несколько отдешифрированных сцен ландсат. На этом растре есть озера - большие (диаметр>100 метров) и маленькие (<100 метров). В растре этим озерам соответствует какое-то одно значение, скажем 2. Помимо озер есть еще множество других объектов с другими значениями пикселом.

Как отделить большие озера от маленьких? Т.е., например, чтобы большим озерам все еще соответствовало значение "2", а маленьким - уже значение "3". Есть ли какой-то простейших алгоритм или нужно сильно заморачиваться? Из ПО есть QGIS, Grass, Saga.

Спасибо!

Re: Разделение объектов с разными площадями

Добавлено: 06 июн 2014, 11:07
bolotoved
Поскольку озера могут иметь разную форму, то при анализе именно растра могут возникнуть проблемы.
Самое простое решение - использовать векторные объекты:

отделить класс озер в отдельный растр -
векторизовать без сглаживания,
расчитать площади полигонов,
с пом. запроса отделить озера больше или меньше заданного порога и
присвоить им другой класс.
снова растеризовать
объеденить с предыдущей классификацией.

Re: Разделение объектов с разными площадями

Добавлено: 06 июн 2014, 11:17
bolotoved
Если интересует именно радиус, а не площадь и нужно отсечь только крупные водные объекты (отсечь от них всякие мелкие заводи), то можно использовать какой-нибудь скользящий фильтр заданного радиуса, например r.neighbors для GRASS, например, используя метод "interspersion": http://grass.osgeo.org/grass64/manuals/r.neighbors.html

После прохождения фильтром мелкие озера и всякие аппендиксы накопят меньший процент сходных пикселей и вам останется лишь задать порог отсечения мелочевки.

Re: Разделение объектов с разными площадями

Добавлено: 06 июн 2014, 11:36
Loup
Площадь подойдет, про векторизацию я уже думала. Одна проблема - когда пыталась векторизовать весь слой, процесс длился сутки потом прерывался ошибкой "недостаточно системной памяти". Векторизовать только озера еще не пробовала, сейчас займусь.

Re: Разделение объектов с разными площадями

Добавлено: 06 июн 2014, 11:46
bolotoved
В грассе мощный векторизатор стоит, сцену ландсат из десятка классов векторизовать может даже на стареньком ноуте.

Re: Разделение объектов с разными площадями

Добавлено: 06 июн 2014, 11:52
Loup
Я через r.to.vect в грассе и делала, через командную строку. Другое дело, что с векторизацией знакома плохо, нужны ли р.фины и в.клины конкретно мне понять не смогла, так что вполне возможно, что проблема в кривых руках. Ну и мне площадь далеко не 1 сцены ландсат векторизовать надо. Буду разбираться, спасибо за помощь.