---
title: photo-s-auto-tone-v2
canonical_url: "https://www.modelscope.cn/models/dwphoto/photo-s-auto-tone-v2"
md_url: "https://www.modelscope.cn/models/dwphoto/photo-s-auto-tone-v2.md"
repository: dwphoto/photo-s-auto-tone-v2
chinese_name: PhotoS-AutoTone-v2
last_updated: 2026-09-02
license: cc-by-nc-4.0
pipeline_tag: image-to-image
tasks:
  - image-to-image
model_type:
  - base
base_model_relation: finetune
parameters: 104.6M
tensor_type:
  - F32
library_name:
  - pytorch
  - safetensors
frameworks:
  - pytorch
language:
  - zh
  - en
downloads: 17
stars: 0
---

# photo-s-auto-tone-v2

> photo-s-auto-tone-v2 - dwphoto 在 ModelScope 开源的模型。照片自动调色引擎（Photo S Auto Tone）基于 SigLIP-L/16 + MLP 的轻量照片自动调色模型：输入一张照片 → 输出 9 项可解释的 Lightroom 调色参数（曝光/对比/饱和/鲜艳度/白平衡/去雾/清晰度/纹理）。模型主体仅 852KB，CPU 毫秒级推理；支持 16 种风格与 7 类场景组合；PSNR 27.22 dB（50 张 LR before/after 评测），实验性模型。

dwphoto/photo-s-auto-tone-v2 是 ModelScope 魔搭社区上的 104.6M 参数image-to-image模型，采用 cc-by-nc-4.0 许可。

- **Repository**: dwphoto/photo-s-auto-tone-v2
- **License**: cc-by-nc-4.0
- **Tasks**: image-to-image
- **Parameters**: 104.6M
- **Downloads**: 17
- **Stars**: 0
- **Last updated**: 2026-09-02

Source: https://www.modelscope.cn/models/dwphoto/photo-s-auto-tone-v2

---

# 照片自动调色引擎（Photo S Auto Tone）

## 模型简介

**photo-s-auto-tone** 是一个基础模型（多模态 / 图片生成图片）类别的照片自动调色模型，输入一张照片，输出一组可解释的 Lightroom 风格调色参数（曝光、对比度、饱和度等 9 项），并附带可选的风格化（16 种内置风格）与场景识别的智能增强。

基于 **SigLIP-L/16（ViT-L-16-SigLIP-384）** 视觉编码器（冻结）+ MLP 调色头（hidden=192, dropout=0.3），训练数据来自 Lightroom 专业后期记录（1,324 张真实修图记录）。无需 GPU 即可在 CPU 上毫秒级推理。

> 本仓同时是 **`photo-s-plugin-auto-tone` 插件（pip 包）的官方权重托管与国内下载镜像**——下列全部文件均属这一个插件的推理资产（并非其他插件包），供插件经
> `PHOTOS_AUTO_TONE_WEIGHT_SOURCE=modelscope` 自动下载校验（见下文「国内镜像使用」）。

> **⚠️ License：CC-BY-NC-4.0（署名-非商业性使用）** —— 禁止商业用途，商用需联系作者授权

## 模型特性

- **可解释输出**：输出 9 项 Lightroom 标准参数（曝光 / 对比度 / 饱和度 / 鲜艳度 / 白平衡温湿 / 去雾 / 清晰度 / 纹理），每个参数都有物理意义，可以直接进任何修图软件
- **轻量**：主模型仅 852KB（SigLIP 特征 + 1024d → 192d → 9d MLP），CPU 毫秒级推理，无需 GPU 即可批量处理
- **异常检测**：内置 Hand features（2625×84）异常检测，当输入图片偏离训练分布时自动给出低置信度提示
- **风格化**：支持 16 种内置视觉风格（清新自然、电影感、复古胶片、日系等），可与自动调色组合使用
- **场景感知**：7 类场景识别（人像 / 风景 / 黑白 / 街拍 / 城市景观等），自动选择最佳调色倾向
- **RAG 增强**：内置 1295×768 CLIP embedding 检索增强，可基于相似照片的历史编辑记录优化输出
- **美学评分 / 修图建议（可选）**：两个 Qwen3-VL-2B LoRA 适配器（见下表），低置信度时给修正建议、终审级美学打分

## 模型文件说明

| 文件 | 大小 | 必需 | 说明 |
|---|---|---|---|
| `auto_tone_siglip_h192_d03.pt` | 852KB | ✅ | **主调色模型**（SigLIP-L/16-384 特征 + MLP h192 d0.3，输出 9 参数；即评测表中的 v2.1 主模型） |
| `auto_tone_v7_clean.pt` | 442KB | ✅ | CLIP+MLP 基线模型（v7_clean，ViT-L-14 特征）：`auto_tone` 命令默认底座与 RAG/异常检测配套 |
| `clip_train_rag.npz` | 3.7MB | ✅ | RAG 检索库（1295×768 CLIP embeddings，训练集相似照片检索） |
| `hand_features.npz` | 580KB | ✅ | 异常检测参照库（2625×84 手工特征，偏离训练分布时拒判/降置信） |
| `lora_aesthetic.safetensors` | 139MB | 可选 | **美学评分 LoRA**（Qwen3-VL-2B 适配器；训练侧原名 `lora_aesthetic_5k`，AVA 5K 数据，Pearson 0.78）——`aesthetic_score` 工具与美学验证终审用 |
| `lora_aesthetic_config.json` | 1.1KB | 可选 | 上项的 adapter 配置 |
| `lora_advisor.safetensors` | 279MB | 可选 | **修图建议 LoRA**（Qwen3-VL-2B 适配器）：预测低置信度时给出参数修正建议（`tone_advisor` 工具） |
| `lora_advisor_config.json` | 1.1KB | 可选 | 上项的 adapter 配置 |
| `config.json` / `configuration.json` | — | — | ModelScope 仓库元数据（非模型文件） |

两个 LoRA 为**可选下载**：仅安装插件 `[qwen]` extra 并自备 Qwen3-VL-2B 基座（约 4.3GB，`PHOTOS_AUTO_TONE_QWEN_BASE` 指向本地快照）时才会使用；基础自动调色/风格化流程不需要它们。

## 国内镜像使用

`photo-s-plugin-auto-tone`（≥ v2.2.0）支持从本仓自动下载全部权重（sha256 逐文件校验）：

```bash
pip install 'photo-s-plugin-auto-tone[model]'
export PHOTOS_AUTO_TONE_WEIGHT_SOURCE=modelscope   # 插件权重走本仓
export PHOTOS_AUTO_TONE_TOWER_SOURCE=modelscope    # SigLIP/CLIP 视觉塔 + tokenizer 走 ModelScope
```

两开关齐开后 **100% 国内源**（默认 `auto` = GitHub 优先、失败自动回落本镜像）。SigLIP/CLIP 视觉塔托管于 ModelScope 的 `timm/ViT-L-16-SigLIP-384` 等仓，不在本仓。

> 说明：`auto_tone_siglip_h192_d03.pt` 本仓版本为重存编码（`torch.load(weights_only=True)` 兼容；权重张量与 GitHub release 版逐位一致）；两个 `*_config.json` 因平台换行规范化与源文件差 1 字节（语义等价）。插件按各自来源的 sha256 钉死校验，不影响使用。

## 使用方法

### 加载主模型

```python
import torch

ckpt = torch.load("auto_tone_siglip_h192_d03.pt", map_location="cpu")

class AutoToneMLP(torch.nn.Module):
    def __init__(self, in_dim=1108, hidden=192, out_dim=9, dropout=0.3):
        super().__init__()
        self.net = torch.nn.Sequential(
            torch.nn.LayerNorm(in_dim),
            torch.nn.Linear(in_dim, hidden),
            torch.nn.GELU(),
            torch.nn.Dropout(dropout),
            torch.nn.Linear(hidden, out_dim),
        )
    def forward(self, x):
        return self.net(x)

model = AutoToneMLP()
model.load_state_dict(ckpt["state_dict"])
model.eval()
```

### 推理流程

1. 用 `open_clip.create_model_and_transforms("ViT-L-16-SigLIP-384", pretrained="webli")` 加载视觉编码器（冻结）
2. 图像 resize 384×384，经编码器得到 1024d 特征
3. 拼接 84d hand features → 1108d 输入
4. 模型输出 9 项参数（归一化到 [-1, 1]），按 `RANGES` 反归一化为实际值：

```python
RANGES = {
    "exposure": (-2.0, 2.0), "contrast": (0.5, 1.5), "saturation": (0.0, 2.0),
    "vibrance": (-1.0, 1.0), "wb_temp": (2000, 10000), "wb_tint": (-100, 100),
    "clarity": (-1.0, 1.0), "texture": (-1.0, 1.0), "dehaze": (-1.0, 1.0),
}
```

完整管线（RAG / 异常检测 / 风格化 / 局部调整词汇表）建议直接使用插件包：
`pip install 'photo-s-plugin-auto-tone[model]'` 后 `photo-s batch 照片 --auto-tone 0.8`（CLI）或 MCP/REST 工具（`auto_tone` / `verify_aesthetic` 等）。

## 评测结果

- **PSNR（50 张 LR 真实 before/after 对）**: 27.22 dB（跨域：人像 28.52 / 街拍 27.19 / 黑白 26.32 / 风景 26.14 dB）
- **风格组合 v2.1（scene+style）**: 16 风格 × 7 场景，推荐矩阵见插件文档

## License（双许可）

**CC-BY-NC-4.0**（署名-非商业性使用 4.0）：模型权重对**个人与非商业用途永久免费**；
训练数据为自己 Lightroom 后期记录，不含第三方数据集。

**商业用途需购买授权**（职业交付 / 企业内部使用 / 产品集成 / 再分发）：
邮箱 <1634103640@qq.com> · [dwphoto.top/message](https://dwphoto.top/message)。
边界判定表与常见问题（什么算商用、授权后照片归属、上游许可链条等）见
[docs/COMMERCIAL.md](https://github.com/Dongwu259/photo_s/blob/main/docs/COMMERCIAL.md)。

## 免责声明

本模型为研究性成果，训练样本规模有限（1,324 张），输出质量依赖输入图质量与风格匹配度。

由于采用 CC-BY-NC-4.0 非商业许可，**禁止将本模型及其输出用于任何商业用途**。商业合作请联系作者。

## 相关链接

- 插件包：`photo-s-plugin-auto-tone`（PyPI；MCP / REST / CLI 集成）
- 主程序：[photo-s-tools](https://github.com/Dongwu259/photo_s)（PhotoS，CLI for AI agents + GUI for humans）
- 视觉塔镜像：ModelScope `timm/ViT-L-16-SigLIP-384`
