GarmageNet: A Multimodal Generative Framework for Sewing Pattern Design and Generic Garment Modeling
Style3D Research / Zhejiang University
一句话总结
把每块衣片编码成一张”几何图像”(alpha 通道存 2D 轮廓、RGB 通道存 3D 悬垂几何),用潜空间扩散 Transformer 生成整套衣片,再用一个点对点缝合预测模块 GarmageJigsaw 恢复缝纫关系,从而首次做到从文本/草图/照片/点云/裁片同时产出结构正确的 2D 纸样与可直接仿真的 3D 服装。
研究背景
端到端的 3D 服装建模长期是重人力、重技术的流程:线稿设计、纸样制版、缝纫指派、3D 初始化,最后才是布料仿真。学习式方法虽在自动化上有所推进,却始终困在”结构”和”几何”的取舍里。
一类是结构中心方法,工作在纸样域,用自回归或扩散框架生成矢量化或栅格化的纸样,并附带边级缝纫对应和以刚体变换矩阵表示的 3D 初始化,或者输出参数化制版 DSL(如 GarmentCode)的高层参数与程序。它们能保证结构正确性,却缺乏完整的空间上下文,往往无法还原细褶与真实悬垂。同一套纸样可能对应多种悬垂状态,这正是结构中心方法的软肋。
另一类是几何中心方法,直接把多模态输入映射成悬垂后的 3D 服装,常用无符号距离场、占据场等隐式表示保住几何保真度,却难以纳入本质上离散、不连续的纸样结构;从连续场提取的网格质量也常常不佳,几乎无法再反推出带 UV 参数化的纸样。
作者由此提出一个同时保住 2D 纸样结构完整性与 3D 悬垂几何保真度的统一框架 GarmageNet,据其所述是首个能自动生成 2D 纸样、推断缝纫关系并产出可仿真 3D 初始化的系统。
方法
核心是一种叫 Garmage 的表示,把服装重新表述为一组”逐衣片几何图像”,让 UV 空间里每个纹素既对应纸样上的一个点,也对应 3D 衣片上的一个点,从而在结构与几何间架起天然桥梁。
Garmage 表示
传统上服装是 3D 衣片集合与其 2D 纸样衣片集合。Garmage 把每块衣片记为三元组:物理尺寸(对齐经纬向的高与宽)、对应 3D 衣片的轴对齐包围盒(中心加半长),以及一张 4 通道图像块。整套服装写作
\[G = \{(P_i, C_i)\}_{i=1}^{N} = \{(D_i, B_i, I_i)\}_{i=1}^{N}\]
其中图像块 \(I_i \in \mathbb{R}^{H \times W \times 4}\) 的前三通道存用包围盒归一化后的 3D 几何、alpha 通道以占据图刻画衣片轮廓。构造图像块时,在衣片 UV 参数化下以统一分辨率(\(H = W = 256\))栅格化:先把 2D 衣片旋转使经向对齐 \(v+\) 轴、再按物理尺寸归一化到 \([-1,1]\);每个 3D 顶点用包围盒映射到 \([-1,1]^3\);像素值取所在三角形顶点归一化位置的重心权重加权和,衣片外的像素置零。为处理省道尖端等尖锐特征的走样,先在 1024×1024 高分辨率栅格化再稀疏池化下采样到 256×256。
扩散式 Garmage 生成
功能相似的衣片往往形状特征相近、相对人体位置也一致,说明衣片轮廓(alpha 通道)和其几何状态(其余通道)高度相关,因此把 Garmage 压进一个统一潜空间。
先用 UNet 结构的变分自编码器把每块几何图像 \(I_i\) 压成 64 维潜向量:编码 \(\Phi_E(I_i) = Z_i\)、解码 \(\Phi_D(Z_i) \approx I_i\)。训练时以 0.25 概率掩掉几何通道,逼迫解码器仅凭轮廓重建几何,这一掩码机制也正是后来”仅给裁片就能生成”的关键。压缩后每套服装就是一组定长 token:
\[T = \{T_i\}_{i=1}^{N} = \{(D_i \oplus B_i \oplus Z_i)\}_{i=1}^{N} \in \mathbb{R}^{N \times 72}\]
自编码器用 MSE 重建损失加一个低权重(\(\lambda_{reg} = 10^{-6}\))的 KL 散度项训练。
在此潜空间上训练一个扩散 Transformer(DiT)去噪器,从标准正态噪声出发、在用户条件 \(c\) 下映射到合法 Garmage。前向过程按 \(T_t = \sqrt{\alpha_t}\,T_0 + \sqrt{1-\alpha_t}\,\epsilon_t\) 逐步加噪;反向过程把噪声潜向量嵌成 patch token、把 2D 尺寸和 3D 包围盒嵌成位置 token,加上时间步嵌入构成噪声状态,预测所加噪声,训练目标为
\[L_{\Psi} = \mathbb{E}_{t, T_0, \epsilon_t}\left[\|\epsilon - \Psi_G(T_0, c, t)\|_2^2\right]\]
所有衣片并行去噪,Transformer 的自注意力隐式建模衣片间连接以保证结构有效性。训练时零填充到固定 32 块衣片,推理时按包围盒体积或 2D 尺寸阈值丢弃空衣片以适配数量变化。
条件注入上,各模态先由预训练编码器编码再经交叉注意力送入去噪器:文本用 CLIP 文本编码器映到 1024 维、线稿用预训练 DINOv2、点云用在 GarmageSet 上微调过分割任务的 PointTransformer v3。裁片条件则天然由 VAE 掩码机制支持——给定纸样时 2D 尺寸和几何潜向量已知,只需扩散恢复 3D 包围盒。
GarmageJigsaw 缝纫关系恢复
生成栅格化衣片后要接回传统流程,需矢量化轮廓并重建缝纫关系。作者指出边级缝纫因边分割不确定、多对多映射而有歧义,改用衣片边界顶点间的连接这种”原子级”缝合表示。
从 alpha 通道用二值腐蚀提取 2D 轮廓点集,并用包围盒反归一化取回对应 3D 点,再按预设粒子间距重采样保证各衣片相邻采样点 3D 距离一致。GarmageJigsaw 用两个 PointNet++ 编码器分别处理 3D 轮廓点与 2D 像素、拼接后经 point-transformer 融合出 128 维逐点特征;一个点分类头挑出候选缝合点。缝合对应同时受 3D 位置一致性与 2D 几何互补性支配(如袖窿曲线凹、袖山曲线凸但 3D 位置几乎重合),因此沿用 Jigsaw 的主/对偶解耦,用可学习对称权重矩阵加 Sinkhorn 归一化产出邻接概率矩阵
\[A = \text{Sinkhorn}\left(\exp\left(\frac{(f^+_{prime})^\top \Lambda_A\, f^+_{dual}}{\tau}\right)\right) \in [0,1]^{K^+ \times K^+}\]
再用匈牙利算法得到点对点对应。整体端到端训练,损失为缝合点二元交叉熵加匹配损失,并把真值邻接矩阵零填充到全轮廓点集上以防网络靠省略缝合对来偷懒。训练时还对真值缝合顶点做平移缩放、内缩 2–8mm、沿缝向各向异性加噪等增强,以适应扩散残余噪声与腐蚀带来的接缝缝隙。
纸样重建
沿轮廓用 1D 卷积滤波检测尖角、在相邻角点间拟合分段 B 样条得到矢量轮廓,这一步顺带平滑斜边、填补小孔;再用启发式算法把点对点缝合聚成曲线级对应。最后以受约束 Delaunay 三角化把每块纸样三角化成网格,顶点位置由几何图像双线性插值采样得到,提供顶点级精度的 3D 初始悬垂状态,而非传统方法的粗糙刚体摆位。
GarmageSet 数据集
为训练与评测,作者构建了 14,801 套专业制版、可投产的服装数据集,覆盖上装、裤装、裙装、连衣裙、外套五大类。采用”组件中心”策略:先从真实纸样构建结构化组件库并由专业制版师标注,再随机组合组件、用 Qwen3 提 1–3 条修改指令、交由建模师手工实现并组装成 3D 服装。每套服装沿九个专业设计维度标注,并对齐四种模态:自然语言描述、线稿/黏土渲染、矢量纸样、悬垂点云。数据还定义了衣片层级语义(8 结构类 + 7 装饰类)、结构线、时尚关键点等层级标注。
实验结果
训练上,保留 1024 套做验证、其余 13,777 套训练。GarmageNet 在单张 A100 上用两阶段协议训 1–2 天(VAE 200 epoch 约 2 小时、扩散约 12 小时,含条件增强约 24 小时);GarmageJigsaw 在两张 RTX 4090 上训 100 epoch 约 27 小时。
纸样质量的跨数据集对比中,与向量量化代表方法 AIpparel 在 GCD-MM 与 GarmageSet 上比较,引入了在两数据集都适用的指标(衣片 IoU、衣片数、Stitch-F1、仿真成功率 SSR、Chamfer 距离 CD)。
| 实验 | 数据集 | 方法 | Panel-IoU | #Panels | Stitch-F1 | SSR | CD (mm) |
|---|---|---|---|---|---|---|---|
| 1 | GCD-MM | AIpparel | 0.89 | 0.85 | 0.76 | 0.59 | 59.3 |
| 3 | GCD-MM | GarmageNet | 0.94 | 0.47 | 0.66 | 0.52 | 30.1 |
| 4 | GarmageSet | AIpparel | 0.53 | 0.16 | / | / | / |
| 5 | GarmageSet | GarmageNet | 0.88 | 0.23 | 0.78 | 0.91 | 53.94 |
GarmageNet 在 Panel-IoU、SSR、CD 上普遍优于 AIpparel,在 #Panels 和 GCD-MM 的 Stitch-F1 上略逊,作者归因于线稿特征稀疏与遮挡导致漏分内层衣片。
缝纫恢复的消融显示,融合 2D+3D 特征的 GarmageJigsaw 优于仅 2D 或仅 3D:点分类精度 99.16%、召回 97.13%,平均匹配距离 AMD 6.61(3D-only 7.79、2D-only 10.59),拓扑准确率 96.79%、拓扑精度 98.68%。
3D 初始化上,GarmageNet 的仿真成功率达 91.41%,远高于刚体摆位(59.38%),与基于优化的初始化(93.75%)相当。
无条件生成质量对比 Omage 与 Surf-D:GarmageNet 的 MMD 35.55、JSD 0.0337、p-FID 15.34、p-KID 0.029、覆盖率 41.02%,推理仅 8 秒、4GB 显存,在保真度、多样性与效率上全面领先(Omage 120 秒、Surf-D 25.7 秒)。
含 20 位专业设计师/制版师/建模师的用户研究中,GarmageNet 在文本引导下的”设计一致性”被选中超 60%、服装美学 85%、纸样美学约 90%;线稿引导下一致性 77.34%、纸样美学 97.66%,并取得最高归一化 CLIPScore(0.3076)。
亮点与局限
亮点在于 Garmage 这一把离散纸样结构与连续悬垂几何统一进定长图像化 token 的表示,让扩散生成、多模态交叉注意力条件化与顶点级 3D 初始化都变得自然;GarmageJigsaw 用点对点而非边对边建模缝合,回避了边分割歧义并能捕捉细褶;配套的 GarmageSet 以真实投产数据在衣片数、缝合数、网格分辨率上都显著超过 GarmentCodeData。四类应用(设计概念到服装、裁片自动建模、点云纸样恢复、渐进式编辑)证明了实用性。
局限也很明确:数据只含 size-S、A-pose 单一体型姿态,点云条件生成对姿态/体型变化敏感;推理时只把边界点送入 GarmageJigsaw,导致口袋等沿内部缝线附着的衣片无法正确缝合;多层设计可能生成冗余袖片,零填充策略又可能丢失袖口、细条等小衣片。
延伸思考
这项工作最值得玩味的是”用什么表示”这一选择:把服装建模的难点从”如何同时优化离散结构与连续几何”转化为”如何把两者塞进同一张图像里”,一旦表示对齐,成熟的图像/扩散工具链就能直接复用。这种”几何图像 + 逐单元 token”的思路对其他兼具离散拓扑与连续几何的对象(如 CAD 的 B-rep、带 UV 的可展曲面)或许同样适用。另一点是点云条件生成中作者坦承网络可能利用了输入点云非均匀采样密度隐含的衣片结构线索,这提醒后续评测要警惕”数据构造方式泄露答案”的问题。真正走向生产还需补上体型/姿态多样性与内部缝线建模这两块短板。