一种矫正红外图像的方法及装置技术领域
本发明实施例涉及银行自助系统的技术领域,尤其涉及一种矫正红外图像的方法及装置。
背景技术
在目前的ATM机中,红外传感器有两个,一块在钞票上方,一块在钞票下方,如图1所示,分别用来采集钞票的红外正面图和红外反面图,钞票的红外正反面图都需要用来做识别。因为采集钞票的两个红外图像传感器分别安装钞票进出通道的上下方,传感器的安装方位经常会出现上下位置不对齐的情况,因此两张采集到的图像也会有位移偏差,两张图像做后续的图像处理和识别时,位移偏差将导致结果出现问题。上方和下方红外传感器安装垂直偏移距离误差直接导致采集到的图像的边沿出现黑边条,如图2所示,从而增加疑惑钞或不明钞的出现概率,将直接影响钞票识别率。
发明内容
本发明实施例提出一种矫正红外图像的方法及装置,旨在解决如何对上下红外图像传感器采集到的有黑边的图像进行处理的问题。
第一方面,一种矫正红外图像的方法,所述方法包括:
设置待矫正的图像的左上角顶点的X坐标org.X、Y坐标org.Y;
分别获取所述待矫正的图像的上黑边条的高del_height以及右黑边条的宽del_width;
根据所述X坐标和所述右黑边条的宽计算矫正后的图像的左上角顶点的X坐标;根据所述Y坐标和所述上黑边条的高计算矫正后的图像的左上角顶点的Y坐标。
优选地,所述获取所述待矫正的图像的上黑边条的高del_height,包括:
从所述待矫正的图像第一行Y=0开始,若当前像素值IMG[Y*width+X]为0,则Y坐标向下移动1,再计算当前像素值IMG[Y*width+X];
若当前像素值IMG[Y*width+X]与0的大小超于预先设置的阈值范围,则del_height为所述当前像素的Y坐标。
优选地,所述获取所述待矫正的图像的右黑边条的宽del_width,包括:
从所述待矫正的图像的第一列X=0开始,若当前像素值IMG[Y*width+X]为0,则X坐标向右移动1,再计算当前像素值IMG[Y*width+X];
若当前像素值IMG[Y*width+X]与0的大小超于预先设置的阈值范围,则del_width为所述当前像素的X坐标。
优选地,所述根据所述X坐标和所述右黑边条的宽计算矫正后的图像的左上角顶点的X坐标,包括:
矫正后的图像的左上角顶点的X坐标为org.X-del_width。
优选地,所述根据所述Y坐标和所述上黑边条的高计算矫正后的图像的左上角顶点的Y坐标,包括:
矫正后的图像的左上角顶点的Y坐标为org.y+del_height。
第二方面,一种矫正红外图像的装置,所述装置包括:
设置模块,用于设置待矫正的图像的左上角顶点的X坐标org.X、Y坐标org.Y;
获取模块,用于分别获取所述待矫正的图像的上黑边条的高del_height以及右黑边条的宽del_width;
计算模块,用于根据所述X坐标和所述右黑边条的宽计算矫正后的图像的左上角顶点的X坐标;根据所述Y坐标和所述上黑边条的高计算矫正后的图像的左上角顶点的Y坐标。
优选地,所述获取模块,包括:
第一移动单元,用于从所述待矫正的图像第一行Y=0开始,若当前像素值IMG[Y*width+X]为0,则Y坐标向下移动1,再计算当前像素值IMG[Y*width+X];
第一计算单元,用于若当前像素值IMG[Y*width+X]与0的大小超于预先设置的阈值范围,则del_height为所述当前像素的Y坐标。
优选地,所述获取模块,包括:
第二移动单元,用于从所述待矫正的图像的第一列X=0开始,若当前像素值IMG[Y*width+X]为0,则X坐标向右移动1,再计算当前像素值IMG[Y*width+X];
第二计算单元,用于若当前像素值IMG[Y*width+X]与0的大小超于预先设置的阈值范围,则del_width为所述当前像素的X坐标。
优选地,所述计算模块,用于:
矫正后的图像的左上角顶点的X坐标为org.X-del_width。
优选地,所述计算模块,用于:
矫正后的图像的左上角顶点的Y坐标为org.y+del_height。
本发明实施例提供的矫正红外图像的方法及装置,设置待矫正的图像的左上角顶点的X坐标org.X、Y坐标org.Y;分别获取所述待矫正的图像的上黑边条的高del_height以及右黑边条的宽del_width;根据所述X坐标和所述右黑边条的宽计算矫正后的图像的左上角顶点的X坐标;根据所述Y坐标和所述上黑边条的高计算矫正后的图像的左上角顶点的Y坐标。通过采用上述技术方案,正红外采集到钞票上下方图像位移的缺陷,使得红外图像更少缺陷,提高图像质量,为验钞算法提供正确的图像输入,从而提高纸币识别率,减少不明钞、疑惑钞或假钞误报率。
附图说明
图1是现有技术提供的一种红外传感器检测纸币的方法示意图;
图2是现有技术提供的一种图像黑边图的示意图;
图3是本发明实施例一提供的矫正红外图像的方法的流程示意图;
图4是本发明实施例提供的一种设置红外图像的坐标的方法示意图;
图5是本发明实施例提供的一种去除图像黑边后的示意图;
图6是本发明实施例二提供的矫正红外图像的装置的功能模块示意图;
图7是本发明实施例获取模块的功能模块示意图;
图8是本发明实施例获取模块的功能模块示意图。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各项步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各项步骤的顺序可以被重新安排。当其步骤完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
实施例一
图3是本发明实施例一提供的矫正红外图像的方法的流程示意图,该方法可以由银行自助系统的数据处理装置执行,其中该装置可由软件和/或硬件实现,一般可集成在银行自助系统的服务器中。如图3所示,该方法包括:
步骤301,设置待矫正的图像的左上角顶点的X坐标org.X、Y坐标org.Y;
具体的,定义del_height表示上黑边的高,定义del_width表示右黑边的宽,y表示当前像素在图像中高度方向的纵坐标,x表示当前像素点在图像中宽度方向上的横坐标,坐标系原点为图像左上角的顶点,坐标用(0,0)表示,坐标轴如图4。每张图像左上角顶点在计算机中的内存坐标为(org.x,org.y),org.x为图像左上角顶点在内存块映射中x轴坐标,org.y为图像左上角顶点在内存块映射中y轴坐标;height表示整张图像的高,width表示整张图像的宽,则IMG[y*width+x]表示当前像素点的值。
步骤302,分别获取所述待矫正的图像的上黑边条的高del_height以及右黑边条的宽del_width;
优选地,所述获取所述待矫正的图像的上黑边条的高del_height,包括:
从所述待矫正的图像第一行Y=0开始,若当前像素值IMG[Y*width+X]为0,则Y坐标向下移动1,再计算当前像素值IMG[Y*width+X];
若当前像素值IMG[Y*width+X]与0的大小超于预先设置的阈值范围,则del_height为所述当前像素的Y坐标。
具体的,计算上黑边条的高,从图像第一行开始即y=0,如果当前像素值IMG[y*width+x]为0,y坐标向下移动即y=y+1,再计算当前像素值IMG[y*width+x],知道当前像素值IMG[y*width+x]不再接近于0,则表示当前像素值不再是黑点,del_height=y保存当前的y坐标。
优选地,所述获取所述待矫正的图像的右黑边条的宽del_width,包括:
从所述待矫正的图像的第一列X=0开始,若当前像素值IMG[Y*width+X]为0,则X坐标向右移动1,再计算当前像素值IMG[Y*width+X];
若当前像素值IMG[Y*width+X]与0的大小超于预先设置的阈值范围,则del_width为所述当前像素的X坐标。
具体的,计算右黑边的宽,同样,从图像第一列开始即x=0,如果当前像素值IMG[y*width+x]不为0,x坐标向右移动即x=x+1,直到IMG[y*width+x]接近于0,记下当前x坐标del_width=x,x坐标继续向右移动并计算当前像素值如果接近0,黑边宽度继续del_width+1,直到x坐标移到width整张图像的宽,这时的del_width即是右黑边的宽。
步骤303,根据所述X坐标和所述右黑边条的宽计算矫正后的图像的左上角顶点的X坐标;根据所述Y坐标和所述上黑边条的高计算矫正后的图像的左上角顶点的Y坐标。
优选地,所述根据所述X坐标和所述右黑边条的宽计算矫正后的图像的左上角顶点的X坐标,包括:
矫正后的图像的左上角顶点的X坐标为org.X-del_width。
优选地,所述根据所述Y坐标和所述上黑边条的高计算矫正后的图像的左上角顶点的Y坐标,包括:
矫正后的图像的左上角顶点的Y坐标为org.y+del_height。
具体的,图像顶点坐标校正,根据上面步骤获得上黑边高度值del_height和右黑边宽度值del_width后,校正后图像顶点的左上角坐标表示为(org.x-del_width,org,y+del_height)。经过上下位移矫正处理后的图像如图5,最终去掉图像中最上边和最右边的黑边。
本发明实施例提供的矫正红外图像的方法及装置,设置待矫正的图像的左上角顶点的X坐标org.X、Y坐标org.Y;分别获取所述待矫正的图像的上黑边条的高del_height以及右黑边条的宽del_width;根据所述X坐标和所述右黑边条的宽计算矫正后的图像的左上角顶点的X坐标;根据所述Y坐标和所述上黑边条的高计算矫正后的图像的左上角顶点的Y坐标。通过采用上述技术方案,正红外采集到钞票上下方图像位移的缺陷,使得红外图像更少缺陷,提高图像质量,为验钞算法提供正确的图像输入,从而提高纸币识别率,减少不明钞、疑惑钞或假钞误报率。
实施例二
图6是本发明实施例二提供的矫正红外图像的装置的功能模块示意图,该装置可由软件和/或硬件实现,一般集成在银行自助系统的服务器中。如图6所示,该装置包括:
设置模块601,用于设置待矫正的图像的左上角顶点的X坐标org.X、Y坐标org.Y;
具体的,定义del_height表示上黑边的高,定义del_width表示右黑边的宽,y表示当前像素在图像中高度方向的纵坐标,x表示当前像素点在图像中宽度方向上的横坐标,坐标系原点为图像左上角的顶点,坐标用(0,0)表示,坐标轴如图4。每张图像左上角顶点在计算机中的内存坐标为(org.x,org.y),org.x为图像左上角顶点在内存块映射中x轴坐标,org.y为图像左上角顶点在内存块映射中y轴坐标;height表示整张图像的高,width表示整张图像的宽,则IMG[y*width+x]表示当前像素点的值。
获取模块602,用于分别获取所述待矫正的图像的上黑边条的高del_height以及右黑边条的宽del_width;
优选地,参考图7,图7是本发明实施例获取模块的功能模块示意图。所述获取模块,包括:
第一移动单元701,用于从所述待矫正的图像第一行Y=0开始,若当前像素值IMG[Y*width+X]为0,则Y坐标向下移动1,再计算当前像素值IMG[Y*width+X];
第一计算单元702,用于若当前像素值IMG[Y*width+X]与0的大小超于预先设置的阈值范围,则del_height为所述当前像素的Y坐标。
具体的,计算上黑边条的高,从图像第一行开始即y=0,如果当前像素值IMG[y*width+x]为0,y坐标向下移动即y=y+1,再计算当前像素值IMG[y*width+x],知道当前像素值IMG[y*width+x]不再接近于0,则表示当前像素值不再是黑点,del_height=y保存当前的y坐标。
优选地,参考图8,图8是本发明实施例获取模块的功能模块示意图。所述获取模块,包括:
第二移动单元801,用于从所述待矫正的图像的第一列X=0开始,若当前像素值IMG[Y*width+X]为0,则X坐标向右移动1,再计算当前像素值IMG[Y*width+X];
第二计算单元802,用于若当前像素值IMG[Y*width+X]与0的大小超于预先设置的阈值范围,则del_width为所述当前像素的X坐标。
具体的,计算右黑边的宽,同样,从图像第一列开始即x=0,如果当前像素值IMG[y*width+x]不为0,x坐标向右移动即x=x+1,直到IMG[y*width+x]接近于0,记下当前x坐标del_width=x,x坐标继续向右移动并计算当前像素值如果接近0,黑边宽度继续del_width+1,直到x坐标移到width整张图像的宽,这时的del_width即是右黑边的宽。
计算模块603,用于根据所述X坐标和所述右黑边条的宽计算矫正后的图像的左上角顶点的X坐标;根据所述Y坐标和所述上黑边条的高计算矫正后的图像的左上角顶点的Y坐标。
优选地,所述计算模块603,用于:
矫正后的图像的左上角顶点的X坐标为org.X-del_width。
优选地,所述计算模块603,用于:
矫正后的图像的左上角顶点的Y坐标为org.y+del_height。
具体的,图像顶点坐标校正,根据上面步骤获得上黑边高度值del_height和右黑边宽度值del_width后,校正后图像顶点的左上角坐标表示为(org.x-del_width,org,y+del_height)。经过上下位移矫正处理后的图像如图5,最终去掉图像中最上边和最右边的黑边。
经由上述方案,设置待矫正的图像的左上角顶点的X坐标org.X、Y坐标org.Y;分别获取所述待矫正的图像的上黑边条的高del_height以及右黑边条的宽del_width;根据所述X坐标和所述右黑边条的宽计算矫正后的图像的左上角顶点的X坐标;根据所述Y坐标和所述上黑边条的高计算矫正后的图像的左上角顶点的Y坐标。通过采用上述技术方案,正红外采集到钞票上下方图像位移的缺陷,使得红外图像更少缺陷,提高图像质量,为验钞算法提供正确的图像输入,从而提高纸币识别率,减少不明钞、疑惑钞或假钞误报率。
另外,本发明实施例还提供了一种服务武器,包括本发明实施例二所提供的装置,能够执行本发明实施例一所提供的方法。本发明实施例提供的矫正红外图像的方法及装置,设置待矫正的图像的左上角顶点的X坐标org.X、Y坐标org.Y;分别获取所述待矫正的图像的上黑边条的高del_height以及右黑边条的宽del_width;根据所述X坐标和所述右黑边条的宽计算矫正后的图像的左上角顶点的X坐标;根据所述Y坐标和所述上黑边条的高计算矫正后的图像的左上角顶点的Y坐标。通过采用上述技术方案,正红外采集到钞票上下方图像位移的缺陷,使得红外图像更少缺陷,提高图像质量,为验钞算法提供正确的图像输入,从而提高纸币识别率,减少不明钞、疑惑钞或假钞误报率。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。