GitHub开源力作!最新旧照片修复技术:细致到面部毛孔

微软研究团队在GitHub开源了一款旧照片修复工具,利用AI的三重态域翻译网络修复照片,包括全局和局部修复。该工具特别针对面部细节进行精确还原,已在Ubuntu+Nvidia GPU+CUDA环境下验证。用户需注意安装对应版本的Python和torch库,避免不兼容问题。此技术有助于历史照片的复原和保留珍贵记忆。
部署运行你感兴趣的模型镜像

最近,几个中国小伙组成的微软研究团队开发了一种全新的修复旧照片的工具,那些我们想要留在心底或未曾经历过的从前,都可以通过翻看老照片找回来,目前已在 GitHub 上开源。

AI 是如何修复旧照片的

没有彩色照片的时候能留下的只有黑白照片。而随着时光的流逝,那些老照片的细节也不再清晰。保存好以前的老照片就变成了一件非常有意义的事情。

如今,我们用手机就能拍出上亿像素的照片,无论是景色还是人物都能留下最美的瞬间。

利用真实照片和大量合成图像提出了一种新颖的三重态域翻译网络,两个变体自动编码器(VAE),分别将旧照片和清晰的照片转换为两个潜在空间,并使用合成配对数据学习这两个潜在空间之间的转换。

为了解决一张旧照片中混合的多种退化问题,bringing-old-photos-back-to-life研究团队还设计了一个全局分支和局部非全局分支。全局分支针对结构化缺陷(例如划痕和灰尘斑点)进行修复,局部非全局分支针对非结构化缺陷的局部分支,例如噪音和模糊性。他们利用这种方法在潜在空间中融合了两个分支,从而提高了从多个缺陷还原旧照片的能力。

如何安装照片还原工具

目前,这种照片还原工具的代码已经在装有 Nvidia GPU 和 CUDA 的 Ubuntu 上进行了测试,需要 Python> = 3.6 才能运行代码。
下载安装预训练模型后,可以使用一个简单的命令轻松恢复旧照片。

没有划痕的图像可以选择以下命令:

pythonrun.py--input_folder[test_image_folder_path]

--output_folder[output_path]

--GPU0

有划痕的图像可以选择以下命令:

python run.py --input_folder [test_image_folder_path]

--output_folder [output_path]

--GPU 0

--with_scratch

注意:请尝试使用绝对路径,图像的修复结果将最终保存在 ./output_path/final_output/ 中。

注:
修复的图片不要太大,比较大的照片还是别想了,大概率带不动的,大图可以把人身体区域截图下来修复,或者将图片切割或裁剪。

报错
1、incompatible function arguments. The following argument types are supported: 1. (arg0: object, arg1: torch._C._jit_tree_views.SourceRange, arg2: Callable[[str], function]) -> torch._C.Type
错误原因:torch版本和torchvision版本不匹配

2、AssertionError: The NVIDIA driver on your system is too old (found version 9000).
错误原因:torch版本太高,与cuda不匹配,比如我cuda-8.0装了torch-1.5报错了,重新安装torch1.0.0解决。

研究团队表示,他们不打算直接发布带有标签的有划痕的旧照片数据集,如果需要获取配对数据,可以使用他们的预训练模型来测试收集图像以获得标签。

前文提到的新颖的三重态域翻译网络可以用来解决结构化退化和非结构化退化问题,做到旧照片的全局还原。

以下图为例:

局部精确还原——面部的修复

bringing-old-photos-back-to-life研究团队使用了渐进式生成器来完善旧照片的脸部区域。

作者采用VAE来实现,使用VAE的关键一点就是,VAE包含隐空间的KL正则项,该项可以帮助对齐老照片的隐空间和合成数据的隐空间,从而减小域间隔。这里,该框架总共有两个VAE,真实老照片数据R和合成数据X共享同一个VAE_1,真实图像用第二个VAE_2进行编解码。VAE假设隐编码服从高斯先验,这样,新的图像可以从高斯分布采样进行重建。

通过隐编码映射进行复原:

由于老照片和合成数据已经在隐空间进行了很好的域对齐,因此,通过成对数据{x, y}学到的从隐编码Z_X到隐编码Z_Y的映射,也能够很好的泛化到老照片上。在这一阶段,那就是固定两个VAE,然后学两个隐空间的映射网络T,


DeOldify:一键还原百年老电影、黑白旧照片本色

DeOldify在Github一上线就爆火,目前已收获6000多星,可以让黑白老电影以及老照片复原其本色。该作者在GitHub中提到,DeOldify中至关重要的就是NoGAN。

训练结构的灵感来自Progressive Growing of GANs(https://arxiv.org/abs/1710.10196)。但不是完全一样,差别主要是我的版本层数保持不变——只是逐步改变输入的大小并调整学习率以确保尺寸的转换成功。最终结果基本一致——训练速度更快、更稳定,并且能更好地泛化。

NoGAN训练结合了GAN训练的优点(绚烂的色彩),同时消除了视频中闪烁的物体。视频是使用孤立的图像生成,没有任何形式的时间建模附加。该过程执行30-60分钟的GAN部分的“NoGAN”训练,一次使用1%到3%的imagenet数据。然后,与静态图像着色一样,在重建视频之前,对单个帧进行“去旧化”。

DeOldify现在有三种型号模型可供选择。每个都有关键优势和劣势,因此具有不同的用例。

影像技术和 AI 的发展让我们有机会“穿越回”百年前去看那时的人们是如何生活的,也能让我们一睹父母年轻时的风采。

有越来越多的工具和技术可以帮我们恢复正在逐渐消失的记忆。看着百年前北京百姓的生活景象,我们能更切实的体会到文化的进步和历史的变迁,看到革命先辈浴血奋战的影像我们能亲眼见证整个国家和社会的变革,更加珍惜今天来之不易的幸福生活。

 

您可能感兴趣的与本文相关的镜像

Stable-Diffusion-3.5

Stable-Diffusion-3.5

图片生成
Stable-Diffusion

Stable Diffusion 3.5 (SD 3.5) 是由 Stability AI 推出的新一代文本到图像生成模型,相比 3.0 版本,它提升了图像质量、运行速度和硬件效率

评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值