识别集装箱箱号的方法和装置与流程

文档序号:11952151阅读:961来源:国知局
识别集装箱箱号的方法和装置与流程

本发明涉及图像处理领域,具体而言,涉及一种识别集装箱箱号的方法和装置。



背景技术:

目前,集装箱被广泛的应用于交通运输中,为了方便对集装箱的识别,每个集装箱都有一个集装箱箱号和集装箱ISO号,以方便记录集装箱在运输过程中的状态。在港口作业中,为了减少人工成本、提升工作效率、杜绝人工抄录错误,图像识别技术被用于对采集到的集装箱图像进行处理,从而自动识别出集装箱箱号和集装箱ISO号。

现有技术中,已经有一些关于集装箱箱号识别的方法被提出来。

(1)关于箱号定位,现有技术是采用图像滤波、二值化、形态学方法对采集到的集装箱图像进行处理,从而得到箱号字符串定位块,如果成像条件稳定,上述对箱号进行提取的方法可能会起到一定的效果。但是,实际情况中集装箱可能会有一定的倾斜,且由于受不同光照环境、相机曝光参数差异的影响,采集到的集装箱图像的对比度、平均亮度均会有较大的变化,从而影响对集装箱箱号的定位,如果在箱面存在污损的情况下,甚至可能造成箱号定位失败。

(2)在完成集装箱箱号定位后,需要识别箱号,现有的方法主要有两种,一是基于传统的单隐层神经网络训练分类器来实现箱号识别,其缺点是采用传统的神经网络分类器进行训练需要花费较长的时间;另外就是采用多类支持向量机的识别算法来实现箱号识别,在识别时采用的特征多为二值化图像,其缺点是二值化图像信息简单,如果二值化阈值选择不合适,会直接影响识别结果,且在使用多类支持向量机的方法进行箱号识别时,在参数选择上难以取到最优值参数,且进行预测时计算量相对较大,计算时间较长。

针对现有技术中对集装箱箱号的识别率低的问题,目前尚未提出有效的解决方案。



技术实现要素:

本发明的主要目的在于提供一种识别集装箱箱号的方法和装置,以解决对集装箱箱号的识别率低问题。

为了实现上述目的,根据本发明实施例的一个方面,提供了一种识别集装箱箱号的方法,该方法包括:采集集装箱的箱面的待识别图像的第一灰度图;基于预设笔划 库检测第一灰度图中的笔划区域,并合并检测到的笔划区域得到字符区域,其中,预设笔划库包括集装箱箱号的笔划样本,每个笔划样本中包含部分或全部笔划;基于字符区域得到各个字符的字符图像块;对字符图像块进行识别,得到各个字符的识别结果,组合识别结果得到待识别图像的集装箱箱号。

为了实现上述目的,根据本发明实施例的另一方面,提供了一种识别集装箱箱号的装置,该装置包括:采集模块,用于采集集装箱的箱面的待识别图像的第一灰度图;第一检测模块,用于基于预设笔划库检测第一灰度图中的笔划区域,并合并检测到的笔划区域得到字符区域,其中,预设笔划库包括集装箱箱号的笔划样本,每个笔划样本中包含部分或全部笔划;第一处理模块,用于基于字符区域得到各个字符的字符图像块;第一识别模块,用于对字符图像块进行识别,得到各个字符的识别结果,组合识别结果得到待识别图像的集装箱箱号。

采用本发明,通过使用预设笔划库检测采集到的集装箱的箱面的待识别图像中的笔划区域,并将获取到笔划区域合并得到字符区域,然后对基于字符区域获取的各个字符的字符图像块进行字符识别,得到各个字符的识别结果,并将识别结果进行组合得到集装箱箱号。采用本发明,利用预设笔划库和梯度直方图特征来检测集装箱箱号,解决了现有技术中对集装箱箱号的识别率低的问题,达到了对集装箱箱号的快速且准确识别的效果。

附图说明

构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的识别集装箱箱号的方法的流程图;

图2是根据本发明实施例的一个可选地识别集装箱箱号的流程图;

图3是根据本发明实施例的笔划正样本的示意图;

图4是根据本发明实施例的待检测图像的示意图;

图5是根据本发明实施例的经过笔划检测分类器识别的图像的示意图;

图6是根据本发明实施例的经过笔划检测分类器处理的图像的示意图;

图7是根据本发明实施例的经过组合之后的图像的示意图;

图8是根据本发明实施例的从字符图像块提取梯度直方图特征的流程图;以及

图9是根据本发明实施例的识别集装箱箱号的装置的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

首先,在对本发明实施例进行描述的过程中出现的部分名词或术语适用于如下解释:

集装箱箱号:集装箱箱号作为唯一标识集装箱的ID(IDentity)符号,集装箱箱号采用国际标准ISO6346(1995)标准定义,由4位英文字母(箱主号)和7位数字(箱体注册码)组成。

集装箱ISO号:使用UN/ISO标准代码,由于4位号码组成,表示集装箱的尺寸、箱型和功能。

HOG:英文全称是Histogram of Oriented Gradient,中文名称是方向梯度直方图,是一种在计算机视觉和图像处理中用来进行物体检测的特征描述子。它通过计算和统计图像局部区域的梯度方向直方图来构成特征。

LBP:英文全称是Local Binary Pattern,中文名称是局部二值模式,是一种用来描述图像局部纹理特征的算子,它具有旋转不变性和灰度不变性等显著的优点,用于纹理特征提取,而且,提取的特征是图像的局部的纹理特征。

Adaboost:是一种迭代算法,其核心思想是针对同一个训练集训练不同的分类器(弱分类器),然后把这些弱分类器集合起来,构成一个更强的最终分类器(强分类器)。

线性分类器:在机器学习领域,分类的目标是指将具有相似特征的对象聚集。而一个线性分类器则透过特征的线性组合来做出分类决定,以达到此种目的。对象的特征通常被描述为特征值,而在向量中则描述为特征向量。

本发明实施例提供了一种识别集装箱箱号的方法。图1是根据本发明实施例的识别集装箱箱号的方法的流程图。如图1所示,该方法包括步骤如下:

步骤S102,采集集装箱的箱面的待识别图像的第一灰度图。

步骤S104,基于预设笔划库检测第一灰度图中的笔划区域,并合并检测到的笔划区域得到字符区域,其中,预设笔划库包括集装箱箱号的笔划样本,每个笔划样本中包含部分或全部笔划。

步骤S106,基于字符区域得到各个字符的字符图像块。

步骤S108,对字符图像块进行识别,得到各个字符的识别结果,组合识别结果得到待识别图像的集装箱箱号。

采用本发明,通过使用预设笔划库检测采集到的集装箱的箱面的待识别图像中的笔划区域,并将获取到笔划区域合并得到字符区域,然后对基于字符区域获取的各个字符的字符图像块进行字符识别,得到各个字符的识别结果,并将识别结果进行组合得到集装箱箱号。采用本发明,利用预设笔划库和梯度直方图特征来检测集装箱箱号,解决了现有技术中对集装箱箱号的识别率低的问题,达到了对集装箱箱号的快速且准确识别的效果。

下面结合如图2详细介绍上述实施例,如图2所示,该方法可以通过如下步骤实现:

步骤S202,采集集装箱的箱面的待识别图像的第一灰度图。

步骤S204,基于预设笔划库检测第一灰度图中的笔划区域,并合并检测到的笔划区域得到字符区域。

其中,预设笔划库包括对预先得到的集装箱箱号进行划分得到的笔划样本,每个笔划样本中包含部分或全部笔划。

步骤S206,基于字符区域的尺寸和排列顺序组合字符区域得到字符串块。

步骤S208,对字符串块进行图像分割得到单个字符的字符图像块。

步骤S210,从各个字符图像块中提取各个字符的梯度直方图特征。

步骤S212,采用字符识别分类器对各个字符的梯度直方图特征进行字符识别,得到各个字符的识别结果。

其中,字符识别分类器为预先训练的线性分类器。

步骤S214,组合识别结果,得到待识别图像的集装箱箱号。

通过使用预设笔划库检测采集到的集装箱的箱面的待识别图像中的笔划区域,并将获取到笔划区域合并得到字符区域,然后根据字符区域的尺寸和排列顺序将其组合为字符串块,并对字符串块进行图像分割得到单个字符的字符图像块,使用单个字符图像块的梯度直方图特征进行字符识别,得到各个字符的识别结果,并将识别结果进行组合得到集装箱箱号。采用本发明,利用预设笔划库和梯度直方图特征来检测集装箱箱号,解决了现有技术中对集装箱箱号的识别率低的问题,达到了对集装箱箱号的快速且准确识别的效果。

具体地,通过使用预设笔划库检测图像中的笔划信息,得到与笔划相关的图像目标(笔划区域),然后对笔划区域进行组合,形成字符或字符串(字符区域),再对可能为字符的区域进行组合,即按照集装箱箱号的排列规则组成箱号字符串(字符串块),得到箱号字符串后,对字符串块进行图像分割,得到单个字符图像块,最后在分割结果的灰度图上提取字符图像的HOG特征(梯度直方图特征),采用预先进行过字符识别分类器训练的线性分类器实现字符识别,最后组合识别到的字符结果,得到集装箱箱号。

通过上述实施例,利用基于笔划检测的集装箱箱号检测方法对集装箱箱号在待识别图像中的位置的进行定位,然后采用基于灰度图像的特征提取方法提取HOG特征(梯度直方图特征),并利用线性分类器实现集装箱箱号字符识别,达到了对集装箱箱号的高效识别的效果。

在上述实施例中,基于预设笔划库检测第一灰度图中的笔划区域可以包括:基于预设笔划库中的笔划样本训练笔划检测分类器;使用笔划检测分类器按预设尺寸的窗口以预设步长滑动检测待识别图像的第一灰度图,其中,若当前检测的窗口中第一灰度图的图像特征的分类结果为笔划,则标记当前检测的窗口为笔划区域;若当前检测的窗口中第一灰度图的图像特征的分类结果不为笔划,则标记当前检测的窗口为非笔划区域,得到第二灰度图;其中,预设步长小于预设尺寸。

具体地,基于预设笔划库检测待识别图像中的笔划区域可以通过如下步骤实现:基于预设笔划库中的笔划样本训练笔划检测分类器;通过待识别图像的第一灰度图计算待识别图像的局部二值化LBP特征;使用笔划检测分类器采用滑动窗口检测方法对LBP特征进行笔划特征类别判断,以检测出笔划区域,若检测结果为非笔划区域,则标记当前检测的窗口为非笔划区域,从而得到包含检测标记的第二灰度图。

可选地,在本实施例中,采用分类器技术来实现笔划检测,具体采用的是笔划检测分类器,在使用笔划检测分类器前需要对其进行训练以提高其识别率,训练样本越大其识别率越高,为了提高其识别率,需要整理一个容量较大的笔划样本库,由于本发明的目的是检测集装箱字符(集装箱箱号、集装箱ISO号),因此在搜集正样本时, 是将集装箱上的字符样本进行分块划分,并将划分得到的笔划区域作为正样本。部分笔划正样本如图3所示,每个样本中都包含了一部分笔划,负样本则是采用不包含笔划的图像,正样本和负样本共同构成了本实施例的预设笔划库。笔划检测分类器的训练方法是首先提取目标特征,然后选择分类模型进行离线训练,从而使其具有识别集装箱上特定的图案或者符号的功能。具体地,目标特征可以是LBP特征,分类模型可以是Adaboost分类器。

可选地,提取的目标特征也可以是HOG特征、Haar特征(哈尔特征)、EGL特征等其它描述目标纹理的特征,分类模型也可以采用SVM分类器(支持向量机,该向量机为类分类器)、随机森林分类器等其它结构的分类模型。

在训练完笔划检测分类器之后,即可利用笔划检测分类器来进行笔划检测。在本实施例中,采用滑动窗口检测的方法,也即在待检测图像中,按多尺度的窗口以一定步长进行滑动,提取每个检测窗口中的图像特征,然后采用笔划检测分类器的分类模型对窗口进行判断,如果判断出该窗口内“笔划”,则对该窗口进行标注,得到笔划区域。在本实施例中,目标特征为LBP特征,为了节省计算时间,可以先求整个待检测图像的第一灰度图,然后在积分图上快速计算LBP特征,再用级联Adaboost分类器对该特征进行类别判断。在完成检测待检测图像中所有尺度的位置遍历滑动后,在图像平面上会获得一些被笔划检测分类器识别为正样本的区域,即检测出笔划区域。

在上述实施例中,合并检测到的笔划区域得到字符区域可以包括:删除第二灰度图中的非笔划区域,得到第三灰度图;根据第三灰度图中相邻的笔划区域之间的空间几何位置判断相邻的笔划区域是否属于同一个字符;若相邻的笔划区域属于同一个字符,则合并相邻的笔划区域,得到字符区域。

可选地,合并检测到的笔划区域得到字符区域可以包括:根据相邻的笔划区域之间的空间几何位置判断相邻的笔划区域是否属于同一个字符;若相邻的笔划区域属于同一个字符,则合并相邻的笔划区域,得到字符区域。

具体地,空间几何位置包括空间重叠区域,其中,根据第三灰度图中相邻的笔划区域之间的空间几何位置判断相邻的笔划区域是否属于同一个字符可以包括:判断相邻的笔划区域之间的空间重叠区域是否大于预设重叠阈值;若相邻的笔划区域之间的空间重叠区域大于预设重叠阈值,则判断出相邻的笔划区域属于同一个字符。

下面结合图4至图6详述本发明的实施例。

图4是待检测图像,通过笔划检测分类器识别到的正样本(即上述实施例中的笔划区域)可以以矩形框的形式体现出来,如图5中的多个矩形框(图中仅对其中的一个作了标注说明)。由于字符(英文字母和阿拉伯数字)都是由连续的笔划构成的,因 此,在得到如图5所示的检测结果后,可以对检出矩形框按上述的合并条件进行合并,在本发明中采用的合并条件是根据各个笔划区域之间的空间几何位置关系判断两个笔划区域是否属于同一个字符来进行合并,若两个矩形框之间的空间重叠区域大于预设重叠阈值,则判断出这两个矩形框属于同一个字符,则合并这两个矩形框,得到如图6所示的字符区域(图6中示意性的标注了字符区域)。

通过上述实施例,可以快速识别笔划区域,并将识别出来的笔划区域进行合并得到字符区域。

需要进一步说明的是,集装箱箱号和集装箱ISO号都是由英文字母和阿拉伯数字组成的,且集装箱箱号和集装箱ISO号都是按照一定规则排列的,同一字符的不同笔划区域之间会有一定的重叠,所以可以通过判断两个笔划区域的重叠的量来判断两个笔划区域是否属于同一字符。

通过上述实施例,提供了一种简单实用的识别不同的笔划区域是否属于同一字符的方法,该方法可适应多种不同成像环境下的集装箱箱号定位,可以快速确定集装箱箱号和集装箱ISO号的位置。

在上述实施例中,基于字符区域得到各个字符的字符图像块可以包括:基于字符区域的尺寸和排列顺序组合字符区域得到字符串块;对字符串块进行图像分割得到各个字符的字符图像块。

具体地,使用矩形框标注字符区域,其中,矩形框外接字符区域,字符区域的尺寸包括矩形框的高度;第一矩形框与第二矩形框为水平排列,若第一矩形框与第二矩形框为水平排列的高度差值小于预设高度差、水平距离小于预设距离值且垂直坐标差小于预设坐标差,则组合第一矩形框和第二矩形框得到字符串块;第三矩形框与第四矩形框为垂直排列,若第三矩形框与第四矩形框的高度差值小于预设高度差、垂直距离小于预设距离值且水平坐标差小于预设坐标差,则组合第三矩形框和第四矩形框得到字符串块,其中,矩形框包括第一矩形框、第二矩形框、第三矩形框以及第四矩形框。

集装箱箱号字符串在图像中有两种排列形态,一种是水平方向排列,一种是垂直方向排列,且集装箱箱号字符串中各个字符的宽度、高度都有一定的相似性,所以可以通过上述特征判断不同的字符区域是否属于同一个字符串块。

在得到笔划聚类的组合结果(字符区域)后,每个字符区域都使用矩形框标注出来,再根据图像平面内各个矩形框的排列、尺寸大小,分别将水平方向和垂直方向上排列的矩形框组合起来,形成字符串块。具体地,若两个矩形框在水平方向上高度相当、水平距离相近,且垂直坐标位置相当的矩形框,则会被组合成一个字符串(字符 串块);若两个矩形框在垂直方向上高度相当,垂直距离,且水平坐标相当的矩形框,则会被组合成一个字符串(字符串块)。图7示意性地标注出了图6中字符区域组合得到的字符串块。

对字符串块进行图像分割得到各个字符的字符图像块可以包括:计算第二灰度图的前景点的第一灰度分布和背景点的第二灰度分布;获取第一灰度分布的第一峰值与第二灰度分布的第二峰值;基于第一峰值和第二峰值确定二值化阈值;使用二值化阈值对第二灰度图进行二值化处理,得到二值化图像;对二值化图像进行字符分割,得到各个字符的字符图像块。

具体地,对字符串块进行图像分割得到各个字符的字符图像块可以通过如下步骤来实现:计算各个字符串块的笔划区域的前景点在第二灰度图中的第一灰度分布,并计算各个字符串块的笔划区域的背景点在第二灰度图中的第二灰度分布;获取第一灰度分布的第一峰值与第二灰度分布的第二峰值;基于第一峰值和第二峰值确定二值化阈值;使用二值化阈值对第二灰度图进行二值化处理,得到二值化图像;对二值化图像进行字符分割,得到各个字符的字符图像块。

具体地,从字符串块中把每个字符切割出来,得到独立的单字符块。大多数字符都能分开,但是在实际应用时,由于运动模糊或曝光时间过长等原因,会造成两个距离较近的字符粘连在一起,为了避免这种情况带来的字符分割失败,可以根据第二灰度图得到字符分割的二值化阈值,然后根据二值化阈值来实现对单个字符的分割。如在一个字符串块中,以笔划检测结果作为MASK(掩膜,也即笔划检测结果),将笔划区域作为前景点,其余的作为背景点,分别统计前景点和背景点在字符串块第二灰度图中对应点的灰度分布,根据前景点和背景点的分布选择最佳的二值化阈值,然后根据二值化阈值对第二灰度图进行二值化处理,把字符串块中每个不同的字符分割开,从而得到单个字符的字符图像块。

可选地,基于第一峰值和第二峰值确定二值化阈值可以为:将第一峰值和第二峰值的平均值作为二值化阈值。

进一步地,从各个字符图像块中提取各个字符的梯度直方图特征可以通过如图8所示的实施例实现,如图8所示,可以包括如下步骤:

步骤S802,把识别区域的大小规则化成W*H大小。

其中,W为识别区域的宽度,H为识别区域的高度,将各个识别区域的大小设置为W*H大小,对于同一待检测图像的不同识别区域的W和H的值可以相同,其中的识别区域可以为各个字符图像块。

步骤S804,把规则化尺寸后的识别区域分类为m*n个c*c的单元小格。

其中,m、n以及c为自然数,c小于m,c小于n。

步骤S806,在每个单元小格内求梯度直方图,将系统直方图量化为b个方向。

在图像平面内,系统直方图的梯度方向的范围是[0,360)(即从0度至360度,但不包含360度),把360个方向(即上述梯度方向的范围)平均分为b等份,从而得到b个方向。

步骤S808,梯度直方图的归一化处理。

将相邻的2*2个单元小格联合成一个块,然后进行归一化,放到最终的特征向量中,由于相邻块之间重叠一个单元小格,所以总共可以得到(m-1)*(n-1)个块。

如,规则化尺寸后的识别区域的尺寸为3*3,则可以设置m和n为3,c*c=2*2,则可以将规则化尺寸后的识别区域分为4个单元小格。

遍历图像,重复上述步骤S802至步骤S808,把每个字符图像块的特征归一化联合直方图依次排列成一个向量,最终可以得到(m-1)*(n-1)*c*c*b维的HOG特征(梯度直方图特征)向量。

需要进一步说明的是,采用梯度直方图可以很好的描述图像的纹理信息,而分块梯度直方图又能对目标的不同结构进行描述,因此在本发明中选择HOG特征(梯度直方图特征)作为字符特征进行提取。

在完成梯度直方图特征的提取之后,采用字符识别分类器对各个字符的梯度直方图特征进行字符识别,即可得到各个字符的识别结果。

这里需要补充说明的是,字符识别分类器为线性分类器。在本实施例中的每个字符样本都可以用一个(m-1)*(n-1)*c*c*b维的HOG特征来进行描述,所以对字符识别分类器进行训练时可以直接用该特征对目标进行分类模型训练,在特征维数较高且特征对样本的描述能力足够强的时候,为了节约训练时间,直接采用简单的线性分类器来实现目标分类可以提高效率。

可以用下列公式来描述线性分类器的输入与输出之间的关系,如果输入的特征向量是实数向量则输出的函数为:其中,是由权重元素组成的权重向量,表示由特征元素组成的特征向量,权重向量和特征向量均由多个元素组成,j表示特征序号,xj表示特征序号为j的特征元素,wj表示特征序号为j的权重元素,而是一个函数,该函数描述了一个可将不同类别的样本在高维特征空间中分开的超平面,权重向量是从带标签的训练样本集合中所学到的。在多类 分类问题中,得到的是一维向量,该向量中最大元素对应的元素序号即为该类的识别结果。

需要进一步说明的是,在本实施例中训练了三个字符分类线性分类器,分别为:10类数字分类器、26类字母分类器、36类字符分类器。采用26类字母分类器可以实现对4位箱主号的识别,10类数字分类器可以实现对6位箱体注册码及校验码的识别,36类字符分类器可以实现对4位箱体ISO号的识别。

通过本发明的上述实施例,采用最快速的线性分类器作为集装箱箱号字符分类方法,达到了对箱号字符的实时识别的效果。

可选地,在组合识别结果得到待识别图像的集装箱箱号之后,识别集装箱箱号的方法还可以包括:基于数字分类器识别的集装箱箱号中的第一校验码;按照预设编码信息计算集装箱箱号的第二校验码;若第一校验码与第二校验码一致,则确定识别出的集装箱箱号正确;若第一校验码与第二校验码不一致,则确定识别出的集装箱箱号有误,并生成箱号核对信息。

本发明的上述实施例可以通过如下步骤实现:比较计算出的集装箱箱号的第二校验码和识别出的集装箱箱号的第一校验码,可以得到二者是否一致的校验结果;若第一校验码不同于第二校验码,则说明集装箱箱号有误,则生成箱号核对信息。

具体地,根据箱号识别结果,对箱号进行自动校验,根据校验结果,在箱号识别错误的情况下生成箱号核对信息,提示用户对误识的箱号进行人工核对,可有效地避免误识别带来的损失。

通过上述实施例,可以提示用户对误识的箱号进行处理,为用户减少不必要的损失。

在上述实施例中,采集集装箱的箱面的待识别图像的第一灰度图可以包括:采集集装箱的至少两个箱面的待识别图像的第一灰度图;在组合识别结果得到待识别图像的集装箱箱号之后,识别集装箱箱号的方法还可以包括:读取从集装箱的至少两个箱面的待识别图像的第一灰度图中识别出的集装箱箱号及其识别置信度;将最大的识别置信度对应的集装箱箱号作为集装箱的箱号。

具体地,在集装箱上,共有前后、上下、左右共6个面,一般在集装箱的6个面上都有集装箱箱号。在本发明中,对6个面采集的图像都进行一次箱号识别,每个面都会给出一个箱号识别结果及对应的识别置信度。最后综合各个面的识别结果及识别置信度,给出一个置信度最高的结果,作为本方案最终的识别结果。

可选地,基于数字分类器识别的集装箱箱号中的第一校验码,按照预设编码信息 计算集装箱箱号的第二校验码,将第一校验码和第二校验码进行比较得到一个校验结果,校验结果中包括集装箱箱号的识别置信度,得到校验结果之后,读取从集装箱的各个箱面的待识别图像中识别出的集装箱箱号及其识别置信度,将最大的识别置信度对应的集装箱箱号作为集装箱的箱号。

通过本发明的上述实施例,综合多个面识别结果的方法能够有效地提升识别准确率,即只需要6个面中的一个面能识别正确,则能获得正确的识别结果。

本发明实施例还提供了一种识别集装箱箱号的装置。需要说明的是,本发明实施例的识别集装箱箱号的装置可以用于执行本发明实施例所提供的识别集装箱箱号的方法,本发明实施例的识别集装箱箱号的方法也可以通过本发明实施例所提供的识别集装箱箱号的装置来执行。

图9是根据本发明实施例的识别集装箱箱号的装置的示意图。如图9所示,该装置包括:采集模块10、第一检测模块30、第一处理模块50以及第一识别模块70。

其中,采集模块,用于采集集装箱的箱面的待识别图像的第一灰度图;第一检测模块,用于基于预设笔划库检测第一灰度图中的笔划区域,并合并检测到的笔划区域得到字符区域,其中,预设笔划库包括集装箱箱号的笔划样本,每个笔划样本中包含部分或全部笔划;第一处理模块,用于基于字符区域得到各个字符的字符图像块;第一识别模块,用于对字符图像块进行识别,得到各个字符的识别结果,组合识别结果得到待识别图像的集装箱箱号。

采用本发明,通过使用预设笔划库检测采集到的集装箱的箱面的待识别图像中的笔划区域,并将获取到笔划区域合并得到字符区域,然后对基于字符区域获取的各个字符的字符图像块进行字符识别,得到各个字符的识别结果,并将识别结果进行组合得到集装箱箱号。采用本发明,利用预设笔划库和梯度直方图特征来检测集装箱箱号,解决了现有技术中对集装箱箱号的识别率低的问题,达到了对集装箱箱号的快速且准确识别的效果。

通过上述实施例,利用基于笔划检测的集装箱箱号检测方法对集装箱箱号在待识别图像中的位置的进行定位,然后采用基于灰度图像的特征提取方法提取HOG特征(梯度直方图特征),并利用线性分类器实现集装箱箱号字符识别,达到了对集装箱箱号的高效识别的效果。

在本发明的上述实施例中,第一检测模块可以包括:训练模块,用于基于预设笔划库中的笔划样本训练笔划检测分类器;第二检测模块,用于使用笔划检测分类器按预设尺寸的窗口以预设步长滑动检测待识别图像的第一灰度图,其中,若当前检测的窗口中第一灰度图的图像特征的分类结果为笔划,则标记当前检测的窗口为笔划区域; 若当前检测的窗口中第一灰度图的图像特征的分类结果不为笔划,则标记当前检测的窗口为非笔划区域,得到第二灰度图,其中,预设步长小于预设尺寸。

可选地,在本实施例中,采用分类器技术来实现笔划检测,具体采用的是笔划检测分类器,在使用笔划检测分类器前需要对其进行训练以提高其识别率,训练样本越大其识别率越高,为了提高其识别率,需要整理一个容量较大的笔划样本库,由于本发明的目的是检测集装箱字符(集装箱箱号、集装箱ISO号),因此在搜集正样本时,是将集装箱上的字符样本进行分块划分,并将划分得到的笔划区域作为正样本。部分笔划正样本如图3所示,每个样本中都包含了一部分笔划,负样本则是采用不包含笔划的图像,正样本和负样本共同构成了本实施例的预设笔划库。笔划检测分类器的训练方法是首先提取目标特征,然后选择分类模型进行离线训练,从而使其具有识别集装箱上特定的图案或者符号的功能。具体地,目标特征可以是LBP特征,分类模型可以是Adaboost分类器。

根据本发明的上述实施例,第一检测模块还可以包括:删除模块,用于删除第二灰度图中的非笔划区域,得到第三灰度图;第一判断模块,用于根据第三灰度图中相邻的笔划区域之间的空间几何位置判断相邻的笔划区域是否属于同一个字符;第一确定模块,用于若相邻的笔划区域属于同一个字符,则合并相邻的笔划区域,得到字符区域。

具体地,空间几何位置包括空间重叠区域,其中,第一判断模块可以包括:第二判断模块,用于判断相邻的笔划区域之间的空间重叠区域是否大于预设重叠阈值;第二确定模块,用于若相邻的笔划区域之间的空间重叠区域大于预设重叠阈值,则判断出相邻的笔划区域属于同一个字符。

通过上述实施例,可以快速识别笔划区域,并将识别出来的笔划区域进行合并得到字符区域。

需要进一步说明的是,集装箱箱号和集装箱ISO号都是由英文字母和阿拉伯数字组成的,且集装箱箱号和集装箱ISO号都是按照一定规则排列的,同一字符的不同笔划区域之间会有一定的重叠,所以可以通过判断两个笔划区域的重叠的量来判断两个笔划区域是否属于同一字符。

通过上述实施例,提供了一种简单实用的识别不同的笔划区域是否属于同一字符的方法,该方法可适应多种不同成像环境下的集装箱箱号定位,可以快速确定集装箱箱号和集装箱ISO号的位置。

根据本发明上述实施例,第一处理模块可以包括:组合模块,用于基于字符区域的尺寸和排列顺序组合字符区域得到字符串块;第一分割模块,用于对字符串块进行 图像分割得到各个字符的字符图像块。

集装箱箱号字符串在图像中有两种排列形态,一种是水平方向排列,一种是垂直方向排列,且集装箱箱号字符串中各个字符的宽度、高度都有一定的相似性,所以可以通过上述特征判断不同的字符区域是否属于同一个字符串块。

可选地,第一分割模块可以包括:第一计算模块,用于计算第二灰度图的前景点的第一灰度分布和背景点的第二灰度分布;获取模块,用于获取第一灰度分布的第一峰值与第二灰度分布的第二峰值;第三确定模块,用于基于第一峰值和第二峰值确定二值化阈值;第二处理模块,用于使用二值化阈值对第二灰度图进行二值化处理,得到二值化图像;第二分割模块,用于对二值化图像进行字符分割,得到各个字符的字符图像块。

通过上述实施例,对二值化图像进行字符分割,可以快速确定各个字符对应的字符图像块。

可选地,识别集装箱箱号的装置还可以包括:第二识别模块,用于在组合识别结果得到待识别图像的集装箱箱号之后,基于数字分类器识别的集装箱箱号中的第一校验码;第二计算模块,用于按照预设编码信息计算集装箱箱号的第二校验码;第三识别模块,用于若第一校验码与第二校验码一致,则确定识别出的集装箱箱号正确;第四识别模块,用于若第一校验码与第二校验码不一致,则确定识别出的集装箱箱号有误,并生成箱号核对信息。

通过本发明的上述实施例,采用线性分类器作为集装箱箱号字符分类方法,达到了对箱号字符的实时识别的效果,同时,通过比较第一校验码和第二校验码,可以提高识别的准确度。

可选地,采集模块可以包括:采集子模块,用于采集集装箱的至少两个箱面的待识别图像的第一灰度图;别集装箱箱号的装置还可以包括:读取模块,用于在组合识别结果得到待识别图像的集装箱箱号之后,读取从集装箱的至少两个箱面的待识别图像的第一灰度图中识别出的集装箱箱号及其识别置信度;第四确定模块,用于将最大的识别置信度对应的集装箱箱号作为集装箱的箱号。

具体地,在集装箱上,共有前后、上下、左右共6个面,一般在集装箱的6个面上都有箱号。在本发明中,对6个面采集的图像都进行一次箱号识别,每个面都会给出一个箱号识别结果及对应的识别置信度。最后综合各个面的识别结果及识别置信度,给出一个置信度最高的结果,作为本方案最终的识别结果。

通过本发明的上述实施例,综合多个面识别结果的方法能够有效地提升识别准确率,同时,在6个面中,只要有一个面能识别正确,则能获得正确的识别结果。

本实施例中所提供的各个模块与方法实施例对应步骤所提供的使用方法相同、应用场景也可以相同。当然,需要注意的是,上述模块涉及的方案可以不限于上述实施例中的内容和场景,且上述模块可以运行在计算机终端或移动终端,可以通过软件或硬件实现。

从以上的描述中,可以看出,本发明实现了如下技术效果:

采用本发明,通过使用预设笔划库检测采集到的集装箱的箱面的待识别图像中的笔划区域,并将获取到笔划区域合并得到字符区域,然后对基于字符区域获取的各个字符的字符图像块进行字符识别,得到各个字符的识别结果,并将识别结果进行组合得到集装箱箱号。采用本发明,利用预设笔划库和梯度直方图特征来检测集装箱箱号,解决了现有技术中对集装箱箱号的识别率低的问题,达到了对集装箱箱号的快速且准确识别的效果。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成 的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1