基于构件语义分割的lod分层生成方法、系统、存储介质
技术领域
1.本发明涉及建筑信息模型可视化技术,具体为基于构件语义分割的lod分层生成方法、系统、存储介质。
背景技术:2.现有bim lod技术根据物体模型的节点在显示环境中所处的位置和重要度,决定物体渲染的资源分配,所存在的限制包括:目前的lod主要基于算法进行分层,会使同一个物体被分割分散到不同的层级中,各个层级包含物体的不同部分,由于分层结果不含语义,不利于模型的实际应用,不贴合业务展示需求,无法适应不同项目和应用对模型展示内容不同精细程度的要求;需要多个软件协同进行,操作繁琐、复杂;缺乏对纹理贴图的处理;缺乏对实际应用、业务展示的支持。
技术实现要素:3.为克服现有技术所存在的缺陷,本发明提供基于构件语义分割的lod分层生成方法、系统、存储介质,基于构件语义分割进行lod分层显示,以弥补基于算法分割的lod分层的不足,解决现有lod分层结果不含语义而不贴合业务展示需求、无法适应不同环境对模型展示内容精细程度的问题。
4.本发明一个实施例中的lod分层生成方法采用以下技术方案来实现:基于构件语义分割的lod分层生成方法,包括以下步骤:
5.读取bim模型源文件,获取bim模型的构件及每个构件的构件类别、构件属性信息;
6.根据语义规范设置构件类别的语义,对bim模型构件按构件类别的语义进行划分;
7.对bim模型构件进行预处理,删除构件类别下的闭合空间构件、拆分面构件,并对构件类别中由多个构件组成的模型组进行解组处理,对构件类别中由多个不同类型的构件合并而成的部件进行分解处理,删除构件类别中的链接和标注;
8.基于构件类别的语义,按不同项目和应用对模型展示内容的不同精细程度的要求,分割bim模型,生成多个lod层级;多个lod层级包括第一lod层级、第二lod层级、第三lod层级、第四lod层级;
9.处理构件纹理,使第一lod层级、第二lod层级不显示纹理属性。
10.本发明一个实施例中的lod分层生成系统采用以下技术方案来实现:基于构件语义分割的lod分层生成系统,包括:
11.文件读取模块,用于获取bim模型的构件及每个构件的构件类别、构件属性信息;
12.语义设置模块,用于根据语义规范设置构件类别的语义,对bim模型构件按构件类别的语义进行划分;
13.构件预处理模块,对bim模型构件进行预处理,删除构件类别下的闭合空间构件、拆分面构件,并对构件类别中由多个构件组成的模型组进行解组处理,对构件类别中由多个不同类型的构件合并而成的部件进行分解处理,删除构件类别中的链接和标注;
14.分割模块,基于构件类别的语义,按不同项目和应用对模型展示内容的不同精细程度的要求,分割bim模型,生成多个lod层级;多个lod层级包括第一lod层级、第二lod层级、第三lod层级、第四lod层级;
15.构件纹理处理模块,对第一lod层级、第二lod层级分割结果的构件纹理进行处理,使第一lod层级、第二lod层级不显示纹理属性。
16.本发明一个实施例中的存储介质,其上存储有计算机指令,当计算机指令被处理器执行时,实现本发明基于构件语义分割的lod分层生成方法的步骤。
17.本发明与现有技术相比,具有如下优点和有益效果:
18.1、本发明解决了lod分层结果不含语义的问题,使lod能基于语义来分割模型,分层结果文件为含有构件语义的物体,贴合业务展示需求,适应不同项目和应用对模型展示内容不同精细程度的要求;且无需多种软件协同进行,简化环境安装与操作流程,实现一键操作,自动提取,提升了工作效率。
19.2、本发明按不同项目和应用对模型展示内容的不同精细程度的要求,定义语义规范,定义不同层级所显示的物体类型;依据物体对应的语义,对模型进行分层,实现含语义的lod分层。
20.3、本发明优化了对物体纹理贴图的处理,模拟用户与物体在不同距离时的所能见到的不同内容;将结果文件保存为业界通用的格式,实现三维数据轻量化、传输即时、解析高效的效果。
附图说明
21.图1是本发明实施例中lod分层生成方法的流程示意图;
22.图2是本发明实施例中lod分层生成系统的结构框图。
具体实施方式
23.下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限于此。
24.实施例1
25.如图1所示,本实施例提供了一种基于构件语义分割的lod分层生成方法,包括如下步骤:
26.s1、读取bim模型源文件,获取bim模型的构件及每个构件的构件类别、构件属性信息。
27.读取bim模型源文件,通过构件集合(filtered element collector)获取bim模型的所有构件,并获取每个构件的构件类别和构件属性信息。所获取的构件类别是后续做构件语义分割的基础。
28.s2、根据语义规范设置构件类别的语义,对bim模型构件按构件类别的语义进行划分。
29.将bim模型构件按照构件类别的语义进行划分,如表1所示,将bim模型构件划分为ost_walls、ost_doors、ost_windows、ost_floors、ost_roofs、ost_columns、ost_pipefitting、ost_railing、ost_beam、ost_stairs、ost_furniture、ost_
plumbingfixtures、ost_rooms、ost_electricalequipment、ost_facesplitter等多个构件类别,各种构件类别均可具备其本身的名称、纹理等基本属性,各种构件类别也具备其特殊属性,如ost_rooms是由多面墙组成,ost_iosmodelgroups由多个构件组成。
30.表1
[0031][0032][0033]
s3、对bim模型构件进行预处理
[0034]
s31、处理闭合空间和墙体之间的拓扑关系
[0035]
ost_rooms构件类别的语义是指多面墙围成的闭合空间,闭合空间包括客厅、厨房、卫生间、卧室等。ost_rooms构件类别会导致组成该闭合空间的墙体无法被移除。
[0036]
因此,本步骤需查找出构件属性信息为闭合空间的构件,并删除闭合空间构件;具体为:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_rooms,如果是则删除该闭合空间,最终将bim模型中所有ost_rooms类别的客厅、厨房、卫生间、卧室等闭合构件全部删除。
[0037]
s32、处理拆分面和纹理的关系
[0038]
ost_facesplitter构件类别的语义是指拆分面,拆分面可以将一块完整的楼板划分为不同区域,各区域可设置不同的纹理。一块被拆分面划分的楼板,其纹理无法修改。
[0039]
因此,本步骤需查找出含有拆分面的楼板,并将拆分面删除;具体为:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_facesplitter,如果是则删除该拆分面,最终将bim模型中所有ost_facesplitter类别的拆分面删除。
[0040]
s33、对模型组进行解组处理
[0041]
ost_iosmodelgroups构件类别的语义是指多个构件组成的模型组,模型组内的构件可以进行统一的修改、移动、载入等。模型组只有在解组后,其内的构件才能进行修改并生效,否则,其内的构件修改后无法生效。
[0042]
遍历模型中的构件,获取构件类别,判断其是否属于ost_iosmodelgroups,如果是则使用ungroupmembers进行解组,最终将模型中所有ost_iosmodelgroups类别的模型组解组。
[0043]
s34、对部件进行分解处理
[0044]
ost_assemblies构件类别的语义是指多个不同类型的构件合并而成的部件,部件可以进行计划、标记和隔离。部件在未分解时,其内的构件无法修改。
[0045]
遍历bim模型中的构件,获取构件类别,判断其是否属于ost_assemblies,如果是则使用disassemble进行分解,最终将模型中所有ost_assemblies类别的部件分解。
[0046]
s35、链接
[0047]
ost_rvtlinks构件类别的语义是指当前模型与外部模型的关联,通过链接可以参照和使用外部模型的构件。存在链接的情况下,可以修改模型内的构件,但无法生效。
[0048]
遍历bim模型中的构件,获取构件类别,判断其是否属于ost_rvtlinks,如果是则使用modeldocument.delete(links)将链接删除。
[0049]
s36、标注
[0050]
ost_dimensions构件类别的语义是指模型中的比例尺或尺寸标注,用于标注模型图的尺寸、比例尺、空间用途等。存在标注的情况下,与标注相关联的构件无法修改。
[0051]
遍历模型中的构件,获取构件类别,判断其是否属于ost_dimensions,如果是则使用modeldocument.delete(dimensions)将标注删除。
[0052]
s4、基于构件类别的语义,分割bim模型,生成多个lod层级。
[0053]
在本步骤中,lod层级划分的原则为:按不同项目和应用对模型展示内容的不同精细程度的要求。其中第一lod层级的精细度较低,仅保留模型的外部构件,并且不显示该层的纹理属性,该层保留的构件类别具体包括:ost_walls、ost_doors、ost_windows、ost_floors、ost_roofs、ost_columns,如表2所示。
[0054]
表2
[0055]
构建类别的语义中文含义ost_walls墙ost_doors门ost_windows窗ost_floors楼板ost_roofs屋顶ost_columns柱
[0056]
生成第一lod层级时,遍历bim模型中的构件,获取构件的类别(category)属性,类
别属性中的builtincategory(内置类别)值就是这个构件类别的语义。第一lod层级的生成过程包括以下步骤:
[0057]
遍历bim模型中的构件,判断构件类别的语义是否为ost_walls、ost_doors、ost_windows、ost_floors、ost_roofs、ost_columns中的一种,如果是则保留该构件,否则不保留该构件;
[0058]
当bim模型中所有构件遍历结束后,只保留了语义为ost_walls、ost_doors、ost_windows、ost_floors、ost_roofs、ost_columns的构件类别,然后将结果文件保存,也就完成了对模型的第一次语义分割,获得了第一lod层级的分割结果。
[0059]
第二lod层级的精细度也较低,保留的构件是模型外部的构件:具体包括屋顶装饰和管道,也不显示该层的纹理属性。
[0060]
第三lod层级在第一lod层级和第二lod层级的基础上提升精细度,其包含第一lod层级和第二lod层级的构件类别,同时增加ost_railing、ost_beam、ost_stairs、ost_furniture的构件类别。第三lod层级将显示所有构件的纹理属性,实现精细度的提升。
[0061]
第四lod层级是模型中除去第三lod层级以外的构件均予以保留,此级别的构件比第三lod层级的构件更小、更细致,同时该层也显示所有构件的纹理属性,实现精细度的更进一步提升。
[0062]
第二lod层级到第四lod层级所保留的构件类别的语义如下表3所示:
[0063]
表3
[0064][0065]
同理根据表3定义的语义,对bim模型进行第二次、第三次、第四次语义分割,形成第二lod层级、第三lod层级、第四lod层级的分割结果。
[0066]
s5、处理构件纹理
[0067]
通常情况下,构件都有纹理属性。第一lod层级、第二lod层级不需要显示构件的具体纹理,因此需要对上述第一lod层级、第二lod层级分割结果的构件纹理进行处理。针对不同类型的构件,其纹理属性的处理方式不同,因此修改构件纹理的方式也不同,本实施例中纹理获取及修改方式分为以下四种情况:
[0068]“墙”类型构件:
[0069]
此类型构件包括墙、楼板、幕墙、屋顶等,其纹理在compoundstructure属性(复合属性)中设定。遍历bim模型中的构件,获取构件的复合属性,通过setcompoundstructure(设置复合属性)的方法将构件纹理属性修改为空值,实现第一lod层级、第二lod层级不显示纹理属性的效果。
[0070]“门”类型构件:
[0071]
此类型构件包括把手、窗框等,其纹理在parameterset(参数集)中设定。遍历bim模型中的构件,获取该构件及parameterset中类型为pg_materials(材质)的属性,通过parameter.set(设置参数)的方法将构件纹理属性修改为空值,实现第一lod层级、第二lod层级不显示纹理属性的效果。
[0072]“管道”类型构件:
[0073]
此类型构件主要是管道、管件、弯头等,其纹理在构件的mepsystem(管道系统)中设定。遍历bim模型中的构件,获取该构件的mepsystem(管道系统)信息及parameterset(参数集)信息,通过parameter.set()(设置参数)的方法将构件纹理属性修改为空值,实现第一lod层级、第二lod层级不显示纹理属性的效果。
[0074]“拆分面”类型构件:
[0075]
拆分面主要用于将一个完整的构件划分为不同区域,各区域可设置不同的纹理。其纹理在geometryelement(几何元素)的属性中设定。遍历bim模型中的构件,获取该构件及geometryelement(几何元素)和faces(面)属性,通过paint(绘画)的方法将构件纹理属性修改为空值,实现第一lod层级、第二lod层级不显示纹理属性的效果。
[0076]
s6、保存结果文件
[0077]
将上述步骤s5处理纹理后的第一lod层级和第二lod层级,和步骤s4分割后的第三lod层级、第四lod层级的结果保存,供其他应用情况或业务场景使用。
[0078]
实施例2
[0079]
与实施例1基于相同的发明构思,本实施例提供一种基于构件语义分割的lod分层生成系统,包括:
[0080]
文件读取模块,用于获取bim模型的构件及每个构件的构件类别、构件属性信息;读取bim模型源文件后,通过构件集合(filtered element collector)获取bim模型的所有构件,并获取每个构件的构件类别和构件属性信息,所获取的构件类别是后续做构件语义分割的基础;
[0081]
语义设置模块,用于根据语义规范设置构件类别的语义,对bim模型构件按构件类别的语义进行划分,所划分的构件类别包括ost_walls、ost_doors、ost_windows、ost_floors、ost_roofs、ost_columns、ost_pipefitting、ost_railing、ost_beam、ost_stairs、ost_furniture、ost_plumbingfixtures、ost_rooms、ost_electricalequipment和ost_facesplitter;
[0082]
构件预处理模块,对bim模型构件进行预处理,包括:处理闭合空间和墙体之间的拓扑关系,处理拆分面和纹理的关系,对模型组进行解组处理,对部件进行分解处理,以及删除链接和标注;
[0083]
分割模块,基于构件类别的语义,分割bim模型,生成多个lod层级;lod层级的划分原则为:按不同项目和应用对模型展示内容的不同精细程度的要求。其中第一lod层级的精
细度较低,仅保留模型的外部构件,并且不显示该层的纹理属性,该层保留的构件类别具体包括:ost_walls、ost_doors、ost_windows、ost_floors、ost_roofs、ost_columns。第二lod层级的精细度也较低,保留的构件是模型外部的构件:具体包括屋顶装饰和管道,也不显示该层的纹理属性。第三lod层级在第一lod层级和第二lod层级的基础上提升精细度,其包含第一lod层级和第二lod层级的构件类别,同时增加ost_railing、ost_beam、ost_stairs、ost_furniture的构件类别;第三lod层级将显示所有构件的纹理属性,实现精细度的提升。第四lod层级是模型中除去第三lod层级以外的构件,此级别的构件比第三lod层级的构件更小、更细致,同时该层也显示所有构件的纹理属性,实现精细度的更进一步提升。
[0084]
构件纹理处理模块,对第一lod层级、第二lod层级分割结果的构件纹理进行处理,使第一lod层级、第二lod层级不显示纹理属性;
[0085]
保存模块,用于保存结果文件,包括构件纹理处理模块处理后的第一lod层级、第二lod层级,以及分割模块分割后的第三lod层级、第四lod层级。
[0086]
其中,构件预处理模块对构件进行各项预处理,具体为:
[0087]
处理闭合空间和墙体之间的拓扑关系:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_rooms,如果是则删除该闭合空间,最终将bim模型中所有ost_rooms类别的客厅、厨房、卫生间、卧室等闭合构件全部删除;
[0088]
处理拆分面和纹理的关系:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_facesplitter,如果是则删除该拆分面,最终将bim模型中所有ost_facesplitter类别的拆分面删除;
[0089]
对模型组进行解组处理:遍历模型中的构件,获取构件类别,判断其是否属于ost_iosmodelgroups,如果是则使用ungroupmembers进行解组,最终将模型中所有ost_iosmodelgroups类别的模型组解组;
[0090]
对部件进行分解处理:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_assemblies,如果是则使用disassemble进行分解,最终将模型中所有ost_assemblies类别的部件分解;
[0091]
删除链接:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_rvtlinks,如果是则使用modeldocument.delete(links)将链接删除;
[0092]
删除标注:遍历模型中的构件,获取构件类别,判断其是否属于ost_dimensions,如果是则使用modeldocument.delete(dimensions)将标注删除。
[0093]
本实施例还提供与实施例1基于相同发明构思的一种存储介质,其上存储有计算机指令,当计算机指令被处理器执行时,实现上述实施例1基于构件语义分割的lod分层生成方法的各个步骤。
[0094]
由于bim模型在工程生命周期的前期应用阶段,对模型所需的内容和细节要求并没有那么高,高复杂的bim模型为工程应用带来了负担,因此本发明自动提取bim模型不同等级的lod,以适应不同项目和应用对模型精度的要求,是bim能够大规模应用的关键。本发明通过构件语义分割进行lod分层显示,弥补了现有基于算法的lod分层的不足,解决了lod分层结果不含语义的问题,使lod能基于语义来分割模型,结果文件是有含有语义的物体,贴合业务展示需求,适应不同项目和应用对模型展示内容不同精细程度的要求;基于工程应用不同阶段,将bim模型按语义理解进行划分,实现自动提取bim模型不同等级的lod,从
而加速场景的绘制,提升系统的响应能力。
[0095]
上述实施例为本发明较佳的实施方式,但本发明的实施方式并不受上述实施例的限制,其他的任何未背离本发明的精神实质与原理下所作的改变、修饰、替代、组合、简化,均应为等效的置换方式,都包含在本发明的保护范围之内。
技术特征:1.一种基于构件语义分割的lod分层生成方法,其特征在于,包括以下步骤:读取bim模型源文件,获取bim模型的构件及每个构件的构件类别、构件属性信息;根据语义规范设置构件类别的语义,对bim模型构件按构件类别的语义进行划分;对bim模型构件进行预处理,删除构件类别下的闭合空间构件、拆分面构件,并对构件类别中由多个构件组成的模型组进行解组处理,对构件类别中由多个不同类型的构件合并而成的部件进行分解处理,删除构件类别中的链接和标注;基于构件类别的语义,按不同项目和应用对模型展示内容的不同精细程度的要求,分割bim模型,生成多个lod层级;多个lod层级包括第一lod层级、第二lod层级、第三lod层级、第四lod层级;处理构件纹理,使第一lod层级、第二lod层级不显示纹理属性。2.根据权利要求1所述的lod分层生成方法,其特征在于:读取bim模型文件时,通过构件集合获取bim模型的所有构件,并获取每个构件的构件类别和构件属性信息。3.根据权利要求1所述的lod分层生成方法,其特征在于:根据语义规范设置构件类别的语义,将bim模型构件划分为ost_walls、ost_doors、ost_windows、ost_floors、ost_roofs、ost_columns、ost_pipefitting、ost_railing、ost_beam、ost_stairs、ost_furniture、ost_plumbingfixtures、ost_rooms、ost_electricalequipment及ost_facesplitter多个构件类别,各种构件类别具备基本属性和特殊属性,其中基本属性包括构件类别本身的名称、纹理属性。4.根据权利要求3所述的lod分层生成方法,其特征在于:删除构件类别下的闭合空间构件的过程为:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_rooms,如果是则删除ost_rooms构件类别下由多面墙围成的闭合空间,所述闭合空间包括客厅、厨房、卫生间和卧室;删除拆分面构件的过程为:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_facesplitter,如果是则删除ost_facesplitter构件类别下的拆分面;解组处理的过程为:遍历模型中的构件,获取构件类别,判断其是否属于ost_iosmodelgroups,如果是则进行解组处理;分解处理的过程为:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_assemblies,如果是则进行分解处理。5.根据权利要求3所述的lod分层生成方法,其特征在于:第一lod层级仅保留模型的外部构件,并且不显示该层的纹理属性,保留的构件类别包括:ost_walls、ost_doors、ost_windows、ost_floors、ost_roofs、ost_columns;在第二lod层级中,保留模型的外部构件,包括屋顶装饰和管道,也不显示该层的纹理属性;第三lod层级在第一lod层级和第二lod层级的基础上提升精细度,并显示所有构件的纹理属性,其包含第一lod层级和第二lod层级的构件类别,同时增加ost_railing、ost_beam、ost_stairs、ost_furniture的构件类别;第四lod层级将模型中除去第三lod层级以外的构件均予以保留,并显示所有构件的纹理属性。
6.根据权利要求1所述的lod分层生成方法,其特征在于:处理构件纹理时,对于“墙”类型构件,获取并设置构件的复合属性,通过设置复合属性的方法将构件纹理属性修改为空值;对于“门”类型构件,获取该类构件的参数集中类型为材质的属性,通过设置参数的方法将构件纹理属性修改为空值;对于“管道”类型构件,获取该类构件的管道系统信息及参数集信息,通过设置参数的方法将构件纹理属性修改为空值;对于将完整构件划分为不同区域的“拆分面”类型构件,获取该类构件的几何元素和面属性,通过绘画方法将构件纹理属性修改为空值。7.一种基于构件语义分割的lod分层生成系统,其特征在于,包括:文件读取模块,用于获取bim模型的构件及每个构件的构件类别、构件属性信息;语义设置模块,用于根据语义规范设置构件类别的语义,对bim模型构件按构件类别的语义进行划分;构件预处理模块,对bim模型构件进行预处理,删除构件类别下的闭合空间构件、拆分面构件,并对构件类别中由多个构件组成的模型组进行解组处理,对构件类别中由多个不同类型的构件合并而成的部件进行分解处理,删除构件类别中的链接和标注;分割模块,基于构件类别的语义,按不同项目和应用对模型展示内容的不同精细程度的要求,分割bim模型,生成多个lod层级;多个lod层级包括第一lod层级、第二lod层级、第三lod层级、第四lod层级;构件纹理处理模块,对第一lod层级、第二lod层级分割结果的构件纹理进行处理,使第一lod层级、第二lod层级不显示纹理属性。8.根据权利要求7所述的lod分层生成系统,其特征在于,语义设置模块根据语义规范设置构件类别的语义,将bim模型构件划分为ost_walls、ost_doors、ost_windows、ost_floors、ost_roofs、ost_columns、ost_pipefitting、ost_railing、ost_beam、ost_stairs、ost_furniture、ost_plumbingfixtures、ost_rooms、ost_electricalequipment及ost_facesplitter多个构件类别,各种构件类别具备基本属性和特殊属性,其中基本属性包括构件类别本身的名称、纹理属性。9.根据权利要求8所述的lod分层生成系统,其特征在于,构件预处理模块对构件进行的各项预处理中:删除构件类别下的闭合空间构件的过程为:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_rooms,如果是则删除ost_rooms构件类别下由多面墙围成的闭合空间,所述闭合空间包括客厅、厨房、卫生间和卧室;删除拆分面构件的过程为:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_facesplitter,如果是则删除ost_facesplitter构件类别下的拆分面;解组处理的过程为:遍历模型中的构件,获取构件类别,判断其是否属于ost_iosmodelgroups,如果是则进行解组处理;分解处理的过程为:遍历bim模型中的构件,获取构件类别,判断其是否属于ost_assemblies,如果是则进行分解处理。10.一种存储介质,其上存储有计算机指令,其特征在于,当计算机指令被处理器执行时,实现权利要求1-6中任一项基于构件语义分割的lod分层生成方法的步骤。
技术总结本发明涉及建筑信息模型可视化技术,具体为基于构件语义分割的LOD分层生成方法、系统、存储介质,其方法包括:获取模型的构件及其构件类别;根据语义规范设置构件类别的语义,对模型构件按构件类别的语义进行划分;对模型构件进行预处理,删除构件类别下的闭合空间构件、拆分面构件,对模型组进行解组处理等;基于构件类别的语义,分割BIM模型,生成多个LOD层级,包括第一LOD层级、第二LOD层级、第三LOD层级、第四LOD层级;处理构件纹理,使第一LOD层级、第二LOD层级不显示纹理属性。本发明解决了现有LOD分层结果不含语义而不贴合业务展示需求、无法适应不同环境对模型展示内容精细程度的问题。的问题。的问题。
技术研发人员:王静芸 邓明亮 蔡金怡 方云华 陈明花 苏健业 谢权
受保护的技术使用者:奥格科技股份有限公司
技术研发日:2022.06.16
技术公布日:2022/11/1