JPEG Repair
详情
下载文件
模型描述
这是一个概念验证型LORA,旨在用预测的原始纹理替换真实照片中的JPEG伪影(块状/网格、振铃效应),特别专注于皮肤纹理。
数据集
训练图像来自一个私有数据集,包含750张精心挑选的高质量(女性)身体部位照片,涵盖多种距离(从极近景到全身)、角度、光照等。这些图像手动调整大小/裁剪(使用Lanczos算法)至768(0.6MP)、1024、1280和1536(2.36MP)分辨率的多个尺寸桶,原始图像分辨率为5至30兆像素,以生成目标图像;随后使用ffmpeg -q:v 2和6进行压缩,生成控制图像。大部分图像的宽高比为4:3或3:2,调整大小后保持原始宽高比。
训练
该LORA基于bf16非量化Kontext模型权重进行训练。使用adamw8bit优化器,学习率2e-04,配合带重启的余弦调度(共2.66个周期),总计训练3500步,包括前500步预热,接着继续训练1250步,均采用小波损失函数,有效消除了振铃和块状伪影(在我的测试中,MSE损失仅能部分消除块状伪影,对振铃效应影响极小);随后再进行1250步MSE损失训练,有助于恢复极其精细的像素级纹理并提升纹理清晰度(小波损失在像素级纹理上会产生轻微模糊效果);最后,我额外使用仅包含-q:v 6样本的500步训练,以进一步增强纹理细节。整个训练过程仅关注低噪声晚期时间步的损失。
使用方法
我强烈建议搭配完整、非量化的(bf16)基础模型使用此LORA,请参阅下方的限制部分。
无需触发词。只需将此LORA添加至常规Kontext工作流中,点击运行即可。
我使用25步Euler/Simple采样器获得了良好效果。
请注意,许多照片查看器/编辑器在放大时会自动模糊和柔化像素,包括浏览器。若你无法察觉修复图像的差异,请尝试切换至不进行此类模糊处理的查看器。在macOS上,Finder预览在放大时会模糊像素,而“预览”应用则不会。ComfyUI中没有任何功能允许你放大到足以清晰查看像素的程度,因此外部查看器更适合此用途。
路线图
- 向数据集中添加2048分辨率样本
- 添加图像标注(captioning)
- 训练/实验/发布一个2倍放大模型:首先将输入图像放大2倍,使伪影尺寸翻倍,可能更便于模型生成高质量结果
- 向数据集中添加带有缩放伪影的样本
- 向数据集中添加带有错位8x8 JPEG块的样本
限制
- AI生成图像:该LORA仅在真实照片上训练,旨在修复真实照片,可能无法处理AI生成图像。我尚未测试此情况。
- 量化:在我的测试中,当Kontext基础模型被量化为fp8时,甚至无法可靠地复现输入图像中的JPEG伪影,放大查看像素时所有内容都会变成模糊一团。我必须使用非量化模型进行训练和运行,才能获得有意义的结果。
- 调整大小:不建议调整输入图像大小,因为这会改变JPEG块模式的尺寸,而该LORA仅针对8x8块进行训练。
- 放大:这不是一个放大器,不会提升图像分辨率。它仅在JPEG伪影暗示原始纹理丢失时添加纹理,绝不会凭空为完全平滑的皮肤/表面添加纹理,也不会自动将塑料质感皮肤转换为真实皮肤。
- 老年、皱纹、男性皮肤:未经过测试,也未使用此类皮肤训练。
- 面部:可修复面部,但因CivitAI条款限制,未专门针对面部训练。它仍会移除面部的块状/振铃伪影,但添加面部皮肤纹理的效果因人而异。我可能将来会发布一个在CivitAI之外使用面部数据训练的版本。
- 噪声图像:对含有大量(JPEG压缩)色度和亮度噪声的图像有效,但效果不稳定。训练数据中包含少量噪声图像,但比例很小。
- 运动模糊:数据集中不含严重运动模糊图像。我发现它对运动模糊不会产生糟糕结果,但并未专门为此训练。
- 浅景深:数据集中许多图像具有浅景深(由真实相机/镜头拍摄),因此模型在不确定时倾向于生成模糊的浅景深效果。我计划减少这种偏差。
- 非常深的肤色:我缺乏此类训练数据,也未进行测试,效果可能好也可能不好。
- 大量阴毛:训练数据主要为无或少量阴毛,模型仍可工作,但未专门为此训练。
- 提示词遵循:该LORA专为修复压缩JPEG图像设计,常规提示词仍可使用,但预期效果质量会降低。
- 这是一个概念验证型LORA。它表现惊人,但仍属于概念验证。


