Анализ данных для создание рельефа

Все остальное, мало относящееся к ГИС.
Ответить
Аватара пользователя
ANAT01
Активный участник
Сообщения: 196
Зарегистрирован: 18 апр 2012, 14:41
Репутация: 57

Анализ данных для создание рельефа

Сообщение ANAT01 » 04 окт 2014, 21:47

Доброго времени суток!

Есть набор данных (точки с координатами x,y,h). Таких точек порядка 500 тыс. на территории в 500 Га.
Спойлер
Один квадрат толстой линией 50х50 метров
Изображение
Проблемы:
1) Ложные данные о высотной отметке (например, у двух точек на расстоянии метра друг от друга перепад в высоте бывает очень большой и это не из-за рельефа)
2) Не равномерный разброс данных (где-то густо, где-то пусто)
3) Большое количество данных

Вопросы:
1) Как сгладить значения высотных отметок (исключить ложные)?
2) и 3) Как проинтерполировать значение высотных отметок?

Интересуют алгоритмы и инструменты. Пните в нужном направлении!
ЗЫ: Задача носит академический интерес в целях самообразования.
упячка11111адинадинадин!!!!11

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

Re: Анализ данных для создание рельефа

Сообщение Ariki » 04 окт 2014, 22:48

Похоже на отметки высот с топосъёмки застроенной территории. В этом случае "вылетающие" отметки - это отметки инженерных сооружений: всяких крылечек, первых этажей зданий, подземных коммуникаций в колодцах, подпорных стенок, бордюров, канав и прочего. Эти отметки надо выкинуть из исходных данных, а не сглаживать. Для лучшего результата неплохо бы знать, были ли подземные коммуникации на исходном материале.
Как отфильтровать ненужные точки? Можно попробовать сначала построить растр по всем точкам, сгладить его, убрав грубые неровности, а потом прописать отметку сглаженной матрицы высот обратно в атрибут исходного векторного слоя. После этого по разности оригинальной и сглаженной высот можно отсеять лишнее и дальше работать уже с очищенными данными.
Изолинии можно строить как непосредственно по точкам, так и по матрице высот - я не знаю, какой программный инструмент имеется в вашем распоряжении. ArcGIS, GDAL, QGIS и многие другие пакеты имеют для этого всё необходимое.

Аватара пользователя
ANAT01
Активный участник
Сообщения: 196
Зарегистрирован: 18 апр 2012, 14:41
Репутация: 57

Re: Анализ данных для создание рельефа

Сообщение ANAT01 » 05 окт 2014, 12:34

Ariki писал(а):Похоже на отметки высот с топосъёмки застроенной территории. В этом случае "вылетающие" отметки - это отметки инженерных сооружений: всяких крылечек, первых этажей зданий, подземных коммуникаций в колодцах, подпорных стенок, бордюров, канав и прочего. Эти отметки надо выкинуть из исходных данных, а не сглаживать. Для лучшего результата неплохо бы знать, были ли подземные коммуникации на исходном материале.
Выкинуть не получится так как не известно что есть что. Точки даны сплошным массивом данных x,y,z.
Ariki писал(а):Как отфильтровать ненужные точки? Можно попробовать сначала построить растр по всем точкам, сгладить его, убрав грубые неровности, а потом прописать отметку сглаженной матрицы высот обратно в атрибут исходного векторного слоя. После этого по разности оригинальной и сглаженной высот можно отсеять лишнее и дальше работать уже с очищенными данными.
Изолинии можно строить как непосредственно по точкам, так и по матрице высот - я не знаю, какой программный инструмент имеется в вашем распоряжении. ArcGIS, GDAL, QGIS и многие другие пакеты имеют для этого всё необходимое.
Нашел описание метода на гистуториал. Принцип понятен. Хотелось бы тоже самое, но аналитическим методом (не графическим).
Допустим, при поквадратной разбивке (к примеру, со сторонами 5х5м, - те же самые пикселы растра) плоскости в каждом квадрате получаем N-ное кол-во точек с отметками.
Например: 55.10, 55.30, 55.40, 55.30, 56.80 где 56.80 нужно выкинуть, т.к. сильно отличается, а от остальных найти среднеарифметическое.
По какой формуле вычислить сильно отклонившийся?
упячка11111адинадинадин!!!!11

gamm
Гуру
Сообщения: 4069
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1064
Ваше звание: программист
Откуда: Казань

Re: Анализ данных для создание рельефа

Сообщение gamm » 05 окт 2014, 20:01

ANAT01 писал(а):По какой формуле вычислить сильно отклонившийся?
это определяется природой данных. Если вы незнакомы с математикой методов фильтрации, то используйте медианный фильтр, будет более-менее прилично. Большего без сведений о природе данных сказать нельзя.

Ответить

Вернуться в «Все остальное»

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

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость