AI 黑科技,老照片修复,模糊变高清
大家好
最近闲逛,发现腾讯开源的老照片修复算法新出了V1.3的预训练模型,手痒试了一下。
我拿“自己”的旧照片试了一下,先看效果


GFPGAN

FPGAN算法由腾讯PCG ARC实验室提出,其相关论文已被CVPR2021收录。
研究核心利用了包含在训练好的人脸生成模型里的「知识」, 被称之为生成人脸先验 (Generative Facial Prior, GFP)。它不仅包含了丰富的五官细节, 还有人脸颜色, 此外它能够把人脸当作一个整体来对待, 能够处理头发、耳朵、面部轮廓。基于预训练好的生成模型, 研究者们提出了利用生成人脸先验 GFP 的人脸复原模型 GFP-GAN。相比于近几年其他人脸复原的工作, GFP-GAN 不仅在五官恢复上取得了更好的细节, 整体也更加自然, 同时也能够对颜色有一定的增强作用。

Online 试玩版
官方提供了 Online 试玩版
Huggingface (只返回人脸)
https://huggingface.co/spaces/akhaliq/GFPGAN
Replicate.ai
https://replicate.com/xinntao/gfpgan
Baseten.co
https://app.baseten.co/applications/Q04Lz0d/operator_views/8qZG6Bg
我测试了一下,感觉只有Replicate比较稳定。
只需将你想修复的照片拖进左边的图片框内,点击Submit即可。

比如我把自己的照片再传上去

效果不太理想,锐化的有点过,貌似是因为用的V1.2的预训练模型吧。
本地运行
本地运行可以使用最新的预训练模型,修复效果更加自然,同时还能在低质量输入的情况下,输出高质量结果。
环境要求:
Python >= 3.7 (推荐使用Anaconda or Miniconda)
PyTorch >= 1.7
Option: NVIDIA GPU + CUDA
Option: Linux
我的系统是Ubuntu 20.04.2 LTS ,Win平台我没有尝试,感兴趣的同学可以试试。
克隆项目
git clone https://github.com/TencentARC/GFPGAN.git
cd GFPGAN
安装依赖
# 安装BasicSR:基于 PyTorch 的开源图像视频复原工具箱, 比如 超分辨率, 去噪, 去模糊, 去 JPEG 压缩噪声等.
pip install basicsr
#
# 安装facexlib: 提供实用的人脸相关功能的集合
pip install facexlib
# 安装GFPGAN依赖包
pip install -r requirements.txt
python setup.py develop
# Real-ESRGAN:图像分辨率修复工具,可以提升照片分辨率
pip install realesrgan
注:
直接pip install basicsr,我遇到大面积的warning,后面运行时报错了
ImportError: cannot import name 'load_file_from_url' from 'basicsr.utils.download_util'
大家如果有相同问题,可以尝试
!pip install basicsr
下载V1.3预训练模型
#
wget https://github.com/TencentARC/GFPGAN/releases/download/v1.3.0/GFPGANv1.3.pth -P experiments/pretrained_models
模型就下载到experiments/pretrained_models目录下了

运行
终端切到GFPGAN目录下,运行:
python inference_gfpgan.py -i inputs/whole_imgs -o results -s 2
inputs目录下存放准备修复的图片,工程包里包含了部分测试图片,你也可以将自己要修复的图片放在inputs下一级的某个文件夹中。
results目录则保存处理后生成的结果图片,包含了对比图像、人脸图像、整张图像等多个子文件夹。
第一次运行时会比较慢,还会额外自动下载facexlib的模型文件;稍后片刻就能在results\cmp目录下看到修复前后的对比图片了:

AI 黑科技,老照片修复,模糊变高清的更多相关文章
- “体检医生”黑科技|让AI开发更精准,ModelArts更新模型诊断功能
摘要:华为云AI开发平台ModelArts黑科技加持AI研发,让模型开发更高效.更简单,降低AI在行业的落地门槛.全面的可视化评估以及智能诊断功能,使得开发者可以直观了解模型各方面性能,从而进行针对性 ...
- 国庆出游神器:魔幻黑科技换天造物,让vlog秒变科幻大片!
摘要:国庆旅游景点人太多,拍出来的照片全是人人人.车车车,该怎么办?不妨试试这个黑科技,让你的出游vlog秒变科幻大片. 本文分享自华为云社区<国庆出游神器,魔幻黑科技换天造物,让vlog秒变科 ...
- 微软AI发布会,集齐六大亮点召唤黑科技!
7月12日,微软合作伙伴大会Inspire在华盛顿特区如火如荼地举行.同一天,在相隔5个时区的伦敦,微软还举办了一场关于人工智能的发布会.这是一场智能技术和情感体验两相交融的科技盛宴,既有黑科技,也有 ...
- 【转载】史上最全:TensorFlow 好玩的技术、应用和你不知道的黑科技
[导读]TensorFlow 在 2015 年年底一出现就受到了极大的关注,经过一年多的发展,已经成为了在机器学习.深度学习项目中最受欢迎的框架之一.自发布以来,TensorFlow 不断在完善并增加 ...
- 黑科技!仅需 3 行代码,就能将 Gitter 集成到个人网站中,实现一个 IM 即时通讯聊天室功能?
欢迎关注个人微信公众号: 小哈学Java, 文末分享阿里 P8 高级架构师吐血总结的 <Java 核心知识整理&面试.pdf>资源链接!! 个人网站: https://www.ex ...
- MTSC2019-腾讯WeTest独家揭秘移动游戏测试和质量保障 QA 黑科技
WeTest 导读 TesterHome 联合腾讯 WeTest 出品 MTSC2019 重磅游戏测试 Topic ,首次公开揭秘腾讯亿级用户游戏背后的质量保障 QA 黑科技. 2019 年,中国游戏 ...
- Java黑科技之源:JVMTI完全解读
Java生态中有一些非常规的技术,它们能达到一些特别的效果.这些技术的实现原理不去深究的话一般并不是广为人知.这种技术通常被称为黑科技.而这些黑科技中的绝大部分底层都是通过JVMTI实现的. 形象地说 ...
- Python黑科技:FuckIt.py
说起 Python 强大的地方,你可能想到是它的优雅.简洁.开发速度快,社区活跃度高.但真正使得这门语言经久不衰的一个重要原因是它的无所不能,因为社区有各种各样的第三库,使得我们用Python实现一个 ...
- 一文带你了解 HTTP 黑科技
这是 HTTP 系列的第三篇文章,此篇文章为 HTTP 的进阶文章. 在前面两篇文章中我们讲述了 HTTP 的入门,HTTP 所有常用标头的概述,这篇文章我们来聊一下 HTTP 的一些 黑科技. HT ...
- 聊聊H5与JS近几年的黑科技
聊聊H5与JS近几年的黑科技 自ajax技术的诞生,编程界兴起了一股WEB开发热,facebook,Twitter等众多大佬级企业都在网页应用上大放异彩,这十年我们见证了前端技术的崛起.这期间产生了众 ...
随机推荐
- RLHF · PBRL | 发现部分 D4RL tasks 不适合做 offline reward learning 的 benchmark
论文题目:Benchmarks and Algorithms for Offline Preference-Based Reward Learning,TMLR 20230103 发表. open r ...
- Mac 终端命令查看WiFi连接日志【原创】
写这篇文章的原因是因为经常通过钉钉打上班卡忘记打卡了,我们标准上班时间是上午8:00-10:00 ,对应下班时间是 17:00-19:00 ,有时8:30到公司,就开始忙碌了,作为程序员有时后一忙就 ...
- NOIP2023 游寄
NOIP2023 游寄 Day -2 遗憾生病离场回家. Day -1 速度赶往杭州,稍作复习. Day 1 正式开寄. 开题后,发现把所有题看了一遍,一如既往的又臭又长. T3 和 T4 感觉很不可 ...
- Welcome to YARP - 8.分布式跟踪
Welcome to YARP - 1.认识YARP并搭建反向代理服务 Welcome to YARP - 2.配置功能 2.1 - 配置文件(Configuration Files) 2.2 - 配 ...
- 3. Shell 条件判断
重点: 条件测试. read. Shell 环境配置. case. for. find. xargs. gzip,bzip2,xz. tar. sed. 1)Shell 的配置文件 Bash Shel ...
- C# 常量 结构体 委托
常量 const double PI = 3.1415926; 常量名命名一般使用大写字母 枚举类型 开发一个游戏,游戏角色有法师(Mage).射手(Archer).刺客(Assassin).坦克(T ...
- 聊一聊 .NET高级调试 中必知的符号表
一:背景 1. 讲故事 在高级调试的旅行中,发现有不少人对符号表不是很清楚,其实简而言之符号表中记录着一些程序的生物特征,比如哪个地址是函数(签名信息),哪个地址是全局变量,静态变量,行号是多少,数据 ...
- leetcode:354 俄罗斯套娃信封问题(LIS)
解题思路: 根据题意,不难发现组合的元素,他们的长宽都是单调递增的,因此可以转化为最长上升子序列问题. 首先按照长度从小到大对信封进行排序,长度相同,按照宽度从大到小进行排序.因为当长度相同,因为可能 ...
- c#5.0/6.0/7.0
发现很多.net 程序员水平一直停留在c#3.0阶段,现在来整理下c#5.0/6.0/7.0新语法新特性. 人生需要不断充电,不断去get新技能而不是固步自封,对于我自己而言,虽不盲目追求新技术,但每 ...
- [极客大挑战 2019]EasySQL 1
[极客大挑战 2019]EasySQL 1 观察题目,发现为登录界面,判断这道题的考点是SQL注入. 知识点 万能密码 知识点原理 当用户尝试登录时 网站后台会进行SQL查询,比如 [select * ...