标题:Robust Image Retargeting via Axis-Aligned Deformation
年份:2012
作者:Daniele Panozzo,Ofir Weber,Olga Sorkine
代码:AARetargetingSource.zip
作者主页:HomePage

作者一个意大利人,一个瑞士人,一个美国人,老觉得文章读起来有点不顺,是我太菜了吗…T_T…

论文阅读--【AAD】通过轴对齐变形的鲁棒图像重定向

  • 摘要
  • 1.介绍
  • 2.先前工作
  • 3.算法
    • 3.1 能量函数
    • 3.2 拉普拉斯正则化
    • 3.3 三次样条插值

摘要

我们提出轴对齐变形空间作为内容感知图像重定向的有意义空间。

这种变形排除了局部旋转,避免了有害的视觉失真,并且它们在1D被参数化。

我们证明了用于图像重定向的标准翘曲能量可以在轴对齐变形的空间中最小化,同时保证满足双射性约束,导致高质量、平滑和鲁棒的重定向结果。

由于1D参数化,我们的方法只需要求解一个小的二次方程,这可以在CPU上在几毫秒内完成,没有预计算开销。

我们演示了如何使用我们的方法实时改变图像大小和显著图,并在各种输入图像上显示结果,包括RETARGETME数据集。

我们将我们的结果与用户研究中的其他六种算法进行了比较,以证明轴对齐变形的空间适用于手头的问题。

1.介绍

为了避免因均匀缩放而导致的图像失真,或因剪切而导致的重要部分被丢弃,开发了内容感知的重定向技术。

缺少局部旋转导致重定向变形成为轴对齐,即变形后等参线保持直线和平行,仅改变它们之间的间距(见图2)。

因此,我们的主要观察是,轴对齐变形的空间是内容感知图像重定向的合适空间。

这个观察有重要的结果。首先,变形空间可以在1D参数化,因为轴对齐的变形由垂直和水平等参线之间的间隔确定。

以前的重定向方法参数化2D中的变形,导致 M×NM\times NM×N 个未知数数量级的优化问题,其中 M,NM,NM,N 是垂直和水平输入图像分辨率,而1D参数化只需要 O(M+N)O(M+N)O(M+N) 个未知数。

此外,防止折叠和控制轴对齐变形的拉伸是简单和鲁棒的,因为它仅仅对等参线间距构成线性不等式约束。

这些约束总是可以以可行的方式提出,这与先前提出的关于缺少折叠的2D约束相反。

2.先前工作

基于翘曲的内容感知重定向方法,往往定义一个能量函数,并在给定的目标图像尺寸的边界条件下最小化这个函数。

这个能量通常测量翘曲相对于形状保持变形(例如平移,刚性变换,相似性)的局部偏差,由重要性图加权。。。。。。

我们在变形空间中直接对轴对齐进行编码,并证明它不仅极大地减少了优化问题的规模,而且提供了高质量的重定向结果,同时保证了鲁棒性。

3.算法

我们展示了如何在轴对齐的变形空间中,将内容感知的图像大小调整问题转换为一个小的二次方程。

变量的数量在图像边界的大小上是线性的。

我们最小化的能量函数是凸函数 ,并且找到全局最小值通常需要不到4 ms。

输入图像的宽度和高度记为 WWW 和 HHH。

与大多数基于翘曲的重定向方法一样,我们在图像上覆盖一个均匀的网格,有N列和M行;

在初始网格中,每列(也是每一个网格)的宽度为 W/NW/NW/N ,每行的高度为 H/MH/MH/M。

任务是为调整大小的图像计算一个变形的网格,具有所需的总宽度 W′W'W′ 和 H′H'H′。

在连续的设置中,一个轴对齐变形能够完全由沿边界的垂直和水平变形导数来描述。

在我们的离散设置中,我们假设轴对齐变形是分段线性的(在每个网格单元上是线性的),因此它完全由变形网格列的宽度和变形网格行的高度决定。


srows=(s1rows,s2rows,...,sMrows)s^{rows}=(s_1^{rows},s_2^{rows},...,s_M^{rows})srows=(s1rows​,s2rows​,...,sMrows​) 表示行的未知高度,
scols=(s1cols,s2cols,...,sNcols)s^{cols}=(s_1^{cols},s_2^{cols},...,s_N^{cols})scols=(s1cols​,s2cols​,...,sNcols​) 表示列的位置宽度。
轴对齐变形因此可以表示为未知变量的向量 s=(srows,scols)T∈RM+Ns=(s^{rows},s^{cols})^T\in R^{M+N}s=(srows,scols)T∈RM+N

计算重定向图像网格的优化的一般形式是:
minimize(sTQs+sTb)...............(1)minimize (s^TQs+s^Tb)...............(1)minimize(sTQs+sTb)...............(1)

边界条件:
sirows≥Lh,i=1,...,M..............(2)s_i^{rows}\geq L^h,i=1,...,M..............(2)sirows​≥Lh,i=1,...,M..............(2)
sjcols≥Lw,j=1,...,N..............(3)s_j^{cols}\geq L^w,j=1,...,N..............(3)sjcols​≥Lw,j=1,...,N..............(3)
s1rows+...+sMrows=H′..............(4)s_1^{rows}+...+s_M^{rows} = H'..............(4)s1rows​+...+sMrows​=H′..............(4)
s1cols+...+sNcols=W′..............(5)s_1^{cols}+...+s_N^{cols}=W'..............(5)s1cols​+...+sNcols​=W′..............(5)

为了使上面的二次求解问题(QP)可行,我们只需要令
Lh≤H′/M,Lw≤W′/NL^h\leq H'/M,L^w\leq W'/NLh≤H′/M,Lw≤W′/N
简单的均匀缩放提供了一个可行的解决方案

可行域是有界的, 并且由于 ∀i,0≤si≤max{H′,W′}\forall i,\ 0\leq s_i\leq max\{H',W'\}∀i, 0≤si​≤max{H′,W′},使得(1)中的目标函数在可行区域中是有限的。

能量应该这样定义,Q是正(半)定的;我们的问题是凸的,可以用标准的QP解算器求解。

3.1 能量函数

先验知识:
最小二乘法公式:
∣∣As−B∣∣22=(As−B)T(As−B)||As-B||_2^2=(As-B)^T(As-B)∣∣As−B∣∣22​=(As−B)T(As−B)
=sTATAs−2sTATB+BTB=s^TA^TAs-2s^TA^TB+B^TB=sTATAs−2sTATB+BTB

图像重定向方法依赖于显著图 ω(x,y)\omega(x,y)ω(x,y),该显著图为图像的每个像素分配0到1之间的重要性值。

我们的目标是计算一个变形,尽可能地保留显著区域的图像,并将不可避免的变形集中在不太重要的区域。为了在我们的公式中整合显著性图 ω\omegaω,我们在原始图像上的网格的每个单元内平均它的值,并且我们获得显著性矩阵 Ω∈RM×N\Omega\in R^{M\times N}Ω∈RM×N。在我们的分段线性设置中,这种每个单元的显著性积分是适当的有限元(FEM)离散化。

在我们的框架中,我们考虑了两种能量,它们通常被先前成功的重定向方法所使用:

  • Similar-As-Possible (ASAP)能量:产生局部接近相似的变形
  • As-Rigid-As-Possible (ARAP)能量:惩罚除平移和旋转以外的所有局部变形

图4显示了这些能量的示例结果。


ASAP能量
在轴对齐变形的空间中,由于旋转被消除了,一个相似变形是均匀缩放和平移的组合。

ASAP能量因此最小化不均匀缩放:
EASAP=∑i=1M∑j=1N(Ωi,j(MHsirows−NWsjcols))2.................(6)E_{ASAP}=\sum_{i=1}^M\sum_{j=1}^N(\Omega_{i,j}(\frac{M}{H}s_i^{rows}-\frac{N}{W}s_j^{cols}))^2.................(6)EASAP​=i=1∑M​j=1∑N​(Ωi,j​(HM​sirows​−WN​sjcols​))2.................(6)

两个因子 M/HM/HM/H 和 N/WN/WN/W 补偿原始网格中单元格的纵横比。

为了使用我们的QP框架最小化这种能量,我们定义了下面的矩阵 K∈R(MN)×(M+N)K\in R^{(MN)\times (M+N)}K∈R(MN)×(M+N)

Kk,l{Ωr(k),c(k)MHifl=r(k)−Ωr(k),c(k)NWifl=M+c(k)0otherwiseK_{k,l}\left\{\begin{matrix} \Omega_{r(k),c(k)}\frac{M}{H} & if \ l=r(k)\\ & \\ -\Omega_{r(k),c(k)}\frac{N}{W} & if \ l=M+c(k)\\ & \\ 0 & otherwise \end{matrix}\right.Kk,l​⎩⎪⎪⎪⎪⎨⎪⎪⎪⎪⎧​Ωr(k),c(k)​HM​−Ωr(k),c(k)​WN​0​if l=r(k)if l=M+c(k)otherwise​
其中, r(k)=⌈k/N⌉r(k)=\left \lceil k/N \right \rceilr(k)=⌈k/N⌉, c(k)=((k−1)modN)+1c(k)=((k-1) \ mod \ N)+1c(k)=((k−1) mod N)+1
从这个等式, KsK_sKs​ 给出了每行带有能量项的向量,并且 EASAP=sTKTKsE_{ASAP}=s^TK^TKsEASAP​=sTKTKs。

使用等式(1)中的通用符号, Q=KTK,b=0Q=K^TK,b=0Q=KTK,b=0。显然,Q是半正定矩阵,这样能量是凸的。

个人猜测性推导验证(感觉好理解一点)

ARAP 能量
在我们的轴对齐变形空间中,一个刚性变换会被简化为一个平移,因为定义中旋转是不被允许的。

因此ARAP能量最小化均匀与不均匀缩放:
EARAP=∑i=1M∑j=1NΩi,j2((MHsirows−1)2+(NWsjcols−1)2)E_{ARAP}=\sum_{i=1}^M\sum_{j=1}^N\Omega_{i,j}^2((\frac{M}{H}s_i^{rows}-1)^2+(\frac{N}{W}s_j^{cols}-1)^2)EARAP​=i=1∑M​j=1∑N​Ωi,j2​((HM​sirows​−1)2+(WN​sjcols​−1)2)

为了利用我们QP框架最小化这个能量,我们定义了如下两个矩阵 Rtop,Rbtm∈R(MN)×(M+N)R^{top},R^{btm}\in R^{(MN)\times (M+N)}Rtop,Rbtm∈R(MN)×(M+N):
Rk,ltop={Ωr(k),c(k)MHifl=r(k)0otherwise.............(8)R_{k,l}^{top}=\left\{\begin{matrix} \Omega_{r(k),c(k)}\frac{M}{H} & if \ l=r(k)\\ 0 & otherwise \end{matrix}\right..............(8) Rk,ltop​={Ωr(k),c(k)​HM​0​if l=r(k)otherwise​.............(8)
Rk,lbtm={Ωr(k),c(k)NWifl=M+c(k)0otherwise.............(9)R_{k,l}^{btm}=\left\{\begin{matrix} \Omega_{r(k),c(k)}\frac{N}{W} & if \ l=M+c(k)\\ 0 & otherwise \end{matrix}\right..............(9)Rk,lbtm​={Ωr(k),c(k)​WN​0​if l=M+c(k)otherwise​.............(9)

其中, v∈RMN,vk=Ωr(k),c(k)v\in R^{MN}, v_k=\Omega_{r(k),c(k)}v∈RMN,vk​=Ωr(k),c(k)​

我们现在可以用矩阵符号重写ARAP能量:
EARAP=([RtopRbtm]s−[vv])T([RtopRbtm]s−[vv])E_{ARAP}=\left ( \begin{bmatrix} R^{top}\\ R^{btm} \end{bmatrix} s-\begin{bmatrix} v\\v \end{bmatrix}\right )^T\left ( \begin{bmatrix} R^{top}\\ R^{btm} \end{bmatrix} s-\begin{bmatrix} v\\v \end{bmatrix}\right )EARAP​=([RtopRbtm​]s−[vv​])T([RtopRbtm​]s−[vv​])

在公式(1)的通用符号中,
Q=[RtopRbtm]T[RtopRbtm]Q=\begin{bmatrix} R^{top}\\R^{btm} \end{bmatrix}^T\begin{bmatrix} R^{top}\\R^{btm} \end{bmatrix}Q=[RtopRbtm​]T[RtopRbtm​], b=−2[RtopRbtm]T[vv]b=-2\begin{bmatrix} R^{top}\\R^{btm} \end{bmatrix}^T\begin{bmatrix} v\\v\end{bmatrix}b=−2[RtopRbtm​]T[vv​]
个人猜测性推导验证(感觉好理解一点)

同样,Q矩阵的形式清楚地表明它是半正定的,因此ARAP能量是凸的。

注意即使中间矩阵 K,Rtop,RbtmK,R^{top},R^{btm}K,Rtop,Rbtm 有 MNMNMN 行,它们非常稀疏,而且在程序上构建速度很快。

结果 QP的QQQ 矩阵是正方形,有M+N行/列,这意味着它们很密集但很小。还要注意的是,在我们的轴向变形空间中,其他能量也可以类似地表述出来;

我们选择将注意力集中在以上两个能量,因为它们是常用的,通常会提供良好的结果。此外,可以线性组合这两种能量,以获得可选的自由度。

可以通过将参数 LwL^wLw 和 LhL^hLh 设置为零,自然地将裁剪结合到我们的方法中。然后,优化过程能够折叠行和列,从而裁剪原始图像

3.2 拉普拉斯正则化

我们可以用正则化能量来丰富上面显示的能量,从而增加最终变形的平滑度。

拉普拉斯正则化允许在图像上更均匀地分布变形,并且对于手动绘制的显著性图特别有用,因为它们倾向于将显著性集中在图像的不同部分上,并且在其他地方突然下降为零(即,这种显著性图非常不平滑)。

拉普拉斯正则化效果的例子见图6。

拉普拉斯项定义为:
Ereg=∑i=1M−1(MH(si+1rows−sirows))2+∑j=1N−1(NW(sj+1cols−sjcols))2...................(12)E_{reg}=\sum_{i=1}^{M-1}(\frac{M}{H}(s_{i+1}^{rows}-s_i^{rows}))^2+\sum_{j=1}^{N-1}(\frac{N}{W}(s_{j+1}^{cols}-s_j^{cols}))^2...................(12)Ereg​=i=1∑M−1​(HM​(si+1rows​−sirows​))2+j=1∑N−1​(WN​(sj+1cols​−sjcols​))2...................(12)

正则化会惩罚大小差异很大的两个相邻行或列。请注意,使拉普拉斯最小化的变形是均匀缩放,使得该正则化项可以被视为混合均匀调整大小和由加权因子 wreg≥0w_{reg}\geq 0wreg​≥0 控制的ASAP 或ARAP变形的一种方式。

为了将正则化项纳入QP(1),我们简单地将能量项 sT(wregL)ss^T(w_{reg}L)ssT(wreg​L)s 加入能量函数,其中 LLL 是等式(12)中标准的拉普拉斯矩阵。换句话说,我们将矩阵 wregLw_{reg}Lwreg​L 加入等式(1)中的 QQQ。

拉普拉斯矩阵是半正定的,因此这个能量项不会损害问题的凸性。

3.3 三次样条插值

什么是三次样条插值?
可以看这个视频 插值法:三次样条插值函数,数值微分,共4集(特别第2,3集),看一下可以快速理解!

ASAP和ARAP能量的公式,以及拉普拉斯正则项,是连续对应物的适当的线性有限元近似,使得在均匀网格细化下收敛是预期的。

我们已经观察到,优化的结果不太依赖于网格分辨率(见图7);这也是有意义的,因为我们在1D参数化的受限变形空间不允许巨大的局部变化。

25×25的粗网格分辨率(即50个优化变量)在大多数情况下足以真实地描述变形图。然而,这种粗略的双线性网格可能不足以为具有非常高分辨率的图像提供高质量的结果,因为双线性插值在网格线上不平滑。

为了改善高分辨率图像的插值结果,我们可以选择使用B样条插值来对重采样网格进行上采样。

我们使用变形的网格顶点作为控制点,定义了一个均匀的三次B-样条。

这可以在1D使用两个1D立体B样条来实现:一个用于行,一个用于列。
我们对密集水平和垂直位置的样条进行采样,以便产生任意分辨率的新网格。
最终的重定向图像是通过在这个更精细的网格上双线性插值创建的。

我们的变形网格所描述的变形保证始终是双射的,并且由于变化递减特性,用样条获得的更精细的网格也保证是无折叠的。图8给出了一个改进的例子。

论文阅读-Robust Image Retargeting via Axis-Aligned Deformation相关推荐

  1. 论文阅读“Robust multi-view clustering with incomplete information”

    论文标题 Robust multi-view clustering with incomplete information 论文作者.链接 作者:Yang, Mouxing and Li, Yunfa ...

  2. 多目标跟踪:CVPR2019论文阅读

    多目标跟踪:CVPR2019论文阅读 Robust Multi-Modality Multi-Object Tracking 论文链接:https://arxiv.org/abs/1909.03850 ...

  3. 论文阅读——《Robust Superpixel Tracking》

    论文阅读--<Robust Superpixel Tracking> 论文阅读--<Robust Superpixel Tracking> <Robust Superpi ...

  4. 【论文阅读】SCRDet:Towards More Robust Detection for Small, Cluttered and Rotated Objects

    SCRDet: Towards More Robust Detection for Small, Cluttered and Rotated Objects SCRDet:为小的.杂乱的和旋转的物体提 ...

  5. 【论文阅读】RAPTOR: Robust and Perception-Aware Trajectory Replanning for Quadrotor Fast Flight

    [论文阅读]<RAPTOR: Robust and Perception-Aware Trajectory Replanning for Quadrotor Fast Flight> 发表 ...

  6. 论文阅读 [CVPR-2022] BatchFormer: Learning to Explore Sample Relationships for Robust Representation Lea

    论文阅读 [CVPR-2022] BatchFormer: Learning to Explore Sample Relationships for Robust Representation Lea ...

  7. 【论文阅读】Realtime Robust Malicious Traffic Detection via Frequency DomainAnalysis

    [论文阅读]Realtime Robust Malicious Traffic Detection via Frequency DomainAnalysis 原文标题:Realtime Robust ...

  8. 【论文阅读5】BoT-SORT:Robust Associations Multi-Pedestrian Tracking

    [论文阅读5]BoT-SORT:Robust Associations Multi-Pedestrian Tracking 和OC-SORT类似,BoT-SORT也是对Kalman滤波进行改进.OCS ...

  9. 点云配准论文阅读笔记--(4PCS)4-Points Congruent Sets for Robust Pairwise Surface Registration

    目录 点云配准系列 写在前面 Abstract摘要 1 Introduction引言 2 Background研究背景 RANSAC Randomized Alignment 3 Approximat ...

最新文章

  1. 你绝对能懂的“机器学习”(三)
  2. SpringBoot中使用Thymeleaf常用功能(一):表达式访问数据
  3. HystrixDashbord
  4. 对于多表查询和转账的事务提交
  5. SAP Spartacus auto focus Directive响应模型变化的一些触发时机例子
  6. (待完成)qbxt2019.05 总结2 - 数位DP
  7. C++实现链式基数排序
  8. 路由的Modem信号控制
  9. 剑指Offer - 面试题4. 二维数组中的查找(双指针)
  10. 【前端 · 面试 】HTTP 总结(八)—— HTTP 强缓存
  11. python高性能_Python高性能分布式执行框架-Ray
  12. 微型计算机原理与接口技术朱金钧课后答案,微型计算机原理及应用技术 第3版...
  13. 【目标检测】(12) 非极大值抑制 NMS 和 Soft-NMS,附TensorFlow完整代码
  14. catia投图只投外轮廓线_catia作图小技巧
  15. python xlrd 过滤excel里的隐藏行
  16. a指定许可服务器无效,错误的hostid与许可证服务器
  17. 伪随机数的爆破--2
  18. hazelcast 搭建_SpringBoot整合Hazelcast实现分布式缓存
  19. java五子棋核心算法_五子棋的核心算法(转)
  20. windows server 2008 R2无法共享文件夹,无法启用网络发现。

热门文章

  1. Proteus:单片机用按键控制LED的亮灭
  2. 广大企业使用OA系统的六大理由
  3. 电机FOC控制的PI调节串并联转换问题理解
  4. Python和Java结合的项目实战
  5. 2018年小学计算机教案,2018年小学计算机教案.doc
  6. [NC18386]字符串
  7. 怎么分辨是808鼓_学架子鼓为什么不能用电鼓
  8. Android 退出登录后回到登录页并清空原有的任务栈
  9. 为小程序端添加一个session机制
  10. 数项级数——(三)一般项级数