2.5 KiB
2.5 KiB
DHGxwhwGYiBturk1S0xcrmyynre
Source: https://ocnmca6f1o0p.feishu.cn/wiki/DHGxwhwGYiBturk1S0xcrmyynre
工作内容概述
1、通过ComfyUI AI生成T-pose跟按关节拆分
一、今天的进展
(一)Spine 接入方案
调研下来,业界没有"AI 一键生成 Spine 工程"的现成方案。Spine 不接受任意 JSON 直接生成骨架,层级、IK、蒙皮都得在编辑器里搭。Adobe Character Animator、DragonBones、Live2D 有自动绑定能力,但格式不通,迁移成本高。所以采用半自动方案:脚本根据切片和关节点生成 Spine 骨架模板,人工在编辑器里微调。
(二)T-pose 角色图生成
生成结果姿态稳定,四肢张开角度和人体比例都正常,可以作为后面切分的输入。选 T-pose 不选普通立绘,是因为四肢伸展、互不遮挡,后面定关节和切部位都更好处理。
(三)6 部位切分(头 / 身体 / 左臂 / 右臂 / 左腿 / 右腿)
思路是 VLM 给每个部位的位置框和提示点,SAM 据此做精细分割。VLM 负责"看懂这是哪个部位",SAM 负责"沿边缘抠出来"。
- 分割模型。对比了 SAM2 和 SAM3。SAM3 边缘更细但单点 prompt 不稳,SAM2 在 bbox + 正负点输入下更稳。主链路用 SAM2,SAM3 留给手部细节做备选。
- Mask 后处理。腐蚀膨胀去毛边、连通域过滤、左右对称校验,有几个版本就是专门在调这些参数。 有些部位尝试了好久。从工作流连线查到 VLM 看着输出正常,最后从 ComfyUI 日志才定位到,代码里有一段兜底逻辑,左右腿宽度差超阈值时会自动对称展宽,原本是为了修 VLM 偶发把腿框得过窄的情况,这次反过来把左腿强行拉宽到右腿宽度,背景和右腿被一起圈进去,SAM 自然就抠不干净。矩形框 T-pose 还能凑合,姿势一复杂(抬手、屈腿、侧身),矩形和真实关节的偏差就受不了。
二、明天计划
通过程序生成一个能用 Spine 打开的骨架文件:
