大多数插值算法(Lanczos、Hermite、Bicubic)使用非常简单的函数来计算一些值。但是这些值随后会通过一些非常复杂的函数发送,这些函数会做一些魔术,并且会调整图像的大小。我想了解这个神奇的函数(窗口函数?),但我在 Delphi、Pascal、PHP 或简单的 C++ 中找到的大多数代码已经过优化,或者是一些大型库的一部分,并且使用了大量的子函数、类和其他东西。我只是想了解基础知识。
例如,Delphi 中“最近邻”的函数是:
function BoxFilter(Value: Single): Single;
begin
if (Value > -0.5) and (Value <= 0.5) then
Result := 1.0
else
Result := 0.0;
end;
如何将这样的函数应用于我的二维像素数组(又名图像)?