飞道的博客

这款开源的 Python 老照片修复工具火了

516人阅读  评论(0)

【导语】:一款借助 AI 对老照片快速进行修复的工具,基于 PyTorch 实现,支持划痕检测、面部修饰、全局还原等操作。

简介

Bringing-Old-Photo-Back-to-life 是由微软研究团队开发的一款修复旧照片的工具,基于 PyTorch 实现,支持划痕检测、面部修饰、全局还原等操作。

下载安装

项目的源码地址是:

https://github.com/microsoft/Bringing-Old-Photos-Back-to-Life

 

代码在装有 Nvidia GPU 和 CUDA 的 Ubuntu 上进行了测试,Python版本要求大于等于3.6 ,使用以下命令进行安装:

 

1)下载PyTorch库

cd Face_Enhancement/models/networks/git clone https://github.com/vacancy/Synchronized-BatchNorm-PyTorchcp -rf Synchronized-BatchNorm-PyTorch/sync_batchnorm .cd ../../../
cd Global/detection_modelsgit clone https://github.com/vacancy/Synchronized-BatchNorm-PyTorchcp -rf Synchronized-BatchNorm-PyTorch/sync_batchnorm .cd ../../

(2)下载landmark 检测预训练模型

  •  
  •  
  •  
  •  
cd Face_Detection/wget http://dlib.net/files/shape_predictor_68_face_landmarks.dat.bz2bzip2 -d shape_predictor_68_face_landmarks.dat.bz2cd ../

(3)从Azure Blob下载训练模型

cd Face_Enhancement/wget https://facevc.blob.core.windows.net/zhanbo/old_photo/pretrain/Face_Enhancement/checkpoints.zipunzip checkpoints.zipcd ../cd Global/wget https://facevc.blob.core.windows.net/zhanbo/old_photo/pretrain/Global/checkpoints.zipunzip checkpoints.zipcd ../

(4)安装依赖

pip install -r requirements.txt

简单使用

在Colab上体验(免安装)

Colab地址:(国内需木弟子)

https://colab.research.google.com/drive/1NEm6AsybIiC5TwTU_4DqDkQO0nFRB-uA?usp=sharing

打开Colab的界面:

登录Google后根据指引运行代码配置环境,配置好环境就可以上传自己的图片进行体验,小编简单尝试了 3 张网图,效果如下:

 

原图来源:百度

原图来源:百度

 

原图来源:百度

本地安装体验

根据文章开头介绍的下载安装方法安装完成后,可以通过以下命令进行使用:

 

(1)没有划痕的图像:

python run.py --input_folder [test_image_folder_path] \              --output_folder [output_path] \              --GPU 0

要注意的是,这里需要的 output_folder 参数值需要使用绝对路径,图像的修复结果将最终保存在 ./output_path/final_output/ 中。

项目样例效果:

 

(2)有划痕的图像:

python run.py --input_folder [test_image_folder_path] \              --output_folder [output_path] \              --GPU 0 \              --with_scratch

项目样例效果:

 

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

cd Global/python detection.py --test_path [test_image_folder_path] \                    --output_dir [output_path] \                    --input_size [resize_256|full_size|scale_256]

项目样例效果:

 

 

该项目目前由团队成员 Ziyu Wan 维护,仅供学术研究使用。

最后,想学习前端的小伙伴们!

如果还在IT编程的世界里迷茫,不知道自己的未来规划,学习没有动力,东也学一下,西也学习一下,那你可以加入python学习交流Q群:8847,38916, 里面有大神一起交流并走出迷茫。新手可进群免费领取学习资料,分享一些学习的方法和需要注意的小细节,每晚八点也会准时的讲一些前端的小案例项目。


转载:https://blog.csdn.net/webxh6/article/details/110942248
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场