爆火「视频版ControlNet」开源了!靠提示词精准换画风,全华人团队出品
“视频版ControlNet”来了!
让蓝衣战神秒变迪士尼公举:

视频处理前后,除了画风以外,其他都不更改。
女孩说话的口型都保持一致。

正在插剑的姜文,也能“下一秒”变猩球崛起了。

这就是由全华人团队打造的最新视频处理算法CoDeF,发布才几天,迅速在网上爆火。
网友们看了直呼:
这一天天的,虚实分辨越来越难了!

只需要自己拍点东西,然后覆盖上去,就能变成各种各样的动画了。

有人说,只需给它一年时间,就能被用在电影制作上了。
这马上引来其他人的肯定:技术发展真的非常疯狂、非常快。

目前,团队已将这一方法在GitHub上开源。
姿势不变,画风“皮套”随便换
之所以会被称为是“视频版ControlNet”,主要原因在于CoDeF能够对原视频做到精准控制。
(ControlNet实现了根据提示词精准控制图像元素改变,如人物动作、图像结构等)
根据给到的提示词,它仅改变视频的画风,而且是针对完整视频。
比如输入“Chinese ink painting”,风景纪录片能秒变国风水墨大作。

包括水流也能很好跟踪,整个流体动向都没有被改变。

甚至一大片穗子,在原视频里怎么摆动,改变画风后频率和幅度也如出一辙。

在画风改变上,CoDeF也做了很多细节处理,让效果更加逼真合理。
“由春入冬”后,原本有涟漪的河流静止了,天空中的云彩被换成了太阳,更加符合冬日景象。

霉霉变成魔法少女后,耳环被换成了发光宝石,手里的苹果也换成了魔法球。

这样一来,让电影角色一键变老也简单了许多。
皱纹可以“悄无声息”上脸,其他一切都没有变化。

所以,CoDeF是怎么实现的呢?
可跟踪水和烟雾,跨帧一致性更强
CoDeF是英文“the content deformation field”的缩写,即作者在此提出了一种叫做内容形变场的新方法,来用于视频风格迁移任务。
比起静态的图像风格迁移,这种任务的复杂点在于时间序列上的一致性和流畅度。
比如处理水、烟雾这种元素,两帧画面之间的一致性非常重要。
在此,作者“灵机一动”,提出用图片算法来直接解决视频任务。
他们只在一张图像上部署算法,再将图像-图像的转换,提升为视频-视频的转换,将关键点检测提升为关键点跟踪,而且不需要任何训练。
这样一来,相较于传统方法,能够实现更好的跨帧一致性,甚至跟踪非刚性物体。
具体而言,CoDeF将输入视频分解为2D内容规范场(canonical content field)和3D时间形变场(temporal deformation field):
前者用于聚合整个视频中的静态内容;后者则负责记录图像沿时间轴的每个单独帧的转换过程。
利用MLP(多层感知器),每个场都用多分辨率2D或3D哈希表来表示。

在此,作者特意引入了正则化,来保证内容规范场能够继承原视频中的语义信息(比如物体的形状)。
如上图所示,这一系列设计使得CoDeF可以自动支持各种图像算法直接应用于视频处理——
也就是只需利用相应算法提取出来一张规范图像,然后通过时间形变场沿着时间轴传播结果即可。
比如,给CoDeF“套上”本用于图片处理的ControlNet,就可以完成视频风格的“翻译”(也就是我们开头和第一段看的那一堆效果):

“套上”分割一切算法SAM,我们就能轻松做到视频的对象跟踪,完成动态的分割任务:

“套上”Real-ESRGAN,则给视频做超分也是信手拈来……

整个过程非常轻松,不需要对待操作视频进行任何调整或处理。
不仅能处理,还能保证效果,即良好的时间一致性和合成质量。
如下图所示,相比去年诞生的Layered neural atlas算法,CoDeF能够呈现非常忠于原视频的细节,既没有变形也无破坏。

而在根据文本提示修改视频风格的任务对比中,CoDeF全部表现突出,不仅最匹配所给要求,也有着更高的完成度。

跨帧一致性则如下图所示:

一位一作刚本科毕业
这项研究由香港科技大学、蚂蚁团队、浙江大学CAD&CG实验室共同带来。
共同一作有三位,分别是欧阳豪、Yujun Shen和Yuxi Xiao。
其中欧阳豪为港科大博士,师从陈启峰(本文通讯作者之一);本科导师为贾佳亚。曾在MSRA、商汤、腾讯优图实验室实习过,现在正在谷歌实习。

另一位是Qiuyu Wang。Yujun Shen是通讯作者之一。
他是蚂蚁研究所的高级研究科学家,主管交互智能实验室,研究方向为计算机视觉和深度学习,尤其对生成模型和3D视觉效果感兴趣。

第三位一作为Yuxi Xiao才刚刚从武大本科毕业,今年9月开始在浙大CAD&CG实验室读博。
他以一作身份发表的论文Level-S2fM: Structure from Motion on Neural Level Set of Implicit Surfaces,被CVPR2023接收。

论文地址:
https://arxiv.org/abs/2308.07926
项目地址:
https://qiuyu96.github.io/CoDeF/
参考链接:
https://twitter.com/LinusEkenstam/status/1692492872392626284
相关文章:
爆火「视频版ControlNet」开源了!靠提示词精准换画风,全华人团队出品
“视频版ControlNet”来了! 让蓝衣战神秒变迪士尼公举: 视频处理前后,除了画风以外,其他都不更改。 女孩说话的口型都保持一致。 正在插剑的姜文,也能“下一秒”变猩球崛起了。 这就是由全华人团队打造的最新视频处理…...
常用的数据可视化工具有哪些?要操作简单的
随着数据量的剧增,对分析效率和数据信息传递都带来了不小的挑战,于是数据可视化工具应运而生,通过直观形象的图表来展现、传递数据信息,提高数据分析报表的易读性。那么,常用的操作简单数据可视化工具有哪些࿱…...
ssl卸载原理
SSL卸载,也称为SSL解密,是一种将SSL加密数据流卸成非加密的明文数据流的过程。SSL卸载通常在负载均衡器、代理服务器、WAF等设备中实现,可以提高传输效率和安全性。 SSL卸载的原理是将SSL数据流拦截下来,通过设备内置的证书进行解…...
【C语言】动态内存管理,详细!!!
文章目录 前言一、为什么存在动态内存分配二、动态内存开辟函数的介绍1.malloc2.calloc3.realloc4.free 三、动态内存开辟中的常见错误1.误对NULL进行解引用操作2.对于动态开辟的空间进行了越界访问3.对于非动态开辟的内存进行了free操作4.只free掉动态开辟内存的一部分5.多次f…...
2023年国赛 高教社杯数学建模思路 - 案例:退火算法
文章目录 1 退火算法原理1.1 物理背景1.2 背后的数学模型 2 退火算法实现2.1 算法流程2.2算法实现 建模资料 ## 0 赛题思路 (赛题出来以后第一时间在CSDN分享) https://blog.csdn.net/dc_sinor?typeblog 1 退火算法原理 1.1 物理背景 在热力学上&a…...
jenkins 日志输出显示时间戳的方式
网上很多方式比较片面,最新版插件直接使用即可无需更多操作。 使用方式如下: 1.安装插件 Timestamper 2.更新全局设置 系统设置-找到 Timestamper 勾选 Enabled for all Pipeline builds 也可修改时间戳格式。 帮助信息中显示 When checked, timesta…...
geacon_pro配合catcs4.5上线Mac、Linux
我的个人博客: xzajyjs.cn 一些链接 Try师傅的catcs4.5项目: https://github.com/TryGOTry/CobaltStrike_Cat_4.5,最新版解压密码见:https://www.nctry.com/2708.html geacon_pro: https://github.com/testxxxzzz/geacon_pro BeaconTool.jar: https:/…...
vue 实现腾讯地图搜索选点功能(附加搜索联想功能)
注意:开发环境、正式环境需在腾讯地图配置ip地址白名单、域名白名单 封装map组件: <template><iframe width"100%" style"border: none;width: 100%;height: 100%;" :src"map_src"></iframe> </t…...
解密长短时记忆网络(LSTM):从理论到PyTorch实战演示
目录 1. LSTM的背景人工神经网络的进化循环神经网络(RNN)的局限性LSTM的提出背景 2. LSTM的基础理论2.1 LSTM的数学原理遗忘门(Forget Gate)输入门(Input Gate)记忆单元(Cell State)…...
17.1.2 【Linux】systemd使用的unit分类
systemd 有什么好处? 平行处理所有服务,加速开机流程: 旧的 init 启动脚本是“一项一项任务依序启动”的模式,因此不相依的服务也是得要一个一个的等待。但目前我们的硬件主机系统与操作系统几乎都支持多核心架构了,s…...
vue离线缓存资源文件
本文章主要是解决大文件,实时请求资源浪费网络资源的问题 从而有效的将解决用户体验的问题 话不多说上才艺 ⬇️⬇️⬇️⬇️⬇️⬇️⬇️ 找到项目中的 index.html 文件,并在 html 标签中加入 manifest"manifest.appcache" 安装 appcache-manifest 包 npm ins…...
2023华为杯研赛数学建模A题B题C题D题E题F题资料 华为杯
本次比赛我们将会全程更新华为杯研赛赛题思路模型及代码,大家查看文末名片获取 之前华为杯相关的资料和助攻可以查看 2022华为杯数学建模研赛选题建议和思路分析_方形件组批优化问题_UST数模社_的博客-CSDN博客 我们华为杯更新的流程如下: A题思路&a…...
星际争霸之小霸王之小蜜蜂(六)--让子弹飞
目录 前言 一、添加子弹设置 二、创建子弹 三、创建绘制和移动子弹函数 四、让子弹飞 五、效果 总结 前言 小蜜蜂的基本操作已经完成了,现在开始编写子弹的代码了。 一、添加子弹设置 在我的预想里,我们的小蜜蜂既然是一只猫,那么放出的子弹…...
opencv简单使用
cv2库安装, conda install opencv-python注意cv2使用时,路径不能有中文。(不然会一直’None’ _ update # 处理中文路径问题 def cv_imread(file_path): #使用之前需要导入numpy、cv2库,file_path为包含中文的路径return cv2.imd…...
SpringBoot 微人事 职称管理模块(十三)
职称管理前端页面设计 在职称管理页面添加输入框 export default {name: "JobLevelMarna",data(){return{Jl:{name:""}}}}效果图 添加一个下拉框 v-model的值为当前被选中的el-option的 value 属性值 <el-select v-model"Jl.titlelevel" …...
动态规划之0-1背包问题
动态规划之0-1背包问题 文章目录 动态规划之0-1背包问题一、先给出代码二、讲解第一步:初始化第二步:动态规划,填表第三步:回溯,找到选择方案总结 三、进阶(用一维数组解决问题) 一、先给出代码…...
为什么需要单元测试?
为什么需要单元测试? 从产品角度而言,常规的功能测试、系统测试都是站在产品局部或全局功能进行测试,能够很好地与用户的需要相结合,但是缺乏了对产品研发细节(特别是代码细节的理解)。 从测试人员角度而言…...
《合成孔径雷达成像算法与实现》Figure3.13——匹配滤波器的三种实现方式
clc clear close all% 参数设置 TBP 80; % 时间带宽积 T 10e-6; % 脉冲持续时间 N_ZD 60; % 零频点位于中点右侧的距离,P58% 参数计算 B TBP/T; …...
Android企业项目开发实训室建设方案
一 、系统概述 Android企业项目开发作为新一代信息技术的重点和促进信息消费的核心产业,已成为我国转变信息服务业的发展新热点:成为信息通信领域发展最快、市场潜力最大的业务领域。互联网尤其是移动互联网,以其巨大的信息交换能力和快速渗透…...
11_Redis经典五大类型源码及底层实现
Redis经典五大类型源码及底层实现 一、Redis数据类型的底层数据结构 SDS动态字符串双向链表压缩列表 zpilist哈希表 hashtable调表 skiplist整数集合 intset快速列表 quicklist紧凑列表 listpack 二、Redis源码地址 Github:https://github.com/redis/redis 三、…...
SkyWalking 10.2.0 SWCK 配置过程
SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...
在rocky linux 9.5上在线安装 docker
前面是指南,后面是日志 sudo dnf config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo sudo dnf install docker-ce docker-ce-cli containerd.io -y docker version sudo systemctl start docker sudo systemctl status docker …...
质量体系的重要
质量体系是为确保产品、服务或过程质量满足规定要求,由相互关联的要素构成的有机整体。其核心内容可归纳为以下五个方面: 🏛️ 一、组织架构与职责 质量体系明确组织内各部门、岗位的职责与权限,形成层级清晰的管理网络…...
页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
【论文笔记】若干矿井粉尘检测算法概述
总的来说,传统机器学习、传统机器学习与深度学习的结合、LSTM等算法所需要的数据集来源于矿井传感器测量的粉尘浓度,通过建立回归模型来预测未来矿井的粉尘浓度。传统机器学习算法性能易受数据中极端值的影响。YOLO等计算机视觉算法所需要的数据集来源于…...
C++中string流知识详解和示例
一、概览与类体系 C 提供三种基于内存字符串的流,定义在 <sstream> 中: std::istringstream:输入流,从已有字符串中读取并解析。std::ostringstream:输出流,向内部缓冲区写入内容,最终取…...
图表类系列各种样式PPT模版分享
图标图表系列PPT模版,柱状图PPT模版,线状图PPT模版,折线图PPT模版,饼状图PPT模版,雷达图PPT模版,树状图PPT模版 图表类系列各种样式PPT模版分享:图表系列PPT模板https://pan.quark.cn/s/20d40aa…...
听写流程自动化实践,轻量级教育辅助
随着智能教育工具的发展,越来越多的传统学习方式正在被数字化、自动化所优化。听写作为语文、英语等学科中重要的基础训练形式,也迎来了更高效的解决方案。 这是一款轻量但功能强大的听写辅助工具。它是基于本地词库与可选在线语音引擎构建,…...
DingDing机器人群消息推送
文章目录 1 新建机器人2 API文档说明3 代码编写 1 新建机器人 点击群设置 下滑到群管理的机器人,点击进入 添加机器人 选择自定义Webhook服务 点击添加 设置安全设置,详见说明文档 成功后,记录Webhook 2 API文档说明 点击设置说明 查看自…...
STM32HAL库USART源代码解析及应用
STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...
