一种笔式图像扫描拼接方法与装置与流程

文档序号:11953295阅读:392来源:国知局
本发明属于图像处理领域,具体涉及一种笔式图像扫描拼接方法与装置。
背景技术
:随着科技的进步和人类社会文化的不断繁荣,反映和报道各种信息的书籍、报刊、科技文献等文献资料数量爆炸式增长,如何对这些资料进行收集和整理成了一项巨大的工程。如果作为传统书刊资料进行保存不仅需要提供容量巨大的实体收藏空间,还需要对书刊资料进行防火、防潮、防虫等处理,显然这种方式越来越不可行。将各类传统印刷型书刊资料进行数字化,变成电子资源进行保存,毫无疑问成为发展的主流方向。如何实现这个过程成为一个值得研究的问题。仅仅利用单媒体计算机,采用人工键盘录入的方式,劳动强度大且速度慢,难以将海量文献信息快速、精准地进行数字化处理。激光扫描技术的发展使得这个方向成为可能,对于大量已有的文档资料,利用激光扫描技术使其数字化,既准确、快捷、省力,而且高效。最常用的就是扫描仪,随着电子技术的发展,鼠标扫描仪、笔式扫描仪的出现,使得人们随时随地可以对文件进行扫描整理,满足各种工作的需要。笔式扫描仪是近年新兴的扫描产品,它最大的优点是携带方便。笔式扫描仪是用其笔头进行扫描,用户使用的时候将笔头对着报纸、书刊里面的文字按照一行一行的方式进行扫描。现阶段的笔式扫描仪产品的输出都是一行图像,然后配合OCR软件,将扫描文件直接转换成WORD编辑。然而有时我们也希望笔式扫描仪能够对图像文件进行扫描,使得笔式扫描仪在行扫描的基础上,能够输出一幅完整的文件图像。这时就需要用到图像拼接技术,对每一行的扫描图像进行拼接,得到一幅完整的扫描图像。传统的图像拼接技术主要分为两个主要步骤:图像配准和图像融合。图像配准是指基于参考图和活动图中的图像关键信息,寻找最佳的匹配对,搜索每个匹配对之间运动向量,最终估计出两幅图像之间的全局的、线性或非线性的运动变换参数。经典的方法有L-M算法、相位相关法,基于几何特征的图像配准方法等。图像融合是指在配准的基础上,将两幅或多幅图像进行合成,最后得到一幅完整的图像。常用的图像融合方法有塔形融合算法、数学形态法、小波算法等。用于笔式扫描仪的图像拼接方法针对的是一行一行形式的图像,两幅图像之间重叠较少,很难进行有效的特征匹配,且图像数量较多,要求算法的时间复杂度不能太高,现有图像拼接技术中没有针对这个应用背景较为合适的方法。技术实现要素:本发明针对现有技术的不足,提出一种用于笔式扫描仪的图像拼接方法与装置,有效地提高了匹配精度,简化算法,适用于实时图像处理。笔式扫描仪输出的图像均为一行一行的扫描图像,扫描过程中没有精准控制方向的部件,完全依靠手动操作,这样不可避免的造成图像有不同程度的倾斜。以往通过相机或大型扫描仪输出的图像,整个版面只有一个倾斜角度,但笔式扫描仪输出图像则不同,只要手持笔式扫描仪在扫描中出现轻微变动,就会让图像出现各种不同角度的分段倾斜。详细技术方案如下:一种笔式图像扫描拼接方法,包括以下步骤:(S1)笔式扫描仪扫描文件,获取扫描文件的扫描图像;(S2)对扫描图像进行倾斜校正预处理;(S3)对倾斜校正预处理后的图像进行拼接操作,输出拼接完整的图像。进一步地,所述步骤(S2)的具体过程为,记通过笔式扫描仪扫描获取的n幅序列图像为{p1,…,pn},图像P表示n幅序列图像{p1,…,pn}中的任一幅图像,对图像P的处理步骤为:(S21)采用OTSU算法(最大类间方差法或大律法,简称OTSU)对图像P进行二值化处理,得到二值图像pBW;(S22)获取二值图像pBW的中心曲线;对二值图像pBW进行形态学处理中的水平膨胀若干次,然后垂直分析膨胀后的图像,以图像的左下角为坐标原点,建立直角坐标系,记录每一列的中心像素坐标,将所有中心像素组成的曲线记为中心曲线{(ai,bi)}i=1,2,…,M,(ai,bi)表示第i列的中心像素坐标点,M表示该图像像素总列数,i,M均为整数;(S23)对中心曲线进行一次高斯平滑,然后对高斯平滑后的曲线进行分段,得到分段曲线;(S24)计算分段曲线的倾斜角度,然后依据倾斜角度对图像P进行分段倾斜校正。进一步地,所述步骤(S22)的形态学处理中的水平膨胀为:令B表示水平结构像素集合,用B对二值图像集合pBW的膨胀表示为:其中表示膨胀算子,φ表示空集合,B(x)表示表示对结构像素集合B先做原点映射然后做平移x的运算;进一步地,所述步骤(S23)对曲线进行分段过程为,高斯平滑使用的滤波器为F=[0.1,0.2,0.4,0.2,0.1];记高斯平滑后的中心曲线记{(ai,b′i)}i=1,2,…,M,i,M为整数,计算所有的极值点,极值点定义如下:{(ai,b′i)|(b′i-b′i-1)*(b′i-b′i+1)>0};记所有的极值点序号为{i1,i2,…,in};根据每个极值点对曲线进行分段,那么曲线被分成in+1段,每段曲线的起点和终点坐标分别是{(a1,b′1),(ai1,b′i1)},{(ai1,b′i1),(ai2,b′i2)},…,{(ain,b′in),(aM,b′M)};用这些分段点(极值点)把原始图像P也分成对应的in+1个子块。进一步地,所述步骤(S24)的具体过程为,用分段曲线的起点和终点坐标计算该分段曲线的倾斜角度,设某段曲线的起点和终点坐标为{(aij,b′ij),(ai(j+1),b′i(j+1))},ij取值范围为{i1,i2,…,in},则倾斜角度为:使用倾斜角度对该分段曲线对应的图像P的区域进行倾斜校正,假设图像P对应区域中的一点为(x0,y0),经过倾斜校正后坐标点为(x1,y1),将原始点(x0,y0)转换为极坐标形式为:x0=r*cos(α)y0=r*sin(α)]]>其中,α=arctan(y0/x0),通过公式计算得倾斜校正后的坐标(x1,y1)为:x1y1=cosθsinθ-sinθcosθx0y0]]>对图像P中每一像素点均按照对应分段曲线的倾斜角度进行校正,得到分段倾斜校正后的图像。通过以上图像预处理操作,对于输入的图像P,最后得到经过倾斜校正后的图像,记为图像newp。进一步地,所述步骤(S3)的具体过程为,令倾斜校正预处理后的n幅序列图像为{newp1,newp2,…,newpn},记第一帧newp1为参考帧F,第二帧newp2为处理帧C;循环序号初始值k=2,具体步骤如下:(S31)记参考帧F底部R行像素的图像区域为Fsub,记处理帧C顶部R行像素的图像区域为Csub;分别对Fsub和Csub进行Harris角点检测,如果Fsub和Csub任一Harris角点数量小于等于Q,则直接将处理帧C置于参考帧F底部,合成一幅图像,记为新参考帧,其中R,Q为自然数常数,然后转入步骤(S36);(S32)如果两幅图像的Harris角点数量均大于Q,记Fsub的角点集合为G1,Csub的角点集合为G2,角点也称作特征点,将每一个特征点用一个72维的向量来描述,通过特征向量的最近邻距离比进行匹配,得到包含特征点集对的匹配集合,特征点集对也称作匹配对;(S33)利用匹配集合对参考帧F和处理帧C进行配准,得到两者之间的平移向量;(S34)利用平移向量,将处理帧C投影到参考帧F所在的坐标空间,得到新的图像C′。(S35)将新图像C′和参考帧F进行融合,融合规则为:两幅图像中上、下面不相交的区域分别取对应图像的像素值,中间重叠区域取两者像素均值,获得的融合图像记为新参考帧。(S36)若k<n,则k值自增1,即k=k+1,更新处理帧和参考帧,令倾斜校正预处理后的n幅序列图像中的第k帧为处理帧C,将新参考帧替代参考帧F,返回步骤(S31);若k≥n,结束该过程,得到的新参考帧即拼接完整的图像。进一步地,所述步骤(S32)中接着对每一个特征点用一个向量来描述,具体步骤如下:(1)以特征点为中心,选取边长为12个像素的领域范围的图像作为该特征点对应的图像块Pic(x,y),该图像块大小为12*12;(2)计算图像块Pic(x,y)的每一个像素的梯度的幅值G(x,y)和方向λ(x,y);λ(x,y)=arctan(Gx(x,y)/Gy(x,y))其中图像水平方向梯度Gx(x,y)和垂直方向梯度Gy(x,y)分别通过图像Pic(x,y)与水平方向滤波器和垂直方向滤波器卷积获得,计算公式如下:Gx(x,y)=-101⊗Pic(x,y)]]>Gy(x,y)=-101T⊗Pic(x,y)]]>其中表示卷积运算,T表示矩阵转置;(3)将图像Pic(x,y)均匀的划分成4*4的子块,得到9个图像子块block,将梯度方向空间0~2π等分成8个方向,也即每45度(360/8=45)分到一个方向,在每个block图像里面根据方向λ(x,y)的取值统计方向直方图,其中每个像素使用梯度幅值G(x,y)作为权重,也即如果其中一像素值的方向处于第一个方向(0~45度),那么将这个像素的梯度幅值累加到第一个方向对应的数值,对所有像素统计完毕,每个方向会有一个数值,按顺序排列得到一个8维向量,也即每个block图像得到一个8维向量,9个block图像一共得到72维向量;每一个特征点得到一个72维的向量,记为该特征点对应的特征向量。进一步地,在所述步骤(S32)之后,步骤(S33)之前,对所述匹配集合使用视差距离约束条件剔除的误匹配,定义视差距离约束条件为:其中(g1α,g2α),(g1β,g2β)表示为两个匹配对,ε表示约束阈值,具体过程为:(S321)任选匹配集合中的一个匹配对,计算它和其他匹配对的视差距离约束,记录违反约束条件的次数,记为该匹配对的错误率;(S322)统计所有匹配对的错误率,如果每个匹配对的错误率都为0,则结束;否则将错误率最大的匹配对作为误匹配从匹配集合中剔除,再转到步骤(S321)。进一步地,所述步骤(S22)中水平膨胀次数为10次。进一步地,所述步骤(S31)中的R取值为30,Q取值为5。进一步地,ε取值为0.2。本发明还提供了一种笔式图像扫描拼接装置,包括:图像获取模块:用于获取笔式扫描仪传来的扫描图像;图像预处理模块:用于对扫描图像进行分段倾斜校正;图像拼接模块:用于对分段倾斜校正后的图像进行拼接,得到一幅完整的图像。采用本发明获得的有益效果:本发明涉及的图像拼接方法,针对笔式扫描图像的特点,首先对行扫描图像进行分段倾斜校正,然后对参考图像与处理图像进行基于特征点的匹配,并采用一种视差距离约束剔除其中的误匹配,大大提高了图像配准的精度。且本发明提出的方法计算复杂度不大,图像拼接效果良好,适合作为笔式扫描仪的配套图像拼接方法。附图说明图1是本发明的图像拼接方法的流程示意图。具体实施方式下面结合附图和实施例对本发明做进一步详细说明。笔式扫描仪输出的图像均为一行一行的扫描图像,扫描过程中没有精准控制方向的部件,完全依靠手动操作,这样不可避免的造成图像有不同程度的倾斜。以往通过相机或大型扫描仪输出的图像,整个版面只有一个倾斜角度,但笔式扫描仪输出图像则不同,只要手持笔式扫描仪在扫描中出现轻微变动,就会让图像出现各种不同角度的分段倾斜。因此,针对笔式扫描仪的图像拼接方法分为两个部分,第一部分是图像预处理也即倾斜校正部分,如图1所示,具体步骤如下:通过笔式扫描仪传来的n幅序列图像{p1,p2,…,pn},n为整数,笔式扫描仪在扫描时虽然宽度范围并不大,由于是人工用手进行扫描操作,不可避免的存在各种角度的偏移,导致每一行的扫描图像出现分段倾斜等畸变。所以对每一幅图像都需要进行图像预处理。图像预处理包含以下步骤:(1)采用OTSU大律法对图像P进行二值化处理,得到二值图像pBW;(2)获取二值图像pBW的中心曲线;对二值图像pBW进行形态学处理--水平膨胀,令B表示水平结构像素的集合,用结构元素B对二值图像集合pBW的膨胀表示为:其中表示膨胀算子,φ表示空集合,B(x)表示表示对结构像素集合B先做原点映射然后做平移x的运算。将二值图像pBW水平膨胀10次,然后垂直分析膨胀后的图像,以图像的左下角为坐标原点,建立直角坐标系(图像正右方和正上方为分别为两个坐标轴的正方向),记录每一列的中心像素坐标,将所有中心像素组成的曲线记为中心曲线{(ai,bi)}i=1,2,3,…,M;(3)使用滤波器对中心曲线进行一次平滑,然后对高斯平滑后的曲线进行分段;其中平滑时使用的滤波器为F=[0.1,0.2,0.4,0.2,0.1]。新的中心曲线记为{(ai,b′i)}i=1,2,…,M;计算所有的极值点,极值点定义如下:{(ai,b′i)|(b′i-b′i-1)*(b′i-b′i+1)>0}。记所有的极值点序号为{i1,i2,…,in};每个极值点都对曲线进行分段,那么曲线被分成in+1段,每段曲线的起始点坐标是{(a1,b′1),(ai1,b′i1)},{(ai1,b′i1),(ai2,b′i2)},…,{(ain,b′in),(aM,b′M)}。用这些分段点可以把原始图像P也分成in+1个子块。(4)计算分段曲线的倾斜角度,然后对图像P进行分段倾斜校正;用分段曲线的起点和终点计算该分段曲线的倾斜角度,设某段曲线的起点和终点坐标是{(aij,b′ij),(ai(j+1),b′i(j+1))},那么倾斜角度为:使用倾斜角度对该分段曲线对应的图像P的区域进行倾斜校正。倾斜校正的步骤如下:假设图像P中的一点为(x0,y0),经过倾斜校正后坐标点为(x1,y1),将原始点转换为极坐标形式:x0=r*cos(α)y0=r*sin(α)]]>其中,α=arctan(y0/x0)。倾斜校正后的坐标,通过以下公式计算可得:x1y1=cosθsinθ-sinθcosθx0y0]]>通过以上图像预处理操作,对于每次输入的图像P,最后得到经过倾斜校正后的图像,记为图像newp。图像拼接操作过程,具体步骤如下:(一)令经过图像处理后的第一帧newp1为参考帧F,令第二帧newp2为处理帧C。因为笔式扫描仪对目标进行扫描,是一行一行顺序向下进行的,所以在图像匹配阶段时只选择参考帧F的底部R行像素图像区域(记为Fsub),实施例中R取值为30,R也可以取其它非零整数值,处理帧C的顶部30行像素图像区域(记为Csub);底部R行像素图像区域指的是从该图像底端往上的R行像素区域,顶部R行像素图像区域指的是从该图像顶端往下的R行像素区域。分别对Fsub和Csub进行Harris角点检测,角点一般定义为二维图像亮度变化剧烈的点或图像边缘曲线上曲率极大值的点,也称作特征点。这些特征点在很大程度上能够保留图像图形重要特征。(二)如果Fsub和Csub任一Harris角点数量小于等于5,那么直接将处理帧C置于参考帧F底部,合成一幅新的参考帧,获得的融合图像为新的参考帧,此处因为角点数量较小,说明两幅图像在扫描时没有重叠,分别是完整的图像,直接两幅图像进行的连接。然后转入步骤(四)。(三)如果两幅图像的Harris角点数量均大于5,则需要采用特征匹配的方式进行融合操作。记Fsub的特征点(即角点)集合为G1,Csub的特征点(即角点)集合为G2。接着对每一个特征点用一个向量来描述,具体步骤如下:(1)以特征点坐标为中心,选取边长为12个像素的领域范围的图像作为该特征点对应的图像块Pic(x,y),该图像块大小为12*12;(2)计算图像块Pic(x,y)的每一个像素的梯度的幅值G(x,y)和方向λ(x,y);λ(x,y)=arctan(Gx(x,y)/Gy(x,y))其中图像水平方向梯度Gx和垂直方向梯度Gy分别通过图像Pic(x,y)与水平方向滤波器(-101)和垂直方向滤波器(-101)T卷积获得,计算公式如下:Gx(x,y)=-101⊗Pic(x,y)]]>Gy(x,y)=-101T⊗Pic(x,y)]]>其中表示卷积运算。(3)将图像Pic(x,y)均匀的划分成4*4的子块,得到9个图像子块block,将梯度方向空间0~2π等分成8个方向,也即每45度分到一个方向,在每个block图像里面根据方向λ(x,y)的取值统计方向直方图,其中每个像素使用梯度幅值G(x,y)作为权重,也即如果其中一像素值的方向处于第一个方向(0~45度),那么将这个像素的梯度幅值累加到第一个方向对应的数值,对所有像素统计完毕,每个方向会有一个数值,按顺序排列得到一个8维向量,也即每个block图像得到一个8维向量,9个block图像一共得到72维向量。这样每一个特征点得到一个72维的向量,记为该特征点对应的特征向量。对当前帧和参考帧的特征点集合G1和G2,通过特征向量的最近邻距离比进行匹配,得到所有匹配上的特征点集对(也即匹配集合){(g1v,g2v)|g1v∈G1,g2v∈G2,v=1,2,…,V},V表示匹配对总数。虽然最近邻距离比匹配策略较为严格,匹配正确率较高,但依然存在一些误匹配。为了进一步剔除匹配集合中的误匹配对,本发明提出一种视差距离约束条件,限制两特征点之间的距离变化,使匹配集合中的每一个匹配对与其他匹配对的相容性得到最大的满足。假设是(g11,g21)和(g12,g22)是匹配集合的两个匹配对,则视差距离约束条件定义如下:||g11-g12||||g21-g22||<ϵ]]>其中ε是约束阈值,这里取值0.2。具体步骤如下:(1)任选匹配集合中的一个匹配对,计算它和其他匹配对的视差距离约束,记录违反约束条件的次数,记为该匹配对的错误率;(2)统计所有匹配对的错误率,如果每个匹配对的错误率都为0,则算法结束;否则将错误率最大的匹配对作为误匹配从匹配集合中剔除,再转到步骤(1)。记剔除所有误匹配后的匹配集合{(g1m,g2m)|g1m∈G1,g2m∈G2,m=1,2,…,N},N表示剔除所有误匹配后的匹配对总数。通过这种约束方法,能够有效的剔除匹配集合中的误匹配,进一步提供匹配准确率。接下来我们利用新的匹配结果对参考帧F和处理帧C进行配准,由于笔式扫描仪的特点,这里只需要考虑平移变换。平移向量计算公式如下:L=1NΣm=1N(g1m-g2m)]]>利用平移向量结果,将处理帧C投影到参考帧F所在的坐标空间,得到新的图像C′=C+L。将新图像C′和参考帧F进行融合,规则如下:两幅图像(新图像C′和参考帧F)上面和下面不相交的区域分别取对应图像(对应图像即对应的图像C′或参考帧F)的像素值,两幅图像中间重叠区域取两者像素均值,获得的融合图像为新的参考帧。(四)令经过图像处理后的序列图像{newp1,newp2,…,newpn}中从第三帧开始依次作为新的处理帧C,和新求得的参考帧F,重复上述图像拼接步骤(一)~(三),最终得到的参考帧为拼接完整的图像输出。本发明还提供了一种笔式图像扫描拼接装置,包括:图像获取模块:用于获取笔式扫描仪传来的扫描图像;图像预处理模块:用于对扫描图像进行分段倾斜校正;图像拼接模块:用于对分段倾斜校正后的图像进行拼接,得到一幅完整的图像。应当指出,本发明并不局限于以上特定实施例,本领域技术人员可以在权利要求的保护范围内做出任何变形或改进,均落在本发明的保护范围之内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1