【导语】:一款借助 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-PyTorch
cp -rf Synchronized-BatchNorm-PyTorch/sync_batchnorm .
cd ../../../
cd Global/detection_models
git clone https://github.com/vacancy/Synchronized-BatchNorm-PyTorch
cp -rf Synchronized-BatchNorm-PyTorch/sync_batchnorm .
cd ../../
(2)下载landmark 检测预训练模型
cd Face_Detection/
wget http://dlib.net/files/shape_predictor_68_face_landmarks.dat.bz2
bzip2 -d shape_predictor_68_face_landmarks.dat.bz2
cd ../
(3)从Azure Blob下载训练模型
cd Face_Enhancement/
wget https://facevc.blob.core.windows.net/zhanbo/old_photo/pretrain/Face_Enhancement/checkpoints.zip
unzip checkpoints.zip
cd ../
cd Global/
wget https://facevc.blob.core.windows.net/zhanbo/old_photo/pretrain/Global/checkpoints.zip
unzip checkpoints.zip
cd ../
(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 维护,仅供学术研究使用。