paipiange
nvzhuang
1407 张 AI 女装参考图集与虚拟试穿网站,支持中英检索、OpenAI Images / Gemini / 豆包及自定义 Base URL、API Key、模型。https://github.com/paipiange/nvzhuang
Documentation snapshot
README 快照
本页保存的是公开项目资料快照,阅读过程不需要连接 GitHub。
拍片哥女装 · 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 💡 原作者推文 / 灵感来源: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 换装效果(图 1 + 图 2 ➔ 图 3)(保留模特五官发型,自然融合服饰材质与剪裁) |
✨ 功能特性
- 8 大分类:春(215)/ 夏(254)/ 秋(244)/ 冬(253)/ 内衣(199)/ 派对(48)/ 泳装(54)/ 性感(140)
- 中英文双语:默认中文,右上角一键切换 English
- 双向检索:中文(白、蕾丝、连衣裙…)和英文(white、lace、dress…)关键词都能搜索
- 关键词本地化:中文模式自动将服装属性翻译为中文展示
- 交互体验:分类筛选、实时搜索、无限滚动加载、放大查看、键盘 ←/→ 切换、Esc 关闭、原尺寸 PNG 下载
- AI 试穿搭配台:上传人像 + 选服装,在线预览、拖拽缩放、抠图合成,或一键 AI 换装(需自备后端)
- 浏览器设置中心:可保存自己的后端地址、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 试穿页右上角提供「设置中心」,支持两种使用方式:
- 服务器预设:继续使用后端
config.yaml/ 环境变量中的模型配置。 - 个人模型配置:在当前浏览器保存协议、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 使用本地生图:
- 启动本地 ComfyUI(默认
http://127.0.0.1:8188); - 放入
Qwen-Image-Edit-2511的模型与 4 步 Lightning LoRA(详见backend/README.MD); - 打开网页右上角 设置中心,选择「ComfyUI 本地」,点击「测试连接」成功后保存,即可享受 4 步极速离线换装体验。系统已内置双模型自适应能力,未就绪时会自动回退至 H3 方案。
🚀 后端部署(优先推荐 Docker)
后端推荐使用 Docker / Docker Compose 部署,无需在宿主机安装 Go 编译环境,开箱即用。
方式一:Docker Compose(推荐,最省心)
# 1. 复制环境变量模板并填入你的 Key(如国内免翻墙的豆包 ARK_API_KEY,或 OpenAI Key)
cp backend/.env.example backend/.env
# 2. 一键启动后端
docker compose up -d
# 服务启动后监听在 http://localhost: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 export ARK_API_KEY="你的Key" # Windows PowerShell 用 $env:ARK_API_KEY="你的Key" go run main.go # 服务监听 :8000
🔗 前端对接后端
前端静态页面通过以下顺序识别换装后端地址(优先级从高到低):
- 设置中心:用户在当前浏览器保存的「后端 API 地址」
- 全局变量:在 HTML 加载前配置
window.AI_API_URL = "http://localhost:8000" - URL 参数:
https://你的前端地址/?tryon=http://localhost:8000 - 本地回退:本地以
localhost或127.0.0.1访问前端时,默认自动连接http://127.0.0.1:8000
🛡️ 接口安全与资源限制(公网部署必备)
后端原生提供企业级调用鉴权与高防资源限制(详见 backend/DEPLOY.md):
- 接口访问鉴权:支持 Bearer Token 校验,服务端安全保存 SHA-256 摘要与恒定时间防侧信道比对;前端设置中心支持单独保存「后端访问 Token」,不与大模型 Key 混淆。
- 精确 CORS 白名单:严格域名匹配,彻底杜绝跨域滥刷与盗链。
- 频率与额度保护:内置令牌桶限流(默认 10 次/分)与 UTC 自然日调用额度(默认 100 次/天),超限返回标准
429业务码。 - 并发控制:全局(默认 2 并发)与单调用主体(默认 1 并发)严格锁定,模型生图不排队堆积。
- 图片校验与前端自适应压缩:
- 仅支持 JPEG / PNG / WebP 真实图像内容探测,严格防范伪造扩展名与代码注入;
- 单图上限 8 MiB、两图合计 16 MiB、长宽限制 256~8192 px、总像素严格限制在 2000 万以内(防止解压像素炸弹导致服务器 OOM);
- 前端上传照片时自适应缩放(最长边 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 # 组合使用
💡 灵感来源与社区友链
- 原作者 / 灵感来源:X @giaaibusi —— 诚挚鸣谢原作者对高质量 AI 服装图集的整理与创意分享!
- 社区友链:LINUX DO (https://linux.do/) —— 真诚、友善、团结、专业的开源与技术极客社区。
- 审计与规范文档:
- 项目现状与开源合规审计报告 (LINUXDO_RELEASE_AUDIT.md)
- 图库内容合规与社区发布审查报告 (CONTENT_REVIEW.md)
- Linux.do 推广发布前核验清单 (LINUXDO_PUBLISH_CHECKLIST.md)
📄 开源许可证与使用规范
本项目基于 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.
Official distribution
获取与安装
暂未发现可确认的官方软件包地址
当前 README 快照没有出现 npm、PyPI、Crates.io、pub.dev 等官方包页链接。本站不会根据仓库名称猜测下载地址。
本站不托管项目文件;需要安装时,请以项目维护者发布的官方文档为准。
Before installing
使用前核验
本站保存公开资料用于阅读,不代表安全审计或功能背书。安装前请核对许可证、依赖来源和发布签名,不要直接运行来源不明的二进制文件或高权限脚本。