Удаление точечных "мусорных объектов.

Не знаете, где задать вопрос? Задавайте здесь.
Ответить
Дардон
Интересующийся
Сообщения: 20
Зарегистрирован: 25 дек 2014, 17:17
Репутация: 0

Удаление точечных "мусорных объектов.

Сообщение Дардон » 25 дек 2014, 17:24

Есть три типа объектов. Первый: жирные полигоны (сх поля). Второй: маленькие полигончики в основном округлой формы, составляющие вместе единую выборку, в которой в финале дырок быть не должно. Третий: вытянутые объекты (лесополосы между сх полями). Задача удалить второй тип объектов, но находящихся не в общей массе, а на определённом расстоянии от них. Дали мне подсказку - использовать инструмент Буфер. Буфер построил на всю территорию...а дальше...затормозил. Как быть, посоветуйте. Или, возможно, есть другой способ. Спасибо.

giser
Завсегдатай
Сообщения: 388
Зарегистрирован: 09 ноя 2012, 09:25
Репутация: 113
Откуда: Москва

Re: Удаление точечных "мусорных объектов.

Сообщение giser » 25 дек 2014, 19:18

Какое ПО-то? Если ArcGIS, то используйте выборку по месторасположению, например (там можно указать расстояние до объектов).

Дардон
Интересующийся
Сообщения: 20
Зарегистрирован: 25 дек 2014, 17:17
Репутация: 0

Re: Удаление точечных "мусорных объектов.

Сообщение Дардон » 25 дек 2014, 19:36

Да, ArcGIS. Выборка по местоположению - select by attributes в табл. слоя или другое что-то ? Извините за подобный вопрос. в этом ПО работаю недавно.

giser
Завсегдатай
Сообщения: 388
Зарегистрирован: 09 ноя 2012, 09:25
Репутация: 113
Откуда: Москва

Re: Удаление точечных "мусорных объектов.

Сообщение giser » 25 дек 2014, 19:50

Select by location (там выбираете целевой и исходный слои, расстояние)

Дардон
Интересующийся
Сообщения: 20
Зарегистрирован: 25 дек 2014, 17:17
Репутация: 0

Re: Удаление точечных "мусорных объектов.

Сообщение Дардон » 25 дек 2014, 20:23

Не очень понятно, как этот инструмент работает. Что за "Каждый объект во Входном векторном слое (Input Feature Layer) сравнивается с объектами в слое Выбирающих объектов (Selecting Features) или классом объектов; если входной объект соответствует значению в параметре Отношения (Relationship), он выбирается". Как это понять. Входной для меня - это шейп с полигонами, среди которых я должен удалить мусор. А "выбирающие" ? http://resources.arcgis.com/ru/help/mai ... 072000000/

giser
Завсегдатай
Сообщения: 388
Зарегистрирован: 09 ноя 2012, 09:25
Репутация: 113
Откуда: Москва

Re: Удаление точечных "мусорных объектов.

Сообщение giser » 25 дек 2014, 21:15

Перепрочитал условия, теперь получше понял. Наверное, Вас немного повел не в ту сторону. Если теперь все правильно понял, то, думаю, Вам нужно посмотреть в сторону инструмента Near. Он рассчитает для каждого объекта из общей массы расстояние до ближайшего, а потом нужно будет с помощью условия > выборкой по атрибуту выбрать и удалить "далекие" объекты.

Ariki
Гуру
Сообщения: 731
Зарегистрирован: 12 янв 2011, 22:40
Репутация: 304
Ваше звание:

Re: Удаление точечных "мусорных объектов.

Сообщение Ariki » 25 дек 2014, 22:56

Near должен сработать. В качестве входных данных нужно дважды указать один и тот же класс пространственных объектов, а финальную выборку делать по расстоянию и площади.
Идея с буфером тоже работоспособна, но, скорее всего, будет работать медленнее. Строите буфер по заданному расстоянию, dissolve type ставите ALL, чтобы получился один мультиполигон. Буфера близко расположенных геометрий при этом сольются вместе, буфера отдельно стоящих будут отдельными частями мультиполигона. Разбиваете мультиполигон на простые полигоны (Multipart To Singlepart) и удаляете имеющие маленькую площадь. Оставшиеся используете для пространственной выборки из исходного слоя.

giser
Завсегдатай
Сообщения: 388
Зарегистрирован: 09 ноя 2012, 09:25
Репутация: 113
Откуда: Москва

Re: Удаление точечных "мусорных объектов.

Сообщение giser » 25 дек 2014, 23:12

Да, Near точно сработает. Сейчас даже, чтобы человека не обманывать, создал тестовый набор. Все прошло в штатном режиме и очень быстро. Указать 2 раза один и тот же слой, добавятся поля с расстоянием и ID, удалить объекты, превышающие допустимое расстояние. Через буфер слишком запарно, имхо.

Дардон
Интересующийся
Сообщения: 20
Зарегистрирован: 25 дек 2014, 17:17
Репутация: 0

Re: Удаление точечных "мусорных объектов.

Сообщение Дардон » 26 дек 2014, 14:57

а search radius указывать ? в окне near

Дардон
Интересующийся
Сообщения: 20
Зарегистрирован: 25 дек 2014, 17:17
Репутация: 0

Re: Удаление точечных "мусорных объектов.

Сообщение Дардон » 26 дек 2014, 15:05

376479 Га - это площадь, в пределах к-ой необходимо найти и уничтожить эти объекты. Пока считает компьютер, минут 10 уйдёт.

giser
Завсегдатай
Сообщения: 388
Зарегистрирован: 09 ноя 2012, 09:25
Репутация: 113
Откуда: Москва

Re: Удаление точечных "мусорных объектов.

Сообщение giser » 26 дек 2014, 15:32

Вряд ли Вам нужно указывать радиус поиска. Как я понимаю, нужно удалить объекты, находящиеся на расстоянии большем, чем возможно по условию (хотя Вы его не указали). Поэтому Nearом нужно просто вычислить ближайшие объекты для каждого и удалить те, у которых ближайший слишком далеко.

Дардон
Интересующийся
Сообщения: 20
Зарегистрирован: 25 дек 2014, 17:17
Репутация: 0

Re: Удаление точечных "мусорных объектов.

Сообщение Дардон » 29 дек 2014, 12:52

А это...я ведь после применения к буферу Multipart to singlepart удаляю только...буферы ? И у меня получается буферная картинка. А мне надо получить картинку в терминах полигонов (сх полей, то есть). Это надо Юнионом и т.п. инструментами пользоваться ?

Ответить

Вернуться в «Я новичок!»

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

Сейчас этот форум просматривают: Ahrefs [Bot] и 1 гость