mac部署waifu2x-unlimited

waifu2x-unlimited是一款开源的图片超分辨率软件,它可以将低分辨率的图片提升到高分辨率,并保持图片的质量。

我的m1虽然是几年前的产品了,但还是能运行的。

准备

下载waifu2x-unlimited

1
git clone https://github.com/LoganDark/waifu2x-unlimited

miniserve

miniserve是一个轻量级的静态文件服务器,可以用来在本地快速部署waifu2x-unlimited。

  • 在mac上可以直接用brew安装:
1
2
brew install miniserve
miniserve
1
miniserve-win.exe

使用

1
miniserve . --index index.html --header 'Cross-Origin-Embedder-Policy: require-corp' --header 'Cross-Origin-Opener-Policy: same-origin' --port 8080

打开浏览器,访问http://127.0.0.1:8080/

选择需要处理的图片,点击“start”,等待处理完成即可。

参考

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
模型选择

对于动漫壁纸,我们通常希望保留清晰的线条、鲜艳的色彩和细节,同时进行有效的降噪和放大。

对比一下 `swin_unet` 系列模型、`cunet / art (201811)` 这些模型在 `waifu2x-unlimited` 中的特点和适用场景:

模型对比

1. `swin_unet / art`

- 架构: 基于 Swin Transformer 的 UNet 架构。Swin Transformer 是一种近年来流行的视觉 Transformer型,能够有效地捕捉图像的全局信息。
- 特点:
- 针对艺术风格图像(包括动漫、插画等)进行了优化。
- 在保持细节和锐度的同时,可以实现较好的降噪和放大效果。
- 相比于传统的卷积神经网络,可能在某些情况下能够更好地捕捉长距离依赖关系,从而生成更连贯的图像。
- 适用场景:
- 高质量动漫、插画等艺术风格图像的降噪和放大。
- 需要保留艺术风格细节的图像处理。
- 追求高质量、细节丰富的输出结果。

2. `swin_unet / art scan`

- 架构: 与 `swin_unet / art` 相同,基于 Swin Transformer 的 UNet 架构。
- 特点:
- 专门针对扫描的艺术作品进行了优化。
- 可以有效地处理扫描图像中常见的噪点、斑点和失真等问题。
- 通常在降噪和锐化方面会做得更出色。
- 适用场景:
- 扫描的动漫、插画等艺术作品的降噪、放大和修复。
- 需要去除扫描伪影和改善图像质量的场景。

3. `swin_unet / photo`

- 架构: 基于 Swin Transformer 的 UNet 架构。
- 特点:
- 针对真实照片进行了优化。
- 擅长处理照片中的细节、噪点和失真。
- 在放大照片时,通常可以保持较为自然的观感。
- 适用场景:
- 日常照片的降噪和放大。
- 需要保留照片细节,同时去除噪点的场景。
- 需要处理照片失真,改善图像质量的场景。

4. `cunet / art (201811)`

- 架构: 基于传统卷积神经网络的 UNet 架构。
- 特点:
- 是 Waifu2x 中经典的 `cunet` 模型,针对艺术风格图像进行了优化。
- `201811` 表示模型是在 2018 年 11 月训练的,代表一个较早期的版本。
- 在动漫、插画等艺术风格图像的降噪和放大方面表现良好。
- 在大多数情况下能够提供不错的细节保留和降噪效果。
- 适用场景:
- 动漫、插画等艺术风格图像的降噪和放大。
- 需要细节保留和降噪效果的图像处理。
- 作为基准模型,与其他模型进行对比。

对比总结

| 模型 | 架构 | 针对风格 | 降噪 | 放大 | 细节保留 | 适用场景 |
| :-------------------- | :-------------- | :------- | :------- | :-------- | :--------- | :--------------------------------------------------------------------- |
| `swin_unet / art` | Swin UNet | 艺术风格 | 较强 | 较强 | 优秀 | 高质量动漫、插画等艺术风格图像的降噪和放大 |
| `swin_unet / art scan` | Swin UNet | 扫描艺术 | 极强 | 较强 | 良好 | 扫描的动漫、插画等艺术作品的降噪、放大和修复 |
| `swin_unet / photo` | Swin UNet | 照片 | 较强 | 较强 | 良好 | 日常照片的降噪和放大 |
| `cunet / art (201811)` | CNN UNet | 艺术风格 | 较强 | 较强 | 良好 | 动漫、插画等艺术风格图像的降噪和放大 |

选择建议

- 艺术风格图像 (非扫描):
- 如果追求最高质量,可以尝试 `swin_unet / art`,它通常能提供更好的细节和锐度。
- `cunet / art (201811)` 依然是一个很好的选择,特别是在资源有限的情况下。
- 扫描的艺术风格图像:
- 优先选择 `swin_unet / art scan`,它专门为处理扫描图像设计,效果通常更好。
- 照片类图像:
- 选择 `swin_unet / photo`,它可以更好地处理照片的细节和噪点。

额外考虑

- 计算资源: `swin_unet` 系列模型通常比 `cunet` 模型需要更多的计算资源,例如 GPU 内存和处理时间。
- 实验: 建议您针对自己的图像多尝试不同的模型,看看哪个模型的效果最好。
- 模型文件: 确保您已经下载了相应的模型文件,并且 `waifu2x-unlimited` 可以正确加载它们。

总结

- `swin_unet` 系列模型基于新的 Swin Transformer 架构,通常在质量和细节保留方面表现更好,但对计算资源的要求也更高。
- `cunet / art (201811)` 是一个经典的 Waifu2x 模型,在艺术风格图像处理方面依然表现良好,计算资源需求相对较低。
- 选择哪个模型取决于您的具体需求,包括图像类型、处理目标、计算资源以及对质量的追求。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
参数设置建议

除了模型,其他参数的设置也会影响最终的动漫壁纸处理效果。以下是一些建议:

1. `Denoise (降噪)`:
- 建议: 根据壁纸的噪点情况调整。
- 对于高质量的动漫壁纸,可以设置为 `0` 或 `1`,避免过度降噪导致细节丢失。
- 如果壁纸噪点较多,可以设置为 `1.5` 或 `2`,但注意观察细节是否过度模糊。
- 原则: 在去除噪点和保留细节之间找到平衡。

2. `Antialias (抗锯齿)`:
- 建议: 如果需要放大,设置为 `1` 或 `2`。
- 对于高分辨率壁纸,或者不进行放大的情况下,可以设置为 `0` 或较低的值。
- 原则: 减少放大带来的锯齿感,但避免过度模糊。

3. `Scale (缩放)`:
- 建议: 根据需要设置放大倍数。
- 常见的是 `2` 倍或 `4` 倍。
- 如果只进行降噪,不需要放大,设置为 `1`。
- 原则: 根据您的目标分辨率设置,避免过度放大导致质量下降。

4. `Tile Size (瓦片大小)`:
- 建议: 使用默认值即可,例如 `512` 或 `1024`。
- 如果遇到瓦片拼接痕迹,可以尝试调大这个值,但会消耗更多内存。
- 原则: 默认值即可,如出现问题再调整。

5. `Tile Order (瓦片顺序)`:
- 建议: 选择 `Smart`,通常可以获得更好的效果。

6. `TTA (Test Time Augmentation)`:
- 建议: 如果追求最高质量,可以启用 `TTA`。
- 原则: 根据您的时间和质量要求进行选择。

7. `Alpha Channel (透明通道)`:
- 建议: 如果动漫壁纸有透明部分,则启用。
- 原则: 根据壁纸是否有透明区域选择。

8. `Alpha Threshold (透明度阈值)`:
- 建议: 使用默认值即可,一般情况下无需调整。
- 原则: 默认值即可,如出现问题再调整。

推荐流程

1. 模型选择:
- 优先尝试: `swin_unet / art`。
- 备选: `cunet / art (201811)` 或 `cunet_scale2x` / `cunet_scale4x` (如果需要特定放大倍数)。
2. 参数设置:
- 根据上述建议设置 `Denoise`、`Antialias`、`Scale` 等参数。
3. 处理和对比:
- 处理后对比原图和处理后的效果,微调参数。
- 如果效果不满意,可以尝试不同的模型和参数组合。

总结

- 对于动漫壁纸,`swin_unet / art` 模型通常是首选,它能提供高质量的输出效果。
- `cunet / art (201811)` 是一个可靠的替代方案,在速度和质量之间取得平衡。
- 其他参数需要根据具体情况调整,以达到最佳效果。