Segmentación de nubes de puntos en CloudCompare: cómo extraer elementos con precisión real
Si alguna vez abriste una nube de puntos de 50 millones de puntos en CloudCompare y te quedaste mirando la pantalla sin saber por dónde empezar a «sacar» solo el talud, el tendido eléctrico o la fachada que necesitas, este post es para ti. La segmentación —aislar subconjuntos de puntos con significado geométrico o temático— es la operación que convierte una nube caótica en insumos útiles para ingeniería, topografía y BIM.
Aquí vas a encontrar el flujo completo: desde cómo preparar la nube antes de segmentar, hasta las herramientas específicas de CloudCompare que realmente funcionan para cada tipo de elemento. Sin rodeos y con los parámetros reales que se usan en campo.
¿Qué es segmentar una nube de puntos y por qué importa?
Segmentar significa separar grupos de puntos según algún criterio: geometría, intensidad de reflectancia, color RGB, posición espacial o clasificación previa. El resultado es una o varias nubes de puntos independientes, cada una representando un elemento concreto: el suelo, un muro de contención, la estructura metálica de un puente, la copa de un árbol.
Sin segmentación, cualquier análisis posterior —calcular volumen de un terraplén, modelar una fachada, extraer el MDT bajo vegetación— opera sobre datos que incluyen «ruido» ajeno al objeto de interés. Eso introduce errores sistemáticos que se propagan hasta el producto final.
La segmentación en CloudCompare puede ser:
- Manual (interactiva): el operador selecciona visualmente los puntos con herramientas de polígono o tijera.
- Semi-automática: se usa un criterio geométrico o escalar para filtrar puntos, y el operador valida el resultado.
- Automática: algoritmos de clustering o clasificación ASPRS separan clases sin intervención directa (más común en flujos LiDAR).
En la práctica profesional, los tres enfoques se combinan. Empezamos con un filtro automático para reducir la densidad irrelevante, aplicamos herramientas semi-automáticas para los elementos principales y terminamos con ajustes manuales donde la geometría es ambigua.
Preparar la nube antes de segmentar
Intentar segmentar directamente una nube sin procesar es el error más frecuente. Antes de tocar ninguna herramienta de selección, vale la pena hacer tres pasos previos.
1. Reducir la densidad con submuestreo espacial
Una nube de escáner terrestre puede tener densidades de 5–10 mm entre puntos. Para segmentación visual, eso es innecesario y ralentiza todo. En Edit → Subsample, usa el modo Space con un paso de 2–5 cm según la escala del proyecto. Conservas la geometría sin saturar la memoria.
Nota: el submuestreo es solo para trabajo de segmentación. La nube original, sin reducir, es la que exportas al final.
2. Calcular normales
Varias herramientas de segmentación basadas en geometría —especialmente RANSAC— requieren que los puntos tengan normales calculadas. En Edit → Normals → Compute, selecciona un radio de vecindad de 3–5 veces el paso promedio de la nube. Para nubes de escáner terrestre, 10–15 cm suele funcionar bien en geometrías planas.
3. Revisar el sistema de referencia
Antes de segmentar, verifica que la nube esté en el sistema de coordenadas correcto. En México, los proyectos georreferenciados trabajan en ITRF2008 época 2010.0 con proyección UTM, zona 14N para Nuevo León y la mayor parte del noreste del país. Si la nube viene en coordenadas locales del escáner, el impacto es menor para la segmentación en sí, pero los productos derivados no serán directamente comparables con otros insumos del proyecto.
Herramientas de segmentación en CloudCompare: cuándo usar cada una
Segmentación manual con «Segment» (tijera)
Es la herramienta más básica y más usada para elementos con geometría irregular o que no responden bien a algoritmos. Se activa desde la barra de herramientas principal (ícono de tijera) o en Edit → Segment.
Cómo funciona:
1. Seleccionas la nube activa en el árbol de proyecto.
2. Activas la herramienta y dibujas un polígono alrededor del elemento que quieres aislar.
3. Presionas I para conservar los puntos dentro del polígono o O para conservar los de afuera.
4. La nube se divide en dos: el segmento seleccionado y el resto.
Cuándo usarla:
– Fachadas con formas no rectangulares.
– Elementos singulares: columnas, mojones, estructuras metálicas de geometría libre.
– Limpieza final después de un filtro automático que dejó puntos residuales.
Limitación clave: opera en 2D sobre la vista actual. Si tienes superposición de elementos en profundidad (por ejemplo, una pared detrás de un árbol), vas a seleccionar ambos desde esa vista. La solución es rotar la nube y aplicar la segmentación desde varias perspectivas.
Extracción de planos con RANSAC Shape Detection
Para proyectos de obra civil —muros de contención, losas, fachadas, pavimentos— RANSAC es la herramienta más potente de CloudCompare. Detecta formas geométricas primitivas (planos, esferas, cilindros, conos) directamente desde los puntos.
Se accede desde Plugins → RANSAC Shape Detection (debe estar activado en la instalación; en la versión estándar de CloudCompare ya viene incluido).
Parámetros clave:
| Parámetro | Descripción | Valor típico para escáner terrestre |
|---|---|---|
| Max Distance | Tolerancia máxima de un punto al plano detectado | 0.02–0.05 m |
| Max Normal Deviation | Ángulo máximo entre la normal del punto y la del plano | 15–25° |
| Min Support Points | Mínimo de puntos para considerar una forma válida | 500–2,000 (según densidad) |
| Probability | Confianza estadística de la detección | 0.99 |
Flujo práctico:
1. Calcula normales antes de ejecutar (paso previo ya descrito).
2. Configura los parámetros según la escala y tolerancia del proyecto.
3. Ejecuta. CloudCompare genera una nube independiente por cada primitiva detectada, nombrada automáticamente: Plane #0, Plane #1, Cylinder #0, etc.
4. Revisa cada resultado en el árbol de proyecto. Los planos residuales que no correspondan al elemento de interés se eliminan.
Cuándo usarla:
– Extracción de planos de fachada para as-built.
– Detección de superficies de pavimento para análisis de planimetría.
– Identificación de losas y muros en modelos BIM a partir de escáner.
Segmentación por escalar: filtrado por intensidad o altura
Muchas nubes LiDAR o de escáner vienen con campos escalares adicionales: intensidad de retorno, número de retorno, clasificación ASPRS, o simplemente la coordenada Z. CloudCompare permite segmentar directamente sobre estos valores.
Filtrado por coordenada Z (cortes horizontales):
En Edit → Scalar Fields → Export Coord. to SF, puedes convertir la coordenada Z en un campo escalar y luego usar Edit → Scalar Fields → Filter by Value para conservar solo los puntos entre dos valores de altura. Muy útil para aislar pisos específicos de un edificio, o para extraer la banda de terreno en un levantamiento con vegetación.
Filtrado por intensidad:
En nubes LiDAR, la intensidad de retorno varía según el material. El asfalto, el concreto y la vegetación tienen firmas de intensidad distintas. Aunque CloudCompare no tiene un clasificador de materiales nativo, el filtrado manual por rangos de intensidad permite separar masas de vegetación del terreno en muchos casos.
Filtrado por clasificación ASPRS:
Si la nube ya viene clasificada (clase 2 = suelo, clase 5 = vegetación alta, clase 6 = edificio, etc.) —por ejemplo, procesada previamente con LAStools o el flujo descrito en nuestro post sobre clasificación de nubes de puntos LiDAR— puedes usar Edit → Scalar Fields → Filter by Value sobre el campo de clasificación para extraer solo la clase que necesitas.
Connected Component Labeling: separar objetos individuales
Esta herramienta — Edit → Label Connected Components — identifica grupos de puntos conectados espacialmente y les asigna una etiqueta única. Es especialmente útil cuando tienes múltiples objetos separados en una nube y quieres aislarlos individualmente.
Parámetros:
– Octree Level: controla la resolución del análisis. Niveles 8–10 funcionan bien para nubes de densidad media. A mayor nivel, más tiempo de cómputo.
Casos de uso:
– Separar árboles individuales en un levantamiento forestal (tras filtrar el suelo).
– Aislar estructuras independientes en un sitio arqueológico.
– Separar manzanas de vivienda en un levantamiento urbano.
Advertencia: esta herramienta genera una nube por componente, lo que puede producir cientos o miles de entidades si la nube tiene muchos objetos pequeños. Filtra por mínimo de puntos después (Min. points per component) para descartar fragmentos residuales.
Cross Section y Box Clipping: ventanas de trabajo
Para segmentar secciones verticales o transversales —muy común en topografía de infraestructura lineal como carreteras, canales o vías férreas—, la herramienta Cross Section (Edit → Clip → Cross Section) permite definir una caja 3D y trabajar solo dentro de ella.
Flujo:
1. Activa Cross Section desde el menú o barra de herramientas.
2. Define el espesor de la sección (por ejemplo, 0.50 m para un perfil transversal).
3. Desplaza la sección a lo largo del eje de la vía.
4. Exporta cada posición como nube independiente o como polilínea 2D.
Esta herramienta, combinada con la generación de perfiles descrita en nuestro post sobre perfiles y secciones desde nube de puntos en CloudCompare, cubre el flujo completo de extracción de secciones transversales para proyectos de carretera o drenaje.
Flujo integrado para un proyecto real: muro de contención con talud
Para ilustrar cómo se combinan estas herramientas, aquí va un flujo completo para un caso frecuente: tienes la nube de puntos de un corte de carretera con muro de contención, talud natural y vegetación, y necesitas extraer solo el muro y el talud para análisis estructural.
Paso 1 — Submuestreo espacial: reduce a 5 cm para trabajar fluido.
Paso 2 — Filtro por Z: elimina los puntos por debajo del nivel de rodamiento y por encima de la copa de los árboles, acotando la nube a la franja de interés.
Paso 3 — RANSAC Shape Detection: detecta planos con Max Distance = 0.03 m. El muro de contención queda identificado como uno o varios planos. Lo exportas como nube independiente.
Paso 4 — Segmentación manual: sobre la nube restante (sin el muro), dibujas un polígono alrededor del talud desde la vista lateral. Aislas el talud del resto de la escena (calzada, guardarraíl, vegetación).
Paso 5 — Connected Components en vegetación: si hay arbustos sobre el talud que contaminen la geometría, aplicas Connected Components sobre la nube de vegetación y eliminas los componentes pequeños (arbustos individuales), conservando solo los puntos del terreno.
Paso 6 — Exportación: exportas el muro en formato LAS/LAZ (recuerda: LAZ es simplemente LAS comprimido, no un formato distinto) y el talud como nube separada, ambos con sus campos escalares originales.
Qué equipo conviene para este flujo
La calidad de la segmentación depende directamente de la densidad y limpieza de la nube de entrada. Nubes de escáner terrestre de fase —como el Leica RTC360— producen nubes con densidades de millones de puntos por estación, geometría precisa y buena intensidad de retorno: condiciones ideales para RANSAC y segmentación basada en escalares.
Para proyectos donde la nube viene de LiDAR UAV, la densidad es menor pero la cobertura es mayor. En ese caso, los filtros por campo escalar y Connected Components cobran más relevancia que RANSAC, ya que los planos capturados desde arriba tienen menos puntos por superficie vertical.
Errores frecuentes en segmentación
- Segmentar sin submuestreo previo: ralentiza el flujo innecesariamente y no mejora la calidad del resultado.
- No calcular normales antes de RANSAC: el plugin falla o produce detecciones erróneas sin este paso.
- Confiar ciegamente en RANSAC para superficies irregulares: un talud erodado no es un plano. RANSAC lo va a aproximar a uno, introduciendo error. Usa segmentación manual o filtros por Z para esos casos.
- No guardar versiones intermedias: CloudCompare no tiene deshacer ilimitado. Guarda el proyecto
.bindespués de cada paso crítico. - Exportar la nube submuestreada: el submuestreo es solo para trabajar. Siempre regresa a la nube original para la exportación final.
Integración con otros flujos de trabajo
La nube segmentada raramente es el producto final. Según el proyecto, el siguiente paso puede ser:
- Generar un MDT del terreno clasificado para cálculo de volúmenes en Civil 3D.
- Exportar la geometría del muro a Revit o ArchiCAD para un modelo BIM as-built.
- Calcular desviaciones respecto a un modelo de diseño usando Cloud-to-Mesh Distance en CloudCompare.
- Producir curvas de nivel del talud para planos topográficos, siguiendo el flujo descrito en nuestro post sobre curvas de nivel desde nube de puntos.
La segmentación correcta en este paso intermedio determina la confiabilidad de todos los análisis posteriores. Un elemento mal aislado contamina cualquier medición que se haga sobre él.
FAQ
¿CloudCompare puede segmentar automáticamente usando inteligencia artificial?
En su versión estándar, no. CloudCompare no incorpora modelos de aprendizaje automático para segmentación semántica. Para ese tipo de clasificación automática necesitas herramientas como LiDAR360, PDAL con modelos entrenados o scripts de Python con bibliotecas como Open3D. CloudCompare es excelente para segmentación geométrica y semi-automática, pero no reemplaza un flujo de clasificación semántica profunda.
¿Cuál es la diferencia entre segmentar y clasificar una nube de puntos?
Clasificar asigna una etiqueta temática a cada punto (suelo, vegetación, edificio) siguiendo un esquema estándar como ASPRS. Segmentar simplemente separa subconjuntos de puntos en entidades independientes, sin necesariamente asignarles una clase. En la práctica, muchas veces se clasifican primero los puntos y luego se segmentan por clase, pero también puedes segmentar por geometría sin ninguna clasificación previa.
¿RANSAC Shape Detection funciona con nubes de fotogrametría?
Sí, funciona. Las nubes fotogramétricas tienen más ruido que las de escáner de fase, así que necesitas aumentar ligeramente el parámetro Max Distance (0.05–0.08 m) y el Max Normal Deviation. Los resultados son aceptables para superficies planas grandes como fachadas o pavimentos, pero peores en elementos pequeños o con texturas complejas.
¿Puedo segmentar una nube LAS clasificada directamente desde CloudCompare?
Sí. CloudCompare lee archivos LAS/LAZ y carga el campo de clasificación ASPRS como escalar. Desde ahí puedes filtrar por valor para extraer cada clase como nube independiente. Es uno de los flujos más rápidos para separar terreno de vegetación en nubes LiDAR ya procesadas.
¿Qué hago si la segmentación manual deja puntos residuales de otros elementos?
Aplica la herramienta Segment de nuevo sobre la nube resultante, esta vez desde una perspectiva diferente (por ejemplo, vista superior en lugar de lateral), y elimina los puntos residuales. Para residuos muy dispersos, Edit → Remove Duplicate Points o un filtro estadístico (Edit → Filter → SOR Filter) ayudan a limpiar outliers.
¿La segmentación afecta las coordenadas originales de los puntos?
No. CloudCompare no modifica las coordenadas al segmentar. Cada punto segmentado conserva exactamente sus valores X, Y, Z, intensidad y cualquier otro campo escalar original. Lo único que cambia es la membresía del punto a una entidad u otra dentro del proyecto.
¿Qué formato conviene para exportar nubes segmentadas?
Para interoperabilidad con Civil 3D, Revit, PDAL o LAStools, el formato LAS 1.4 (o LAZ si necesitas ahorrar espacio en disco) es el más compatible. Para Agisoft Metashape o flujos fotogramétricos, PLY o E57 también son opciones válidas. Evita exportar como ASCII/CSV nubes de más de 5 millones de puntos: el archivo resultante es inmanejable en tamaño.
Conclusión
Segmentar correctamente una nube de puntos en CloudCompare no es solo una tarea técnica: es la diferencia entre un análisis confiable y uno contaminado por datos irrelevantes. El flujo —submuestreo, cálculo de normales, selección de la herramienta adecuada según el tipo de elemento, validación y exportación— es replicable en cualquier proyecto de topografía, obra civil o documentación patrimonial.
La clave está en conocer las limitaciones de cada herramienta: RANSAC para planos y primitivas geométricas, segmentación manual para formas irregulares, filtros escalares para clasificaciones previas, y Connected Components para objetos individuales. Ninguna herramienta lo hace todo, pero combinadas cubren prácticamente cualquier escenario real.
Si trabajas con nubes de puntos de escáner terrestre o LiDAR UAV y necesitas asesoría sobre el equipo o el flujo más adecuado para tu tipo de proyecto, el equipo de Punto Visado puede orientarte. Puedes explorar nuestra línea de escáneres 3D o solicitar una cotización con los detalles de tu proyecto.
FACT-CHECK APLICADO:
– ITRF2008 época 2010.0 como sistema geodésico oficial de México: INEGI, Marco de Referencia Geodésico Nacional, DOF 2010.
– Zona UTM 14N para Nuevo León/Apodaca: INEGI, Sistema de Referencia ITRF2008, grilla de husos UTM para México.
– LAZ es LAS comprimido, no formato independiente: ASPRS, LAS Specification 1.4 R15, 2022; libLAS / PDAL documentation.
– Clasificación ASPRS (clases 2, 5, 6): ASPRS, LAS Specification 1.4, Table 9 — Standard LIDAR Point Classes.
– MDT ≠ MDS: INEGI, Especificaciones técnicas para la generación de modelos digitales de elevación, 2015.
– CloudCompare versión estándar sin IA nativa: CloudCompare documentation, v2.13, cloudcompare.org.
– RANSAC Shape Detection incluido en CloudCompare estándar: CloudCompare plugin documentation, Schnabel et al. 2007.









