如何将内核转换为矩阵符号?

时间:2018-08-21 22:17:10

标签: image-processing interpolation convolution bicubic

我试图理解双三次卷积算法,但还无法理解内核如何作为部分函数给出,

kernel given as a piecewise function

变成这个矩阵:

this matrix

我知道将矩阵a设置为-0.5。无论如何看,我都无法得出所示的非对称矩阵。

我已经浏览了paper by Keys,但是他并没有扩展为矩阵符号,而且我一直在努力到达那里。

任何见识将不胜感激。

2 个答案:

答案 0 :(得分:0)

步骤1中看到的关系是将函数W(x)与采样的输入数据f [n]相乘一个给定的位移t。这将5个权重乘以5个输入样本,然后加在一起形成一个输出样本p(t)。

用于计算p(t)的矩阵不是对称的,因为对于任何不为0的移位t,应用于样本的权重也不是对称的。通过写出W(t + i)可以看到这一点,W(t + i)是应用于输出位置t([-2,2]中的i)周围5个样本的权重。

答案 1 :(得分:0)

我已经找到并理解了Keys在哪里描述该过程。您可以在下图中从上到下进行操作,但是要注意的最重要的一点是公式7。 Keys interpolation kernel

矩阵中的所有值都来自c项的系数。矩阵的第一行对应于常数项的系数,第一列对应于c_j-1项。通过将下图与公式7的系数进行比较可以看出: matrix explanation

我能够使用这种理解来实现三次卷积方法,以对可以调整a值以查看响应的表面进行插值。如果有任何不清楚的地方,我很乐意帮助您对此进行扩展!