赞
踩
Code Former是南洋理工大学和商汤科技联合研究中心联合开发一款AI人脸修复算法,通过该算法,可以对已经模糊的图片进行人脸修复,找回斑驳的记忆
由于网上对于Code Former的封装,全都是要花钱,或者需要其他什么曲折的方式,才能勉强使用到,所以为了能愉快的修复照片,决定自己整理一下开源项目的搭建使用方法,方便更多需要修复照片的小伙伴
Code Former项目已经在Github开源了,直接访问github项目地址,即可看到Readme文件中,对项目构建、使用的简介。
Code Former整体流程大概可分为
下面对这几个具体流程进行详细说明
Python安装有两个选择
直接百度搜索Python官网,进入官网点击下载即可,不过需要注意,不要下载最新版,Code Former要求Python3.8的版本高版本或低版本可能会出现一些依赖问题,建议直接下载Python3.8版本,官网链接。
Anaconda是Python的一个发行版,相比Python,Anaconda多了conda、numpy等的一大堆便于使用的工具包,且可以创建不同版本Python的环境,相对来说更好使用,官网链接。
下面介绍Anaconda安装步骤
Anaconda安装,就根据安装程序提示,一直下一步就好了
Anaconda安装好后,打开客户端,点击environments
,点击底部的create
按钮,创建一个环境,环境名称自定义,推荐codeformer
,环境的python版本,需要注意一下,要选3.8.x
的版本,否则后面安装依赖的时候会报错。
环境创建完成后,先放旁边,等一会使用。
Git是一个版本管理工具,用于clone项目源码,直接到git官网下载一个git安装即可,官网链接。
如果没有git,可以直接在github下载源码压缩包,也是可以使用的,具体使用下面会介绍。
pytorch是一个开源的Python机器学习库,可以用于支持code former进行机器学习,安装方法如下
访问:https://pytorch.org/ 网站,并点击Get Started
在START LOCALLY
根据自己电脑配置及安装的软件,选择合适信息即可,这里Computer Platform
要看自己电脑显卡适不适合,如果电脑显卡是NVIDIA的,且支持CUDA,则选择对应版本的CUDA即可,如果不是NVIDIA显卡,则选择CPU,我的电脑没有显卡,所以我选择CPU
如果不确定自己的显卡支不支持CUDA,可以直接选择CPU,一般修复照片用不了太大的硬件需求,CPU完全够了
选择完毕之后,将Run this Command
的命令行复制一下,到刚刚安装好的Anaconda的codeformer
环境中执行一下,等待安装完成即可
上面Pytorch安装完成后,就需要进入github下载源码了。下载源码有两种方式
进入github项目地址,点击Code
按钮,点击Local
,再选择Https
,复制下方的https链接
然后回到自己电脑,找一个文件夹,用于存放项目源码。在这个文件夹中鼠标右键点击一下,选择Git Bash Here
打开git命令行窗口。
在命令行窗口中输入以下命令并执行,等待项目下载完成即可。
git clone https://github.com/sczhou/CodeFormer.git
访问git项目地址,点击Code
按钮,再点击Download ZIP
,等待源码下载完成即可,下载完成后,将zip压缩包找一个地方解压出来就行。
以上环境及源码都准备完成后,就需要为项目安装其他相关依赖了,分别为:
在源码文件夹下,打开anaconda的codeformer环境cmd窗口,执行以下命令,安装项目所需依赖库(如果是单独安装了python的话,直接在源码文件夹打开cmd窗口即可)
pip3 install -r requirements.txt
如果命令执行过程中报错,可以打开requirements.txt
文件,使用pip3 install 具体依赖库
的方式,手动安装所需的依赖库
例如,requirements.txt文件第一行是addict
依赖,则执行pip3 install addict
即可手动安装好addict依赖库
上一步执行成功后,再执行以下命令,编译codeformer
python basicsr/setup.py develop
编译步骤成功后,还需要下载两个模型,才可以使用codeformer的人像修复功能,执行以下三个命令,分别下载几个模型
注意:这三条命令需要一条一条执行,不要一起执行
python scripts/download_pretrained_models.py facelib
python scripts/download_pretrained_models.py dlib
python scripts/download_pretrained_models.py CodeFormer
经过以上繁琐流程之后,code former就算正式搭建完成了,下面就可以愉快使用了。不过codeformer自己没有gui交互页面,所以目前只能通过命令行的形式来进行使用,如果对codeformer图形化交互有兴趣的同学,可以自己研究一下。
执行一下命令,即可对只有一个人脸的图片进行修复
python inserface_codeformer.py -w 0.2 --has_aligned --input_path [image folder]|[image path]
命令说明:
修复效果大概就像下图这样↓(实测,修复效果真的很棒)
如果一个照片里面有多个人像,则可以执行以下命令进行修复
python inference_codeformer.py -w 0.7 --input_path [image folder]|[image path]
这个命令中的参数与7.1中的参数含义一致,可以按照自己需求进行设置
以上就是code former从搭建到使用的步骤了,除了修复图片,codeformer还可以修复视频,更多的使用方法,等待小伙伴们自己探索,有问题欢迎私信交流哇。
Anaconda下载依赖的时候,会去连接国外的镜像源,网络不好的话,会导致下载速度极慢,可以将Anaconda镜像源切换到清华大学的镜像源,执行以下三条命令,即可将镜像源换成清华大学的
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
pip进行依赖下载的时候,也会遇到速度很慢的问题,可以执行以下命令,将pip镜像源换成清华或者阿里的镜像源
镜像源选择一个使用就行,如果pip在下载过程中报错,提示没有相关依赖的话,可以再切换一下镜像源,比如清华镜像源没有某个依赖,那么就切换到阿里云镜像源,一般这两个镜像源都比较全,如果还没有,建议百度摘一下其他的pip镜像源再做替换尝试下载
# 清华镜像源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple/
# 阿里云镜像源
pip config set global.index-url https://mirrors.aliyun.com/pypi/simple/
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。