1.本发明涉及图像处理技术领域,具体而言,涉及一种集装箱编码识别方法及装置。
背景技术:
2.随着经济全球化的不断发展,全球贸易往来越来越频繁,集装箱作为运输中的装载单元,因其箱体强度大、快速装卸载、容积大等特点,越来越受到运输业的青睐,各大港口集装箱吞吐量逐年递增。为了提高集装箱的快速通关能力,需要改变传统的人工登记箱号模式。因此,集装箱箱号自动识别技术对于运输行业的现代化智能化管理起到非常重要的作用。
3.业界许多学者对集装箱识别算法进行了研究,提出了模板匹配算法、支持向量机、faster cnn等算法来进行集装箱编码识别但这些算法实时性比较低,这些已有的针对集装箱箱号的识别系统,从集装箱图片输入到最终箱号识别成功的时间依然是秒级。对于一个实时系统,依然达不到毫秒级的要求,同时算法的鲁棒性较差,受外界影响比较大,一旦光照发生变化或者字符有残缺等情况识别率将大大降低。
技术实现要素:
4.本发明的目的在于提供一种集装箱编码识别方法,以对集装箱编码进行快速准确识别。
5.本发明的另一目的在于提供一种集装箱编码识别装置,以对集装箱编码进行快速准确识别。
6.为了实现上述目的,本发明实施例采用的技术方案如下:
7.第一方面,本发明实施例提供了一种集装箱编码识别方法,所述方法包括:将采集的集装箱箱体图像输入神经网络预测模型得到处理后的目标箱体图像;对所述目标箱体图像进行轮廓查找,并确定出多个所述轮廓对应的最小外接矩形,若所述最小外接矩形的面积大于或等于面积阈值,则确定所述最小外接矩形对应区域为集装箱的编码区域图像,并记录所述编码区域图像的左上角坐标以及长宽;对确定的所述编码区域图像进行图像处理得到多个字符区域图像;对所述多个字符区域图像进行处理得到按序排列的单个字符图像;将所述按序排列的单个字符图像进行拼接后,输入调整参数后的所述神经网络预测模型,得到对每个所述单个字符图像的预测概率及索引;在所述预测概率中选取最大的预测概率,并依据最大的预测概率对应的索引确定出每个所述单个字符图像的编码内容。
8.第二方面,本发明实施例还提供了一种集装箱编码识别装置,所述装置包括:图像处理模块,用于将采集的集装箱箱体图像输入神经网络预测模型得到处理后的目标箱体图像;图像查找模块,用于对所述目标箱体图像进行轮廓查找,并确定出多个所述轮廓对应的最小外接矩形,若所述最小外接矩形的面积大于或等于面积阈值,则确定所述最小外接矩形对应区域为集装箱的编码区域图像,并记录所述编码区域图像的左上角坐标以及长宽;第一图像分析模块,用于对确定的所述编码区域图像进行图像处理得到多个字符区域图
像;第二图像分析模块,用于对所述多个字符区域图像进行处理得到按序排列的单个字符图像;图像识别模块,用于将所述按序排列的单个字符图像进行拼接后,输入调整参数后的所述神经网络预测模型,得到对每个所述单个字符图像的预测概率及索引;图像选取模块,用于在所述预测概率中选取最大的预测概率,并依据最大的预测概率对应的索引确定出每个所述单个字符图像的编码内容。
9.本发明实施例提供的一种集装箱编码识别方法及装置,该方法包括:先对集装箱进行图像采集,后将采集的图像输入神经网络预测模型进行处理得到目标箱体图像。进而在目标箱体图像中通过轮廓查找,并对轮廓确定最小外接矩形,当该最小外接矩形的面积大于面积阈值,则确定该区域为编码区域图像。再对该编码区域图像进行图像处理得到独立按序排列的单个字符图像,之后再通过神经网络预测模型的识别,确定字符图像的预测概率和索引,在预测概率中选择最大预测概率对应的索引,确定出该字符图像的具体编码内容,完成集装箱的编码识别。本方案利用图像分割的思想进行编码位置预测,并直接进行图像分割,无需先对图像进行倾斜校正,最后进行字符图像的识别,极大地保证了识别准确度以及识别速度。
10.为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
11.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
12.图1示出了本发明实施例提供的一种集装箱编码识别方法的流程示意图。
13.图2示出了本发明实施例提供的一种图像闭操作后的示意图。
14.图3示出了本发明实施例提供的一种多个字符区域图像的示意图。
15.图4示出了本发明实施例提供的一种神经网络预测模型的示意图。
16.图5示出了本发明实施例提供的一种集装箱编码识别装置的功能模块示意图。
17.图示:100-集装箱编码识别装置;110-图像处理模块;120-图像查找模块;130-第一图像分析模块;140-第二图像分析模块;150-图像识别模块;160-图像选取模块。
具体实施方式
18.下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
19.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的
描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
20.请参见图1,是本发明实施例提供的一种集装箱编码识别方法的流程示意图,该方法包括:
21.s110,将采集的集装箱箱体图像输入神经网络预测模型得到处理后的目标箱体图像。
22.具体包括,通过摄像头采集集装箱箱体图像,如该集装箱箱体图像可能是2560*1440分辨率的图像,进而将该集装箱箱体图像进行下采样处理,即是说,将2560*1440分辨率的图像降低为300*530分辨率的图像,也可根据实际需要处理为其他规格的分辨率,此处仅为举例说明。进而再将下采样后的集装箱箱体图像依次经过一系列卷积核为3*3的卷积层、 relu层和最大池化层,最后经过一个1*1卷积层得到单通道输出。由于该集装箱箱体图像经过了两次池化层处理,故再对其进行上采样处理得到原图分辨率。即是说,当集装箱箱体图像经过两次池化处理后,其图像分辨率降低了4倍,通过上采样处理,可将图像分辨率提高4倍,以恢复到之前的图像状态,此时得到的就是目标箱体图像。
23.s120,对所述目标箱体图像进行轮廓查找,并确定出多个所述轮廓对应的最小外接矩形,若所述最小外接矩形的面积大于或等于面积阈值,则确定所述最小外接矩形对应区域为集装箱的编码区域图像,并记录所述编码区域图像的左上角坐标以及长宽。
24.具体为,先使用opencv中自带的findcontours函数和boundingrect 函数对目标箱体图像进行轮廓查找,再对多个轮廓确定其最小的外接矩形。若其中的最小外接矩形的面积大于或等于面积阈值,则该最小外接矩形对应的区域即为集装箱的编码区域图像,并对该编码区域图像的左上角坐标以及长宽进行记载。
25.需要说明的是,在目标箱体图像中具有噪点和真实的集装箱编码,故依据确定的最小外接矩形中包括噪点的最小外接矩形,以及真实集装箱编码的最小外接矩形。但是噪点的最小外接矩形一般面积较小,真实集装箱编码的最小外接矩形的面积较大,故可以通过最小外接矩形的面积大小判断是否为集装箱的编码区域图像。
26.进一步地,一张图片中,正样本数量远远小于负样本数量,如确定集装箱编码区域时,集装箱编码区域是图片中的正样本,图片中除集装箱编码区域外的都是负样本,而往往负样本在图片中占据多数。为了考虑在神经网络预测模型中正负样本平衡的问题,避免出现设置的网络权重偏向负样本而不是正样本,导致训练困难,结果不准确的问题,对其识别结果的准确性进行验证是必要的,若结果偏差较大,可反向传播调整该神经网络预测模型的参数,以减小后续识别预测的误差。
27.进而,在本发明实施例中,还采用权重交叉熵损失函数对编码区域图像与目标箱体图像中实际编码区域进行偏差计算,若计算得到的偏差值过大,则对神经网络预测模型中的参数进行调整。该权重交叉熵损失函数的计算方式为:
[0028][0029]
[0030][0031]
其中,p代表预测,y代表掩模标签,pj代表在像素j处经过一个 sigmoid函数处理后的值。α和β用于平衡正负样本,λ是控制系数大小的权重。
[0032]
s130,对确定的所述编码区域图像进行图像处理得到多个字符区域图像。
[0033]
因为摄像头摆放原因,或者其他状况,有时会导致拍摄的集装箱图片是倾斜的,这将导致定位裁剪出的箱号区域图像是倾斜的,因此会对投影法字符分割算法产生较大的干扰。进而,目前大多数字符分割方法会在投影法分割之前先进行倾斜校正,校正和分割的耗时总是没有一步到位少。而本发明实施例提供的方案正是摒弃了校正这一步,直接对确定的编码区域图像进行字符分割,同时保证分割的精准度。
[0034]
具体为,先对编码区域图像进行高斯滤波,再对经过高斯滤波处理后的编码区域图像分别进行开操作和灰度化处理,使用灰度化处理后的编码区域图像减去开操作后的编码区域图像。再继续对得到的图像进行二值化处理以及图像闭操作,如图2所示,是本发明实施例提供的一种图像闭操作后的示意图。进一步地,对经过闭操作后的编码区域图像进行轮廓查找,并确定多个轮廓分别对应的最小外接矩形,并依据该最小外接矩形的大小和坐标进行图像裁剪,即可得到多个按序排列的多个字符区域图像。需要说明的是,集装箱编码的一般格式为:[箱主代码,注册码,箱型及尺寸代码,校验码],如图3所示,则是本发明实施例提供的一种经过裁剪得到的多个字符区域图像的示意图。
[0035]
s140,对所述多个字符区域图像进行处理得到按序排列的单个字符图像。
[0036]
当裁剪得到多个字符区域图像后,为了得到单个字符图像,以便于后续的字符识别,还需要将每个字符区域图像进行进一步裁剪得到单个字符图像,具体如下:
[0037]
由于通常情况下,集装箱编码的校验码是单独的一个数字,因此只需要对其他字符区域图像进行裁剪分割成独立的字符图像即可。
[0038]
首先分别对多个字符区域图像进行高斯滤波处理,对处理后的多个字符区域图像分别进行灰度化处理和图像开操作,并使用经过灰度化处理的字符区域图像减去经过图像开操作的字符区域图像。之后将得到的图像再进行图像二值化处理以及图像闭操作,即可得到多个目标字符区域图像。
[0039]
进而再分别对每一个目标字符区域图像进行轮廓查找,并确定该轮廓对应的最小外接矩形,并依据每一个最小外接矩形的大小及坐标确定出单个字符图像。
[0040]
s150,将所述按序排列的单个字符图像进行拼接后,输入调整参数后的所述神经网络预测模型,得到对每个所述单个字符图像的预测概率及索引。
[0041]
具体为,对所有字符图像进行预处理,包括将单个字符图像调整为预定尺寸,具体尺寸可根据实际模型需要进行设置,再对调整尺寸后的单个字符图像进行均值归一化处理。
[0042]
进一步地,将预处理后的字符图像进行按序拼接,输入调整参数后的神经网络预测模型,如图4所示,是本发明实施例提供的一种神经网络预测模型的示意图。图4示出了输入其中1个字符图像后的处理过程,其中,“conv”代表卷积层,“maxpool”代表最大池化层,“fc”代表全连接层吗,“softmax”代表softmax函数,“adaptiveavgpool”表示自适应平均池化,除最后一个卷积层,其他每个卷积层后跟随一个relu激活函数。
[0043]
当将按序排列的字符图像输入该神经网络预测模型之后,将会输出每个字符图像的预测概率及索引。该预测概率指的是该字符图像为对应于该索引标注的编码内容的可能性,预测概率越高,该字符图像为该索引对应的编码内容的可能性越大。
[0044]
s160,在所述预测概率中选取最大的预测概率,并依据最大的预测概率对应的索引确定出每个所述单个字符图像的编码内容。
[0045]
即使说,该预测概率最大,与该最大预测概率对应的索引指明的编码内容,即为该字符图像的编码内容。进而可以得到这一连串字符图像的编码内容,完成了对集装箱的箱号识别。
[0046]
进一步地,还可以采用多分类交叉熵损失函数对单个字符图像的预测编码内容与实际编码内容进行差值计算,若差值大于阈值,则对神经网络预测模型的参数进行再次调整,以进一步提高该神经网络预测模型的识别精度。该多分类交叉熵损失函数的计算方式为:
[0047][0048]
其中,p表示15
×
17的预测矩阵,y表示15
×
17的one-hot标签。i 代表类别数,j代表要识别的字符数,yi代表第j个字符对该类的标签, pi代表第j个字符对该类别的概率。
[0049]
由此可见,本发明实施例提供了的集装箱编码识别方法,其通过对集装箱编码区域定位、图片分割以及单个字符识别等手段完成了对集装箱编码识别的全过程,其识别速度快,识别精度高。且经过实际的实验证明,对单张2560*1440分辨率的图片,从输入到字符输出所需时间仅为0.1824 秒,其在满足识别精度的同时,保证了较高的识别速度。
[0050]
请参照图5,是本发明实施例提供的一种集装箱编码识别装置的功能模块示意图100,该装置包括:
[0051]
图像处理模块110,用于将采集的集装箱箱体图像输入神经网络预测模型得到处理后的目标箱体图像。
[0052]
在本发明实施例中,s110可以由图像处理模块110执行。
[0053]
图像查找模块120,用于对所述目标箱体图像进行轮廓查找,并确定出多个所述轮廓对应的最小外接矩形,若所述最小外接矩形的面积大于或等于面积阈值,则确定所述最小外接矩形对应区域为集装箱的编码区域图像,并记录所述编码区域图像的左上角坐标以及长宽。
[0054]
在本发明实施例中,s120可以由图像查找模块120执行。
[0055]
第一图像分析模块130,用于对确定的所述编码区域图像进行图像处理得到多个字符区域图像。
[0056]
在本发明实施例中,s130可以由第一图像分析模块130执行。
[0057]
第二图像分析模块140,用于对所述多个字符区域图像进行处理得到按序排列的单个字符图像。
[0058]
在本发明实施例中,s140可以由第二图像分析模块140执行。
[0059]
图像识别模块150,用于将所述按序排列的单个字符图像进行拼接后,输入调整参数后的所述神经网络预测模型,得到对每个所述单个字符图像的预测概率及索引。
[0060]
在本发明实施例中,s150可以由图像识别模块150执行。
[0061]
图像选取模块160,用于在所述预测概率中选取最大的预测概率,并依据最大的预测概率对应的索引确定出每个所述单个字符图像的编码内容。
[0062]
在本发明实施例中,s160可以由图像选取模块160执行。
[0063]
由于在集装箱编码识别方法部分已经详细描述,在此不再赘述。
[0064]
综上所述,本发明实施例提供的一种集装箱编码识别方法及装置,该方法包括:先对集装箱进行图像采集,后将采集的图像输入神经网络预测模型进行处理得到目标箱体图像。进而在目标箱体图像中通过轮廓查找,并对轮廓确定最小外接矩形,当该最小外接矩形的面积大于面积阈值,则确定该区域为编码区域图像。再对该编码区域图像进行图像处理得到独立按序排列的单个字符图像,之后再通过神经网络预测模型的识别,确定字符图像的预测概率和索引,在预测概率中选择最大预测概率对应的索引,确定出该字符图像的具体编码内容,完成集装箱的编码识别。本方案利用图像分割的思想进行编码位置预测,并直接进行图像分割,无需先对图像进行倾斜校正,最后进行字符图像的识别,极大地保证了识别准确度以及识别速度。
[0065]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0066]
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0067]
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0068]
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技
术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
[0069]
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
转载请注明原文地址:https://tc.8miu.com/read-3796.html