Page 296 - 《软件学报》2020年第11期
P. 296

宋传鸣  等:采用自适应缩放系数优化的块匹配运动估计                                                      3611


                    显然,公式(17)是关于缩放运动系数 z x 和 z y 的二元 4 次多项式,其解的显式表达式难以直接给出.尽管我们
                 可采用二分法、牛顿法等方法计算出数值解,可是由于在迭代过程中需反复计算待预测块与插值得到的参考块
                 之间的匹配误差,势必会导致求解 z 的计算量骤增.因此,有必要进一步设计降低其时间复杂度的快速策略.
                    考虑到为避免物体产生形状失真,视频中的 2D 缩放运动大多应为等比例缩放(除个别特效以外),即 z x =z y .
                 于是,有 q=q′,p=p′.据此易推知,亚像素精度的像素 r         *  应位于以整像素精度的像素 r m,n ,r m+1,n+1 为端点的线段上,
                                                         mn
                                                         ,
                 并且与两者的欧式距离分别为 2q 和 2p .通过将距离进行归一化,并由线性插值可得:
                                                   r mn  =  pr mn ,  +  qr m+ 1,n+ 1                 (18)
                                                    *
                                                     ,
                 其中,q=m⋅z−⎣m⋅z⎦=n⋅z−⎣n⋅z⎦,z=z x =z y ,p=1−q.此时,当前待预测块 I 的预测误差为
                                   B−  1 B−  1                  B−  1 B−  1           ⎫
                                D =     (m z ⋅ ∑∑  −  ⎢  m z ⋅  ⎦  ) (r m ,n  − ⎥ ⎣  r m+  1,n+  1 ) +  2  (c mn  − ∑∑  r mn ) +  2  ⎪
                                                  2
                                                                          ,
                                                                      ,
                                   n=  B−  0 m= 1 B−  0 1       n=  0 m=  0           ⎪ ⎬            (19)
                                                                                    2 ⎪
                                                                        2
                                                             2
                                        ∑∑  (mz ⋅− ⎢  mz ⋅ ⎥ ⎣  ⎦  )[(c mn  − r m+  1,n+  1 ) −  (c mn ,  −  r m ,n ) −  (r mn ,  −  r m+  1,n+  1 ) ] ⎪
                                                     ,
                                   n=  0 m=  0                                        ⎭
                    首先,当 z<1 且(1−z)⋅(B−1)<1 时,有:
                                               ⎧ q =  m z⋅  −  m z⋅ ⎢  ⎦  =  1(1 z− ⎥ ⎣  −  )m
                                               ⎨                                                     (20)
                                                     −
                                               ⎩ p =  (1 z )m
                    将其代入公式(19)并整理后,就得到:
                             B−
                              1 B−
                            2
                        D =  z ∑∑ 1 m 2 (r mn  −  r m+  1,n+  1 ) +  2                       ⎫ ⎪
                                      ,
                             n=  0 m=  0                                                     ⎪
                            B−  1 B−  1                                                      ⎪
                                z ∑∑ {(2m − 2m 2 )(r mn ,  −  r m+  1,n+  1 ) +  2  m [(c m ,n  −  r m+  1,n+  1 ) −  2  (c mn ,  −  r m ,n ) −  2  (r mn ,  −  r m+  1,n+  1 ) ]}+  2  ⎪
                            n=  0 m=  0                                                      ⎪ ⎬     (21)
                           B−  1 B−  1                                                       ⎪
                                      +
                                  −
                                ∑∑ [(1 2mm 2 )(r m ,n  −  r m+  1,n+  1 ) +  2  (c mn −  r mn ) ]+  2  ⎪
                                                         ,
                                                             ,
                           n=  0 m=  0                                                       ⎪
                           B−  1 B−  1                                                       ⎪
                           ∑∑   (1 m )[(c mn ,  −  r m+  1,n+  1 ) −  2  (c m ,n  −  r mn ,  ) −  2  (r mn ,  −  r m+  1,n+  1 ) ]  ⎪
                                 −
                                                                       2
                           n=  0 m=  0                                                       ⎭
                    可见,在 2D 等比例缩放运动情况下,预测误差 D 也是关于缩放系数 z 的一元二次函数.故此,当
                             B−  1 B−  1
                                 {(2m − ∑∑  2m 2 )(r mn ,  −  r m+  1,n+  1 ) +  2  m [(c m ,n  −  r m+  1,n+  1 ) −  2  (c mn ,  −  r mn ,  ) −  2  (r mn ,  −  r m+  1,n+  1 ) ]}
                                                                                          2
                          z =  n=  0 m=  0           B−  1 B−  1                                     (22)
                                                   −  2∑∑  mr mn ,  −  r m+  1,n+  1 ) 2
                                                          2
                                                           (
                                                     n=  0 m=  0
                 时,预测误差 D 将取得最小值.其中,分母以及分子的第 1 项和第 4 项是最佳匹配块沿着对角线方向的加权梯度
                 的模长平方,分子的第 2 项和第 3 项则相当于待预测块的时域梯度的模长平方.
                    其次,当 z>1 且(z−1)⋅(B−1)<1 时,有:
                                                 ⎧ q =  m z⋅  −  m z⋅ ⎢  ⎦  = ⎥ ⎣  (z −  1)m
                                                 ⎨                                                   (23)
                                                    1(z −
                                                 ⎩ p =−   1)m
                 将公式(23)代入公式(19)并化简,则可得到待预测块 I 的预测误差为
                              B−  1 B−  1                                                   ⎫
                          D =  z ∑∑  m 2 (r mn  −  r m+  1,n+  1 ) +  2                     ⎪
                              2
                                       ,
                              n=  0 m=  0                                                   ⎪
                              B−  1 B−  1                                                   ⎪
                                  z  {( 2m− ∑∑  2 )(r mn  −  r m+  1,n+  1 ) +  2  m [(c mn ,  −  r m+  1,n+  1 ) −  2  (c m ,n  −  r mn ) −  2  (r m ,n  −  r m+  1,n+  1 ) ]}+  2  ⎪
                                                                          ,
                                          ,
                             B−  n=  1 B−  0 m=  1  0                                       ⎪ ⎬      (24)
                                 ∑∑ {mr mn  −  r m+  1,n+  1 ) −  2  m [(c mn  −  r m+  1,n+  1 ) −  2  (c mn  −  r m ,n ) −  2  (r m ,n  −  r m+  1,n+  1 )]}+  ⎪ ⎪
                                                                                    2
                                   2
                                    (
                                                                 ,
                                      ,
                                                     ,
                             n=  0 m=  0                                                    ⎪
                             B−  1 B−  1                                                    ⎪
                                  ∑∑ (c mn ,  −  r mn ,  ) 2                                ⎪
                             n=  0 m=  0                                                    ⎭
   291   292   293   294   295   296   297   298   299   300   301