新闻资讯

通过开发 3DGAN 的新颖方法来跨多尺度数据集进行设计

介绍
生成对抗网络 (GAN) 1最常见的用途是通过图像数据集进行建筑形式探索。训练信息是一系列产生图像的 2D 图像。然而,3D GAN 发展缓慢,仍然是一个有问题的问题,因为高维数据的复杂性增加,计算时间呈指数级延长,并且内聚 3D 数据表示的不一致(网格、点云或 NURB 等格式可能有所不同) 。这还意味着 3D 模型在细节和分辨率方面比平面或图像切片数据集变化更大,对于还包含所有内部信息的 3D 模型尤其如此。
虽然 GAN 开启了从几乎无限量的数据中学习的可能性,但它也提出了如何设计不同尺度的 3D 模型(从整个建筑物到单个建筑组件)的问题,因为在 GAN 中不提供尺度。
为了解决这些限制,这项工作提出了一种新颖的 3D 深度学习方法来处理不同规模和类型的建筑空间。通过将数据集转换为体素化沉积描述,我们表明通常分为形态拓扑对象类或类型的数据集可以转换为异构建筑空间。我们的方法减少了对数据集(预)分类的需要,防止数据修改或不同表示格式的泛化。我们将证明我们的方法可以在各种规模和数据类型上使用。
GAN 在建筑中的实现
目前的2D-GAN研究中,第三维是通过挤压的方式添加的,优先考虑二维平面图,而忽略了第三维。我们认为这种方法使寻找新颖空间配置的可能性变得复杂,并阻碍了近几十年来建筑领域 3D 计算的进步。
使用 3D 数据作为 GAN 数据集已经取得了一些突破,但进展有限,特别是在建筑领域。Hang Chang, 2和 Stanislas Chaillou, 3使用机器学习生成的剖面和平面图作为拉伸式图像,将其连续堆叠,在三维空间中没有空间相关性,从而导致层与层之间的信息丢失,导致层与层之间的信息跳跃。切割层。虽然这些示例从单轴导出 3D 模型,但其他示例则使用多轴方法。4 , 5 , 6 , 7这项研究使用了 GAN 生成的立面、剖面或平面图的像素投影。然而,通过 2D 图像的投影,需要进行线性插值,以显着减少信息并最终与 2.5D 挤压对齐。正如Zhang 和 Blasetti5 5所总结的,串行堆叠保留了单轴切片的美感,但多视图结果丢失了所有特殊的内部信息。
在 Immanuel Koh 的“3D-GAN-Housing” 8中,通过在 3D 体素网格中采样和重新混合预定义的住房类型,探索了使用 GAN 进行 3D 几何的另一次尝试。David Newton 的9方法涉及体素技术,与我们的方法相同,但通过实施 3D IWGAN,他们可以逃避从 3D 到 2D 并返回的解码过程,但必须接受分辨率方面的决定性损失。因此,像 Koh 一样,Newton 仅在体量模型上实现 3D GAN,并排除了内部空间的空间复杂性。
其他探索 GAN 在建筑中的 3D 品质的研究使用挤压和 2.5D 高场技术来实现三维。10图卷积网络需要三角形网格作为封闭体积,因此几乎无法超出相同程度的拓扑形状变形。11
上述例子都有助于3D-GAN在架构方面的发展;然而,对于内部空间序列,要么缺乏分辨率,要么丢失信息(因此保留了空间复杂性),要么存在拓扑不变性。这些问题主要是由于将复杂的 3D 几何图形编码为 GAN 系统可以训练的向量的方法问题造成的。
其他研究,例如 MIT CSAIL 12和 Kaolin Pytorch 库13、14、15关于 3D 深度学习的研究,加速了 3D-GAN 的发展,重点关注对象和体积形状。12这两个库都使用体素化技术并将体素信息编码为 n 维向量。Kaolin API 主要专注于简化不同格式 3D 数据的工作流程以及在更大框架中的实现,包括渲染和动画数据。Kleineberg 和他的团队的研究还提出了一种有价值的 GAN 方法来训练和生成 3D 形状。与它们和其他 3D GAN 研究相比,我们使用符号距离场 (SDF) 以后处理 GAN 结果的形式进行可视化。15他们甚至使用 SDF 结构来直接训练 GAN 系统。但就像其他人在使用 ShapeNet 库之前一样,他们的方法没有透露它是否可以训练并成功生成超出包络线的内部形状。除了体素信息之外,点云同样被证明是适用于第14代 3D GAN 的方法,但也表现出捕获内部空间和序列的困难。神经辐射场 (NeRF) 16和基于扩散模型的人工智能辅助 3D 方法的最新发展以其速度令人印象深刻,但也难以应对超出范围的复杂性。17 号Nerfs 特别提醒人们注意像素投影和图像堆叠方法,而基于扩散模型的方法在未来的发展中很有希望,但仍然是分辨率和拓扑复杂性。
与建筑学一样,计算机科学领域的这些研究已经证明了在深度学习模型中使用各种格式的 3D 数据,包括体素、图像堆栈、点云和深度图,但如何处理内部和外部的问题仍然没有解决。同时形成。因此,应该指出的是,这些研究都仅限于艺术史学家 Henri Focillon 18所描述的与建筑学科作为外部形式的关系。他强调,建筑作为一种艺术形式,拥有独特的特权,因为它必须同时解决外部和内部问题。艺术史学家的精彩表达强调了这两种形式不能同时被感知;然而,它们是密切相关的,不能完全孤立地理解。这是我们的研究与上述 3D GAN 应用的其他研究的主要区别:机器能否同时处理内部空间和外部形状?
简而言之,过去的研究仅限于生成建筑物的外部围护结构或内部布局,而不是同时生成两者。一个值得注意的挑战与内部空间信息有关,因为机器对控制建筑图像的空间逻辑(例如通过将 3D 建筑物切片为 2D 图像而产生)的理解是有限的,导致结果缺乏表征原始建筑物的空间连续性。基于相对未知的 3D-GAN 架构研究以及基于图像的 GAN 的 3D 解释的缺乏,本研究研究了使用体素化编码技术混合 2D-GAN 的 3D-GAN 工作流程。我们的方法允许对 3D 建筑数据集进行训练,其空间复杂性可以产生混合的 3D 输出。
方法
我们开发了一种新颖的 3D-GAN 方法,它将基于图像的 GAN 与 3D 体素化技术相结合。我们的工作借鉴了 Nvidia 和 MIT CSAIL 的研究成果。具体来说,我们使用 DCGAN 算法19来训练表示 3D 数据集的空间语法和复杂性的 2D 图像。20首先,通过将 3D 体素信息转换为 2D 图像来创建数据集。然后,一旦从 DCGAN 潜在空间生成经过训练的新图像,就会通过反转转换过程将 2D 图像转换回 3D 模型。其特殊之处在于,此处介绍的工作流程克服了将数据从 3D 转换为 2D 并生成新的空间配置时的障碍以及空间连续性的相关信息丢失。
3D 到 2D 再回到 3D 转换过程
3D 几何可以用多种格式描述和表示,包括多边形网格、点云或 NURB。由于这些格式的复杂性、文件大小以及它们所保存的有关特定几何形状的信息各不相同,因此几乎不可能找到共同点来直接向量化这些信息以将其训练为 GAN。当考虑不同程度的 3D 几何的空间复杂性和拓扑时尤其如此。因此,我们开发了一种 3D 体素技术,允许使用任何几何体,无论其格式如何(例如网格、NURB、体素、点云),并将这些数据转换为 2D 图像而不会丢失信息。与对数百座建筑物进行建模以实现结构一致性相比,该技术显着减少了劳动时间,而这对于其他方法来说是必要的8、21以及对三角网格面的过度格式化。11
我们使用特定的 64 × 64 × 64 体素网格来描述几何形状。测试网格中的每个体素以确定其是否与几何图形一致或不代表几何图形。如果确定某个体素是 3D 几何体的一部分,则会将其保存为 512 × 512 图像中的不同 RGB 像素。如果它不是几何体的一部分,则会在图像中保存为黑色 RGB (0,0,0) 值。换句话说,几何(物质性)沉积指令可以是编码像素是否应该沉积在体素位置的二进制光栅层。体素网格和像素网格是特定大小的;为了让我们的方法发挥作用,它们必须变得平等;262,144 个体素对应于相同数量的像素,并且可以在 3D 和 2D 之间无缝转换信息,而不会丢失信息(图 1)。通过将原始模型与 SDF 重建进行比较来定性评估 3D 数据的编码和解码过程是否成功(图 2)。

图1。编码过程说明了 3D 体素到 2D 像素的转换。精确的体素和像素网格链接到相等的计数 (262,144) 以实现精确转换,但也源自 GPU 加载数据集的最大 VRAM 的限制。对于我们的方法,512 × 512 像素的图像分辨率非常适合在 Nvidia RTX 2080 Ti GPU 上进行批量大小为 1 且合理训练时间为 16-24 小时的训练。然而,这种限制部分与 GPU 技术有关。

图2 . 对结果的目视检查说明了 (a) 原始形式和 (c) 重建形式之间的细节程度。
将 3 维对象编码为单个图像可以在所有三个轴上保留每个体素的信息和几何关系,并将整个 3D 对象作为一个整体进行训练,而不是作为一系列不相关的切片图像层。这使得任何中间或额外的预处理(例如像素连续性)变得不必要,否则使用图像切片方法会产生碎片和混乱的结果。5 , 6解码图像在 DCGAN 算法上进行训练。训练后,生成的图像被转换为​​ 3D 模型,并使用特定网格中从像素到体素的逆转换过程将其重建为多边形网格(图 3))。3D GAN 生成的 3D 几何结构可以开放给更多不同的后处理建模方法。我们专门探索了使用 SDF 进行程序重建的技术,与行进立方体算法相当。这项技术使我们能够同时重建不同数据集中固有的跨尺度的大型组件和复杂细节。

图3 . 基于 3D GAN 的设计流程概述。第一步是参与式收集 3D 建筑数据集 (a)。一旦获得数据,建筑物就会被分为多个边界框,并使用 64 × 64 × 64 网格进行体素化 (b)。作为处理数据的中间结果,创建了 512 × 512 像素的 2D 图像 (c)。这些 2D 图像被重新训练为 DCGAN (d)。DCGAN 提取并混合基本特征 (e)。最后,通过程序重建将生成的 2D 图像无缝转换回 3D 几何图形 (f)。
我们方法的另一个优点是几乎任何表示格式、多边形网格、NURB、点云或多对象模型都可以进行训练,而无需任何格式化或编辑。此外,我们的方法减少了预处理数据集的需要,防止解码的 3D 模型中的数据更改和信息丢失。此外,法线方向、流形边缘或表面与实体几何形状等参数并不重要。空间和几何质量、体积以及墙壁、楼板和楼梯等内部空间都被考虑和翻译。
3D 数据集
有 3D 模型数据集存储库,例如 ShapeNet.org 22,它扩展了 3D 模型集合,并且是上述研究项目(特别是计算机科学领域)的基准数据集。但由于模型细节数量有限,主要仅代表建筑体量,因此它们对于通过我们的研究方法分析建筑数据集没有用处。我们的 3D 数据集的主要标准是它们包含所有内部信息,例如墙壁、柱子、天花板、楼梯、门和窗户,以检测不同的空间质量。与其综合生成在重复其预定义参数时存在偏差的 3D 数据集,23我们使用了过去十年在因斯布鲁克大学和德克萨斯农工大学的研究调查和教学过程中收集的大量建筑先例和规范建筑。尽管大多数先例仍然取自西方经典,但我们越来越多地尝试整合来自其他地方的乡土建筑结构。与合成数据集相比,我们的数据集的优势在于其空间组织、规模和复杂性更加多样化。
我们的目标是研究机器可以在我们看不到的 3D 数据中跨尺度检测的空间组成。为此,开发一种尺度感知方法至关重要,因为 GAN 中没有提供架构尺度。因此,需要在数据集中实现尺度感知。在实验中,我们采用了两种策略并开发了两组不同的数据。在第一个实验设置中,建筑物和组件被缩放以适应边界框;在第二个增强实验中,3D 模型被分割以在整个数据集中保持相同的比例。
实验与结果
数据集准备
第一研究阶段收集了 632 座建筑物所需的数据。在第二阶段,我们可以将建筑物的数量扩展到 728.3D 模型,这些模型具有不同类型、不同时代和地理区域,这些模型是从在线开源存储库和先例中收获的,这是一系列研讨会、设计课程和研讨会的成果。因此,用于本研究的数据集是建立在专业人士、学生和非专家共同创建和收集数据的协作基础上的。从单户住宅到博物馆,从办公楼到教堂,类型的高度多样性是有意为之的,因为我们希望避免任何预先分类,并纯粹为了其对建筑的形式/美学“理解”而检查机器。建筑管理的唯一要求和标准是包括所有基本元素和细节,例如隔断或楼梯。为了确保生成的 3D 数据的质量,3D 输入数据被缩放到可用作 GAN 模型输入的通用大小(米)。这些数据集用于专门训练有关建筑空间的机器。受试者还对建筑物的构成、具体空间排序原则、房间的连通性、邻近性和组织形式进行了手动检查。这些部分被提取出来,产生一个额外的 3D 数据集(这些数据集用于专门训练有关建筑空间的机器。受试者还对建筑物的构成、具体空间排序原则、房间的连通性、邻近性和组织形式进行了手动检查。这些部分被提取出来,产生一个额外的 3D 数据集(这些数据集用于专门训练有关建筑空间的机器。受试者还对建筑物的构成、具体空间排序原则、房间的连通性、邻近性和组织形式进行了手动检查。这些部分被提取出来,产生一个额外的 3D 数据集(图4)。一方面,这些数据集用于验证结果,以证明该方法的成功应用(图7)。另一方面,它用于调查机器是否可以接受形式知识的训练。因此,这些数据一次添加到整个建筑数据集(产生 2184 个数据点)并单独训练以评估该过程。这意味着对于此处介绍的两个实验设置,我们分别创建了三个数据集:(a)整个建筑物和建筑物群,(b)基于其形式定义元素的不同配置作为建筑组件的进一步空间序列;24 (c) 和代表小型、详细的建筑部件的循环系统。

图4 . 2184 个模型的 3D 数据集包含 728 个不同类型的建筑物或建筑群以及从中提取的建筑组件。建筑构件要么追踪整个建筑的循环系统,要么提供特色的空间组织,都经过单独的培训过程。
生成对抗网络训练
在这两个实验中,DCGAN 中的第一次训练过程和持续时间最初为 250 个 epoch,批量大小为 1,潜在空间维度为 100,学习率为 0.0002。对于第二个实验,我们通过定性评估 200-250 epoch 的结果,将训练扩展到 500 epoch 和 1000 epoch;我们认识到它们的保真度,特别是在包含循环组件的数据集中,仍在不断发展。我们最终将 500 个 epoch 定为最佳训练持续时间,因为在 500 个 epoch 左右之后,没有观察到训练有显着改善。
设计实施
以下实验设置尝试使用深度神经网络进行建筑设计和超越 2D 或 3D 体量表示的完全空间配置。结果根据数据集分布、多样性和基于先前实验设置的方法的细化而变化。这两个实验装置以不同的方式探讨了从空间组件到建筑规模的跨尺度的互连,探索美学和空间潜力。
在数据集中实现多尺度空间多样性
就机器跨尺度感知和插入建筑空间的能力而言,我们想要研究机器是否以比我们传统感知更细致的方式“看到”空间配置,从而生成我们看不到的新设计。
因此,我们使用了一系列完全建模的真实世界建筑数据并提取了建筑部件,从每个部件中创建了一个编码图像,无论它们的比例如何差异。目的是检查机器是否能够检测到超出已知标准的空间组织和形式相似性。通过从体素到像素的编码过程,尺度的变化同时实现并记录在数据中。随着机器在不同的建筑规模、空间布局和类型之间进行插值,结果是体积和房间高度以及楼梯的上升/运行比的多样性增加(图5)。

图5 . 重建数据的视觉和数值评估证明了单个物体内的空间多样性,显示为 X 射线。
在 GAN 过程中使用多尺度特征提取破坏了规范解释,但也有助于检测新的空间布置和在建筑物中流通的不同想法,这不仅仅是简单地将自相似的地板堆叠在彼此之上,这通常会导致来自通过 ML 过程生成的 2D 计划的挤压。房间高度的多样性和不同尺度的楼梯导致了建筑元素的混合:天花板和楼梯让我们想起阿道夫·洛斯的Raumplan但在新的方向上夸大它。元素的混合是由于数据集中固有的各种尺度造成的,并且因为机器无法以纯粹形式的术语区分什么是天花板和什么是台阶,或者什么是墙壁和立管。在研究的这个关键阶段,新生成的几何形状受到受试者的批判性分析和解释(图 5)。
3D 模型的比例持久性
根据从之前的过程中获得的见解,我们开发了第二种方法,该方法在两个主要方面有所不同。首先,为了准确检测跨尺度和不同数据样本的互连性,我们开发了一种具有离散边界框的方法,体素网格被转换到该离散边界框中,以消除转换过程中的缩放。确定边界框的最佳尺寸至关重要;它必须覆盖尽可能大的建筑面积,并用足够数量的体素追踪更小的细节,例如每个台阶和立管。9为此,我们对数据集中的一些在功能和规模上表现出高度多样性的几何形状进行了手动测试。边界框的离散化意味着重建过程可以显着提高效率。消除了对最佳边界框尺寸的劳动密集型和计算成本高昂的探索,并且新生成的几何形状很容易进行比较。第二个关键区别是,我们运行了三个独立的 GAN 训练过程:建筑物本身、循环以及特定空间序列的提取(图 6 - 8))。边界框的离散化允许为每次训练运行创建大型数据集。大型建筑物从单个数据样本生成 60 多个解码图像。比例精度不可避免地会导致清晰易读的空间尺寸和楼梯和走廊等元素,并显着减少工作和计算时间。

图6 . 验证过程的结果,其中数据集仅由循环组件组成,说明了该方法的准确性,因为它生成了循环系统的合理细节以及房间高度和走廊宽度(测量单位为米)。

图 7 . 在数据集中创建尺度感知结果证明了该过程的精度,因为它除了包含原始 3D 数据的空间连续性之外,还重建了非常详细的元素,例如窗户、楼梯,甚至入口情况。因此,结果有时表现出与原始建筑数据集的显着相似性。

图 8 . 结果摘录说明了跨尺度和类型的空间配置的合理但也不熟悉的插值。
虽然这允许相对受控的实验阶段和系统地观察三个不同数据集干预的因果关系,但它也导致空间多样性的损失。这是因为数据集由建筑物碎片组成,有利于详细分辨率,因此丢失了整体空间关系。在这个过程中,这些新生成的部件往往会迫使非常规的空间安排,因为尽管它们本身的重构往往非常清晰并显示出熟悉的元素,但它们的差异性却通过组装而显露出来(图9))。然而,对我们来说,研究规模持久性至关重要。特别是因为我们希望通过纳入超出我们已知标准的数据样本来促进数据正义,并寻找这些全球先例之间的可测量的互连。

图 9 . 3DGAN 生成组件的组装示例揭示了传统空间配置和创造性之间的紧张关系。
批判性解释和评估
我们进行了定性和定量评估来评估结果。人类受试者解释了选定的 GAN 几何结构(图 5)。选择后,受试者批判性地分析生成的 3D 模型,以识别、反映和外化空间多样性,并检测嵌入空间结构中的进一步疏远。
在定量过程中,3D 模型接受了另一个 GAN 过程,以测试我们的假设,即 3DGAN 跨尺度插值以实现新颖的组合。在此设置中,空间定义元素24标有不同的颜色范围(图 10)。使用RGB值为0或255的颜色来尽可能区分标签;三种主要的 RGB 组合用于标记墙壁和柱子 (R:0 G:255 B:0)、流通 (R:255 G:0 B:0) 和天花板 (R:0 G:0 B:255) 。这样就创建了包含 1340 个模型的数据集。当我们比较输入标签和 3DGAN 可视化 ML 辅助分割的结果时,我们可以看到机器如何在多个尺度上混合数据集中的建筑元素。发生的抖动(而不是线性插值)索引了体素场内的元素及其关系(图 11)。

图 10 . 定量评估:3D 数据集中每个对象的空间定义元素都用 RGB 值标记 (a)。3DGAN 过程的结果说明了将建筑元素抖动为合成混合对象 (b)。包含特定材料属性的体素数据 (c)。(d) 显示代表性 3D 模型。

图 11 . 查询 3D 几何中的每个体素以查找附近的体素,对这些体素进行插值以生成特定的材料数据。材质信息在后处理过程中被抖动为材质描述并通过 SDF 重建。
讨论
我们提出了一种使用 3DGAN 生成跨尺度建筑空间的可行方法。评估过程证明,插值继续延伸到较小规模的建筑元素中。
实验设置的主要限制仍然是无监督学习过程的数据集大小相对较小,并且无法访问包含所有必要空间细节的高质量数据。这种限制在许多深度学习方法中都很明显,对于 3D 数据集尤其如此。在这方面,值得注意的是,由于其可访问性,我们数据集中的样本部分以西方经典的标志性建筑为主。为了促进数据公正并扩大 3DGAN 的样本,进一步的研究可以通过增加 3D 模型的数量和多样性来提高准确性和空间多样性,这超出了我们已知的先例。
在这种追求和我们这里提出的方法的背景下,这种方法允许对建筑特征进行面向细节的识别,我们看到了未来的巨大潜力,例如,近年来进行的越来越多的激光雷达扫描来记录许多建筑物和整个建筑群直至最小的细节。
建立在人类思维之上的习惯是通过抽象从各种经验事实中产生思想和概念,并且经过训练。我们提取不同领域的知识和尺度——从组件的整体形状到细节——并以非常线性的方式进行分析和设计。GAN 算法通过同时处理架构特征和尺度、对它们重新排序和重新加权并使它们经历循环过程,从而提供了一种新方法。LiDAR 扫描的 3D 模型记录了现实的所有细节,为释放这种潜力并消除有偏见的抽象过程提供了可能性。因此,与此处介绍的工作流程相关的该领域的未来研究可以为架构提供全新的视角。此外,激光雷达扫描通常由考古学、自然保护和遗产保护等邻近学科创建。跨学科合作不仅可以开放更多的图书馆,还可以促进数据集的多样性。这将通过纳入各种历史和地理焦点以及这些学科的观点来促进数据正义。
作为交换,其他因素对于应用 3D 深度学习和 3D GAN 也变得至关重要。首先,数据集管理对于控制 GAN 生成的输出的多样性和复杂性至关重要。我们的实验表明,使用更准确的数据集,结果可以精确地再现输入数据中的信息。在这个应用中,建筑师的创作过程被转移到后续的组装和组合过程中。相比之下,如果数据集是多样化的并且在多个尺度上混合,那么人类和机器就会相互制约,就像第一个实验一样。因此,架构师更直接地参与 GAN 过程,而结果取决于架构师的创造性解释和想象力。尽管结果的体积和质量的多样性是有希望的,这种方法需要大量的计算时间,并且由于在接近适当的边界框大小时需要进行反复试验,因此是劳动密集型的。其次,GAN 混合了空间安排,并显示出创建推测性建筑空间的前景,这些空间破坏了规范的学科理解并鼓励非常规设计。
此外,即使我们没有在实验设置中深入探讨众包数据集的想法,我们也看到了我们在此介绍的 GAN 工作流程中的巨大潜力。对于未来的研究,不仅要考虑参与者的人口统计数据,还要考虑如何选择受试者的伦理解释。
结论
在我们的方法中,我们能够证明任何类型的 3D 数据格式(例如网格、点云和 NURBS)都可以使用,而无需将 3D 模型转换或预处理为统一格式,这大大减少了工作量同时增加了可以使用的数据的灵活性。因此,这项研究对解码空间复杂的数据集做出了重大贡献,这些数据集以前无法在不丢失信息的情况下解码为 n 维向量。此外,实验表明,可以使用更强大、更精细的 2D 卷积网络一步处理整个 3D 建筑物和组件。此步骤排除了通常伴随 2D 到 3D 转换而产生的信息丢失。此外,单步方法消除了机器理解原始 3D 模型空间连续性中固有的空间序列规则和相邻图像切片之间的关系所需的进一步分解和重组操作。所提出的方法为未来研究提供了必要的工作流程,以进一步实现 3D 卷积网络以开发 GAN 的空间知识。
我们的研究表明,将 3D 体素解码为 2D 图像以训练 DCGAN 的方法对于 3D 建筑数据集和生成建筑空间来说是一种很有前景的工作流程。结果表明,可以生成超越 3D 体量或 2D 平面图挤压的混合空间配置,其规模和范围具有高度多样性,确保比单一功能空间类别具有更高的灵活性和可持续性。更新空间组织的统计方法对于重新思考传统上用类型学、程序或先入为主的现代主义规范(例如基于平均白人男性的房间高度、门口宽度和楼梯比例)的概念来考虑的建筑的离散预先分类非常有益。

发布日期:2024-03-01