
近年来随着AI技术在图像处理领域大展身手,AI去马赛克相关的项目也屡见不鲜,比如在Github上开源免费、备受欢迎的 CodeFormer 。不得不说利用这款神奇的人脸修复工具,视频去除马赛克,高清修复等真的是让小编大开眼界!
不管面对的是多么模糊的旧照片或是AI生成的模糊人脸照片或是打码照都可以瞬间修复,并达到惊人的效果。CodeFormer 是一个人脸修复神器,由南洋理工大学 S-Lab 开发。它通过网络架构实现了人脸的变换,包括色彩化、清晰化、去马赛克修复等功能。
Before
![图片[2]-CodeFormer 一款AI黑白老旧照片 高清修复+上色黑科技!视频去码秒变高清,2秒搞定,免费开源 可本地搭建](https://pic.turnfish.top/images/2024/04/13/11.jpg)
After
![图片[3]-CodeFormer 一款AI黑白老旧照片 高清修复+上色黑科技!视频去码秒变高清,2秒搞定,免费开源 可本地搭建](https://pic.turnfish.top/images/2024/04/13/9db222c0420a45913891cc625c66ac75.png)
CodeFormer模型通过结合了VQGAN和Transformer等技术,它能够相对准确地修复面部,使模糊的脸部变得清晰,并进一步增强色彩。
且CodeFormer在Github上开源,这个项目部署到本地较为复杂,而且需安装配置python和GIT环境,对于小白用户极不友好。
所以这里我贴出了CodeFormer在线体验Huggingface地址,需科学上网环境,无需任何安装,打开网址即可无限次使用,简单易上手。
![图片[4]-CodeFormer 一款AI黑白老旧照片 高清修复+上色黑科技!视频去码秒变高清,2秒搞定,免费开源 可本地搭建](https://pic.turnfish.top/images/2024/04/13/CodeFormer-AI-2-1.jpg)
安装依赖
- Pytorch >= 1.7.1
- CUDA >= 10.1
- Other required packages in
requirements.txt
# git clone this repositorygit clone https://github.com/sczhou/CodeFormercd CodeFormer# create new anaconda envconda create -n codeformer python=3.8 -yconda activate codeformer# install python dependenciespip3 install -r requirements.txtpython basicsr/setup.py developconda install -c conda-forge dlib (only for face detection or cropping with dlib)# git clone this repository git clone https://github.com/sczhou/CodeFormer cd CodeFormer # create new anaconda env conda create -n codeformer python=3.8 -y conda activate codeformer # install python dependencies pip3 install -r requirements.txt python basicsr/setup.py develop conda install -c conda-forge dlib (only for face detection or cropping with dlib)# git clone this repository git clone https://github.com/sczhou/CodeFormer cd CodeFormer # create new anaconda env conda create -n codeformer python=3.8 -y conda activate codeformer # install python dependencies pip3 install -r requirements.txt python basicsr/setup.py develop conda install -c conda-forge dlib (only for face detection or cropping with dlib)
本地搭建
下载预训练模型:
从[发布|下载facelib和dlib预训练模型]谷歌云端硬盘 | OneDrive] 到 weights/facelib
文件夹。您可以手动下载预训练模型或通过运行以下命令进行下载:
python scripts/download_pretrained_models.py facelibpython scripts/download_pretrained_models.py dlib (only for dlib face detector)python scripts/download_pretrained_models.py facelib python scripts/download_pretrained_models.py dlib (only for dlib face detector)python scripts/download_pretrained_models.py facelib python scripts/download_pretrained_models.py dlib (only for dlib face detector)
从 [ 发布 | 下载 CodeFormer 预训练模型谷歌云端硬盘 | OneDrive] 到 weights/CodeFormer
文件夹。您可以手动下载预训练模型或通过运行以下命令进行下载:
python scripts/download_pretrained_models.py CodeFormerpython scripts/download_pretrained_models.py CodeFormerpython scripts/download_pretrained_models.py CodeFormer
准备测试数据:
您可以将测试图像放在 inputs/TestWhole
文件夹中。如果您想在裁剪和对齐的脸部上进行测试,可以将它们放入 inputs/cropped_faces
文件夹中。您可以通过运行以下命令来获取裁剪和对齐的面:
# you may need to install dlib via: conda install -c conda-forge dlibpython scripts/crop_align_face.py -i [input folder] -o [output folder]# you may need to install dlib via: conda install -c conda-forge dlib python scripts/crop_align_face.py -i [input folder] -o [output folder]# you may need to install dlib via: conda install -c conda-forge dlib python scripts/crop_align_face.py -i [input folder] -o [output folder]
[注意]如果您想在论文中比较CodeFormer,请运行以下命令,指示 --has_aligned
(用于裁剪和对齐人脸),因为针对整个图像的命令将涉及人脸背景融合的过程这可能会破坏边界上的毛发纹理,从而导致不公平的比较。
保真度权重 w 位于 [0, 1] 中。一般来说,较小的 w 往往会产生较高质量的结果,而较大的 w 会产生较高保真度的结果。结果将保存在 results
文件夹中。
🧑🏻面部修复(裁剪并对齐面部)
# For cropped and aligned faces (512x512)python inference_codeformer.py -w 0.5 --has_aligned --input_path [image folder]|[image path]# For cropped and aligned faces (512x512) python inference_codeformer.py -w 0.5 --has_aligned --input_path [image folder]|[image path]# For cropped and aligned faces (512x512) python inference_codeformer.py -w 0.5 --has_aligned --input_path [image folder]|[image path]
🖼️ 整体图像增强
# For whole image# Add '--bg_upsampler realesrgan' to enhance the background regions with Real-ESRGAN# Add '--face_upsample' to further upsample restorated face with Real-ESRGANpython inference_codeformer.py -w 0.7 --input_path [image folder]|[image path]# For whole image # Add '--bg_upsampler realesrgan' to enhance the background regions with Real-ESRGAN # Add '--face_upsample' to further upsample restorated face with Real-ESRGAN python inference_codeformer.py -w 0.7 --input_path [image folder]|[image path]# For whole image # Add '--bg_upsampler realesrgan' to enhance the background regions with Real-ESRGAN # Add '--face_upsample' to further upsample restorated face with Real-ESRGAN python inference_codeformer.py -w 0.7 --input_path [image folder]|[image path]
🎬 视频增强
# For Windows/Mac users, please install ffmpeg firstconda install -c conda-forge ffmpeg# For Windows/Mac users, please install ffmpeg first conda install -c conda-forge ffmpeg# For Windows/Mac users, please install ffmpeg first conda install -c conda-forge ffmpeg
# For video clips# Video path should end with '.mp4'|'.mov'|'.avi'python inference_codeformer.py --bg_upsampler realesrgan --face_upsample -w 1.0 --input_path# For video clips # Video path should end with '.mp4'|'.mov'|'.avi' python inference_codeformer.py --bg_upsampler realesrgan --face_upsample -w 1.0 --input_path# For video clips # Video path should end with '.mp4'|'.mov'|'.avi' python inference_codeformer.py --bg_upsampler realesrgan --face_upsample -w 1.0 --input_path
🌈 脸部着色(裁剪并对齐脸部)
# For cropped and aligned faces (512x512)# Colorize black and white or faded photopython inference_colorization.py --input_path [image folder]|[image path]# For cropped and aligned faces (512x512) # Colorize black and white or faded photo python inference_colorization.py --input_path [image folder]|[image path]# For cropped and aligned faces (512x512) # Colorize black and white or faded photo python inference_colorization.py --input_path [image folder]|[image path]
🎨 脸部修复(裁剪并对齐脸部)
# For cropped and aligned faces (512x512)# Inputs could be masked by white brush using an image editing app (e.g., Photoshop)# (check out the examples in inputs/masked_faces)python inference_inpainting.py --input_path [image folder]|[image path]# For cropped and aligned faces (512x512) # Inputs could be masked by white brush using an image editing app (e.g., Photoshop) # (check out the examples in inputs/masked_faces) python inference_inpainting.py --input_path [image folder]|[image path]# For cropped and aligned faces (512x512) # Inputs could be masked by white brush using an image editing app (e.g., Photoshop) # (check out the examples in inputs/masked_faces) python inference_inpainting.py --input_path [image folder]|[image path]
保真度权重w位于 [0, 1] 中。通常,较小的w往往会产生较高质量的结果,而较大的w会产生较高保真度的结果。
结果将保存在results
文件夹中。
请登录后查看评论内容