测试版
扩展名

Scan-to-BIM SDK

一个开放的、供应商中立的 Scan-to-BIM SDK — 由其成员构建和指导

  • RCP
  • RCS
  • LAS
  • PTS
  • XYZ
  • IFC
  • C++
  • 桌面平台
60天免费试用

特点

  • 识别

    直接从点云识别建筑对象:楼板、墙壁、开口、坡屋顶

  • 分类

    两种识别管道:基于几何的(快速,无机器学习)和机器学习辅助的(语义分割,实现更高精度)

  • 转换

    多边形网格到精确的 B-Rep 几何体 — 自动模式

实际操作演示

点云到BIM:自动化流程

此演示说明了在一个允许近乎完全自动识别的模型上,完整的点云到BIM流程。

加载和设置

我们首先使用Docker运行ML服务器——这是语义分割所必需的。ML组件作为一个独立的Docker + Python服务运行,独立于C++ API。接下来,我们启动OdaScan2BimApp,选择“点云到BIM”模式,并加载点云。

阶段1:语义分割(可选,基于ML)

我们从专用调色板启动语义分割。使用的模型是 Point Transformer V2 Extended——这是我们目前关注的两个模型之一,另一个是 PointMLP。这两个模型都是根据我们自己的实验选择的,并在 S3DIS(斯坦福 3D 室内场景数据集)和我们自己标注的点云上进行了训练。

语义分割将点云中的每个点标记为墙壁、地板、天花板或其他。这是一个可选步骤,但它能显著提高下游准确性——如果没有它,管道会从点云中的所有物体(包括桌子、椅子、床和散热器)中提取平面区域。这些非结构化物体会产生噪声,在 BIM 识别过程中被误解为错误的墙壁和地板。分割功能可以及早过滤掉这些噪声。

完成后,应用程序允许与分割结果进行交互:可以有选择地隐藏或显示类别,可以恢复原始点云颜色,并且可以组合不同的可视化模式。

阶段 2:平面区域计算

此阶段从语义分割的点云中提取平面。它使用超体素聚类和区域生长进行初始过分割(有意避免可能合并不同表面的欠分割),然后使用迭代 RANSAC 平面检测来查找平面,最后使用区域生长进行表面细化。

初始步骤——超体素聚类、区域生长和 RANSAC——使用第三方点云库 (PCL)。之后的一切都是 ODA 自己的代码:表面细化和扩展,以及边界识别。边界是通过将 3D 点投影到 2D 图像(俯视图和侧视图投影)、分析 2D 区域并将其映射回 3D 来确定的。

应用程序支持组合不同的可视化模式:仅平面区域、仅点云或组合。

阶段 3:BIM 对象识别

在此测试模型中,识别几乎是全自动的,仅需进行微小的参数调整。识别遵循固定序列:

首先是楼板识别——水平区域被识别为IfcSlab。相邻且共面的楼板被合并,碎片区域被连接,小段被过滤掉。

然后是墙体识别——对垂直区域应用相同的程序。墙体被识别、合并、连接和过滤。

接下来是楼板-墙体连接——建立墙体和楼板之间的空间关系,并进行几何调整以使其精确对齐。

然后是屋顶识别,针对倾斜区域(如果存在)。

最后是开口识别——墙体几何中的空隙被识别为窗户和门。这是机器学习分割发挥作用的第二个地方:由家具(床、书柜、散热器)后面缺失的墙体点引起的明显开口可以被识别为误报并被过滤。机器学习分割实现了这种过滤——如果没有机器学习,虚假开口不会被自动过滤。

输出

结果将导出为IFC文件。它可以保存在任何IFC兼容的查看器中打开,例如ODA的OpenIFCViewer,用于验证和质量评估。

点云到BIM:手动修正

此演示展示了一个真实世界的场景,其中自动化流程需要大量手动干预。它说明了 OdaScan2BimApp 中可用的校正工具以及实践中出现的问题类型。

从已保存的中间结果开始

为了节省时间,我们从语义分割和平面区域计算的预计算和已保存结果开始。该应用程序允许保存中间流程状态并稍后从中恢复——这对于前两个阶段(分割和区域计算)耗时的工作流程至关重要。

挑战:关闭的门

这个特定点云的主要困难在于扫描时几乎所有门都关闭了。在点云数据中,关闭的门与墙壁无法区分,这意味着流程无法检测到应该有门的位置的开口。这是扫描到BIM工作流程中最常见的实际问题之一。

自动步骤

最初的识别步骤仍然是自动的:楼板识别、墙体识别和墙体合并。即使在具有挑战性的扫描中,这些步骤也能很好地工作。

手动校正工作流程

自动连接后,我们审查结果并开始手动修复。该应用程序提供了几个关键工具:

点云在BIM模型上的叠加——原始点云可以叠加在识别出的BIM几何体上。通过将原始扫描数据与生成的模型进行视觉比较,可以很容易地发现识别错误的地方。

撤销单个操作——在第一个案例中,一个门区域错误地连接到了一个墙区域,产生了一堵无效的墙。我们只撤销那个特定的连接(而不是整个操作历史),删除门区域,然后手动连接正确的区域。

墙体调整大小——几面墙需要调整:有些更短,有些更长,一面更宽。在此阶段不需要精确的准确性,因为后续的自动程序(楼板-墙体几何调整)会处理精确对齐。

手动过滤——在自动噪声墙体过滤后,一些错误的墙体仍然存在。我们手动删除它们。

手动楼板-墙体连接——自动连接无法处理未到达楼板的墙体。这些需要手动连接步骤。

开口识别挑战

几何调整后,我们进行开口识别。由于关门问题,自动错误开口移除在此次扫描中表现不佳。我们再次叠加原始点云并手动移除不正确的开口。

有些门洞根本没有被检测到——因为扫描将门捕捉为实体表面,它们看起来像墙。这是一个根本性的限制:如果在扫描时物理门是关闭的,任何算法都无法推断其后面存在开口。

结果

尽管需要手动工作,最终的BIM模型准确地表示了建筑结构。手动校正工具——尤其是撤销单个操作、点云叠加和元素调整大小——使该过程即使对于困难的扫描也易于管理。

网格转 B-Rep

此演示展示了在两个不同复杂度的模型上进行的网格到 B-Rep 转换管道。这是 SDK 中的一个独立方向,与点云到 BIM 管道无关。

网格到 B-Rep 的作用

目标是将多边形网格(三角化曲面)转换为精确的边界表示(B-Rep)——CAD 和 BIM 应用程序使用的标准几何格式。B-Rep 模型具有精确的数学曲面、清晰的边缘和正确的拓扑结构,使其适用于编辑、测量和下游工程工作流程。

转换过程

该管道分两个阶段工作。首先,网格被分割:曲率分析和锐边检测将其划分为区域,每个区域被归类为规范曲面(平面、圆柱、球体或圆锥),并且段被扩展以覆盖相邻的一致区域。

其次,B-Rep 构建:每个段被转换为其解析曲面表示,相邻曲面之间的交线定义了边,曲面被修剪并组装成一个完整的 B-Rep 实体。所使用的 B-Rep 引擎是 ODA 轻量级 B-Rep 建模器。

模型 1:具有非平面特征的简单几何体

第一个模型主要由平面组成,使得平面区域易于识别。然而,它包含圆柱形和圆锥形孔洞,这考验了规范曲面识别能力。系统将这些识别为圆柱体和圆锥体,创建相应的解析曲面,并构建有效的 B-Rep 几何体,包括孔洞与周围平面之间的交线。

模型 2:复杂的曲面几何体

第二个模型具有较少的三角形,但更具挑战性——它包含数量显著更多的圆柱段。当曲率半径较大时,识别圆柱曲面更加困难,因为此类曲面看起来几乎是平坦的,并且可能与平面混淆。该模型展示了系统如何处理这种歧义。

非规范段问题

无法识别为平面、圆柱体、球体或圆锥体的段是主要挑战。目前,SDK 使用一种暴力回退方法:未识别段中的每个三角形在 B-Rep 输出中成为一个单独的平面。这保证了模型的有效性,但增加了面数。一种基于样条的实验性曲面拟合方法在有限情况下显示出有希望的结果,但任意段的鲁棒重建仍然是一个开放的研究问题。

DWG 导出

结果可以导出为 DWG 格式,这对于在标准 CAD 程序中进行验证以及与使用基于 DWG 工作流的团队共享非常有用。在熟悉的工具中检查 B-Rep 质量的能力对于验证转换结果至关重要。

工作原理

点云到BIM

  • 点云

    RCP · RCS · LAS · PTS · XYZ

  • AEC 对象

    楼板 · 墙体 · 洞口 · 屋顶

  • BIM

    IFC 导出

一个独立的方向。从原始点云数据构建干净的多边形网格。在 PC-to-BIM 中,对于 AEC 算法无法分类的对象,它也可用作备用方案。


网格转 B-Rep

  • 网格

  • 分割

    曲率 · 表面识别

  • B-Rep

    Precise geometry

一个独立的方向。通过自动分割和表面识别,将多边形网格转换为精确的 B-Rep 几何体。

技术详情

支持的格式

  • 导入

  • .RCP / .RCS

    Autodesk ReCap

  • .LAS

    ASPRS LiDAR

  • .PTS

    徕卡

  • .XYZ

    通用

  • .PCD

    点云库

  • 导出

  • .IFC

    开放BIM标准

路线图

  • 已实现

    • 点云到BIM:

      AEC对象识别(楼板、墙体、洞口、屋顶)→ IFC导出

    • 网格到B-Rep:

      从多边形网格自动转换为B-Rep

    • 点云导入:

      RCP、RCS、LAS、PTS、XYZ

  • 2026年推出

    • 建筑构件识别增强

    • 支持机器学习的大规模点云

    • 自动房间检测

    • 网格分割改进

    • 非结构化对象的点云到网格转换

路线图优先级由SIG成员决定。加入SIG以影响发展方向。

用例

  • 设计

    让您的用户能够扫描现有场地,并使用从点云数据自动识别的精确竣工模型开始在BIM中进行设计。

  • 建造

    为您的用户提供自动化质量控制:扫描结构,提取识别出的元素,并与设计模型进行比较——所有这些都在您的应用程序内完成。

  • 运维

    让您的用户能够通过激光扫描创建和维护数字孪生。结构化的IFC输出用于文档、分析和设施管理——并嵌入到您的平台中。

FAQ

  • 不需要。该流程无需ML即可运行——平面区域计算和BIM对象识别完全在CPU上使用C++ API运行。基于ML的语义分割是一个可选的第一步,通过在识别前过滤非结构化对象(家具、散热器、设备)来提高准确性。如果您使用ML,则需要Docker、Python和GPU。这两个组件是独立的。

  • 导入:.RCP/.RCS (Autodesk ReCap)、.LAS (ASPRS LiDAR)、.PTS (Leica)、.PCD (点云库)、.XYZ (通用)。导出:.IFC (开放BIM标准)。目前不支持E57和PTX。

  • PC-to-BIM流程目前可识别楼板、墙壁、开口(窗户和门)和坡屋顶。这些元素以IFC格式导出为分类的AEC对象。2026年路线图包括增强建筑元素识别和自动房间检测功能。

  • 两个独立的方向。PC-to-BIM直接从点云数据中识别建筑对象并导出为IFC——这是核心方向。Mesh to B-Rep通过分割和规范曲面识别将多边形网格转换为精确的边界表示(B-Rep)几何体——这是一项独立的功能,与PC-to-BIM流程无关。

  • 该SDK处于测试阶段,正在积极开发中。它是在ODA战略互操作性小组(SIG)计划下开发的,参与公司指导其路线图。2026年路线图包括对机器学习的大规模点云支持、自动房间检测和网格分割改进。

  • 通过 Scan-to-BIM SIG。提供试用 SIG — 60 天免费。完整的 SIG 会员资格包括路线图优先级投票权和直接与工程团队沟通的权限。

掌控您的
Scan-to-BIM技术

战略互联团队

  • Scan-to-BIM SDK是在ODA SIG项目下开发的 — 这是一种由成员发起、技术构建公司主导的开发模式。
  • 加入已在塑造该项目的公司 — 涵盖CAD/BIM平台供应商、建筑设备制造商和技术联盟。
  • 对项目优先级和路线图方向的控制
  • 决定许可要求和费用
  • 无版税费用,无按使用次数收费
  • 从第一天起即可获得Beta版访问权限

加入Scan-to-BIM SIG

与最需要SDK的公司一起塑造它。
从免费的60天试用开始。

请与我们联系!