|
双三次插值算法是指说三次函数插值算法(最高次幂为3)应用在二维方向上,同时需要16个点来计算出来一个新点出来。
双三次算法在缩放效果上可以取得不错的效果。
2. 实现
(1)双线性算法:(分横向和纵向做,4个点算出一个新点)
y = (x-x1)/(x0-x1) y0 + (x-x)/(x0-x0) y1
(2)双三次算法(其实是不可能做到真正的无级,只是步长很小):
步长为64,将常用的缩放格式归结为64的分子,64组插值系数存在register或者sram中。
硬件设计上用DDA算法来控制pixel的进入: sum = sum + DDA, if sum > 64,进新点计算,否则,只是更换计算系数进行计算。
纵向计算时,需要4条line buffer。