Paper:arxiv.org/abs/2307.04…
Code:github.com/LPengYang/F…
Project Page:lin-chen.site/projects/fr…
导读
近来,在AIGC
的广阔国际里出现了一个炽热的图画修改办法—即经过在给定图画上经过把语义内容从原方位(handle point)拖动到方针方位(target point)的方式进行精细的定制化修改操作。比方令人印象深入的让你家猫咪对你wink
的神奇操作:
这一惊人效果来自于发表在SIGGRAPH 2023
会议上的 [Drag Your GAN] 论文(简称为DragGAN
)。并且 DragGAN 的代码一经发出就在短短几周内狂揽 30K star,引发广大网友的“Drag”热潮。有了 DragGAN 的加持,各种 AI 画图东西的「阿喀琉斯之踵」再也不是缺点,哪里不满意就只修哪里!
近来,中科大和上海 AI Lab 的研讨者们又发布了一项相关研讨—FreeDrag。研讨者们标明,先前的 DragGAN 由两个替换迭代进行的进程构成:
(1)运动监督(motion supervision)进程辅导handle point
向着对应的target point
进行移动;
(2)点盯梢(point tracking)进程则负责定位移动后handle point
的准确方位然后为下次移动供给方向和束缚特征。
因而DragGAN 严峻依赖于点盯梢的准确性。但是,点盯梢的战略本质上是不安稳的,由于它隐式地假定每次移动后在默认的查找区域内有且仅有一个点完美承继了handle point的特征。这个假定会在以下两种状况下失效:
i) 图画内容产生剧烈改变导致的盯梢丢掉(图1)
ii) 查找区域内的类似点导致的盯梢过错(图2),例如轮廓线和马腿等。
过错的点盯梢会为下一次移动供给过错的方向和束缚特征,构成差错累积然后危害修改的质量。
办法
为了防止不安稳的点盯梢进程不可防止地危害图画修改的质量,中国科学技能大学和上海AI Lab的研讨者们一起提出 FreeDrag, 一种以特征为导向的基于点的交互式修改结构。FreeDrag 经过引进自适应更新的模板特征,含糊定位和线性查找技能,在无需进行准确点盯梢的状况下即可完成愈加安稳牢靠的拖动修改。
DragGAN 要求准确认位 pikp^{k}_{i} 的方位,而 FreeDrag 经过束缚特征差异束缚定位点 tikt^{k}_{i} 在 pikp^{k}_{i} 邻近,但不要求确认 pikp^{k}_{i} 的具体方位。
动态更新的模板特征
研讨者们首先提出了动态更新的模板特征技能来缓解盯梢点丢掉问题。模板特征经过衡量每次移动的质量来决议是否更新,即经过操控的值来决议每次更新的份额。 更大的 \lambda 意味着更大的更新程度。移动质量越高更新程度越大。移动质量经过衡量移动结束后 tikt^{k}_{i} 处的特征和上一次的模板特征值的 L1 距离来衡量,越小阐明移动质量越高。
模板特征的更新进程不依赖于handle point 的方位和特征,然后摆脱了对准确的点盯梢的担负,一起自适应的更新战略带来的滑润性赋予了模板特征更好的鲁棒性来克服剧烈的内容改变,防止修改内容的反常丢掉。
含糊定位和线性查找
紧接着,研讨者们提出含糊定位和线性查找技能来缓解盯梢点含糊问题。FreeDrag 经过移动距离和特征差异来为每次的移动定位适合的方针点,即公式(10)。定位首要分为三种状况:继续向target point移动(移动质量高);坚持当前方位不动(移动不彻底),点回退(移动反常)。
比较于DragGAN要求的准确的点盯梢,公式(10)搜寻的定位点是“含糊”由于它并不要求搜寻handle point的准确方位,而是经过束缚特征差异确保定位点在handle point邻近, 因而摆脱了准确认位的担负。此外,公式(10) 只在原始handle point 和 target point 构成的直线上进行点查找,这种线性查找战略有效地缓解了相邻区域内类似点的搅扰,保证了运动监督的牢靠性,进一步提高点移动的安稳性。
实验
DragGAN 和 FreeDrag 在各类场景上的比照方下图(图4)所示,能够发现FreeDrag能够有效地防止handle point的反常消失(如图4第一个比如中消失的嘴巴和第二个比如中消失的眼镜),一起有力地防止了由于内容骤变和类似点搅扰导致的反常修改,保证了点移动的牢靠性(如图4第三个比如中大象的眼睛和第四个比如中的马腿)。 此外,从图4的(5)-(8)比如能够观察到FreeDrag 能够经过安稳的点移动更有效更准确地完成预订的修改方针。进一步的,在各类场景上的大量实验(图5) 充分验证了FreeDrag 能够经过安稳的点移动完成更高的修改质量,助力交互式的基于点的图画修改到达新的高度。
图片比照
视频比照
左面两张图分别为原始图片和修改方针(赤色为handle point, 蓝色为target point) 右边分别为为DragGAN 和FreeDrag的处理进程(gif)
对于拖动大象眼睛的比如,能够观察到,DragGAN 在移动大象眼睛的进程中产生了图画布局的骤变构成点盯梢丢掉,点盯梢丢掉导致无法为之后的运动供给有效的运动监督,然后无法完成预订的修改意图。比较而言,得益于动态更新的模板特征的滑润性,FreeDrag 能够更好地防止图画内容的急剧改变,然后更牢靠地将眼部特征拖向预订的方位。
对于拖动马腿的比如,能够观察到, DragGAN在移动马腿进程中产生了过错的点盯梢,然后为之后的运动监督供给了过错的优化方向,然后降低了图画质量,这种过错会在屡次迭代中累计导致修改成果质量的急剧下降。比较而言, FreeDrag 的含糊定位和线性查找战略有效地缓解了类似点的搅扰,为点移动供给了牢靠的监督信号,然后高质量地完成预订的修改意图。