python之AI视频去码图片修复CodeFormer,把你的老照片变漂亮

news2025/1/16 16:43:26

CodeFormer介绍

CodeFormer是由南洋理工大学-商汤科技联合研究中心S-Lab在NeurIPS 2022上提出的一种基于VQGAN+Transformer的人脸复原模型。该方法基于预训练VQGAN离散码本空间,改变复原任务的固有范式,将人脸复原任务转成Code序列的预测任务,大幅度降低了复原任务映射的不确定性,同时VQGAN的码本先验也为复原任务提供了丰富的人脸细节。最后,通过Transformer全局建模,进一步增加了模型对严重退化的鲁棒性,使得复原的人脸更加真实。

主要用途:老照片修复与增强、面部修复、面部颜色增强和修复、马赛克还原等。

论文地址:https://arxiv.org/pdf/2206.11253.pdf
代码地址:https://github.com/sczhou/CodeFormer

环境搭建

conda环境安装

conda环境准备详见:annoconda

Anaconda,中文大蟒蛇,是一个开源的Anaconda是专注于数据分析的Python发行版本,包含了conda、Python等190多个科学包及其依赖项。

Anaconda就是可以便捷获取包且对包能够进行管理,包括了python和很多常见的软件库和一个包管理器conda。常见的科学计算类的库都包含在里面了,使得安装比常规python安装要容易,同时对环境可以统一管理的发行版本。

下载地址:https://repo.anaconda.com/archive/

Index of /anaconda/archive/ | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror 

# 清华镜像源
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/

 注:给pip添加镜像和给conda添加镜像源是不同的,上述conda config添加的源实测不能用的(上述的是pip的镜像源,不能在conda下用),正确应该是:

给pip添加清华通道:

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

给conda添加清华通道:

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

运行环境构建 

git clone https://github.com/sczhou/CodeFormer
cd CodeFormer
 
conda create -n codeformer python=3.9
conda activate codeformer
 
pip install -r requirements.txt 
python basicsr/setup.py develop
 
conda install ffmpeg
pip install ffmpy

模型下载 

python scripts/download_pretrained_models.py facelib
 
python scripts/download_pretrained_models.py CodeFormer

parsing_parsenet 下载模型存储到weights/facelib/目录下

codeformer_colorization下载模型存储到weights/CodeFormer/目录下

codeformer_inpainting下载模型存储到weights/CodeFormer/目录下

RealESRGAN_x2plus下载模型存储到weights/realesrgan/目录下

如何使用

人脸复原

python inference_codeformer.py -w 0.5 --has_aligned --input_path inputs/cropped_faces/0143.png

 

全图片增强 

python inference_codeformer.py -w 0.7 --bg_upsampler realesrgan  --face_upsample  --input_path data/test4.png

 

人脸颜色增强 

python inference_colorization.py --input_path inputs/cropped_faces/0368.png

 

人脸补全 

python inference_inpainting.py --input_path inputs/masked_faces/00105.png

 

其他资源

GitHub Proxy 代理加速

滑动验证页面

庖丁解牛-Resnet50 深度剖析,细致讲解,深入理解-CSDN博客

最强的AI视频去码&图片修复模型:CodeFormer-CSDN博客

64位Windows11系统快速搭建修图神器codeformer运行环境教程详解-CSDN博客

AI视频去码、图片修复-CSDN博客

旧照片修复-模糊图片变清晰-2023年度最强神器 codeformer_github 图片清晰_delacrxoix_xu的博客-CSDN博客

最强的AI 视频去码、图片修复! - 知乎

OpenAI又一神器!Whisper 语音转文字手把手教程 - 知乎

Anaconda介绍、安装及使用教程 - 知乎

最强的AI视频去码&图片修复模型:CodeFormer-CSDN博客 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1392488.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

DOM 的 diff 算法

经典面试题: 1)react/vue中的 key 有什么作用?(key的内部原理是什么?) 2)为什么遍历列表时,key 最好不用 index? 1、虚拟dom中key的作用: 1) 简…

SpringBoot新手入门完整教程和项目示例

文章目录 SpringBoot新手入门完整教程和项目示例1、SpringBoot简介2、Spring Boot的核心功能?(优点)3、SpringBoot与SpringMVC 的区别?4、构建SpringBoot项目4.1、在官网自动生成下载spring boot项目4.2、手动使用maven创建Spring…

vue中使用高德地图,根据类型显示不同点,点击出现弹框居中显示,并在可视化区域显示所有点

效果图 一、安装 vue-amap 插件 npm install vue-amap --save二、vue页面 <template> <div><ul styledisplay:flex;><liv-for"(item, index) in checkList":key"index"click"onClick(item)":class"item.checked ?…

直观全面的数据库管理 RazorSQL

RazorSQL是一款功能强大的数据库管理工具&#xff0c;适用于各种数据库系统&#xff0c;如MySQL、Oracle、SQL Server、SQLite等。它提供了一个直观的界面&#xff0c;让用户能够轻松地管理数据库&#xff0c;包括查询、编辑、创建和管理数据库对象等操作。RazorSQL还支持多种S…

使用composer生成的DMG和PKG格式软件包有何区别

在使用Composer从包源构建软件包时候&#xff0c;有两种不同类型的包&#xff1a;PKG和DMG。你知道两者之间的区别吗? 以及如何选取吗&#xff1f; 每种格式都有各自的优势具体取决于软件包的预期用途以及用于部署软件包的工具。下面我们来了解一下PKG和DMG格式的区别和用途。…

论文笔记:信息融合的门控多模态单元(GMU)

整理了GMU&#xff08;ICLR2017 GATED MULTIMODAL UNITS FOR INFORMATION FUSION&#xff09;论文的阅读笔记 背景模型实验 论文地址&#xff1a; GMU 背景 多模态指的是同一个现实世界的概念可以用不同的视图或数据类型来描述。比如维基百科有时会用音频的混合来描述一个名人…

详解Vite创建Vue3项目+vue-router+ts+vite+element-plus

前言 在之前的文章中写过“Vue3TSElementPlus的安装和使用教程【详细讲解】”&#xff0c;但那篇文章写的是创建vue3的项目没有使用到Vite构建工具进行创建还是使用的常规webpacket构建工具进行创建的。提到Vite和webpacket的时候我们可以简单说一下。Vite 和 Webpack 都是现代…

SpringBoot框架自定义解析配置项占位符(${})获取配置

一、前言 在最近项目开发中&#xff0c;有一个需求&#xff0c;针对自定义注解中字符串属性值的设置需要支持使用”${xx}“占位符获取在SpringBoot框架配置文件中配置项对应的属性值&#xff0c;而且支持多个”${xx}“标识的配置任意拼接。 二、功能实现 从实现思路上说还是…

nas-群晖docker查询注册表失败解决办法(平替:使用SSH命令拉取ddns-go)

一、遇到问题 群晖里面的docker图形化界面现在不能直接查询需要下载的东西&#xff0c;原因可能就是被墙了&#xff0c;那么换一种方式使用SSH命令下载也是可以的&#xff0c;文章这里以在docker里面下载ddns-go为例子。 二、操作步骤 &#xff08;一&#xff09;打开群晖系统…

STM32 TIM输出比较、PWM波形

单片机学习&#xff01; 目录 一、输出比较简介 二、PWM简介 三、输出比较通道 3.1通用定时器的输出比较部分电路 3.2高级定时器的输出比较部分电路 四、输出模式控制器 五、PWM基本结构 六、PWM参数计算 总结 前言 文章讲述STM32定时器的输出比较功能&#xff0c;它主…

【C++】explicit的作用 --- 2024.1.17

目录 explicit的作用结束语 explicit的作用 先看示例代码&#xff1a; class Maker { public:Maker(int n){} }; int main() {Maker m 10; }在上述代码中&#xff0c;main函数里我们实例化对象名称为m&#xff0c;并且赋值为10&#xff0c;作为有参构造函数的参数。但是实际…

libzmq XPUB/XSUB模型

libzmq XPUB/XSUB模型 与PUB/SUB功能类似,但是使用场景不一样.普通用法我就不说了,XPUB/XSUB典型的应用是作代理.PUB/SUB的问题 如图:最下面每个长方形框框是一个进程,他们都或多或少的需要关注PUB1-3的消息,所以最终的连接是全链接,很复杂,如果再多几个进程,连线就密密麻麻了…

SpringBoot整合MyBatis项目进行CRUD操作项目示例

文章目录 SpringBoot整合MyBatis项目进行CRUD操作项目示例1.1.需求分析1.2.创建工程1.3.pom.xml1.4.application.properties1.5.启动类 2.添加用户2.1.数据表设计2.2.pojo2.3.mapper2.4.service2.5.junit2.6.controller2.7.thymeleaf2.8.测试 3.查询用户3.1.mapper3.2.service3…

Microsoft Word 设置底纹

Microsoft Word 设置底纹 References 打开文档页面&#xff0c;选中特定段落或全部文档 在“段落”中单击“边框”下三角按钮 在列表中选择“边框和底纹”选项 在“边框和底纹”对话框中单击“底纹”选项卡 在图案样式和图案颜色列表中设置合适颜色的底纹&#xff0c;单击“确…

软件测试中的白盒测试,这些技巧你知道吗?

对于很多刚开始学习软件测试的小伙伴来说&#xff0c;如果能尽早将黑盒、白盒测试弄明白&#xff0c;掌握两种测试的结论和基本原理&#xff0c;将对自己后期的学习有较好的帮助。今天&#xff0c;我们就来聊聊黑盒、白盒测试的相关话题。 1、黑盒测试的方法和小结 最常见黑盒…

10 微信小程序开发

知识点回顾 1.项目回顾1.2 小程序1.3 API1.4 后台管理 2.后台管理celery2.1 基本后台管理2.1.1 专场2.1.2 拍品列表 3.逻辑开发4.部署 各位小伙伴想要博客相关资料的话关注公众号&#xff1a;chuanyeTry即可领取相关资料&#xff01; 1.项目回顾 此项目是由【小程序】【API】【…

Java21 + SpringBoot3集成Spring Data JPA

Java21 SpringBoot3集成Spring Data JPA 文章目录 Java21 SpringBoot3集成Spring Data JPA前言相关技术简介ORM&#xff08;Object-Relational Mapping&#xff0c;对象-关系映射&#xff09;JPA&#xff08;Java Persistence API&#xff0c;Java持久层API&#xff09;Hiber…

HFSS笔记/信号完整性分析(一)——常用快捷键+建模技巧

文章目录 1、常用快捷键2、常用建模技巧2.1 如何由一个无厚度的sheet生成一个有厚度的2.2 如何绘制T形截面的传输线&#xff1f;2.3 自动建立辐射边界法一、法二、 仅做笔记整理与分享。 1、常用快捷键 快捷键功能CtrlDfit it all 以合适的尺寸至于窗口中间CtrlH隐藏object或者…

Docker网络配置网络模式

前言 Docker 的网络模式是一种定义容器如何在网络中通信的方式。Docker 提供了多种网络模式&#xff0c;每种模式都适用于不同的使用场景 一.网络相关概念 1.子网掩码 互联网是由许多小型网络构成的&#xff0c;每个网络上都有许多主机&#xff0c;这样便构成了一个有层次的结…

【昕宝爸爸小模块】图文源码详解什么是线程池、线程池的底层到底是如何实现的

➡️博客首页 https://blog.csdn.net/Java_Yangxiaoyuan 欢迎优秀的你&#x1f44d;点赞、&#x1f5c2;️收藏、加❤️关注哦。 本文章CSDN首发&#xff0c;欢迎转载&#xff0c;要注明出处哦&#xff01; 先感谢优秀的你能认真的看完本文&…