IFCCompressor: A content-based compression algorithm for optimizing Industry Foundation Classes files

孙晶a, 刘玉身a,b,c,*, 高歌a,d, 韩晓广a,d,

aBIM研究组, 软件学院, 清华大学, 中国
b中国教育部信息系统安全重点实验室
c清华国家信息科学技术实验室
d清华大学计算机科学与技术系

English Version



IFCCompressor: A novel content-based compression algorithm for optimizing the IFC files
图1: IFC压缩工具截图;左边显示的是工具的主界面,需要选择IFC文件的路径及是否采用浮点舍入压缩算法(FPR);右边显示的是原始文件和目标文件的大小对比
摘要 :
作为建筑信息建模(BIM)数据的常用开放和中立文件格式,IFC(行业基础类)旨在促进AEC行业各种软件平台之间的互操作性。然而,来自不同系统的IFC文件通常包含大量冗余信息,这将极大地限制基于IFC的数据存储和交换、管理、传输和其他应用程序。为了解决这个问题,本文提出了一种基于内容的压缩算法,用于优化IFC数据文件,称作IFC压缩器。它的目标是通过减少冗余信息来尽可能地使大型IFC文件变得尽可能小。该算法是通过对基于IFC模型的树结构进行迭代压缩过程实现的。优化过程可以选择无损压缩也可以接受一个误差范围。与不考虑文件内容的纯压缩算法(ZIP)相比,该算法首先对IFC文件的结构和内容进行一个全面的分析,然后在不改变原始文件格式的情况下消除冗余信息。与子模型提取方法不同的是,我们的算法结果是一个完整的IFC模型,但在物理存储上更加紧凑。与一些商用的IFC优化工具(如Solibri IFC优化)相比,该算法可以使IFC文件的规模更小。实验结果表明,该算法对具有大量重复组件的办公/住宅模型特别有效。在测试用例集中,我们的算法的压缩率通常很高(平均为40.32%)。
Links:
IFC压缩器[网址]    
源代码[下载]
测试用例 :
M1 [55.8MB]     M2 [25.7MB]     M3 [7.1MB]     M4 [4.0MB]     M5 [3.2MB]     M6 [2.7MB]     M1-M6 压缩包 [zip]
论文(PDF) [2.79MB]
实验结果 :
models of experiment
图2: 实验中用到的6个测试IFC模型的可视化显示
results of experiment
图3: 原始模型、采用FPR压缩算法后的模型及采用无损压缩算法后的模型大小对比(其中FPR的误差范围设为10−2)
致谢 :
作者感谢所有匿名评论者的评论和建议,他们的评论大大改进了这篇文章。这项研究得到了“十二五”国家科技支撑计划项目 (编号:2012BAJ03B07) 和国家自然科学基金 (61472202,61272229,61003095)的资助。第二作者还得到了中国973项目(2010CB328003)的支持,第三作者得到了中国863项目(2012AA040902)的支持。
引用 :
[Bibtex] Jing Sun, Yu-Shen Liu, Ge Gao, Xiao-Guang Han. IFCCompressor: A content-based compression algorithm for optimizing Industry Foundation Classes files. Automation in Construction, 2015, 50(2): 1-15. (SCI, 2013 Impact factor: 1.822)

联系方式:
刘玉身副教授,邮箱 : liuyushen@tsinghua.edu.cn.
孙晶,邮箱 : jingsun001@gmail.com.