+ 我要发布
我发布的 我的标签 发现
浏览器扩展
斑点象@Edge

一键修复老照片

微软研究团队开发的一款开源项目,专注于利用深度学习技术修复老旧照片,包括去除划痕、提高照片清晰度和色彩效果。 Bringing-Old-Photos-Back-to-Life 开源地址:https://github.com/microsoft/Bringing-Old-Photos-Back-to-Life 该项目的基本原理是使用变分自动编码机(VAE)将旧照片和干净照片分别编码到两个潜在空间,然后通过合成数据学习两个潜在空间之间的转换,从而实现对真实照片的修复。 Colab 体验地址:https://colab.research.google.com/drive/1NEm6AsybIiC5TwTU_4DqDkQO0nFRB-uA 为了处理照片中的结构化和非结构化缺陷,项目设计了一个包含全局分支和局部分支的网络结构,其中全局分支使用 partial nonlocal block 处理结构化缺陷,如划痕和灰尘斑点,局部分支处理非结构化缺陷,如噪声和模糊。 1、安装 部署 Bringing-Old-Photos-Back-to-Life 项目需要一定的环境配置,包括 Python、torch 和 torchvision等。 我们需要从 GitHub 下载项目的源代码并安装依赖项,下载必要的组件,如 PyTorch 库和 landmark 检测预训练模型,并使用预训练模型进行照片修复 首先从 GitHub 下载 Bringing-Old-Photos-Back-to-Life 开源项目的源码: ``` git clone https://github.com/microsoft/Bringing-Old-Photos-Back-to-Life.git ``` 然后下载一些必要的组件,进入 Face_Enhancement/models/networks/ 目录: ``` cd Face_Enhancement/models/networks/ git clone https://github.com/vacancy/Synchronized-BatchNorm-PyTorch cp -rf Synchronized-BatchNorm-PyTorch/sync_batchnorm . cd ../../../ ``` 在 Global/detection_models/ 目录下也执行同样的操作: ``` cd Global/detection_models git clone https://github.com/vacancy/Synchronized-BatchNorm-PyTorch cp -rf Synchronized-BatchNorm-PyTorch/sync_batchnorm . cd ../../ ``` 下载人脸关键点检测的预训练模型: ``` 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 ../ ``` 将文件 Face_Enhancement/checkpoints.zip 放在 ./Face_Enhancement 下,将文件 Global/checkpoints.zip 放在 ./Global 下,然后分别解压。 ``` cd Face_Enhancement/wget https://github.com/microsoft/Bringing-Old-Photos-Back-to-Life/releases/download/v1.0/face_checkpoints.zipunzip face_checkpoints.zipcd ../cd Global/wget https://github.com/microsoft/Bringing-Old-Photos-Back-to-Life/releases/download/v1.0/global_checkpoints.zipunzip global_checkpoints.zipcd ../ ``` 安装依赖项: ``` pip install -r requirements.txt ``` 2、使用 安装并下载预训练模型后,您可以使用一个简单的命令轻松恢复旧照片。 注意:GPU 可以设置为 0 或 0,1,2 或 0,2,CPU 使用 -1。 对于没有划痕的图像,命令如下: ``` python run.py --input_folder [test_image_folder_path] \ --output_folder [output_path] \ --GPU 0 ``` 对于有划痕的图像,命令如下: ``` python run.py --input_folder [test_image_folder_path] \ --output_folder [output_path] \ --GPU 0 \ --with_scratch ``` 对于有划痕的高分辨率图像,命令如下: ``` python run.py --input_folder [test_image_folder_path] \ --output_folder [output_path] \ --GPU 0 \ --with_scratch \ --HR ``` [test_image_folder_path] 为输入图片的路径,[output_path] 修复后图片的存储路径。 3、GUI 界面 该项目也提供了一个GUI 界面,用户可以在界面中上传图像并在相应的窗口中显示结果,打开方式如下: ``` 运行 GUI.py 文件。 点击 Browse 按钮 并从 test_images/old_w_scratch 文件夹中选择您的图像以删除划痕。 单击 Modify Photo 按钮。 等待一段时间就可以在 GUI 窗口右侧查看到结果。 单击 Exit 按钮可以退出窗口并在输出文件夹中获取结果图像。 ```
我的笔记
你可能想看的