BIM-CLIP / README_zh.md
flybrid's picture
Upload README_zh.md with huggingface_hub
32a4d19 verified
metadata
license: mit
language:
  - en
  - zh
tags:
  - 3d
  - bim
  - multimodal
  - contrastive-learning
  - point-cloud
  - mesh
  - vision-language
  - building-information-modeling
pipeline_tag: image-classification

BIM-CLIP 模型权重

图1:BIM-CLIP 框架总览

图1

图2:BIM-CLIP 工作流与下游应用

框架对异构输入分别通过专用编码器提取特征,并通过对比学习将其对齐到共享语义嵌入空间。经过保持对齐的微调后,所学表示可支持两类实际 BIM 下游任务。

图2

BIM-CLIP:面向 BIM 构件识别的语言引导多模态表示学习 模型权重文件。

孟海宁、董浩洋、杨明松、范星、黑新宏
西安理工大学

📄 论文(预印本) | 💻 GitHub | 🗂️ BIMCompNet 数据集


仓库结构

bim-clip-weights/
│
├── README.md
│
├── BIMCompNet/                         # 在 BIMCompNet 上训练的模型
│   ├── multimodal/
│   │   ├── best_100.mdl                # BIMCompNet-100(42 类),多模态
│   │   ├── best_500.mdl                # BIMCompNet-500(31 类),多模态
│   │   └── best_1000.mdl              # BIMCompNet-1000(24 类),多模态
│   └── single_modal/
│       ├── best_100.mdl                # BIMCompNet-100(42 类),单模态
│       ├── best_500.mdl                # BIMCompNet-500(31 类),单模态
│       └── best_1000.mdl              # BIMCompNet-1000(24 类),单模态
│
├── IFCNet/
│   └── best_ifcnet.mdl                # 多模态,在 IFCNet 上训练(20 类)
│
├── ModelNet/
│   ├── best_10.mdl                    # 多模态,ModelNet-10
│   ├── best_40.mdl                    # 多模态,ModelNet-40
│   ├── ModelNet10.zip                 # ModelNet-10 多模态扩充数据集(含点云 + 多视角图像)
│   └── ModelNet40.zip                 # ModelNet-40 多模态扩充数据集(含点云 + 多视角图像)
│
└── ULIP2/
    ├── best_ulip2_1000.mdl            # ULIP-2 在 BIMCompNet-1000 上微调
    └── ULIP-2-PointBERT-8k-xyz-pc-slip_vit_b-objaverse-pretrained.pt  # 官方预训练权重(866 MB)

模型汇总

文件 架构 训练集 类别数 Acc (%) F1 (%)
BIMCompNet/multimodal/best_100.mdl BIM-CLIP (CMA) BIMCompNet-100 42 87.38 87.44
BIMCompNet/multimodal/best_500.mdl BIM-CLIP (CMA) BIMCompNet-500 31 91.35 91.28
BIMCompNet/multimodal/best_1000.mdl BIM-CLIP (CMA) BIMCompNet-1000 24 91.79 91.83
BIMCompNet/single_modal/best_100.mdl BIM-CLIP(单模态) BIMCompNet-100 42
BIMCompNet/single_modal/best_500.mdl BIM-CLIP(单模态) BIMCompNet-500 31
BIMCompNet/single_modal/best_1000.mdl BIM-CLIP(单模态) BIMCompNet-1000 24 88.69 87.90
IFCNet/best_ifcnet.mdl BIM-CLIP (CMA) IFCNet 20 91.00 90.39
ModelNet/best_10.mdl BIM-CLIP (CMA) ModelNet-10 10 95.36 95.25*
ModelNet/best_40.mdl BIM-CLIP (CMA) ModelNet-40 40 92.22 90.34*
ULIP2/best_ulip2_1000.mdl ULIP-2 BIMCompNet-1000 24 90.98 91.02
ULIP2/ULIP-2-PointBERT-…-pretrained.pt ULIP-2(官方) Objaverse

ModelNet 指标为 mAP。— 表示论文中未单独报告该指标。


使用方法

加载模型并运行评测

克隆 GitHub 仓库后执行:

# 评测 BIMCompNet-1000 多模态
python bimclip.py --mode eval --data_type MULTI_MODAL \
  --data_root /path/to/BIMCompNet --index_root /path/to/index \
  --set_size 1000 \
  --model_path /path/to/BIMCompNet/multimodal/best_1000.mdl \
  --embeddings_path embeddings.pt \
  --yaml_path ./描述信息.yaml \
  --output_dir ./results

# 评测 IFCNet 多模态
python bimclip.py --mode eval --data_type MULTI_MODAL \
  --ifcnet_root /path/to/IFCNetCorePly/IFCNetCore \
  --model_path /path/to/IFCNet/best_ifcnet.mdl \
  --embeddings_path ifcnet_embeddings.pt \
  --yaml_path ./描述信息.yaml \
  --output_dir ./results

文本嵌入文件

文本嵌入文件包含在 GitHub 仓库中:

文件 类别数 适用数据集
embeddings.pt 57 BIMCompNet(全类别)
ifcnet_embeddings.pt 20 IFCNet
model_net_10_embeddings.pt 10 ModelNet-10
model_net_40_embeddings.pt 40 ModelNet-40

请使用与评测数据集对应的嵌入文件,切勿混用

数据集获取

BIMCompNet 由西安理工大学 606 实验室托管维护,请访问以下页面申请获取或下载:

👉 https://bimcompnet-606lab.xaut.edu.cn/

ModelNet 多模态扩充数据集

ModelNet10.zipModelNet40.zip 是基于原始 ModelNet 网格,通过本文多模态数据构建流程扩充点云与多视角图像后的完整数据集。每个 zip 内部目录结构如下:

ModelNet{10|40}/
└── {类别}/
    ├── train/
    │   ├── obj/          # 原始网格文件(.obj)
    │   ├── ply/          # 从网格采样的点云(1024 点,.ply)
    │   └── png/
    │       └── {样本名}/
    │           └── Edges/   # 12 个边缘渲染视角图(0.png – 11.png)
    └── test/
        └── (结构相同)

点云通过对网格表面均匀采样获得(每个模型 1024 个点)。多视角图像采用边缘渲染方式,从 12 个固定视角渲染,相机布置策略与 BIMCompNet 数据集保持一致。

第三方权重(ULIP-2 基线)

ULIP-2 官方预训练 PointBERT 权重(866 MB)已包含在本仓库中:

ULIP2/ULIP-2-PointBERT-8k-xyz-pc-slip_vit_b-objaverse-pretrained.pt

也可从原始来源直接下载:

https://huggingface.co/datasets/SFXX/ulip/resolve/main/ULIP-2/pretrained_models/ULIP-2-PointBERT-8k-xyz-pc-slip_vit_b-objaverse-pretrained.pt

架构简介

BIM-CLIP 使用三个模态编码器(图像用 ViT,点云用 PointNet,网格用 MeshNet),通过对比对齐将各模态特征投影到 1536 维语言嵌入空间(以 text-embedding-ada-002 为语义锚点),再经语言引导的跨模态注意力(CMA)模块进行融合。微调阶段仅更新 CMA 模块(10.62M 参数)。


引用

@article{meng2026bimclip,
  title={BIM-CLIP: Language-Guided Multimodal Representation Learning for BIM Component Recognition},
  author={Meng, Haining and Dong, Haoyang and Yang, Mingsong and Fan, Xing and Hei, Xinhong},
  journal={[待期刊接受后更新]},
  year={2026}
}