老照片作为时光记忆的载体,不只是过去美好时光的传承者,同时也是每个人的情结和怀念的寄托。

随着时间的流逝,许多老照片都因为自然或人为原因,受到了侵蚀损坏,画面模糊、褪色、照片磨损严重等现象,甚至还有的因为保管不好导致照片面目全非。

今天的这个Python模块叫GFPGAN,它能够让这些老照片恢复原有的光泽,使用了GAN算法对照片进行修复,效果比其他同类模型都有更好的表现。本模块支持Python3.7+版本。

【注】文末提供技术交流群

1.准备

# 克隆项目
git clone https://github.com/TencentARC/GFPGAN.git# 进入项目
cd GFPGAN# 安装依赖
pip install basicsr
pip install facexlib
pip install -r requirements.txt
pip install realesrgan# 安装程序
python setup.py develop

2.使用GFPGAN修复老照片

GFPGAN模型需要通过数据集训练得到,由于训练需要使用的数据量和算力非常大,作者团队提供了许多预处理好的模型给普通用户下载,这样我们就能绕过训练这个步骤直接使用模型,下载地址如下:

https://github.com/TencentARC/GFPGAN/releases/download/v0.2.0/GFPGANCleanv1-NoCE-C2.pth

如果你无法访问GitHub,也可以在Python实用宝典后台回复:GFPGAN 下载。里面包含了本项目源代码及许多其他预训练好的模型,包括:

  • GFPGANCleanv1-NoCE-C2.pth:无法染色;不需要 CUDA 扩展。

  • GFPGANv1.pth:论文使用的模型,能够对旧照片进行染色。

将想要使用的预训练模型放入 experiments/pretrained_models 文件夹下就可以开始使用了。

使用方法非常简单,进入项目目录后输入以下命令:

python inference_gfpgan.py --model_path experiments/pretrained_models/GFPGANv1.pth --test_path inputs/cropped_faces --save_root results

其中,各个参数的意义如下:

model_path : 使用的模型的位置。

test_path : 需要转换的老照片的路径。

save_root : 转换结果存放的路径。

效果如下:

可见其修复效果是非常优秀的,如果你们也有需要修复的老照片,可以尝试使用手机的照片扫描仪软件扫描后使用此模块修复。

3.微调模型

如果你对模型的输出结果不是很满意,你还可以基于作者团队给出的模型做微调。微调能实现以下目的:

1.如果你有更高质量的人脸数据,可以提高修复效果。

2.你可能需要对数据做一些微处理,比如美妆等。

微调流程如下:

1.准备好训练数据集:https://github.com/NVlabs/ffhq-dataset

2.下载预训练模型和其他你自己的数据,把它们放在 experiments/pretrained_models 文件夹里。我们公众号后台提供以下预训练模型:

  • StyleGAN2 模型:StyleGAN2_512_B12G4_scratch_800k.pth

  • FFHQ 位置模型:FFHQ_eye_mouth_landmarks_512.pth

  • 简单的 ArcFace 模型:arcface_resnet18.pth

3.根据自身需求,相应地修改配置文件 options/train_gfpgan_v1.yml。

4.输入命令训练:

python -m torch.distributed.launch --nproc_per_node=4 --master_port=22021 gfpgan/train.py -opt options/train_gfpgan_v1.yml --launcher pytorch

模型微调的难度比较大,可能会遇到不少问题,需要大家善于利用搜索引擎解决问题。实在有不会的可以加群询问。

我们的文章到此就结束啦

技术交流

目前已开通了技术交流群,群友已超过1000人,添加时最好的备注方式为:来源+兴趣方向,方便找到志同道合的朋友

  • 方式①、发送如下图片至微信,长按识别,后台回复:加群
  • 方式②、微信搜索公众号:机器学习社区,后台回复:加群
  • 方式③、可以直接加微信号:mlc2060。加的时候备注一下:研究方向 +学校/公司+CSDN,即可。然后就可以拉你进群了。

GFPGAN:老旧照片的面部恢复神器相关推荐

  1. 几十年前的老旧照片如何修复?还不知道旧照片怎么恢复清晰吗?

    那些旧照片本身会随着时间的推移而褪色.褶皱.老旧照片修复主要是从褪色.变色.破损.发霉.的旧相片修复翻新,到模糊不清清晰化处理,大面积严重破损照片修补. 十年以前,没有电脑,没有手机,更没有存储照片工 ...

  2. 微软开源: 老旧照片修复的AI算法

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 开源最前线(ID:OpenSourceTop) 猿妹整编 | 来源 ...

  3. 找到商机了,听说修复老照片赚了一套房?Python带你实现老旧照片修复。

    前言       前段时间刷朋友圈,看到有这样一则消息:意思就是老旧照片修复,简单的五块,破旧的十块!我寻思着这也能赚钱?直到我看到这样的一张图片: 我才明白为啥会有人花钱去修复这些照片,在他们眼里别 ...

  4. 用简单技术对老旧照片进行翻新上色

    用简单技术对老旧照片进行翻新上色 效果示图: 老旧照片的翻新修改,对于PS新手来说有一定的难度,尤其是网上的教程一般来说都是使用颜色蒙版等较为抽象复杂的技术来进行修改的.经过摸索,我发现其实用PS的& ...

  5. 教你如何把模糊老旧照片修复成高清照片,一款照片高清修复工具

    HitPaw Photo Enhancer 可以帮助您使照片更清晰并根据需要放大,能够帮助用户修复图片的质量,让模糊的图像变得高清美观,支持修复各种类型的图片,将图片放大的同时还能提升画质,让图片更加 ...

  6. 如何用PS制作褪色老旧照片效果

    还是老样子哟,我们需要下载陌鱼社区的怎么做出复古纸质老照片效果PS动作,然后通过这个PS动作即可制作出如下图效果,动作支持CS4以上版本软件,下面我们来演示使用教程. 01.打开软件载入画笔.图案.动 ...

  7. 怎么把老旧图片变清晰?分享三个方法给大家!

    老旧照片常常因为时间的流逝而失去清晰度,给人们带来了遗憾.然而,随着图像处理技术的进步,我们现在有多种方法可以提高老旧照片的清晰度.本文将介绍三种常用的方法,帮助您使老旧照片焕然一新. 第一种方法:使 ...

  8. ps 毛发 边缘_用PS给老旧黑白照片上色,亲妈级教学,简单实用,轻松搞定!

    前言: 今天星哥哥想分享一下怎么把给旧照片上色的PS处理操作. 时代飞速发展,许多事物都更新得太快,没有回忆的沉淀.今天我们就来寻觅褪色的回忆,唤醒沉睡的过往. 用设计的力量,让那些黑白的岁月重新焕发 ...

  9. 智能老旧模糊照片修复——C++实现GFPGAN模型推理

    前言 1.回家过年,总是有意或无意间翻到一些旧时的照片,旧照片作为时光记忆的载体和岁月流转的见证,不单单是过去美好时光的传承者,同时也是每个人的情结和怀念的寄托.随着时间的流逝,许多老照片都因为自然或 ...

最新文章

  1. java double用法_Java Double doubleToLongBits()用法及代码示例
  2. ANSYS——后处理中单元表(ELEMENT table)的作用、创建、使用
  3. 傻瓜学python_傻瓜式学Python3——列表
  4. linux——网络情报收集(总结篇.干货+实战)
  5. 查纸张开数软件怎么样
  6. 三星s8刷机包android10版本,三星S8+刷机包(官方固件最新升级包v7.0)
  7. 神思SS628(100)型第二代身份证验证阅读机具二次开发
  8. 最好用的两款库存管理软件推荐,不要错过
  9. SPSS描述性统计--非连续变量的描述统计
  10. 由三个点坐标判断三个点能否组成三角形模板(自用,客官可取)
  11. 中年危机:全面贬值的中年人
  12. POI excel插入图表
  13. SQL Server 数据库修复专家SQLRescue
  14. RPC 实战与核心原理分析
  15. 呱呱视频技术难点分享:遇到和填上的那些坑
  16. 无人机领域重大进展,即将实现空中充电
  17. 黑盒测试与白盒测试区别
  18. uniapp开发,打包成H5部署到服务器
  19. 计算机安全模式无法启动,老司机教你电脑安全模式进不去怎么办
  20. 摘自 寂地《踮脚张望的时光》

热门文章

  1. 深入理解以太坊 P2P 网络设计
  2. 手机拍证件照有什么诀窍
  3. 后台集成解决方案 avue
  4. oracle12c创建监听,Oracle 12c为PDB创建专用监听
  5. c4d语言包英文,Maxon Cinema 4D R23(C4D R23)中英文安装及设置详细教程(附下载)
  6. 程序员应当正确突破英语障碍
  7. 扩展lucas学习笔记
  8. 综合里dont_use/dont_touch/ideal_network的理解
  9. Contiki开发日记·1——Instant-contiki环境搭建
  10. 网站制作入门指导教程