Boximator:通过双重盒子约束,精确控制视频中对象的位置、形状或运动路径。
Box分为两种,软盒子和硬盒子,硬盒子用于精确定位,而软盒子用来控制对象在指定区域内自由移动。
使用Boximator,你可以指定一个对象在视频的开始和结束时应该在哪里,以及它应该如何移动。
Boximator的主要工作原理:
通过两种类型的“盒子”(硬盒子和软盒子)允许用户精确控制视频中对象的位置、形状或运动路径。
硬盒子用于精确定位,而软盒子提供了更大的灵活性,允许对象在指定区域内自由移动。
1、双重盒子约束:
使用硬盒子(Hard Box):在视频的起始帧,用户通过硬盒子精确地标出对象的初始位置和大小。这些硬盒子为视频合成提供了明确的起点。
设定目标状态:用户同样可以在视频的某个特定帧(通常是结束帧)使用硬盒子来指定对象应到达的位置和大小,定义对象的目标状态。
应用软盒子(Soft Box):软盒子用来描述对象在视频中运动的大致范围或路径。它们不像硬盒子那样精确,但提供了对象在两个硬盒子约束之间移动时的自由度。
运动控制:通过在视频的不同帧之间设置软盒子,用户可以大致控制对象的移动路径。例如,可以通过在中间帧中设置软盒子来指导对象移动的方向和范围。
2、自我跟踪学习机制:
为了解决模型学习盒子和对象关系的难题,Boximator采用了自我跟踪的技术。通过这种方式,即使在视频的后续帧中没有直接的用户定义盒子,Boximator也能够预测对象的运动,确保对象按照用户的初衷移动。
基于用户定义的盒子约束和模型的自我跟踪学习,Boximator生成符合预期的对象运动和动作,实现从初始状态到目标状态的平滑过渡。
3、视频合成:
整合对象运动:在视频合成过程中,Boximator综合考虑硬盒子和软盒子的约束,以及模型对对象运动的预测,生成包含用户指定动作的视频。
优化和调整:用户可以根据初步生成的视频效果,调整盒子的位置、大小或运动路径,以进一步优化视频中的动作表现。
项目及演示:https://boximator.github.io
论文:https://arxiv.org/abs/2402.01566
GitHub:coming soon...
视频介绍:https://youtube.com/watch?v=reto_TYsYyQ
- 复制链接
- 举报