• AI 黑科技,老照片修复,模糊变高清


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

    对比:右侧为修复后

    只看人脸部分

    GFPGAN

    https://arxiv.org/pdf/2101.04061.pdf

    FPGAN算法由腾讯PCG ARC实验室提出,其相关论文已被CVPR2021收录。

    研究核心利用了包含在训练好的人脸生成模型里的「知识」, 被称之为生成人脸先验 (Generative Facial Prior, GFP)。它不仅包含了丰富的五官细节, 还有人脸颜色, 此外它能够把人脸当作一个整体来对待, 能够处理头发、耳朵、面部轮廓。基于预训练好的生成模型, 研究者们提出了利用生成人脸先验 GFP 的人脸复原模型 GFP-GAN。相比于近几年其他人脸复原的工作, 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目录下看到修复前后的对比图片了:

  • 相关阅读:
    $router和$route的区别
    提莫攻击
    paste命令
    数组中的第K个最大元素
    od命令
    被围绕的区域
    不用虚机不用Docker使用Azure应用服务部署ASP.NET Core程序
    面试官:对象可能会迟到,但它永远不会缺席
    Kubernetes 的层级命名空间介绍
    每日一道 LeetCode (21):对称二叉树
  • 原文地址:https://www.cnblogs.com/jpld/p/16017810.html
Copyright © 2020-2023  润新知