发明内容
基于此,有必要针对上述技术问题,提供一种能够解决上述问题的一种图形码识别方法、装置、计算机设备和存储介质。
一种图形码识别方法,所述方法包括:
获取待识别图形码图像中的定位框检测区域;所述定位框检测区域包括待测图形码的多个边缘部分;
基于快速傅里叶变换处理,对所述待测图形码的多个边缘部分进行边缘特征提取,得到所述多个边缘部分各自对应的周期信息;所述周期信息包括目标频率;
根据预设的图形码制码规则和所述多个边缘部分各自对应的目标频率,确定所述待测图形码的条码规格;
基于所述条码规格,对所述待测图形码的多个边缘部分进行边缘频域采样,得到所述待测图形码的重建结果;
采用所述重建结果,生成所述待测图形码的识别信息。
在一个实施例中,所述基于快速傅里叶变换处理,对所述待测图形码的多个边缘部分进行边缘特征提取,得到所述多个边缘部分各自对应的周期信息,包括:
对所述待测图形码的多个边缘部分进行快速傅里叶变换处理,得到所述多个边缘部分各自对应的频率响应值;
针对每一边缘部分,根据所述频率响应值,确定所述边缘部分对应的周期信息。
在一个实施例中,所述频率响应值包括多个,所述针对每一边缘部分,根据所述频率响应值,确定所述边缘部分对应的周期信息,包括:
针对每一边缘部分,从多个所述频率响应值中,确定候选频率响应值;所述候选频率响应值为根据预设的条码规则对多个所述频率响应值进行筛选得到的响应值;
根据归一化后的候选频率响应值,确定最大频率响应值,并将所述最大频率响应值作为目标频率,得到所述边缘部分对应的周期信息。
在一个实施例中,所述基于所述条码规格,对所述待测图形码的多个边缘部分进行边缘频域采样,得到所述待测图形码的重建结果,包括:
根据所述条码规格,确定所述待测图形码的目标采样步长;
采用所述目标采样步长,对所述定位框检测区域进行自适应二值化采样处理,得到自适应二值化采样结果;
基于所述自适应二值化采样结果,得到所述待测图形码的重建结果。
在一个实施例中,所述基于所述自适应二值化采样结果,得到所述待测图形码的重建结果,包括:
基于所述自适应二值化采样结果,对所述待测图形码的多个边缘部分进行跳跃点计算,确定所述多个边缘部分各自对应的边缘信息;
根据所述图形码制码规则,对所述多个边缘部分各自对应的边缘信息进行修复重建,得到所述待测图形码的重建结果。
在一个实施例中,所述获取待识别图形码图像中的定位框检测区域,包括:
获取待识别图形码图像;
确定所述待识别图形码图像对应的条码定位结果;
若所述条码定位结果中存在定位框检测信息,从所述待识别图形码图像中确定所述定位框检测区域。
在一个实施例中,在所述基于快速傅里叶变换处理,对所述待测图形码的多个边缘部分进行边缘特征提取,得到所述多个边缘部分各自对应的周期信息的步骤之前,还包括:
对所述定位框检测区域进行仿射变换处理,以将所述定位框检测区域转换为矩形的定位框检测区域。
一种图形码识别装置,所述装置包括:
定位框检测区域获取模块,用于获取待识别图形码图像中的定位框检测区域;所述定位框检测区域包括待测图形码的多个边缘部分;
快速傅里叶变换处理模块,用于基于快速傅里叶变换处理,对所述待测图形码的多个边缘部分进行边缘特征提取,得到所述多个边缘部分各自对应的周期信息;所述周期信息包括目标频率;
条码规格确定模块,用于根据预设的图形码制码规则和所述多个边缘部分各自对应的目标频率,确定所述待测图形码的条码规格;
重建模块,用于基于所述条码规格,对所述待测图形码的多个边缘部分进行边缘频域采样,得到所述待测图形码的重建结果;
识别信息生成模块,用于采用所述重建结果,生成所述待测图形码的识别信息。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如上所述的图形码识别方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述的图形码识别方法的步骤。
上述一种图形码识别方法、装置、计算机设备和存储介质,通过获取待识别图形码图像中的定位框检测区域,定位框检测区域包括待测图形码的多个边缘部分,然后基于快速傅里叶变换处理,对待测图形码的多个边缘部分进行边缘特征提取,得到多个边缘部分各自对应的周期信息,周期信息包括目标频率,根据预设的图形码制码规则和多个边缘部分各自对应的目标频率,确定待测图形码的条码规格,进而基于条码规格,对待测图形码的多个边缘部分进行边缘频域采样,得到待测图形码的重建结果,采用重建结果,生成待测图形码的识别信息,实现了对图形码的条码规格和周期进行准确判断,通过应用快速傅里叶变换处理确定条码规格和周期,进而利用边缘频域特征进行自适应采样重建,极大地提升了解码速度及准确性,且能够兼容不同工业场景。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供了一种图形码识别方法,本实施例以该方法应用于服务器进行举例说明,可以理解的是,该方法也可以应用于终端,还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。本实施例中,该方法包括以下步骤:
步骤101,获取待识别图形码图像中的定位框检测区域;所述定位框检测区域包括待测图形码的多个边缘部分;
其中,图形码可以为DM码(Data Matrix Code),是一种二维条码,DM码的四条边缘可以由两条长边(如L形边)和两条定位边组成,内部具有二进制数据;待识别图形码图像可以为二维灰度图像,例如,可以获取待识别图形码图像的二维灰度图像。
作为一示例,定位框检测区域可以为在待识别图形码图像中的定位框的内部图像区域,该内部图像区域存在待测图形码,例如,可以将待识别图形码图像在定位框中的图像区域作为待检测的定位框检测区域(如图2a中1)。
在实际应用中,通过获取待识别图形码图像,可以确定待识别图形码图像中存在待测图形码的定位框,进而可以将定位框中的图像区域作为定位框检测区域,该定位框检测区域可以包括待测图形码的多个边缘部分。
具体地,在获取待识别图形码图像的二维灰度图像后,可以基于该二维灰度图像进行条码定位,得到二维灰度图像中的定位框,进而可以根据二维灰度图像和定位框,得到待识别图形码图像中的定位框检测区域。
在一个可选实施例中,对待识别图形码图像的二维灰度图像进行条码定位,可以获取一个或多个四边形的定位框,每个四边形的定位框可以在待识别图形码图像中具有对应的定位框检测区域。
步骤102,基于快速傅里叶变换处理,对所述待测图形码的多个边缘部分进行边缘特征提取,得到所述多个边缘部分各自对应的周期信息;所述周期信息包括目标频率;
其中,快速傅里叶变换(fast Fourier transform,FFT)为将信号由空域转为频域的数学变换,是一种离散傅里叶变换(Discrete Fourier Transform,DFT)的高效算法,其可以将图片中的空间信息转换为频率信息。
在获取定位框检测区域后,可以基于快速傅里叶变换处理,对定位框检测区域中待测图形码的多个边缘部分进行边缘特征提取,进而可以得到多个边缘部分各自对应的周期信息,该周期信息可以包括边缘部分对应的目标频率。
具体地,对定位框检测区域中待测图形码的四个边缘部分进行快速傅里叶变换,可以得到频率响应值,进而针对每一边缘部分,可以选取出该边缘部分对应的目标频率,如高响应频率f。
步骤103,根据预设的图形码制码规则和所述多个边缘部分各自对应的目标频率,确定所述待测图形码的条码规格;
其中,条码规格可以为图形码中所包含的数据点数量,例如,DM条码规格为二维点阵码所包含的数据点的数量,其可以为10*10至144*144,条码规格可以由DM码的两个定位边的边缘得到,因此需要精确的判断出DM码边缘的周期性,以得出相应的条码规格。
在具体实现中,可以根据预设的图形码制码规则,对待测图形码的多个边缘部分各自对应的目标频率进行筛选匹配,进而可以确定待测图形码的条码规格,以进一步根据条码规格和周期信息进行自适应采样重建。
在一示例中,预设的图形码制码规则可以为DM制码规则,可以根据DM制码规则,对待测图形码的四个边缘部分各自对应的高响应频率f进行筛选匹配,确定待测DM码的条码规格。
步骤104,基于所述条码规格,对所述待测图形码的多个边缘部分进行边缘频域采样,得到所述待测图形码的重建结果;
在得到条码规格后,可以根据该条码规格,结合待测图形码的多个边缘部分各自对应的周期信息,对各个边缘部分进行边缘频域采样,进而可以得到待测图形码的重建结果。
例如,根据待测DM码的条码规格和周期信息,可以对四个边缘部分进行自适应采样重建,得到修复重建后的待测DM码。
在一个可选实施例中,根据待识别图形码图像中的一个或多个四边形的定位框检测区域,可以针对每个四边形的定位框检测区域,得到对应的待测图形码的重建结果。
步骤105,采用所述重建结果,生成所述待测图形码的识别信息。
在得到重建结果后,可以根据图形码的译码规则,将重建结果转换为字符串,进而可以生成待测图形码的识别信息。
具体地,针对每个定位框检测区域对应的重建结果,可以应用DM译码规则,将重建结果转换为字符串,进而可以输出待测DM码的识别信息。
在本申请实施例中,通过获取待识别图形码图像中的定位框检测区域,定位框检测区域包括待测图形码的多个边缘部分,然后基于快速傅里叶变换处理,对待测图形码的多个边缘部分进行边缘特征提取,得到多个边缘部分各自对应的周期信息,周期信息包括目标频率,根据预设的图形码制码规则和多个边缘部分各自对应的目标频率,确定待测图形码的条码规格,进而基于条码规格,对待测图形码的多个边缘部分进行边缘频域采样,得到待测图形码的重建结果,采用重建结果,生成待测图形码的识别信息,实现了对图形码的条码规格和周期进行准确判断,通过应用快速傅里叶变换处理确定条码规格和周期,进而利用边缘频域特征进行自适应采样重建,极大地提升了解码速度及准确性,且能够兼容不同工业场景。
在一个实施例中,所述基于快速傅里叶变换处理,对所述待测图形码的多个边缘部分进行边缘特征提取,得到所述多个边缘部分各自对应的周期信息,可以包括如下步骤:
对所述待测图形码的多个边缘部分进行快速傅里叶变换处理,得到所述多个边缘部分各自对应的频率响应值;针对每一边缘部分,根据所述频率响应值,确定所述边缘部分对应的周期信息。
在实际应用中,为了得到待测图形码的四个边缘的频率,可以对四个边缘部分进行快速傅里叶变换处理,得到四个边缘部分各自对应的频率响应值,进而针对每一边缘部分,可以从频率响应值中选取出目标频率,如频率响应值f,并得到该边缘部分对应的周期信息。
例如,通过对边缘部分的信号进行快速傅里叶变换,将信号由空域转为频域,进而可以获取频率响应值。
通过上述实施例对待测图形码的多个边缘部分进行快速傅里叶变换处理,得到多个边缘部分各自对应的频率响应值,进而针对每一边缘部分,根据频率响应值,确定边缘部分对应的周期信息,可以基于快速傅里叶变换,准确获取待测图形码的四个边缘部分各自对应的周期信息,提升了解码准确率。
在一个实施例中,频率响应值可以包括多个,所述针对每一边缘部分,根据所述频率响应值,确定所述边缘部分对应的周期信息,可以包括如下步骤:
针对每一边缘部分,从多个所述频率响应值中确定候选频率响应值;所述候选频率响应值为根据预设的条码规则对多个所述频率响应值进行筛选得到的响应值;根据归一化后的候选频率响应值,确定最大频率响应值,并将所述最大频率响应值作为目标频率,得到所述边缘部分对应的周期信息。
在实际应用中,针对待测图形码的每一边缘部分,可以根据预设的条码规则对多个频率响应值进行筛选,得到候选频率响应值,进而可以从归一化后的候选频率响应值中确定最大频率响应值,即最大频率,作为该边缘部分对应的目标频率,并可以得到定位框检测区域中四个边缘部分的周期信息。
在一个可选实施例中,针对定位框检测区域中的每一边缘部分,可以将多个频率响应值中不符合DM条码规则的高频响应值与低频响应值去除,得到剩余的频率响应值(即候选频率响应值),进而可以从归一化后剩余的多个频率响应值中确定最大频率响应值,即最大频率f,并可以得到该定位框检测区域的周期信息,其中,周期信息可以包括四个边缘的多个频率响应值及其对应的最大频率f。根据待识别图形码图像中的一个或多个四边形的定位框检测区域,可以针对每个四边形的定位框检测区域,得到对应的周期信息。
通过上述实施例针对每一边缘部分,根据预设条件,从多个频率响应值中确定候选频率响应值,候选频率响应值为根据预设的条码规则对多个频率响应值进行筛选得到的响应值,进而根据归一化后的候选频率响应值,确定最大频率响应值,并将最大频率响应值作为目标频率,得到边缘部分对应的周期信息,可以基于预设条件选取出每一边缘部分的最大频率,能够准确得到边缘部分对应的周期信息,为后续DM码自适应采样重建提供了数据支持。
在一个实施例中,所述基于所述条码规格,对所述待测图形码的多个边缘部分进行边缘频域采样,得到所述待测图形码的重建结果,可以包括如下步骤:
根据所述条码规格,确定所述待测图形码的目标采样步长;
在具体实现中,针对得到的条码规格,基于DM码的边缘规则,可以确定待测图形码的目标采样步长。
由于基于DM制码规则,DM码的边缘有两种规则,以正方形码为例,一方面,针对印刷码,其四个边缘的频率一般为(1,1,x,x),x对应黑白交错的边缘,即定位边;另一方面,针对打点码,其四个边缘的频率一般为(x,x,2x,2x),即四个边缘中L形边的频率与定形边的频率具有两倍关系。通过以上DM码的边缘规则,可以得到合适的采样步长s,作为目标采样步长。
采用所述目标采样步长,对所述定位框检测区域进行自适应二值化采样处理,得到自适应二值化采样结果;
在确定目标采样步长后,可以采用该目标采样步长,对定位框检测区域进行二值化采样处理,进而可以得到二值化采样结果。
例如,通过获取合适的采样步长s(即目标采样步长),可以根据采样步长s对定位框检测区域进行二值化采样,通过局部阈值二值化可以得到二值化信息,如图2b中a为基于目标采样步长(即划分的每一小方格)的处理结果,图2b中b为二值化采样结果。
在一示例中,如图2b所示,基于定位框检测区域中待测DM码的四个边缘部分的周期信息,可以得到L形边频率为14,定位边频率为7,根据DM制码规则,可以确定待测DM码的条码规格,进而可以得到合适的采样步长(即目标采样步长)。
在又一示例中,自适应二值化采样处理可以采用如下方式进行:
基于输入的仿射变换后图像I,由图像边缘部分的目标频率可以得到条码规格g,如g=(g_h,g_w),其中,h可以表征条码规格中的高,w可以表征条码规格中的宽;还可以计算得到目标采样步长s,如s=(s_h,s_w),其中,h可以表征步长(即划分的每一小方格)的高,w可以表征步长(即划分的每一小方格)的宽。
通过采用s*s尺寸大小的窗口,对仿射变换后的图像I进行均值滤波处理,并可以根据条码规格g与目标采样步长s采样滤波处理后的图像中每个模块的中心灰度,进而可以得到一个大小为g的灰度矩阵v。
以min(g_h/2,g_w/2)为二维窗口边长,对灰度矩阵v进行均值滤波处理,可以得到采样点局部灰度平均矩阵t,进而针对灰度矩阵v中的每一个点,比较其与采样点局部灰度平均矩阵t在相同位置上的灰度大小,可以得到二值化后的矩阵b,即自适应二值化采样结果。
基于所述自适应二值化采样结果,得到所述待测图形码的重建结果。
在实际应用中,可以基于自适应二值化采样结果,对待测图形码的边缘信息进行修复重建,进而可以得到待测图形码的重建结果。
通过上述实施例根据条码规格,确定待测图形码的目标采样步长,然后采用目标采样步长,对定位框检测区域进行自适应二值化采样处理,得到自适应二值化采样结果,进而基于自适应二值化采样结果,得到待测图形码的重建结果,可以准确获取待测图形码的目标采样步长,提升了解码准确率。
在一个实施例中,所述基于所述自适应二值化采样结果,得到所述待测图形码的重建结果,可以包括如下步骤:
基于所述自适应二值化采样结果,对所述待测图形码的多个边缘部分进行跳跃点计算,确定所述多个边缘部分各自对应的边缘信息;根据所述图形码制码规则,对所述多个边缘部分各自对应的边缘信息进行修复重建,得到所述待测图形码的重建结果。
其中,边缘信息可以为待测图形码未修复重建前的实际边缘条码情况,例如,条码的边缘存在污损/缺失的情况。
在实际应用中,可以基于自适应二值化采样结果,对待测图形码的四个边缘进行跳跃点计算,进而可以基于DM制码规则对存在污损/缺失情况的边缘信息进行修复重建,得到待测图形码的重建结果。
在一个可选实施例中,针对待识别图形码图像中的一个或多个四边形的定位框检测区域,可以基于每个四边形的定位框检测区域,得到对应的重建结果。
相较于传统二值化图像的边缘跳跃点计算,其是简单地进行0/1区分,以得到条码的制式,本申请实施例中可以通过已知周期的二值化图像和边缘跳跃点判断,对待测DM码中存在污损/缺失情况的边缘信息进行重建。
由于不同的材质和条码印刷技术的限制,简单的二值化跳跃点计算难以满足所有应用场景,导致了传统解码器无法适应变化较大的场景,需要针对性的对不同场景进行调整,不具有普适性;且传统解码器需要大量的边缘采样测试,算法时间成本高,增大了产品的生产成本。本申请实施例中可以应用快速傅里叶变换处理确定条码规格和周期,并利用边缘频域特征进行自适应采样重建,降低了兼容不同场景的技术难度,加快了整体解码流程,提升了解码准确率,适用于大多数工业场景。
通过上述实施例基于自适应二值化采样结果,对待测图形码的多个边缘部分进行跳跃点计算,确定多个边缘部分各自对应的边缘信息,进而根据图形码制码规则,对多个边缘部分各自对应的边缘信息进行修复重建,得到待测图形码的重建结果,可以通过图像二值化和边缘跳跃点判断,对待测DM码中存在污损/缺失情况的边缘信息进行重建,降低了兼容不同场景的技术难度,加快了整体解码流程,提升了解码准确率。
在一个实施例中,所述获取待识别图形码图像中的定位框检测区域,可以包括如下步骤:
获取待识别图形码图像;确定所述待识别图形码图像对应的条码定位结果;若所述条码定位结果中存在定位框检测信息,从所述待识别图形码图像中确定所述定位框检测区域。
其中,定位框检测信息可以表征待识别图形码图像中具有定位框。
在实际应用中,可以获取待识别图形码图像,采用多尺度梯度连通域算法对待识别图形码图像进行条码定位,得到条码定位结果,即是否存在包含待测图形码的定位框,若检测到待识别图形码图像中未具有定位框,可以确认条码定位结果为空,输出空结果,程序中断,并进入下一张待识别图形码图像的识别流程;若检测到待识别图形码图像中具有定位框,可以将定位框中的图像区域作为定位框检测区域。
在一示例中,还可以基于线检测的定位算法,对获取的待识别图形码图像进行条码定位,以检测定位框。
通过上述实施例获取待识别图形码图像,然后确定待识别图形码图像对应的条码定位结果,若条码定位结果中存在定位框检测信息,从待识别图形码图像中确定定位框检测区域,可以在确定待识别图形码图像中具有定位框后,得到定位框检测区域,加快了整体解码流程,提升了解码准确率。
在一个实施例中,在所述基于快速傅里叶变换处理,对所述待测图形码的多个边缘部分进行边缘特征提取,得到所述多个边缘部分各自对应的周期信息的步骤之前,可以包括如下步骤:
对所述定位框检测区域进行仿射变换处理,以将所述定位框检测区域转换为矩形的定位框检测区域。
在实际应用中,为了将定位框中图像区域部分转换为矩形,以便于进一步进行边缘特征提取与二值化采样操作,可以对定位框检测区域进行仿射变换处理。
在一个可选实施例中,针对待识别图形码图像中的一个或多个四边形的定位框检测区域,可以对每个四边形的定位框检测区域进行仿射变换处理。
通过上述实施例对定位框检测区域进行仿射变换处理,以将定位框检测区域转换为矩形的定位框检测区域,可以有助于进一步进行边缘特征提取与二值化采样操作。
为了使本领域技术人员能够更好地理解上述步骤,以下结合图2c通过一个例子对本申请实施例加以示例性说明,但应当理解的是,本申请实施例并不限于此。
图形码识别处理的过程可以为:
1、通过条码定位模块,可以对输入图片(即待识别图形码图像)进行条码定位,在检测到待识别图形码图像中未具有定位框,即无定位框时,输出空结果;在检测到待识别图形码图像中具有定位框时,可以将输入图片和输入图片对应的一个或多个定位框输入边缘特征提取模块。
2、通过边缘特征提取模块,可以对由输入图片和输入图片对应的一个或多个定位框得到的一个或多个定位框检测区域进行仿射变换处理,进而对仿射变换处理后的一个或多个定位框检测区域进行快速傅里叶变换,得到每个定位框检测区域对应的周期信息,以输入自适应采样模块。
3、通过自适应采样模块,可以对每个定位框检测区域进行边缘频域采样,根据合适的目标采样步长得到自适应二值化采样结果,进而可以基于自适应二值化采样结果进行跳跃点计算,重设L边,以对每个定位框检测区域中的边缘信息修复重建,得到重建结果。
4、通过译码模块,可以针对每个定位框检测区域对应的重建结果,应用DM译码规则将重建结果转换为字符串,进而可以输出待测DM码的条码结果(即识别信息)。
在一个实施例中,如图3所示,提供了另一种图形码识别方法的流程示意图。本实施例中,该方法包括以下步骤:
在步骤301中,获取待识别图形码图像中的定位框检测区域;所述定位框检测区域包括待测图形码的多个边缘部分。在步骤302中,对所述定位框检测区域进行仿射变换处理,以将所述定位框检测区域转换为矩形的定位框检测区域。在步骤303中,对所述待测图形码的多个边缘部分进行快速傅里叶变换处理,得到所述多个边缘部分各自对应的频率响应值。在步骤304中,针对每一边缘部分,根据所述频率响应值,确定所述边缘部分对应的周期信息;所述周期信息包括目标频率。在步骤305中,根据预设的图形码制码规则和所述多个边缘部分各自对应的目标频率,确定所述待测图形码的条码规格。在步骤306中,根据所述条码规格,确定所述待测图形码的目标采样步长。在步骤307中,采用所述目标采样步长,对所述定位框检测区域进行自适应二值化采样处理,得到自适应二值化采样结果。在步骤308中,基于所述自适应二值化采样结果,对所述待测图形码的多个边缘部分进行跳跃点计算,确定所述多个边缘部分各自对应的边缘信息。在步骤309中,根据所述图形码制码规则,对所述多个边缘部分各自对应的边缘信息进行修复重建,得到所述待测图形码的重建结果。在步骤310中,采用所述重建结果,生成所述待测图形码的识别信息。需要说明的是,上述步骤的具体限定可以参见上文对一种图形码识别方法的具体限定,在此不再赘述。
应该理解的是,虽然图1-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-3中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种图形码识别装置,包括:
定位框检测区域获取模块401,用于获取待识别图形码图像中的定位框检测区域;所述定位框检测区域包括待测图形码的多个边缘部分;
快速傅里叶变换处理模块402,用于基于快速傅里叶变换处理,对所述待测图形码的多个边缘部分进行边缘特征提取,得到所述多个边缘部分各自对应的周期信息;所述周期信息包括目标频率;
条码规格确定模块403,用于根据预设的图形码制码规则和所述多个边缘部分各自对应的目标频率,确定所述待测图形码的条码规格;
重建模块404,用于基于所述条码规格,对所述待测图形码的多个边缘部分进行边缘频域采样,得到所述待测图形码的重建结果;
识别信息生成模块405,用于采用所述重建结果,生成所述待测图形码的识别信息。
在一个实施例中,所述快速傅里叶变换处理模块402包括:
频率响应值得到子模块,用于对所述待测图形码的多个边缘部分进行快速傅里叶变换处理,得到所述多个边缘部分各自对应的频率响应值;
周期信息得到子模块,用于针对每一边缘部分,根据所述频率响应值,确定所述边缘部分对应的周期信息。
在一个实施例中,所述频率响应值包括多个,所述周期信息得到子模块包括:
频率响应值筛选单元,用于针对每一边缘部分,从多个所述频率响应值中确定候选频率响应值;所述候选频率响应值为根据预设的条码规则对多个所述频率响应值进行筛选得到的响应值;
目标频率确定单元,用于根据归一化后的候选频率响应值,确定最大频率响应值,并将所述最大频率响应值作为目标频率,得到所述边缘部分对应的周期信息。
在一个实施例中,所述重建模块404包括:
目标采样步长确定子模块,用于根据所述条码规格,确定所述待测图形码的目标采样步长;
自适应二值化采样子模块,用于采用所述目标采样步长,对所述定位框检测区域进行自适应二值化采样处理,得到自适应二值化采样结果;
重建结果得到子模块,用于基于所述自适应二值化采样结果,得到所述待测图形码的重建结果。
在一个实施例中,所述重建结果得到子模块:
边缘信息确定单元,用于基于所述自适应二值化采样结果,对所述待测图形码的多个边缘部分进行跳跃点计算,确定所述多个边缘部分各自对应的边缘信息;
修复重建单元,用于根据所述图形码制码规则,对所述多个边缘部分各自对应的边缘信息进行修复重建,得到所述待测图形码的重建结果。
在一个实施例中,所述定位框检测区域获取模块401包括:
图像获取子模块,用于获取待识别图形码图像;
条码定位子模块,用于确定所述待识别图形码图像对应的条码定位结果;
定位框检测区域确定子模块,用于若所述条码定位结果中存在定位框检测信息,从所述待识别图形码图像中确定所述定位框检测区域。
在一个实施例中,所述装置还包括:
仿射变换模块,用于对所述定位框检测区域进行仿射变换处理,以将所述定位框检测区域转换为矩形的定位框检测区域。
在本申请实施例中,通过获取待识别图形码图像中的定位框检测区域,定位框检测区域包括待测图形码的多个边缘部分,然后基于快速傅里叶变换处理,对待测图形码的多个边缘部分进行边缘特征提取,得到多个边缘部分各自对应的周期信息,周期信息包括目标频率,根据预设的图形码制码规则和多个边缘部分各自对应的目标频率,确定待测图形码的条码规格,进而基于条码规格,对待测图形码的多个边缘部分进行边缘频域采样,得到待测图形码的重建结果,采用重建结果,生成待测图形码的识别信息,实现了对DM码的条码规格和周期进行准确判断,通过应用快速傅里叶变换处理确定条码规格和周期,进而利用边缘频域特征进行自适应采样重建,极大地提升了解码速度及准确性,且能够兼容不同工业场景。
关于一种图形码识别装置的具体限定可以参见上文中对于一种图形码识别方法的限定,在此不再赘述。上述一种图形码识别装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储图形码识别数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现图形码识别方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取待识别图形码图像中的定位框检测区域;所述定位框检测区域包括待测图形码的多个边缘部分;
基于快速傅里叶变换处理,对所述待测图形码的多个边缘部分进行边缘特征提取,得到所述多个边缘部分各自对应的周期信息;所述周期信息包括目标频率;
根据预设的图形码制码规则和所述多个边缘部分各自对应的目标频率,确定所述待测图形码的条码规格;
基于所述条码规格,对所述待测图形码的多个边缘部分进行边缘频域采样,得到所述待测图形码的重建结果;
采用所述重建结果,生成所述待测图形码的识别信息。
在一个实施例中,处理器执行计算机程序时还实现上述其他实施例中的图形码识别方法的步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取待识别图形码图像中的定位框检测区域;所述定位框检测区域包括待测图形码的多个边缘部分;
基于快速傅里叶变换处理,对所述待测图形码的多个边缘部分进行边缘特征提取,得到所述多个边缘部分各自对应的周期信息;所述周期信息包括目标频率;
根据预设的图形码制码规则和所述多个边缘部分各自对应的目标频率,确定所述待测图形码的条码规格;
基于所述条码规格,对所述待测图形码的多个边缘部分进行边缘频域采样,得到所述待测图形码的重建结果;
采用所述重建结果,生成所述待测图形码的识别信息。
在一个实施例中,计算机程序被处理器执行时还实现上述其他实施例中的图形码识别方法的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。