Здравствуйте!Мы выполняем много замеров объемов сыпучих материалов.
В основном, уголь и золошлаковые отходы.
Один и тот же склад углы снимаем ежемесячно.
Данные необходимо хранить 5 лет. Итого один склад - храним 60 замеров.
А угольных складов у нас 20 штук. А еще 15 золошлакоотвалов.
Хранить традиционные облака точек, ни один терабайтник не выдержит. И даже два и три.У нас есть Кредо 3Д Скан. Облака он прореживает. Но при этом, ни бровок, ни подошв не выделяет.
А мы постоянно снимаем штабеля угля с откосами и карьеры.
Прореживать до плотности точек 1 см, даже 10 см смысла большого не имеет. Облако все равно слишком много "весит"Подскажите, есть ли программы, способные проредить облако точек до уровня 5-10 метров между точками, без потери точности
отрисовки бровок и подошв.
Александр И, ну скинь образец попробую в робуре сам чистил 500га через каждые 10см батиметрии но там только горизонтали
В CloudCompare можно сначала вычислить для точек Curvature / Normal change rate, а затем при Edit → Subsample → Spatial включить Use active SF. Тогда расстояние между сохраняемыми точками зависит от значения scalar field: на ровных участках можно оставлять точки хоть через 5–10 м, а в местах сильного изменения поверхности — бровках, подошвах, перегибах — оставить плотность, например, 0.2–1 м.
То есть примерно такой процесс:Загружаем исходное облако.
Tools → Other → Compute geometric features.
Считаем Normal change rate или curvature с подходящим радиусом окрестности.
Полученный scalar field делаем активным.
Edit → Subsample → Spatial.
Включаем Use active SF.
Для малой кривизны задаём, условно, 5–10 м, а для большой — 0.25–0.5 м.Но есть нюанс: CloudCompare не понимает семантически, что вот эта линия — "бровка", а эта — "подошва". Он понимает только геометрию поверхности. Поэтому если бровка резкая — способ сработает очень хорошо. Если штабель угля имеет сильно сглаженный перегиб, нужно правильно подобрать радиус вычисления curvature.
И еще. В CloudCompare многие операции можно запускать через командную строку, поэтому обработку большого архива облаков реально поставить на пакетный режим. Например, можно подготовить скрипт, который автоматически перебирает все файлы в папке, для каждого облака рассчитывает кривизну или изменение нормалей, выполняет адаптивное прореживание с заданными параметрами и сохраняет результат в отдельную папку. Таким образом, не нужно вручную открывать и обрабатывать десятки или сотни ежемесячных съёмок — достаточно один раз подобрать параметры на типовом складе, после чего весь архив можно прогонять автоматически.
Нашел ..Я довольно давно писал свой алгоритм по адаптивному прореживанию. Нашел его и запаковал в говно-интерфейс :)
Попробуйте на реальных своих файлах -- если все будет нормально - то можем сделать нормальный интерфейс или улучшить алгоритм.
Сначала прочитайте встроенную справку.
Если что - пишите мне на почту. Форум у меня работает с перебоями.Общая идея - ставим достаточную для вас точность - грузим файл - программа анализирует облако и находит бровки - что не нашла - правим вручную - получаем облако с "переменным разрешением".
Тестировал для отвалов только на синтезированной поверхности так что в реальной работе не пробовал.
Обязательно попробую в субботу+воскресенье.
Осень, на работе завал.
Еще небольшой вопросик. У нас на все карты (секции) золоотвалов и угольные склады имеется съемка.
А это означает, что можно для каждого объекта сделать файл координат его границ. Минимальная и максимальная отметки так же известны.
Есть ли программы, которые могут обрезать облако точек (*.Las я думаю) по границам в плане и по максимальным/минимальным отметкам?
В таком случае, обработка будет весьма упрощена, в следствии кардинального уменьшения размера облака.Алгоритм работы при определении объемов сыпучих материалов (уголь, зола, ПГС и т.д):
1. Сбор полевых данных. Без разницы, каким методом и прибором.
2. Формирование единого облака точек.
3. Образка единого облака в плане по границе объекта и по диапазону высот.
4. Прореживание.
5. Вычисление объемов.
CloudCompare - это универсальный ответ при вопросах работы с облаками.Я бы делал так:
- Загружаем общий LAS/LAZ. Если CloudCompare предлагает Global Shift из-за больших координат — используем его. Но если собираетесь фильтровать по абсолютным отметкам Z, удобно оставить Shift Z = 0, а сдвигать только X/Y; иначе при фильтрации нужно учитывать сдвинутую Z. CloudCompare хранит Global Shift и может восстановить исходные координаты при экспорте.
- Загружаем границу конкретного склада. Я бы для каждого объекта подготовил закрытую полилинию DXF:
Coal_01.dxf
Coal_02.dxf
Ash_01.dxf
CloudCompare умеет импортировать DXF-полилинии из прямых сегментов. Можно также использовать простой .poly — фактически список координат вершин.- Обрезаем облако в плане. Ставим вид строго сверху — Top View / направление Z, желательно ортографическую проекцию. Выбираем облако → Edit → Segment (ножницы). В инструменте сегментации есть Use existing polyline / Import polyline from DB for segmentation — выбираем нашу границу склада и оставляем точки Inside. Это фактически превращает контур XY в вертикальную призму и вырезает всё, что находится за её пределами.
- Обрезаем по высотам. Например, для склада известно:
Min Z = 142.50
Max Z = 178.00
Выделяем уже обрезанное облако → Edit → Scalar fields → Export coordinate(s) to SF(s) → выбираем Z. Появится scalar field Coord. Z. Затем Edit → Scalar fields → Filter by value и задаём диапазон 142.50 – 178.00. CloudCompare создаст новое облако только из точек этого диапазона. Это прямо штатный способ фильтрации облака по отметке.Но это реально много телодвижений -- встрою инструмент обрезки в свой алгоритм. Ждите новую версию :)
Кстати вопрос -- вот можно просто встроить инструмент в существующую программу, а можно сделать отдельный "обрезатор". Например единый файл DXF на все отвалы - тогда можно выбрать папку с облаками и они будут обрезаны если попали внутрь контура. А вот обрезку по отметкам придется назначать каждому отдельно .. или можно чтото типа таблицы сделать ... надо подумать
Вам как удобней -- все в одном или разными инструментами??
скиньте образец вашего облака небольшого
Куда кинуть?
Облака маленькими не бывают
да хоть куда вспомню как я прореживал в civil
Возможно, как вариант, все точки преобразовать в точки GOGO, включить их в группу точек. Затем их все экспортировать в в формат точек .тхт, далее открыть скопировав в Excel. Удалить нужное чётное или нечётное кол-во точек или удалить все чётные/нечетные. В последнем случае, кол-во точек сократится в двое.
В том же файле Excel, в одной из ячеек написать для выборки точек, формулу уравнения второго порядка, по желанию, если первые варианты не устроили.
Затем обратно всё произвести в Civil 3D.
Готово вроде. Тестируйте
toshiba, ради интереса, а не ради иронии, скажите, какое уравнение вы применили при составления алгоритма? Или всё-таки, помог AI ? Я без стёба. Сам сейчас осваиваю обучение AI геодезии(ей).
Прореживание облака точек, это уменьшение кол-ва точек, с увеличение расстояния между ними, по некой функции, либо тупо удалить некоторое кол-во их? Правильно я понимаю?
уменьшение кол-ва точек, с увеличение расстояния между ними - почти так, это же фильтрация все-таки ... но не так. Если применить именно такой простой метод типа "было 100 взяли каждую вторую и получили 50", то вы получите фигню из-за того, что в облаках много "шума" и шумные области начнут оттягивать на себя конечную сетку облака. Поэтому увы такой метод обычно не применим.
Если просто - программа накидывает "Сетку" на облако с заданным размером. в каждой ячейке сетки берется только одна "средневзвешенная точка" но с фильтрацией выбросов. Алгоритм смотрит на то как группируются кластеры точек в ячейке а если таких кластеров много (например нормальные данные + шум) то смотрим на кластеры в окружающих ячейках.
Алгоритм называется "детерминированный grid thinning".
При фильтрации "до количества точек" - алгоритм уже другой. Он сложнее и называется "потоковое равномерное распределение данных".ИИ использовал только для быстрой генерации интерфейса и генерации справки - я пока ему еще не сильно доверяю кодить :) - фигню творит, а само расчетное ядро вытащил из другой своей программы. Я давно облаками занимаюсь, поэтому уже дофига всяких процедур написанных скопилось.
Программа LasReducer.exe прореживает лучше, чем CloudCompare.
Рекомендую.
Два примера.--- Сообщения объединены, 20 сен 2026 в 17:42, Оригинальное время сообщения: 20 сен 2026 в 17:34 ---
ЗШО_КСПУ - съемка SLAM сканером
ЗШО_5_мая - съемка дроном.
https://disk.yandex.ru/client/disk/Общая папка для всех
Для яндекс диска прислали не ту ссылку. правой кнопкой на файле -- поделиться - скопировать
Лучше хранить TIN-сетку или LandXML для всей поверхности. Горизонтали не передают многих структурных линий и нюансов.Но вы же знаете как у нас во всяких организациях ... когда-то кто-то умный написал ... "необходимо сохранять все облака сканирования на протяжении 50 лет в 20-ти разных форматах на дискетах...."
toshiba, ну это как их по облаку нарисовать если через каждые 0,5м нормально будет сам так делаю вот если всякие обрывы или отрицательные откосы тут да но опять же можно нарисовать
Мне стало интересно -- вернее работать совсем не охота
ИтакВводные: Поверхность
Сколько весит поверхность (файл)
- площадь: 100 × 100 м
- исходные точки: 5000
- TIN: 9994 треугольника
- перепад высот: примерно 99.1–106.5 м
- горизонтали: через 0.5 м
- регулярная сетка: 0.5 × 0.5 м = 40 401 узел
Представление поверхности Формат эксперимента Размер Горизонтали 0.5 м AutoCAD DXF, 3D polylines 0.183 MB TIN LandXML LandXML 1.2 0.406 MB Регулярная сетка 0.5 м XYZ ASCII, 40 401 точка 0.879 MB TIN гранями AutoCAD DXF, 9994 × 3DFACE 1.379 MB
Если принять горизонтали за 1:
Представление Относительный размер Горизонтали 1× LandXML 2.2× Grid 0.5 м XYZ 4.8× TIN DXF 3DFACE 7.5×
Файл 500-500 метров - спокойный рельеф но очень много структурных линий
Представление Ориентировочный объём Горизонтали 0.5 м 4–8 MB LandXML TIN + breaklines 10–15 MB Регулярная сетка 0.5 × 0.5 м, XYZ ≈22 MB TIN AutoCAD 3DFACE 35–45 MB Grid 0.5 м как AutoCAD POINT ≈46 MB Grid 0.5 м как 3DFACE ≈275 MB
Надо хранить в самом удобном формате dwg, с резервом поверхностей в TIN LandXML. У последнего, не сохраняются все те св-ва, которые ты настроил.
DVD диски, стоят недорого.
| # | Наименование новости | Тональность | Информативность | Дата публикации |
|---|---|---|---|---|
| 1 | Условные знаки для топопланов масштабов 1:5000-1:500 | 0 | 5 | 14-05-2025 |
| 2 | Обязательные правовые условия для выполнения геодезических работ | 0 | 10 | 20-09-2026 |
| 3 | Theodolite Tool | 0 | 10 | 28-08-2026 |
| 4 | Подсчет объемов негабаритных кусков горной массы | 0 | 5 | 08-08-2025 |
| 5 | px | 0 | 10 | 10-09-2026 |
| 6 | Вынос в натуру проектного положения устьев скважин. | 0 | 5 | 30-09-2024 |
| 7 | Ищу кадастровых инженеров для бесплатного тестирования MasterCadastre | 0 | 10 | 17-09-2026 |
| 8 | 0 | 0 | 24-11-2016 | |
| 9 | 0 | 0 | 24-11-2016 |