将较小的数组插入较大的数组,反之亦然

时间:2018-10-04 09:45:07

标签: c# .net

我正在寻找一种方法,可以将较大数组中的数据插值到较小数组中,反之亦然?

例如,如果我有一个包含137个数据元素的数组,而我想将该数据调整为一个包含2000个元素的数组。同时,我想对137个值进行插值,以使它们均匀地适合新数组中的2000个元素。因此,我需要某种插值/采样机制,有点像以任意方式调整图像大小。

有人有可以实现这一目标的算法吗?

非常感谢,

达米恩

1 个答案:

答案 0 :(得分:0)

我找到并修改了这段代码:

void Interpolate(float[] destination, int destFrom, int destTo, float valueFrom, float valueTo)
    {
        int destLength = destTo - destFrom;
        float valueLength = valueTo - valueFrom;
        for (int i = 0; i <= destLength; i++)
            destination[destFrom + i] = valueFrom + (valueLength * i) / destLength;
    }

非常适合我的需求。