Skip to content
paipiangePublic

About

1407 张 AI 女装参考图集与虚拟试穿网站,支持中英检索、OpenAI Images / Gemini / 豆包及自定义 Base URL、API Key、模型。https://github.com/paipiange/nvzhuang

Resources

Stars

1.7k stars

Watchers

0 watching

Forks

Repository files navigation

拍片哥女装 · AI 服装参考图集 (COSTUME-DB-01)

一个深色主题的纯净服装参考图集网站,收录 1407 张 人物不入镜的 AI 生成服装图像(2:3 比例),支持中英文双语浏览、多维检索,并配备可选的 AI 一键换装试穿。

👗 【Linux.do 3级常任理事专属彩蛋】
听说在 LINUX DO 社区只要升到 3 级(常任理事) 就可以解锁“看女装大佬”的保留节目?身为一名尊贵的 Linux.do 3 级老兵,逛了一圈发现坛里的女装资源还不够看,干脆亲手搓了这个 「拍片哥女装」 项目!
不仅收录了 1407 套纯净高质量服装图,还顺手接了 AI 虚拟换装后端——这下各位佬友哪怕现实中没有小裙子,直接传张自拍照就能一键无痛变身“女装大佬”出道了 😂!

🔗 在线预览:https://paipiange.github.io/nvzhuang/
⭐ GitHub 源码:https://github.com/paipiange/nvzhuang
💃 兄弟项目(AI 姿势参考与生图工坊):https://github.com/paipiange/ai-pose-gallery-zh
💡 原作者推文 / 灵感来源:X @giaaibusi
🐧 社区友链:LINUX DO (https://linux.do/)

⏱️ 10 秒了解本项目

  • 🆓 免费使用(无需部署 / 无需 Key):1407 套 AI 服装参考图库浏览、分类筛选、中英双语双向检索、大图全屏查看、基础搭配台与同款跳转,由纯前端静态驱动,在线打开即可使用。
  • ⚙️ 自选扩展(需自建后端 / 需自备 Key):真实 AI 试衣换装功能依赖 backend/ 的 GoFrame 服务。需自行配置大模型(如 GPT Image 2、豆包 Seedream 或 Gemini)的 API Key 与 Base URL,调用将消耗对应的第三方模型配额。
  • 📜 完全可商用 · 免费开源:基于 MIT License 全量开源,代码与图集资源完全开放,支持自由商用创作、设计参考及二次开发。详见 合规审计报告。

📸 预览

中文模式 英文模式 关键词搜索
中文模式 英文模式 关键词搜索

👗 AI 换装效果演示

系统支持上传真实人像与选中的服装,通过 AI 生图大模型进行衣物迁移换装,实现精准保留面容、贴合人体形态的虚拟试穿效果:

① 选中的服装(图 1) ② 上传的模特照片(图 2) ③ AI 换装合成效果(图 3)
选中的服装 上传的模特照片 AI 换装合成效果
参考服装图
(图集中的精选女装)
模特原图
(用户上传的人像日常照)
AI 换装效果(图 1 + 图 2 ➔ 图 3)
(保留模特五官发型,自然融合服饰材质与剪裁)

🎬 兄弟项目联动:姿势参考 + 人物参考 → AI 生成结果

如果你不仅想为模特挑选服装,还希望自由掌控人体的拍摄姿势、骨架动作与构图视角,推荐搭配我的另一个开源项目一起使用:
👉 拍片哥 · AI 姿势参考库与生图工坊 (AI Pose Gallery & Studio)

该项目收录了 288 组 / 1439 张 AI 人体多视角姿势参考图(日文数据完整汉化),内置「拍片哥 AI 姿势生图与试穿工坊」,支持骨架动作锁定、真实面料试穿与面容复刻:

选择姿势骨架控制动作与构图,再上传人物/服装参考,即可生成同时保留目标姿势、人物面容与穿搭特征的完整图片:

① 姿势与构图参考 ② 人物与服装参考 ③ AI 融合生成结果
输入的 AI 人体姿势骨架参考图 输入的人物面容与服装参考图 保持目标姿势并融合人物与服装特征的 AI 生成结果
锁定身体动作、视角与画面构图
(从 1439 张多角度姿势库中挑选骨架素体)
提供面容、发型与服装特征
(结合本项目精选服装或上传的模特穿搭)
AI 融合生成结果(图 1 + 图 2 ➔ 图 3)
(动作精准还原,完美呈现人物与穿搭细节)

上图即实际工作流:图 1 + 图 2 → 图 3。 人物头像与服装均为可选输入;只选择姿势,也可以让模型自动完成人物与穿搭设计。
💡 联动工作流:在 拍片哥女装 挑选高质量服装设计,在 拍片哥姿势库 挑选合适的人体动作构图,两者结合即可生成兼具神韵动作与精美穿搭的专业级 AI 模特大片!

✨ 功能特性

  • 8 大分类:春(215)/ 夏(254)/ 秋(244)/ 冬(253)/ 内衣(199)/ 派对(48)/ 泳装(54)/ 性感(140)
  • 中英文双语:默认中文,右上角一键切换 English
  • 双向检索:中文(白、蕾丝、连衣裙…)和英文(white、lace、dress…)关键词都能搜索
  • 关键词本地化:中文模式自动将服装属性翻译为中文展示
  • 交互体验:分类筛选、实时搜索、无限滚动加载、放大查看、键盘 ←/→ 切换、Esc 关闭、原尺寸 PNG 下载
  • AI 试穿搭配台:上传人像后可从图库选服装,也可上传自己的服装图片;自定义服装支持 1 张完整全身穿搭,或按顺序上传 2 张上半身 / 下半身服装
  • 明确错误反馈:换装校验、接口限流、鉴权和服务异常会同时显示页内提示与可聚焦弹窗
  • 黑白主题:默认白色主题,可在图库页和试穿页切换黑色 / 白色主题,并记住本机选择
  • 浏览器设置中心:可保存自己的后端地址、Base URL、API Key、接口协议与模型名;个人配置只保存在当前浏览器,后端仅按单次请求临时使用
  • 本机生成记录:AI 换装成功后自动保存到当前浏览器的 IndexedDB,可随时查看、下载、单条删除或全部清空,不上传、不跨设备同步

自定义上传的服装原图仅保留在当前页面内存中,不写入本地存储或生成记录;刷新或关闭页面后会自动清除。生成时只将压缩后的图片内容发送到用户配置的换装后端。

  • 电商以图搜同款:大图详情与试穿操作区支持一键唤起淘宝图片搜索,快速查找现实中在售的同款服饰
  • ComfyUI 本地离线生图:支持零成本、免 API Key 本地私密运行;集成阿里开源 Qwen-Image-Edit-2511 (Int8) + 4 步极速 Lightning LoRA 与 MiniMax H3 双工作流,具备自动容灾回退能力

🤖 AI 换装(可选功能)

「AI 换装」需要一个后端服务,把服装真实地「穿」到人像上。后端位于 backend/(GoFrame v2),支持多模型可插拔:

模型别名 模型 协议 说明
comfyui Qwen-Image-Edit-2511(优先) / MiniMax H3 ComfyUI 本地 API 本地零成本离线方案,4 步极速换装,无审查限制,未就绪自动回退 H3
gemini Nano Banana 2(gemini-3.1-flash-image) Google generateContent 云端推荐默认,对真人换装场景无 moderation 阻断
doubao 豆包 Seedream(火山方舟) 火山方舟 国内可用,无需代理网络
gpt-image GPT Image 2(gpt-image-2) OpenAI Images 兼容 OpenAI 协议,支持第三方中转与代理
qwen / zhipu / siliconflow … 通义万相 / 智谱 CogView / 硅基流动 OpenAI Images 兼容 按需在配置中开启

三个关键点都可配置:API Key、Base URL、模型名。加一个国内模型只需在配置里新增一段,无需改代码。

前端 AI 试穿页右上角提供「设置中心」,支持两种使用方式:

  1. 服务器预设:继续使用后端 config.yaml / 环境变量中的模型配置。
  2. 个人模型配置:在当前浏览器保存协议、Base URL、API Key 和模型名,生成时随本次请求临时发送给后端。后端不把这些字段写入数据库、配置文件或业务日志。

浏览器本地保存适合个人设备使用。共享设备使用完毕后,请在设置中心点击「清除本地配置」。个人 Base URL 默认禁止指向 localhost、内网和保留地址,避免公开后端被用作内网请求代理。

配置模型

编辑 backend/manifest/config/config.yaml(模板见 config.example.yaml):

llm:
  models:
    gpt-image:                     # 前端请求用的别名
      provider: openai             # 协议:openai / doubao / gemini
      apiKey: ""                   # 直接填 Key,或留空用环境变量
      envKey: "OPENAI_API_KEY"     # 环境变量名(优先级高于 apiKey)
      baseURL: "https://api.openai.com/v1"   # Base URL 可改(支持中转/代理)
      model: "gpt-image-2"         # 真实模型名

    doubao:                        # 豆包(国内可用)
      provider: doubao
      envKey: "ARK_API_KEY"
      baseURL: "https://ark.cn-beijing.volces.com/api/v3"
      model: "doubao-seedream-3-0-t2i-250415"

    gemini:
      provider: gemini
      envKey: "GEMINI_API_KEY"
      baseURL: "https://generativelanguage.googleapis.com/v1beta"
      model: "gemini-3.1-flash-image"

接入任意 OpenAI 兼容的国内生图模型(通义万相、智谱、硅基流动等),加一段即可:

    qwen:                          # 通义万相示例
      provider: openai
      envKey: "DASHSCOPE_API_KEY"
      baseURL: "https://dashscope.aliyuncs.com/compatible-mode/v1"
      model: "wanx2.1-t2i-turbo"

    # 本地 ComfyUI(零成本离线极速换装,支持 Qwen-Image-Edit / MiniMax H3)
    comfyui:
      provider: comfyui
      baseURL: "http://127.0.0.1:8188"
      model: "qwen-image-edit-2511"
      workflowPath: "workflows/comfyui_qwen_image_edit_2511_api.json"

🎨 ComfyUI 本地离线模式(推荐:零成本、免 Key、超快速度)

如果你的电脑拥有独立显卡(或局域网有运行 ComfyUI 的主机),可以完全免 Key 使用本地生图:

  1. 启动本地 ComfyUI(默认 http://127.0.0.1:8188);
  2. 放入 Qwen-Image-Edit-2511 的模型与 4 步 Lightning LoRA(详见 backend/README.MD);
  3. 打开网页右上角 设置中心,选择「ComfyUI 本地」,点击「测试连接」成功后保存,即可享受 4 步极速离线换装体验。系统已内置双模型自适应能力,未就绪时会自动回退至 H3 方案。

🚀 后端部署(优先推荐 Docker)

后端推荐使用 Docker / Docker Compose 部署,无需在宿主机安装 Go 编译环境,开箱即用。

方式一:Docker Compose(推荐,最省心)

# 1. 复制环境变量模板并填入你的 Key(如国内免翻墙的豆包 ARK_API_KEY,或 OpenAI Key)
cp backend/.env.example backend/.env

# 2. 一键启动后端(内置开箱即用兜底,默认监听 8000 端口)
docker compose up -d

# 服务启动后监听在 http://localhost:8000

提示:若需深度定制模型或高级路由,可复制配置文件模板:cp backend/manifest/config/config.example.yaml backend/manifest/config/config.yaml(未复制时系统也会自动使用模板并稳定监听 8000 端口)。

方式二:Docker Run 单命令运行

cd backend

# 构建镜像
docker build -f manifest/docker/Dockerfile -t costume-tryon .

# 运行容器(按需注入模型 Key,例如豆包或 OpenAI)
docker run -d --name costume-tryon \
  -p 8000:8000 \
  -e ARK_API_KEY="你的豆包ArkKey" \
  -e OPENAI_API_KEY="sk-你的OpenAIKey" \
  costume-tryon

方式三:无 Docker 本地运行

  • Windows 用户:直接双击 backend/restart.bat 一键自动编译并启动服务。
  • 命令行运行:
    cd backend
    # 可选:复制配置文件(不复制时也会自动安全回退加载模板并监听 8000)
    # cp manifest/config/config.example.yaml manifest/config/config.yaml
    export ARK_API_KEY="你的Key"   # Windows PowerShell 用 $env:ARK_API_KEY="你的Key"
    go run main.go                 # 服务稳定监听 :8000

🔗 前端对接后端

前端静态页面通过以下顺序识别换装后端地址(优先级从高到低):

  1. 设置中心:用户在当前浏览器保存的「后端 API 地址」(跨源外部公网后端须使用 HTTPS)
  2. 全局变量:在 HTML 加载前配置 window.AI_API_URL = "http://localhost:8000"
  3. URL 参数:https://你的前端地址/?tryon=http://localhost:8000(安全约束:为防止钓鱼窃取 API Key 与私密照片,?tryon= 仅允许同源或本机回环 localhost/127.0.0.1;外部后端须在设置中心显式保存)
  4. 本地回退:本地以 localhost 或 127.0.0.1 访问前端时,默认自动连接 http://127.0.0.1:8000

🛡️ 接口安全与资源限制(公网部署必备)

后端原生提供企业级调用鉴权与高防资源限制(详见 backend/DEPLOY.md):

  1. 接口访问鉴权:支持 Bearer Token 校验,服务端安全保存 SHA-256 摘要与恒定时间防侧信道比对;前端设置中心支持单独保存「后端访问 Token」,不与大模型 Key 混淆。
  2. 精确 CORS 白名单:严格域名匹配,彻底杜绝跨域滥刷与盗链。
  3. 频率与额度保护:内置令牌桶限流(默认 10 次/分)与 UTC 自然日调用额度(默认 100 次/天),超限返回标准 429 业务码。
  4. 并发控制:全局(默认 2 并发)与单调用主体(默认 1 并发)严格锁定,模型生图不排队堆积。
  5. 图片校验与前端自适应压缩:
    • 仅支持 JPEG / PNG / WebP 真实图像内容探测,严格防范伪造扩展名与代码注入;
    • 单图上限 8 MiB、两图合计 16 MiB、长宽限制 256~8192 px、总像素严格限制在 2000 万以内(防止解压像素炸弹导致服务器 OOM);
    • 前端上传照片时自适应缩放:任一边小于 256 px 时自动等比放大到合规尺寸,高清模式最长边 2048 px,并阶梯压缩(WebP 优先,质量 0.90~0.75)。

完整的多模型接入、生产环境 Nginx 反代与安全加固说明见 backend/DEPLOY.md。

🚀 前端本地启动

本项目前端是纯静态站点,无需构建。任选一种方式运行:

# 方式一:Python 内置服务器(推荐端口 3000,与后端 8000 端口独立不冲突)
python3 -m http.server 3000

# 方式二:Node 简单服务器
npx serve -l 3000 .

# 方式三:直接用现代浏览器打开 index.html

启动后在浏览器打开 http://localhost:3000。若同时启动了后端,本地换装开箱即连。

📁 目录结构

nvzhuang/
├── index.html          # 页面结构 + 样式 + 交互逻辑(含双语字典、AI 试穿搭配台)
├── data.js             # 1407 条服装数据(id / 分类 / 关键词 / 图片路径)
├── docker-compose.yml  # 一键启动后端 Docker 容器编排
├── assets/
│   ├── thumbs/         # 缩略图(webp,网格卡片用)
│   └── img/            # 展示图(webp,弹窗放大用)
├── docs/               # 文档图片、换装效果演示与姿势生图联动图
├── backend/            # AI 换装后端(GoFrame v2,可选)
│   ├── docker-compose.yml                 # 后端 Docker Compose 配置
│   ├── .env.example                       # 环境变量示例文件
│   ├── restart.bat / build.bat            # Windows 本地一键启动/重新编译脚本
│   ├── manifest/config/config.yaml        # 模型配置(Key / BaseURL / 模型名)
│   ├── internal/logic/tryon/              # 模型适配器(openai / doubao / gemini)
│   └── DEPLOY.md                          # 部署指南
└── .gitignore

注:原尺寸 PNG(约 1GB+)未纳入仓库,「下载原尺寸」按钮指向原站资源。

🔗 URL 参数

支持通过 URL 参数直接分享特定状态:

?lang=en          # 初始语言(zh 为中文,en 为英文,默认 zh)
?q=lace           # 初始搜索词
?lang=en&q=white  # 组合使用

💡 灵感来源与推荐项目

📄 开源许可证与使用规范

本项目基于 MIT License 协议完全免费开源,允许无限制商业使用:

  • 开源协议:MIT License,代码与资产完全免费开源,允许商业使用、自由修改、集成与分发。
  • 商用与创作自由:可完全免费用于各类个人与商业作品创作(如电商广告、服装设计参考、游戏资产、AI 图像与虚拟换装应用)。
  • 生成属性声明:所有图像均为 AI 生成(t2i)概念服装设计,非现实品牌商品照片。

📝 数据说明

数据存于 data.js,每条记录包含:

字段 说明
id 编号(如 SPR-0001)
カテゴリ 分类(日文分类名,如「春」)
キーワード 关键词(英文,空格分隔)
サムネ 缩略图路径
画像 展示图路径
原寸 原尺寸 PNG 路径

说明:カテゴリ、キーワード、サムネ、画像、原寸 是数据原始的日文字段名,为保持与原站数据兼容而保留。网站会在前端自动将它们本地化为中文或英文展示。

Data Fields (English)

Each record in data.js contains the following fields:

Field Description
id Identifier (e.g. SPR-0001)
カテゴリ Category (Japanese category name, e.g. "春" for Spring)
キーワード Keywords (English, space-separated)
サムネ Thumbnail image path
画像 Display image path
原寸 Full-size PNG path

Note: カテゴリ, キーワード, サムネ, 画像, and 原寸 are the original Japanese field names kept for compatibility with the source data. The site localizes them to Chinese or English on the frontend automatically.

Star History

Star History Chart

About

1407 张 AI 女装参考图集与虚拟试穿网站,支持中英检索、OpenAI Images / Gemini / 豆包及自定义 Base URL、API Key、模型。https://github.com/paipiange/nvzhuang

Resources

Stars

1.7k stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages