发明名称 用于图像放大处理过程中的快速双线性插值方法
摘要 本发明公开了一种用于图像放大处理过程中的快速双线性插值方法,先在原图像上的坐标系中直接进行插值操作,再从原图像到目标图像进行映射,使得图像放大处理过程中的遍历操作减少,边界像素也可以在统一的程序框架中处理;在行方向和列方向上分别进行插值,去除了冗余的插值计算;插值运算全部采用整数加减法和整数移位运算,这几个方面使得用双线性插值进行图像放大的速度得到了提高;采用本发明的快速插值方法进行图像放大,在图像放大倍数为2~10倍时,算法的运算速度提高了4~10倍,且算法的加速比随着放大倍数的增加而增加。
申请公布号 CN1901602A 申请公布日期 2007.01.24
申请号 CN200610052383.2 申请日期 2006.07.10
申请人 宁波大学 发明人 李均利;魏平;陈刚
分类号 H04N1/393(2006.01) 主分类号 H04N1/393(2006.01)
代理机构 宁波海曙奥圣专利代理事务所 代理人 程晓明
主权项 1、一种用于图像放大处理过程中的快速双线性插值方法,其特征在于对于大小为m×n的原图像和大小为M×N的目标图像,定义原图像和目标图像都以左上角像素作为坐标原点,右方向为x正方向,向下方向为y正方向,原图像坐标系中点的坐标为(x,y),目标图像像素坐标为(x′,y′),然后采用以下步骤获得目标图像像素点的灰度值:1)准备在原图像的列方向(x坐标方向)和行方向(y坐标方向)上分别以步长stepx,stepy进行插值,stepx=(n-1)/(N-1);stepy=(m-1)/(M-1),用j表示原图像的行编号,取j=0;2)在原图像的行方向上进行插值,得到在原图像坐标系中坐标为(i′×stepx,j)的点的灰度值A(i′×stepx,j),i′=0,1,…,N-1为放大图像的列编号,将得到的插值结果存到数组Cur_Row中,即Cur_Row[i′]=A(i′×stepx,j);3)判断原图像的行数,如果是第0行,即j=0,继续下一步,如果j≠0,转到6);4)将数组Cur_Row中的值赋给目标图像的第0行,即令B(i′,0)=Cur_Row[i′],i′=0,1,…,N-1;5)将Cur_Row数组的值赋给Pre_Row数组,即:Pre_Row[i′]=Cur_Row[i′],i′=0,1,…,N-1;6)令原图像当前的行编号为j,以Pre_Row[i′],Cur_Row[i′]作为[0,1]区间的两个端点的像素值,即f(0)=Pre_Row[i′],f(1)=Cur_Row[i′],用整数移位运算和整数加减法进行线性插值,得到目标图像B在第i′行,k列的像素灰度值<math> <mrow> <mi>B</mi> <mrow> <mo>(</mo> <msup> <mi>i</mi> <mo>&prime;</mo> </msup> <mo>,</mo> <mi>k</mi> <mo>)</mo> </mrow> <mo>=</mo> <mover> <mi>f</mi> <mo>~</mo> </mover> <mrow> <mo>(</mo> <mi>k</mi> <mo>&times;</mo> <mi>stepy</mi> <mo>-</mo> <mi>j</mi> <mo>+</mo> <mn>1</mn> <mo>)</mo> </mrow> <mo>;</mo> </mrow> </math> 7)判断下一图像的行数,j=j+1,如果j≤n-1,转到2),否则结束处理过程。
地址 315211浙江省宁波市江北区风华路818号