CN110659643B - 一种集装箱号的识别方法和装置 - Google Patents
一种集装箱号的识别方法和装置 Download PDFInfo
- Publication number
- CN110659643B CN110659643B CN201810713312.5A CN201810713312A CN110659643B CN 110659643 B CN110659643 B CN 110659643B CN 201810713312 A CN201810713312 A CN 201810713312A CN 110659643 B CN110659643 B CN 110659643B
- Authority
- CN
- China
- Prior art keywords
- neural network
- container
- container number
- sequence
- convolutional neural
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/267—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B60—VEHICLES IN GENERAL
- B60P—VEHICLES ADAPTED FOR LOAD TRANSPORTATION OR TO TRANSPORT, TO CARRY, OR TO COMPRISE SPECIAL LOADS OR OBJECTS
- B60P3/00—Vehicles adapted to transport, to carry or to comprise special loads or objects
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65D—CONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
- B65D88/00—Large containers
- B65D88/02—Large containers rigid
- B65D88/12—Large containers rigid specially adapted for transport
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B65—CONVEYING; PACKING; STORING; HANDLING THIN OR FILAMENTARY MATERIAL
- B65D—CONTAINERS FOR STORAGE OR TRANSPORT OF ARTICLES OR MATERIALS, e.g. BAGS, BARRELS, BOTTLES, BOXES, CANS, CARTONS, CRATES, DRUMS, JARS, TANKS, HOPPERS, FORWARDING CONTAINERS; ACCESSORIES, CLOSURES, OR FITTINGS THEREFOR; PACKAGING ELEMENTS; PACKAGES
- B65D88/00—Large containers
- B65D88/02—Large containers rigid
- B65D88/12—Large containers rigid specially adapted for transport
- B65D88/121—ISO containers
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/22—Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V30/00—Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
- G06V30/10—Character recognition
- G06V30/14—Image acquisition
- G06V30/148—Segmentation of character regions
- G06V30/153—Segmentation of character regions using recognition of characters or words
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Mechanical Engineering (AREA)
- Multimedia (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Public Health (AREA)
- Transportation (AREA)
- Image Analysis (AREA)
- Character Discrimination (AREA)
Abstract
本申请提供一种集装箱号的识别方法和装置,该方法为:获取目标集装箱图像;在所述目标集装箱图像中定位集装箱号区域;将所述集装箱号区域输入训练好的目标卷积神经网络,由所述目标卷积神经网络对所述集装箱号区域进行特征提取和序列转换后输出向量序列;将所述向量序列输入训练好的序列解码器,由所述序列解码器对所述向量序列进行解码后输出所述集装箱号区域中的字符串。该方法只需定位到集装箱号的整体区域,无需对每个字符进行分割,直接便可以输出整个集装箱号,避免了由于印刷质量或成像质量导致的字符分割难的问题,以及减轻了经典算法中长流程产生的错误传递问题,提高了集装箱号的识别准确率和识别速度。
Description
技术领域
本申请涉及图像处理领域,尤其涉及一种集装箱号的识别方法和装置。
背景技术
目前,集装箱被广泛的应用于交通运输中,为了方便对集装箱的识别,每个集装箱都有一个集装箱号,以方便记录集装箱在运输过程中的状态。在港口作业中,为了减少人工成本、提升工作效率、杜绝人工抄录错误,图像识别技术被用于对采集到的集装箱图像进行处理,从而自动识别出集装箱号。
常用的集装箱号识别过程可包括以下三个部分:1)集装箱号的定位;2)集装箱号的分割;3)集装箱号的识别。其中关于集装箱号的分割,即是将组成箱号的字符串分成单个字符;关于集装箱号的识别,即是根据单字符的识别结果,组合后输出完整的集装箱号。
但是在实际应用中,由于印刷质量(比如集装箱箱体背景及箱号字符颜色多种多样)和成像质量(比如运动模糊或曝光时间过长),会造成两个距离较近的字符粘连在一起,导致字符分割困难,进而导致集装箱号的识别困难。
发明内容
有鉴于此,本申请提供一种集装箱号的识别方法和装置,以提高对集装箱号的识别率。
具体地,本申请是通过如下技术方案实现的:
本申请第一方面,提供了一种集装箱号的识别方法,包括:
获取目标集装箱图像;
在所述目标集装箱图像中定位集装箱号区域;
将所述集装箱号区域输入训练好的目标卷积神经网络,由所述目标卷积神经网络对所述集装箱号区域进行特征提取和序列转换后输出向量序列;
将所述向量序列输入训练好的序列解码器,由所述序列解码器对所述向量序列进行解码后输出所述集装箱号区域中的字符串。
本申请第二方面,提供了一种集装箱号的识别装置,所述装置具有实现上述方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块或单元。
一种可能的实现方式中,所述装置可以包括:
获取模块,用于获取目标集装箱图像;
定位模块,用于在所述目标集装箱图像中定位集装箱号区域;
识别模块,用于将所述集装箱号区域输入训练好的目标卷积神经网络,由所述目标卷积神经网络对所述集装箱号区域进行特征提取和序列转换后输出向量序列;将所述向量序列输入训练好的序列解码器,由所述序列解码器对所述向量序列进行解码后输出所述集装箱号区域中的字符串。
另一种实现方式中,所述装置可以包括处理器、存储器和总线,所述处理器和所述存储器之间通过总线相互连接;所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,执行本申请实施例第一方面提供的方法。
本申请提供的集装箱号方法只需定位到集装箱号的整体区域,无需对每个字符进行分割,直接便可以输出整个集装箱号,避免了由于印刷质量或成像质量导致的字符分割难的问题,以及减轻了经典算法中长流程产生的错误传递问题,提高了集装箱号的识别准确率和识别速度。
附图说明
图1是一种集装箱图像的示意图;
图2是本申请实施例提供的集装箱号识别方法的流程图;
图3是本申请实施例提供的旋转集装箱号区域的示意图;
图4是本申请实施例提供的一种箱号字符识别的整体结构图;
图5是本申请实施例提供的装置结构框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对集装箱号做一个介绍。集装箱号为唯一识别集装箱的ID(Identity)符号。按照ISO 6346标准规定,集装箱箱号由11位代码组成,其中前3位为拥有者代码,以英文字母表示;第4位为箱体号,以英文字母表示;第5至第10位为系列号,以阿拉伯数字表示;第11位为箱号校验码,以带方框的0~9图形数字表示,分别代表0~9阿拉伯数字。受集装箱箱体结构及门栓的影响,箱号以单行(列)、双行(列)、三行(列)、四行(列)等水平(垂直)排列结构呈现在集装箱箱体上。比如图1所示即为一集装箱的示意图,从图1中可以看到,该集装箱的箱号为TCLU
本申请提出了一种集装箱号的识别方案,本方案采用深度学习方法,只需定位到集装箱号的整体区域,无需对每个字符进行分割,直接便可以输出整个集装箱号,避免了由于印刷质量或成像质量导致的字符分割难的问题,提高了集装箱号的整体识别率。
本申请可以应用于摄像设备,也可以应用于智能分析服务器。
本申请主要包括神经网络的训练过程和神经网络的应用过程。下面首先介绍训练过程。
本申请主要需要训练两种神经网络,其中一种为用于定位集装箱号区域的卷积神经网络(Convolutional Neural Network,CNN)或循环神经网络(Recurrent NeuralNetwork,RNN),另一种为用于识别集装箱号的卷积神经网络;这里以后一种用于识别集装箱号的卷积神经网络为例,介绍其训练过程:
第一步,搭建初始卷积神经网络。
初始卷积神经网络可以采用一种卷积层(conv)和池化层(pooling)交替出现的结构。卷积层用于从输入图像中提取特征,池化层用于降低每个特征映射的维度,卷积层和池化层的输出代表了输入图像的高级特征。
本申请实施例中,可以设置经过初始卷积神经网络的最后一个卷积层后,提取到的特征图维度为C*H*W,即无论输入哪个图像,最后一个卷积层输出的特征图维度均为C*H*W,这里C表示特征图个数(即通道数),H和W表示特征图的高和宽。对于特征图C*H*W,最后一个卷积层可以将其转换成对应的序列向量(H*W)*C。实际应用中可以有多种序列转换方式,这里列举简单的一种方式:
假设最后一层特征图的维度为3*3*3,即特征图个数为3,特征图大小为3*3,这3个3*3大小的特征图可以用以下三个矩阵表示:
其中一种序列转换方式是,将每个特征图矩阵中相同位置的元素拿出来组成一个向量;经过序列转换后,可以将上述3个大小为3*3的特征图转换成(3*3)=9个向量,每个向量的维度为3,这9个向量分别为:
[a11,b11,c11],[a12,b12,c12],……,[a33,b33,c33]
第二步,获取标记好集装箱号的样本图像。
作为一个实施例,每个样本图像中的集装箱号可以保持相同的排列结构,即要么均为水平排列结构,要么均为垂直排列结构。这么做的目的也是为了降低卷积神经网络的训练难度,后续在使用卷积神经网络识别集装箱号时,可以输入相同排列结构的集装箱号图像,以提高识别准确率和识别速度。
第三步,利用初始卷积神经网络对样本图像进行特征提取和序列转换,得到对应该样本图像的向量序列;然后利用已有的序列解码器将对应该样本图像的向量序列转换成字符串。
至于序列解码器对向量序列的解码过程可以参考下文卷积神经网络的应用过程中的相关描述,这里暂不详述。
这里的序列解码器具体可以是卷积层、CTC(Connectionist TemporalClassifier,联结主义时间分类器)、Attention Model(注意力模型)等。需要注意的是,应用过程需要使用和训练过程相同的序列解码器。
第四步,根据序列解码器转换得到的字符串与该样本图像标记的集装箱号之间的差异,对序列解码器和卷积网络的网络参数进行训练。
重复执行上述第三步和第四步,在对初始卷积神经网络和序列解码器经过一定数量的样本图像的训练后,便可得到训练好的用于识别集装箱号的目标卷积神经网络和序列解码器。
用于定位集装箱号区域的卷积神经网络(或循环神经网络)的训练方法同这里用于识别集装箱号的卷积神经网络的训练方法类似,主要区别在于输入条件不同(即优化目标不同),在训练用于定位集装箱号区域的卷积神经网络(或循环神经网络)时输入的是标记有集装箱号位置的集装箱样本图像。
下面介绍神经网络的应用过程。参考图2,基于神经网络进行集装箱号识别的处理流程可包括如下步骤:
步骤201:获取目标集装箱图像。
这里的图像,可以是实时拍摄的集装箱图像,也可以是已存储的集装箱图像。
步骤202:在目标集装箱图像中定位集装箱号区域。
比如在图1所示的集装箱图像中,可以定位出区域一,即集装箱号区域。
本步骤可以通过上述训练的用于定位集装箱号区域神经网络来实现,这里列举两种方法:
1)候选框方法。在整个图像中以一种规律划出大量候选框,对所有候选框使用“卷积神经网络”和/或“循环神经网络(Recurrent Neural Network,RNN)”进行特征提取,然后使用特征进行物体的分类(同时这些特征可以对候选框的位置和形状进行更精准的回归和矫正);根据候选框的分类置信度进行处理,最终得到最大可能包括集装箱号的候选框。
2)图像分割方法。对整个图像使用“卷积神经网络”和/或“循环神经网络”进行特征提取,然后进行像素级分割(即对每个像素点/小块进行分类),得到集装箱号区域。
步骤203:将集装箱号区域输入训练好的目标卷积神经网络,由目标卷积神经网络对该集装箱号区域进行特征提取和序列转换后输出向量序列。
本步骤中的目标卷积神经网络指的是上述训练好的用于识别集装箱号的卷积神经网络。如果用于训练此目标卷积神经网络的样本图像中的集装箱号采用了统一的排列结构,如均为水平排列结构或均为垂直排列结构,那么本步骤中在将定位出的集装箱号区域输入目标卷积神经网络时,可以先判断该集装箱号区域中箱号的排列结构与样本图像中的集装箱号的排列结构是否一致;如果一致,则直接将该集装箱号区域输入训练好的目标卷积神经网络;如果不一致,则将该集装箱号区域顺时针或逆时针旋转90度后,再输入训练好的目标卷积神经网络,如图3所示。
至于如何判断该集装箱号区域中箱号的排列结构,可以有多种方式。在一个例子中,可以通过检测该集装箱号区域的水平方向的边长与垂直方向的边长的比值,该比值大于1则箱号采用了水平排列结构;该比值小于1则箱号采用了垂直排列结构。如图1中区域一的水平方向的边长与垂直方向的边长的比值小于1,显然区域一中的箱号采用了垂直排列结构。在另一个例子中,可以通过神经网络进行分类别检测该集装箱号区域属于水平排列结构和垂直排列结构的概率,将较大概率的排列结构认为是该集装箱号区域的排列结构。
步骤204:将向量序列输入训练好的序列解码器,由序列解码器对该向量序列进行解码后输出集装箱号区域中的字符串。
作为一种实施方式,在将步骤203中目标卷积神经网络输出的向量序列输入序列解码器之前,可以先将该向量序列输入循环神经网络,由循环神经网络对该向量序列进行上下文相关的特征隐层建模,输出相同维度的不同值的向量序列后,再将循环神经网络输出的向量序列输入序列解码器进行解码。
图4为本申请实施例提供的一种箱号字符识别的整体结构图,具体过程为:
1)输入集装箱号区域。
2)经过卷积神经网络(即图4中的ConvNet),提取图像特征。
假设经过卷积神经网络最后一层之后,提取到C*H*W维度的特征图(featuremap)。这里的C、H和W为自定义参数,
3)进行序列转换(Map to sequence)操作,完成特征图到向量序列的转换。
假设最后一层特征图的维度为C*H*W,那么转换成的向量序列为(H*W)*C。此时每个向量可以看作对应着原图的某个特定区域。
比如最后一层特征图的维度为3*3*3,即特征图个数为3,特征图大小为3*3,这3个3*3大小的特征图可以用以下三个矩阵表示:
经过序列转换后,可以将上述3个大小为3*3的特征图转换成(3*3)=9个向量,每个向量的维度为3,这9个向量分别为:[a11,b11,c11],[a12,b12,c12],……[a33,b33,c33]。
4)可选的,可以将上一步得到的(H*W)*C的向量序列送入BLSTM(Bi-directionalLong Short-Term Memory,双向长短期记忆网络)结构进行编码,输出相同维度(H*W)*C的向量序列。
经过BLSTM是为了获取向量序列的上下文信息编码。
5)对向量序列进行解码。
这里以注意力模型结构(attention model)为例解释解码过程。
上述第1-4步可理解为编码过程,编码过程的最终输出为向量序列,下面以C1、C2、C3……Cn表示向量序列。
解码过程采用基于attention结构的循环神经网络模型,循环神经网络结构以LSTM为例。
每个时刻(即每个循环)只输出一个字符,当前时刻的输出结果和上一时刻的结果有关,当前时刻的输出公式可表示如下:
st=LSTM(st-1,gt,ct-1)
其中,yt表示时刻t字符的输出结果,gt表示LSTM当前时刻t的输入,St表示当前时刻LSTM的输出。ct表示当前时刻LSTM的细胞状态。同理,St-1表示上一时刻LSTM的输出。φ表示softmax操作(即将输入向量在指数域做一个归一化,映射为概率),W表示输出结果yt和St之间的权重参数;St经过全连接操作(相当于乘一个参数矩阵),得到输出中间结果WSt,之后经过softmax操作,得到当前字符的输出概率向量。
其中gt=α1*C1+α2*C2+α3*C3+…
每一个时刻的权值向量α(α1,α2,α3,...)都不相同,计算公式不再展开。
至此,完成图4所示的箱号字符识别过程。
作为一种实施方式,在经过步骤204得到目标集装箱的箱号的字符串后,可以根据集装箱号的特性,即前4位为字母、后7位为数字的特性,对识别结果做适当调整。具体为:判断输出的字符串的前4位是否均为字母,以及字符串的后7位是否均为数字;如果是,则确认该字符串有效;如果否,则将该字符串的前4位中的数字0调整为字母O,以及将该字符串的后7位中的字母I调整为数字1。这样可以防止0、O、1、I混淆。
综上所述,本申请提供的集装箱号方法只需定位到集装箱号的整体区域,无需对每个字符进行分割,直接便可以输出整个集装箱号,避免了由于印刷质量或成像质量导致的字符分割难的问题,以及减轻了经典算法中长流程产生的错误传递问题,提高了集装箱号的识别准确率和识别速度。
以上对本申请提供的方法进行了描述。下面对本申请提供的装置进行描述:
参见图5,图5为本申请提供的集装箱号的识别装置的结构图。如图5所示,该装置包括:
获取模块501,用于获取目标集装箱图像。
定位模块502,用于在所述目标集装箱图像中定位集装箱号区域。
识别模块503,用于将所述集装箱号区域输入训练好的目标卷积神经网络,由所述目标卷积神经网络对所述集装箱号区域进行特征提取和序列转换后输出向量序列;将所述向量序列输入训练好的序列解码器,由所述序列解码器对所述向量序列进行解码后输出所述集装箱号区域中的字符串。
在其中一种实施方式中,所述装置还可以包括:
训练模块,用于搭建初始卷积神经网络;获取标记好集装箱号的样本图像;利用所述初始卷积神经网络对所述样本图像进行特征提取和序列转换,得到对应所述样本图像的向量序列;利用已有的序列解码器将对应所述样本图像的向量序列转换成字符串;根据所述序列解码器转换得到的字符串与所述样本图像标记的集装箱号之间的差异,对所述序列解码器和所述初始卷积神经网络的网络参数进行训练;对所述初始卷积神经网络和所述序列解码器经过一定数量的样本图像的训练后,得到训练好的目标卷积神经网络和序列解码器。
在其中一种实施方式中,所述初始神经网络至少包括卷积层和池化层,所述卷积神经网络的最后一个卷积层用于将提取到的特征图C*H*W转换成序列向量(H*W)*C,其中C表示特征图个数,H和W表示特征图的高和宽。
在其中一种实施方式中,每个样本图像中的集装箱号均为水平排列结构或均为垂直排列结构;
所述识别模块503,用于判断所述集装箱号区域中箱号的排列结构与所述样本图像中的集装箱号的排列结构是否一致;如果一致,则直接将所述集装箱号区域输入训练好的卷积神经网络;如果不一致,则将所述集装箱号区域旋转90度后输入训练好的卷积神经网络。
在其中一种实施方式中,所述装置还可以包括:
整理模块,用于判断所述识别模块503输出的字符串的前4位是否均为字母,以及所述字符串的后7位是否均为数字;如果是,则确认所述字符串有效;如果否,则将所述字符串的前4位中的数字0调整为字母O,以及将所述字符串的后7位中的字母I调整为数字1。
在其中一种实施方式中,所述识别模块503,用于将所述目标卷积神经网络输出的向量序列输入循环神经网络,由所述循环神经网络对所述向量序列进行上下文相关的特征隐层建模,输出相同维度的不同值的向量序列;将所述循环神经网络输出的向量序列输入序列解码器。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
至此,完成图5所示装置的描述。
本申请实施例还提供一种电子设备,包括处理器、存储器和总线,所述处理器和所述存储器之间通过总线相互连接;所述存储器中存储机器可读指令,所述处理器通过调用所述机器可读指令,以实现如图2所示的方法。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (13)
1.一种集装箱号的识别方法,其特征在于,包括:
获取目标集装箱图像;
将所述目标集装箱图像输入训练好的用于定位集装箱号区域的定位神经网络,由所述定位神经网络在所述目标集装箱图像中定位集装箱号区域,所述定位神经网络基于标记有集装箱号位置且集装箱号排列结构相同的样本图像训练获得;
将所述集装箱号区域输入训练好的目标卷积神经网络,由所述目标卷积神经网络对所述集装箱号区域进行特征提取和序列转换后输出向量序列,所述目标卷积神经网络基于标记有集装箱号且集装箱号排列结构相同的样本图像训练获得;
其中,所述目标集装箱图像中的集装箱号排列结构与所述样本图像中的集装箱号排列结构相同,所述目标集装箱图像中的集装箱号排列结构基于所述集装箱号区域水平方向的边长与垂直方向的边长的比值确定,或者,通过神经网络进行分类概率检测确定;
将所述向量序列输入训练好的序列解码器,由所述序列解码器对所述向量序列进行解码后输出所述集装箱号区域中的字符串。
2.如权利要求1所述的方法,其特征在于,所述目标卷积神经网络和所述序列解码器通过以下方式训练得到:
搭建初始卷积神经网络;
获取标记好集装箱号的样本图像;
利用所述初始卷积神经网络对所述样本图像进行特征提取和序列转换,得到对应所述样本图像的向量序列;
利用已有的序列解码器将对应所述样本图像的向量序列转换成字符串;
根据所述序列解码器转换得到的字符串与所述样本图像标记的集装箱号之间的差异,对所述序列解码器和所述初始卷积神经网络的网络参数进行训练;
对所述初始卷积神经网络和所述序列解码器经过一定数量的样本图像的训练后,得到训练好的目标卷积神经网络和序列解码器。
3.如权利要求2所述的方法,其特征在于,所述初始卷积神经网络至少包括卷积层和池化层,所述卷积神经网络的最后一个卷积层用于将提取到的特征图C*H*W转换成序列向量(H*W)*C,其中C表示特征图个数,H和W表示特征图的高和宽。
4.如权利要求2所述的方法,其特征在于,每个样本图像中的集装箱号均为水平排列结构或均为垂直排列结构;
所述将所述集装箱号区域输入训练好的卷积神经网络,包括:
判断所述集装箱号区域中箱号的排列结构与所述样本图像中的集装箱号的排列结构是否一致;
如果一致,则直接将所述集装箱号区域输入训练好的卷积神经网络;
如果不一致,则将所述集装箱号区域旋转90度后输入训练好的卷积神经网络。
5.如权利要求1所述的方法,其特征在于,在由所述序列解码器对所述向量序列进行解码后输出目标集装箱号的字符串之后,所述方法还包括:
判断所述字符串的前4位是否均为字母,以及所述字符串的后7位是否均为数字;
如果是,则确认所述字符串有效;
如果否,则将所述字符串的前4位中的数字0调整为字母O,以及将所述字符串的后7位中的字母I调整为数字1。
6.如权利要求1-5任一项所述的方法,其特征在于,所述将所述向量序列输入训练好的序列解码器,包括:
将所述目标卷积神经网络输出的向量序列输入循环神经网络,由所述循环神经网络对所述向量序列进行上下文相关的特征隐层建模,输出相同维度的不同值的向量序列;
将所述循环神经网络输出的向量序列输入序列解码器。
7.一种集装箱号的识别装置,其特征在于,包括:
获取模块,用于获取目标集装箱图像;
定位模块,用于将所述目标集装箱图像输入训练好的用于定位集装箱号区域的定位神经网络,由所述定位神经网络在所述目标集装箱图像中定位集装箱号区域,所述定位神经网络基于标记有集装箱号位置且集装箱号排列结构相同的样本图像训练获得;
识别模块,用于将所述集装箱号区域输入训练好的目标卷积神经网络,由所述目标卷积神经网络对所述集装箱号区域进行特征提取和序列转换后输出向量序列;所述目标卷积神经网络基于标记有集装箱号且集装箱号排列结构相同的样本图像训练获得;其中,所述目标集装箱图像中的集装箱号排列结构与所述样本图像中的集装箱号排列结构相同,所述目标集装箱图像中的集装箱号排列结构基于所述集装箱号区域水平方向的边长与垂直方向的边长的比值确定,或者,通过神经网络进行分类概率检测确定;将所述向量序列输入训练好的序列解码器,由所述序列解码器对所述向量序列进行解码后输出所述集装箱号区域中的字符串。
8.如权利要求7所述的装置,其特征在于,所述装置还包括:
训练模块,用于搭建初始卷积神经网络;获取标记好集装箱号的样本图像;利用所述初始卷积神经网络对所述样本图像进行特征提取和序列转换,得到对应所述样本图像的向量序列;利用已有的序列解码器将对应所述样本图像的向量序列转换成字符串;根据所述序列解码器转换得到的字符串与所述样本图像标记的集装箱号之间的差异,对所述序列解码器和所述初始卷积神经网络的网络参数进行训练;对所述初始卷积神经网络和所述序列解码器经过一定数量的样本图像的训练后,得到训练好的目标卷积神经网络和序列解码器。
9.如权利要求8所述的装置,其特征在于,所述初始卷积神经网络至少包括卷积层和池化层,所述卷积神经网络的最后一个卷积层用于将提取到的特征图C*H*W转换成序列向量(H*W)*C,其中C表示特征图个数,H和W表示特征图的高和宽。
10.如权利要求8所述的装置,其特征在于,每个样本图像中的集装箱号均为水平排列结构或均为垂直排列结构;
所述识别模块,用于判断所述集装箱号区域中箱号的排列结构与所述样本图像中的集装箱号的排列结构是否一致;如果一致,则直接将所述集装箱号区域输入训练好的卷积神经网络;如果不一致,则将所述集装箱号区域旋转90度后输入训练好的卷积神经网络。
11.如权利要求7所述的装置,其特征在于,所述装置还包括:
整理模块,用于判断所述识别模块输出的字符串的前4位是否均为字母,以及所述字符串的后7位是否均为数字;如果是,则确认所述字符串有效;如果否,则将所述字符串的前4位中的数字0调整为字母O,以及将所述字符串的后7位中的字母I调整为数字1。
12.如权利要求7-11任一项所述的装置,其特征在于,
所述识别模块,用于将所述目标卷积神经网络输出的向量序列输入循环神经网络,由所述循环神经网络对所述向量序列进行上下文相关的特征隐层建模,输出相同维度的不同值的向量序列;将所述循环神经网络输出的向量序列输入序列解码器。
13.一种电子设备,其特征在于,包括处理器、存储器和通信总线,其中,处理器,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-6任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810713312.5A CN110659643B (zh) | 2018-06-29 | 2018-06-29 | 一种集装箱号的识别方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810713312.5A CN110659643B (zh) | 2018-06-29 | 2018-06-29 | 一种集装箱号的识别方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110659643A CN110659643A (zh) | 2020-01-07 |
CN110659643B true CN110659643B (zh) | 2022-08-26 |
Family
ID=69027782
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810713312.5A Active CN110659643B (zh) | 2018-06-29 | 2018-06-29 | 一种集装箱号的识别方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110659643B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114724133B (zh) * | 2022-04-18 | 2024-02-02 | 北京百度网讯科技有限公司 | 文字检测和模型训练方法、装置、设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106096607A (zh) * | 2016-06-12 | 2016-11-09 | 湘潭大学 | 一种车牌识别方法 |
CN107392201A (zh) * | 2017-06-09 | 2017-11-24 | 中国科学院自动化研究所 | 接触网支柱的支柱号识别方法、存储介质、处理设备 |
CN107679452A (zh) * | 2017-08-28 | 2018-02-09 | 中国电子科技集团公司第二十八研究所 | 大数据下基于卷积神经网络的货运列车车号实时识别系统 |
CN107798327A (zh) * | 2017-10-31 | 2018-03-13 | 北京小米移动软件有限公司 | 字符识别方法及装置 |
CN107832767A (zh) * | 2017-11-14 | 2018-03-23 | 深圳码隆科技有限公司 | 集装箱箱号识别方法、装置及电子设备 |
CN108009543A (zh) * | 2017-11-29 | 2018-05-08 | 深圳市华尊科技股份有限公司 | 一种车牌识别方法及装置 |
-
2018
- 2018-06-29 CN CN201810713312.5A patent/CN110659643B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106096607A (zh) * | 2016-06-12 | 2016-11-09 | 湘潭大学 | 一种车牌识别方法 |
CN107392201A (zh) * | 2017-06-09 | 2017-11-24 | 中国科学院自动化研究所 | 接触网支柱的支柱号识别方法、存储介质、处理设备 |
CN107679452A (zh) * | 2017-08-28 | 2018-02-09 | 中国电子科技集团公司第二十八研究所 | 大数据下基于卷积神经网络的货运列车车号实时识别系统 |
CN107798327A (zh) * | 2017-10-31 | 2018-03-13 | 北京小米移动软件有限公司 | 字符识别方法及装置 |
CN107832767A (zh) * | 2017-11-14 | 2018-03-23 | 深圳码隆科技有限公司 | 集装箱箱号识别方法、装置及电子设备 |
CN108009543A (zh) * | 2017-11-29 | 2018-05-08 | 深圳市华尊科技股份有限公司 | 一种车牌识别方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110659643A (zh) | 2020-01-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110059694B (zh) | 电力行业复杂场景下的文字数据的智能识别方法 | |
CN107316007B (zh) | 一种基于深度学习的监控图像多类物体检测与识别方法 | |
CN111310850B (zh) | 车牌检测模型的构建方法及系统、车牌检测方法及系统 | |
CN112966684A (zh) | 一种注意力机制下的协同学习文字识别方法 | |
CN111259786A (zh) | 一种基于视频的外观和运动信息同步增强的行人重识别方法 | |
CN111461213B (zh) | 一种目标检测模型的训练方法、目标快速检测方法 | |
CN114155527A (zh) | 一种场景文本识别方法和装置 | |
CN112307919B (zh) | 一种基于改进YOLOv3的单证图像中数字信息区域识别方法 | |
CN110827265B (zh) | 基于深度学习的图片异常检测方法 | |
CN110599463B (zh) | 一种基于轻量级联神经网络的舌像检测及定位算法 | |
CN109871789A (zh) | 一种基于轻量化神经网络的复杂环境下车辆检测方法 | |
CN113095316B (zh) | 基于多级融合和角点偏移的图像旋转目标检测方法 | |
CN109800756A (zh) | 一种用于中文历史文献密集文本的文字检测识别方法 | |
CN116311214B (zh) | 车牌识别方法和装置 | |
CN115830666A (zh) | 一种基于时空特征解耦的视频表情识别方法及应用 | |
CN107545281B (zh) | 一种基于深度学习的单一有害气体红外图像分类识别方法 | |
CN113505640A (zh) | 一种基于多尺度特征融合的小尺度行人检测方法 | |
CN114926691A (zh) | 基于卷积神经网络的虫害智能化识别方法及系统 | |
CN111882000A (zh) | 一种应用于小样本细粒度学习的网络结构及方法 | |
CN115953744A (zh) | 一种基于深度学习的车辆识别追踪方法 | |
CN115147418A (zh) | 缺陷检测模型的压缩训练方法和装置 | |
CN116363535A (zh) | 基于卷积神经网络的无人机航拍影像中的船舶检测方法 | |
CN111539931A (zh) | 一种基于卷积神经网络和边界限定优化的外观异常检测方法 | |
CN110659643B (zh) | 一种集装箱号的识别方法和装置 | |
CN108960005B (zh) | 一种智能视觉物联网中对象视觉标签的建立及显示方法、系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |