Matlab的“盒”插值内核是什么

时间:2018-07-16 20:14:47

标签: python matlab numpy interpolation image-resizing

有人知道imresize函数中MATLAB的“盒”插值内核使用的方程式/算法/定理吗?还是(甚至更好)知道一个麻木的表情?

2 个答案:

答案 0 :(得分:2)

box插值只是对指定窗口大小内的像素求平均。

您可以查看matlab函数smooth3等以获取详细信息。

答案 1 :(得分:0)

“盒子”内核是具有统一权重的平均内核。如果它是插值内核,则它对应于最近邻插值(始终取一个输入样本的平均值)。

一点理论上:插值内核是在原点处值为1且在距原点整数距离处值为0的内核。在两者之间可以做不同的事情。因此,为了从“盒”中生成一个插值内核,我们将其宽度设置为介于无限薄之间和大约2个样本间距之间。这使其符合插值内核的定义。但是,如果它小于1个样本间距,则对于某些位移它将产生0的输出-这是不希望的。如果它大于1个样本间距,则在输出是两个输入样本相加的地方会发生位移,是原本应两倍的大小-也不理想。因此,将其精确地设为1个样本间距宽是这里唯一有用的宽度。有了这个宽度,在任何位移下,它始终可以精确地覆盖一个输入样本-因此它可以进行线性插值。