尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

OOTDiffusion 人体解析踩坑记录:parsing_atr.onnx 从文件缺失到一次跑通

OOTDiffusion 人体解析踩坑记录:parsing_atr.onnx 从文件缺失到一次跑通 OOTDiffusion 人体解析踩坑记录parsing_atr.onnx 从文件缺失到一次跑通【免费下载链接】OOTDiffusion[AAAI 2025] Official implementation of OOTDiffusion: Outfitting Fusion based Latent Diffusion for Controllable Virtual Try-on项目地址: https://gitcode.com/GitHub_Trending/oo/OOTDiffusion跑 OOTDiffusion 虚拟试穿时最先翻车的往往不是扩散模型而是人体解析这一步ONNX Runtime 直接报出找不到模型文件。原因是 parsing_atr.onnx 并没有打包在仓库里需要你手动放到 checkpoints/humanparsing/ 下。我把这次踩过的坑、它输出的 18 个语义区域和整条推理链路都梳理了一遍下面是记录。先补齐两个 onnx别只下载一个仓库里的 checkpoints/ 目录初始只有一个 README.txt里面列了四样要自备的东西ootd、humanparsing、openpose、clip-vit-large-patch14。humanparsing 这一项容易被忽略的细节是——它其实要两个文件parsing_atr.onnx 负责人体主体解析parsing_lip.onnx 负责唇部/面部细化两者在 preprocess/humanparsing/ 的 Parsing 初始化时被同时加载。只下其一构造解析器时就会再次报错。从 README 指向的官方模型仓库下载 humanparsing 整个目录整体放进项目根目录即可OOTDiffusion/ └── checkpoints/humanparsing/ ├── parsing_atr.onnx └── parsing_lip.onnx18 个区域到底怎么分的按来源可以拆成三组好记很多人体部位脸、头发、左右手、左右腿、左右臂服饰配件帽子、手套、上衣、连衣裙、外套、袜子、裤子、包包、裙子背景兜底区域。另外有一处代码里的隐藏细节最终调色板是 19 色因为第 18 类脖子是用 parsing_lip.onnx 的输出和主体结果做逻辑融合后补进去的见 parsing_api.py 末尾的 neck_mask 部分。所以你在可视化图里看到 19 种颜色是正常的并非多算了一类。一条链看完整条推理链路整条流程可以压成一句话图像缩放到 512×512 并归一化 →session.run得到 18 通道 logits → 空洞填充、轮廓细化等后处理 → argmax 映射回语义区域号并恢复原图尺寸。调用入口是 run_parsing.py 里的Parsing类官方推理脚本 run/run_ootd.py 在试穿主流程开始前就是这么调的from preprocess.humanparsing.run_parsing import Parsing parser Parsing(gpu_id0) parsed_image, face_mask parser(input_image)返回的parsed_image是彩色分割图face_mask是脸部二值掩码后者会被下游流程直接使用。一个反直觉的点它其实跑在 CPU 上初看 Parsing 的初始化你会以为解析模型走 GPU——实际上 run_parsing.py 里硬编码了providers[CPUExecutionProvider]。这不是 bug解析模型体量小CPU 推理足够快真正吃显存的是后面的扩散采样阶段。会话选项里已经开了ORT_ENABLE_ALL图优化一般不需要再动。环境版本记这四个数官方只在 Ubuntu 22.04 上验证过版本对齐后基本不会再和环境搏斗python 3.10 torch 2.0.1torchvision 0.15.2 onnxruntime 1.16.2 opencv-python 4.7.0.72下一步建议模型文件就位后直接用 run/examples/ 里现成的 model 和 garment 图对跑一遍run_ootd.py确认解析输出正常再换自己的素材。中途遇到版本或加载问题优先翻 README 和仓库 issue。【免费下载链接】OOTDiffusion[AAAI 2025] Official implementation of OOTDiffusion: Outfitting Fusion based Latent Diffusion for Controllable Virtual Try-on项目地址: https://gitcode.com/GitHub_Trending/oo/OOTDiffusion创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表