CN113139565A - 图像处理方法、图像处理装置和计算机可读存储介质 - Google Patents
图像处理方法、图像处理装置和计算机可读存储介质 Download PDFInfo
- Publication number
- CN113139565A CN113139565A CN202010066923.2A CN202010066923A CN113139565A CN 113139565 A CN113139565 A CN 113139565A CN 202010066923 A CN202010066923 A CN 202010066923A CN 113139565 A CN113139565 A CN 113139565A
- Authority
- CN
- China
- Prior art keywords
- anchor
- image
- training
- processed
- anchor frame
- 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.)
- Pending
Links
- 238000012545 processing Methods 0.000 title claims abstract description 48
- 238000003860 storage Methods 0.000 title claims abstract description 27
- 238000003672 processing method Methods 0.000 title claims abstract description 21
- 238000001914 filtration Methods 0.000 claims abstract description 26
- 238000012549 training Methods 0.000 claims description 208
- 238000000034 method Methods 0.000 claims description 124
- 238000013528 artificial neural network Methods 0.000 claims description 108
- 230000006870 function Effects 0.000 claims description 90
- 238000001514 detection method Methods 0.000 claims description 77
- 230000011218 segmentation Effects 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 description 92
- 238000010586 diagram Methods 0.000 description 11
- 238000004364 calculation method Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 4
- 230000002708 enhancing effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 238000003064 k means clustering Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000007792 addition Methods 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000009776 industrial production Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
Landscapes
- Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Bioinformatics & Cheminformatics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例提供图像处理方法、装置和计算机可读存储介质,其中图像处理方法包括:获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量;根据所述待处理图像生成语义信息;利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
Description
技术领域
本申请涉及图像处理领域,尤其涉及一种图像处理方法、图像处理装置和计算机可读存储介质。
背景技术
当前,目标检测技术是计算机视觉的核心问题之一,其广泛应用于工业生产中的产品缺陷检测、自动驾驶、视频监控等领域,并用于提供对图像或视频中的感兴趣对象的提取和检测。通过目标检测技术不仅可以判断出在一个检测图像中的待检测对象的具体类别(例如,属于行人、车辆或动物等),还能够提供各个待检测对象在检测图像中的具体位置(例如,生成包围各个待检测对象的预测边界框)。
通常目标检测技术可以被分类为基于锚框(anchor-based)的目标检测技术或无锚框(anchor-free)的目标检测技术。然而,在基于锚框的目标检测技术中,当训练神经网络或实际执行目标检测时,通常首先会在输入的训练图像或检测图像的特征图上预先按照固定的大小及宽高比均匀地生成多个锚框,从而基于这些锚框在训练神经网络时匹配训练对象的真实边界框或在执行目标检测时生成待检测对象的预测边界框。然而,这些预先生成的锚框通常十分密集,而相比之下,训练对象或待检测对象则较为稀疏,这导致浪费了大量的时间及计算量对无效的锚框进行处理。此外,预先生成的锚框的位置、大小及宽高比是固定的,然而对象的具体尺寸和位置情况则极为多变,这导致很难预先生成适用于各种对象情况的合适锚框,从而使神经网络针对对象变化的鲁棒性较差。并且,在训练过程中,通常锚框仅负责回归与其交集面积与并集面积之比(intersection over union,IOU)满足阈值要求并具有最大IOU的对象的真实边界框,这导致可能存在其他虽然与锚框的IOU满足阈值要求但并非具有最大IOU因此始终无法参与训练的对象。而无锚框的目标检测技术虽然不用生成锚框而是直接回归对象的位置信息,然而其也通常面临召回率低的问题。
因此,需要一种能够更好地过滤、回归及生成锚框的图像处理方法和装置,从而提高训练神经网络及执行目标检测的效率,并增强神经网络针对对象变化的鲁棒性。
发明内容
为解决上述技术问题,根据本发明的一个方面,提供了一种图像处理方法,包括:获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量;根据所述待处理图像生成语义信息;利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
根据本发明的另一个方面,提供了一种图像处理装置,包括:获取单元,配置为获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量;语义信息生成单元,配置为根据所述待处理图像生成语义信息;锚框过滤单元,配置为利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
根据本发明的又一个方面,提供一种图像处理装置,包括:处理器;和存储器,在所述存储器中存储有计算机程序指令,其中,在所述计算机程序指令被所述处理器运行时,使得所述处理器执行以下步骤:获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量;根据所述待处理图像生成语义信息;利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
根据本发明的再一个方面,提供一种计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现以下步骤:获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量;根据所述待处理图像生成语义信息;利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
根据本发明的上述图像处理方法、装置和计算机可读存储介质,能够根据语义信息对预先生成的数量较多的锚框进行过滤以去除其中的无效锚框,从而将过滤后的锚框进一步用于训练神经网络以及执行目标检测。这种图像处理方法、装置和计算机可读存储介质能够减少在训练过程或目标检测过程对无效锚框的处理,提高训练神经网络及执行目标检测的效率。
此外,根据本发明的上述图像处理方法、装置和计算机可读存储介质,能够将训练对象分别划分为用于训练神经网络以调整用于锚框回归的参数的常规样本,以及用于训练神经网络以调整用于锚框生成的参数的困难样本,从而增强神经网络针对对象变化的鲁棒性。
附图说明
通过结合附图对本发明的实施例进行详细描述,本发明的上述和其它目的、特征、优点将会变得更加清楚。
图1示出根据本发明一个实施例的图像处理方法的流程图;
图2示出根据本发明一个实施例的生成待处理图像的语义信息的示例;
图3示出根据本发明一个实施例的利用过滤过的锚框与真实边界框对训练对象进行分类的流程图;
图4示出根据本发明一个实施例的无法与过滤后的锚框相匹配的训练对象的示例;
图5示出根据本发明一个实施例的根据用于锚框生成的参数输出的预测结果的示意图;
图6示出根据本发明实施例的图像处理装置600的框图;
图7示出根据本发明实施例的图像处理装置700的框图。
具体实施方式
下面将参照附图来描述根据本发明实施例的图像处理方法、装置和计算机可读存储介质。在附图中,相同的附图标记自始至终表示相同的元件。应当理解:这里描述的实施例仅仅是说明性的,而不应被解释为限制本发明的范围。
下面将参照图1描述根据本发明实施例的图像处理方法。本发明实施例的图像处理方法既可以应用于静态图像,也可以应用于随时间变化的视频中的视频帧等,在此不做限制。图1示出该图像处理方法100的流程图。
如图1所示,在步骤S101中,获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量。
如本领域技术人员所熟知的,通常可以将使用神经网络进行目标检测的过程划分为“训练过程”和“目标检测过程”这两个具体过程。其中,“训练过程”是指使用预先标注好的训练图像对神经网络进行训练以调整神经网络中的参数直至损失函数收敛;而“目标检测过程”则是指在完成训练过程后,将检测图像送入训练好的神经网络以输出根据调整后的参数预测的目标检测结果。相应地,取决于步骤S101具体为用于训练过程或用于目标检测过程的步骤,待处理图像可以是用于训练神经网络的训练图像,或用于进行目标检测的检测图像。当待处理图像为训练图像时,待处理图像中包含的至少一个对象为训练对象,并且训练对象预先经人工标注有训练对象类别以及包围该训练对象以表示其在待处理图像上的具体位置的真实边界框;当待处理图像为检测图像时,待处理图像中可以包含至少一个待检测对象,并且目标检测结果可以是在待处理图像上输出预测的待检测对象类别以及包围该待检测对象以表示其在待处理图像上的具体位置的预测边界框。
在此步骤中,可以获取作为训练图像或检测图像的待处理图像上的多个预先生成的锚框,并在进行训练的情况下将这些预先生成的锚框与训练对象的真实边界框一起用于训练神经网络,或者,在进行目标检测的情况下将这些预先生成的锚框送入训练好的神经网络以获得最终的待检测对象的预测边界框。可选地,在训练过程或目标检测过程中,以待处理图像上的每个像素或部分像素为中心,生成具有不同的位置、大小及宽高比的矩形框作为所述多个预先生成的锚框。在一个示例中,预先生成的锚框的位置、大小及宽高比可以通过手动来人为设置。在另一个示例中,可以通过k-means聚类算法等自动地生成更加符合训练对象或待检测对象情况的锚框。
为了便于说明,将在此步骤中预先生成的锚框的数量称为第一数量。通常,为了能够较好地覆盖及匹配具有各种尺寸和位置的真实边界框或获得位置、大小及形状各异的待检测对象的预测边界框,预先生成的锚框往往十分密集,数量较多。而相比之下,训练图像中包含的训练对象或检测图像中包含的待检测对象通常较为稀疏,因此在训练过程中能够与训练对象匹配并实际参与训练,或者在目标检测过程中能够通过其生成最终的预测边界框的锚框的数量实际上十分有限,这导致在训练过程或目标检测过程中浪费了大量的时间及计算量对无效的锚框进行处理,从而影响了训练神经网络或执行目标检测的效率。在本发明的实施例中,可以通过在下文具体描述的根据语义信息对预先生成的锚框进行过滤的手段来减小无效锚框的数量,从而提高训练神经网络或执行目标检测的效率。
在步骤S102中,根据所述待处理图像生成语义信息。
在此步骤中,首先根据所述待处理图像生成语义信息,以便在后续过程中根据语义信息对预先生成的锚框进行过滤。在一个示例中,所述根据所述待处理图像生成语义信息包括:根据所述待处理图像获取所述待处理图像上的每个像素的像素类别。
图2示出根据本发明一个实施例的生成待处理图像的语义信息的示例。如图2所示,对左侧的待处理图像的语义信息进行预测,获得了如右侧的图像所示的预测结果,其中待处理图像上的每个像素被分别预测为具有像素类别“人”、“车”或“背景”。可选地,待处理图像上的每个像素的像素类别还可以对应于待处理图像上的语义分割区域。例如,如图2所示,在右侧的图像中还分别用不同的颜色表示出了与像素类别“人”、“车”或“背景”对应的语义分割区域,其中对应于各种像素类别的语义分割区域可以由一个或多个相互连通或封闭的子区域构成。在一个示例中,可以直接针对待处理图像来预测语义信息。在另一个示例中,可以先获取待处理图像的灰度图,再针对待处理图像的灰度图来预测语义信息,在此不进行限制。
以上所述的将待处理图像上的每个像素预测为具有“人”、“车”或“背景”等像素类别的方式仅为示例。在实际应用中,可以仅将待处理图像上的每个像素的像素类别粗略地预测为“前景”或“背景”从而不生成涉及具体对象类别的像素类别,或者可以对待处理图像上的每个像素的像素类别进行更加细致的预测及划分并生成更为具体的像素类别,从而使像素类别与用户关注的训练对象或检测对象的类别相适应,以满足不同的锚框过滤需求。
在步骤S103中,利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
在此步骤中,在获取了所述待处理图像上的每个像素的像素类别的情况下,可以基于像素类别对预先生成的锚框进行过滤,根据所述像素类别去除所述锚框中的部分锚框以获得所述过滤后的锚框。
在一个示例中,可以根据各个锚框的中心位置处的像素所具有的像素类别对所述锚框进行过滤。例如,在锚框的中心位置处的像素的像素类别属于“背景”的情况下,此时可以认为该锚框与训练过程中预先标注的训练对象的真实边界框的偏移或者与目标检测过程中最终生成的待检测对象的预测边界框的偏移较大,并且相应地属于训练过程或目标检测过程中的无效锚框。因此,在此示例中,可以根据各个锚框的中心位置处的像素所具有的像素类别对所述锚框进行过滤,从而去除中心位置处的像素的像素类别属于背景的锚框以获得所述过滤后的锚框。将此步骤中获得的过滤后的锚框的数量称为第二数量,并且,由于根据像素类别去除了预先生成的部分锚框,过滤后的锚框所对应的第二数量小于预先生成的锚框所对应的第一数量。
以上所述的去除中心位置处的像素的像素类别属于背景的锚框以获得所述过滤后的锚框的方式仅为示例。在另一个示例中,可以根据实际的训练或目标检测需求,保留中心位置处的像素的像素类别属于用户关注的训练对象或检测对象的类别的锚框,并去除属于其他类别的锚框以获得所述过滤后的锚框,从而获得更具有针对性的锚框过滤结果。
此外,在另一示例中,还可以根据锚框内具有特定像素类别的像素所占的比例与预定阈值的比较来对所述锚框进行过滤以获得所述过滤后的锚框。具体地,例如,可以计算锚框内具有背景像素类别的像素相对于该锚框内的所有像素所占的比例,此时若具有背景像素类别的像素的比例高于预定阈值,则可以认为该锚框属于训练过程或目标检测过程中的无效锚框并相应地去除该锚框。
通过执行以上关于图1描述的图像处理方法,可以根据语义信息对预先生成的锚框进行过滤以获得所述过滤后的锚框,从而大大减少其中的无效锚框的数量,并能够在训练过程中利用过滤后的锚框训练神经网络中的参数,或者在目标检测过程中将过滤后的锚框送入训练好的神经网络以获得待检测对象的预测边界框,从而提高了训练神经网络或执行目标检测的效率。
在上文中详细介绍了生成待处理图像的语义信息从而利用该语义信息对锚框进行过滤的具体过程。除此之外,根据本发明的实施例还可以利用所述过滤后的锚框和所述真实边界框训练神经网络,以调整用于锚框回归的参数及用于锚框生成的参数。在下文中将进一步详细介绍如何根据过滤后的锚框来训练神经网络以调整用于锚框回归的参数及用于锚框生成的参数的具体过程。
具体地,在本发明的一个实施例中,所述利用所述过滤后的锚框和所述真实边界框训练神经网络可以包括:根据所述过滤后的锚框与所述真实边界框的交集面积与并集面积之比,将所述训练对象分类为第一对象及第二对象,利用所述第一对象训练所述神经网络以调整用于锚框回归的参数,以及利用所述第二对象训练所述神经网络以调整用于锚框生成的参数。其中,所述第一对象构成用于训练所述神经网络以调整用于锚框回归的参数的常规样本,所述第二对象构成用于训练所述神经网络以调整用于锚框生成的参数的困难样本。
图3示出根据本发明一个实施例的利用过滤后的锚框与训练对象的真实边界框对训练对象进行分类的流程图。如图3所示,在步骤S301处,可以获取过滤后的锚框与训练对象的真实边界框的交集面积与并集面积之比(intersection over union,IOU),并且在步骤S302处,可以将所获得的IOU与预定的第一IOU阈值进行比较。当训练对象的真实边界框与至少一个过滤后的锚框的IOU大于第一IOU阈值时,则在步骤S303处,可以将所述训练对象分类为用于构成常规样本的第一对象;否则,若该训练对象的真实边界框与所有过滤后的锚框的IOU均小于阈值,则在步骤S304处,可以将所述训练对象分类为用于构成困难样本的第二对象。
如本领域技术人员所公知的,锚框与真实边界框的IOU能够反映二者之间的重合程度,IOU数值越大代表锚框与真实边界框重合得越彻底,其中IOU=0表示锚框和真实边界框之间完全不重合,IOU=1表示锚框和真实边界框之间完全重合。在一个示例中,可以将第一IOU阈值设置为0.7。可选地,也可以将第一IOU阈值设置为0.5或任何其他的合理数值等,并且本发明不对此进行限制。通常情况下,确定每个锚框仅与IOU满足阈值要求并具有最大IOU的单个真实边界框相匹配,并通过使该锚框回归该匹配的单个真实边界框来进行训练。然而,这导致可能存在其他虽然与锚框的IOU满足阈值要求但并非具有最大IOU因此始终无法参与到训练过程中的真实边界框。因此,在本发明的实施例中,为了使训练样本的利用率最大化,可以当训练对象的真实边界框与至少一个过滤后的锚框的IOU大于阈值时,即确定该真实边界框与该至少一个过滤后的锚框相匹配,并且可以将该训练对象划分为用于构成常规样本的第一对象,从而用于训练所述神经网络以调整用于锚框回归的参数。然而,由于过滤后的锚框的位置、大小及宽高比是预先确定的,而训练对象的具体尺寸和位置情况则极为多变,这导致可能存在某些训练对象的真实边界框与所有过滤后的锚框均差异较大并且IOU无法满足阈值要求从而始终无法匹配到合适的锚框。图4示出根据本发明一个实施例的无法与过滤后的锚框相匹配的训练对象的示例,其中,一部分具有共同的中心位置的过滤后的锚框如图4中的虚线框所示。在图4的左侧示出了由于训练对象的形状与过滤后的锚框的形状差异较大从而无法匹配的一个示例,而在图4的右侧则示出了由于训练对象的中心与过滤后的锚框的中心偏移较大从而无法匹配的另一示例。相应地,通过将这部分无法与过滤后的锚框相匹配的训练对象划分为用于构成困难样本的第二对象,并用于训练所述神经网络以调整用于锚框生成的参数,可以增强神经网络针对对象变化的鲁棒性。
在通过以上方式将训练对象划分为用于构成常规样本的第一对象以及用于构成困难样本的第二对象之后,即可相应地在步骤S305处,利用所述第一对象训练所述神经网络以调整用于锚框回归的参数,或者在步骤S306处,利用所述第二对象训练所述神经网络以调整用于锚框生成的参数。但在此需要说明的是,以上利用所述第二对象训练所述神经网络以调整用于锚框生成的参数的方式仅为示例,在实际应用中,也可以利用所有的训练对象来一同训练所述神经网络以调整用于锚框生成的参数,并且本发明不对此进行限制。
接下来将详细描述利用所述第一对象训练所述神经网络以调整用于锚框回归的参数的具体过程。
其中,所述利用所述第一对象训练所述神经网络以调整用于锚框回归的参数可以包括:根据所述过滤后的锚框与所述第一对象的真实边界框的匹配结果获得第一损失函数,并利用所述第一损失函数训练所述神经网络以调整用于锚框回归的参数。具体地,在训练过程中,当所述过滤后的锚框与所述第一对象的真实边界框相匹配时,可以计算出所述过滤后的锚框相对于与其匹配的真实边界框的实际的锚框偏移。此外,还可以计算所述过滤后的锚框相对于预测边界框的预测的锚框偏移,所述预测边界框是通过将锚框回归参数应用于过滤后的锚框所生成的。从而可以基于该预测的锚框偏移与该实际的锚框偏移之间的差异来获得第一损失函数。在一个实施例中,可以在训练过程中调整用于锚框回归的参数以令获得的第一损失函数尽可能的小,并将第一损失函数收敛时的神经网络中用于锚框回归的参数作为调整后的参数,由此在目标检测过程中,输出根据调整后的参数预测的锚框偏移,从而利用预测的锚框偏移对预先生成的锚框的位置及尺寸进行调整以获得待检测对象的预测边界框。
在构造第一损失函数的一个示例中,首先获取所述过滤后的锚框与所述第一对象的真实边界框之间的IOU。由于在前述对训练对象进行分类的过程中已经获得了过滤后的锚框与所有训练对象的真实边界框之间的IOU,因此在此步骤中,也可以直接利用在对训练对象进行分类的过程中所获得IOU从而进一步降低计算量。在获取了所述过滤后的锚框与所述第一对象的真实边界框之间的IOU后,将其与预定的第二IOU阈值进行比较以获得所述过滤后的锚框与所述第一对象的真实边界框的匹配结果。可选地,第二IOU阈值可以与用于对训练对象进行分类的第一IOU阈值相等或大于第一IOU阈值,并且在第二IOU阈值与第一IOU阈值相等的情况下,可以直接采用在对训练对象进行分类的过程中所获取的锚框与真实边界框的匹配结果作为所述过滤后的锚框与所述第一对象的真实边界框的匹配结果。
在一个示例中,根据所述第一对象的真实边界框中与所述过滤后的锚框相匹配的所有边界框获得第一损失函数。如上所述,在通常的训练过程中,每个锚框仅会匹配并回归与其具有最大IOU的第一对象的真实边界框,并且相应地,根据具有最大IOU的第一对象的真实边界框与锚框之间的损失函数来构造第一损失函数。然而,实际上,一个锚框可能与不止一个的第一对象的真实边界框的IOU满足阈值要求。在仅根据具有最大IOU的第一对象的真实边界框与锚框之间的损失函数来构造第一损失函数的情况下,可能导致存在一部分虽然与锚框的IOU满足阈值要求,然而由于其并不具有最大的IOU,因此始终无法参与到训练过程中的第一对象。因此,在此示例中,可以确定每个锚框与所有与其IOU满足阈值要求的真实边界框相匹配,从而基于所述过滤后的锚框与所有与其相匹配的真实边界框之间的损失函数来获得第一损失函数,并利用该第一损失函数来进行训练,以使训练样本的利用率最大化。具体地,确定每个锚框与所有与其IOU满足阈值要求的真实边界框相匹配,并根据所述第一对象的真实边界框中与所述过滤后的锚框相匹配的所有边界框获得的第一损失函数L1,可以如以下的公式(1)所示:
其中,具有相匹配的真实边界框的所述过滤后的锚框的数量表示为n个,所述第一对象的真实边界框中与每个锚框i相匹配的所有边界框的数量表示为mi个,Lij表示每个锚框i和与其相匹配的所有边界框中的每个边界框j之间的损失函数,IOUij表示每个锚框i和与其相匹配的所有边界框中的每个边界框j之间的IOU,以及IOUi表示每个锚框i和与其相匹配的所有边界框之间的IOU之和。在公式(1)所表示的第一损失函数L1中,每个锚框i和与其相匹配的所有边界框中的每个边界框j之间的损失函数Lij的损失权重即为对应的经归一化的IOU值IOUij/IOUi,并且通过对每个损失函数Lij进行加权求和从而获得第一损失函数L1。可选地,每个锚框i和与其相匹配的所有边界框中的每个边界框j之间的损失函数Lij可以为交叉熵损失函数或SmoothL1损失函数,但也可以使用其他类型的损失函数,并且本发明不对此进行限制。通过以上所述的利用所述第一对象的真实边界框中与所述过滤后的锚框相匹配的所有边界框,获得第一损失函数来训练神经网络,以调整用于锚框回归的参数,使得所获得的第一损失函数尽可能的小。通过上述方式,能够避免存在一部分虽然与锚框的IOU满足阈值要求然而始终无法参与到训练过程中的对象,从而使训练样本的利用率最大化。
接下来将详细描述利用所述第二对象训练所述神经网络以调整用于锚框生成的参数的具体过程。
具体地,所述利用所述第二对象训练所述神经网络以调整用于锚框生成的参数可以包括:根据所述语义分割区域确定所述第二对象的真实边界框内的第一区域,并根据所述第一区域内的像素生成第二损失函数,以利用所述第二损失函数训练所述神经网络以调整用于锚框生成的参数。具体地,所述第二损失函数可以反映出根据用于锚框生成的参数预测出的锚框与训练对象的真实边界框之间的差异。在一个实施例中,可以在训练过程中调整神经网络中用于锚框生成的参数以令第二损失函数尽可能的小,并将第二损失函数收敛时的神经网络中用于锚框生成的参数作为调整后的参数,由此在目标检测过程中输出根据调整后的参数预测的锚框。在一个示例中,可以根据无锚框的目标检测技术,直接将根据用于锚框生成的参数预测出的锚框作为最终的待检测对象的预测边界框。在另一个示例中,可以根据基于锚框的目标检测技术,通过用于锚框回归的参数预测出锚框偏移,从而对根据用于锚框生成的参数预测出的锚框的位置和尺寸进行进一步调整,以获得待检测对象的预测边界框,或者可以先根据语义信息对根据用于锚框生成的参数预测出的锚框进行过滤,再通过用于锚框回归的参数预测出锚框偏移,从而对过滤后的锚框的位置和尺寸进行进一步调整,以获得待检测对象的预测边界框。
图5示出根据本发明一个实施例的根据用于锚框生成的参数输出的预测结果的示意图。如图5所示,根据用于锚框生成的参数输出的预测结果可以是一个像素到锚框的顶部(t)、底部(b)、左侧(l)和右侧(r)边界的四个边界的距离,并且相应地,当预测出一个像素到锚框的四个边界的距离时即相当于确定了锚框的大小、尺寸及位置从而获得如图5中的虚线框所示的预测的锚框。然而,本发明并不限于此,在另一个示例中,根据用于锚框生成的参数输出的预测结果也可以是一个像素与锚框的中心位置的偏移以及锚框的尺寸,并且本发明不对此进行限制。
在以上针对图2所描述的生成语义信息的示例中,已经说明了待处理图像上的每个像素的像素类别还可以对应于待处理图像上的语义分割区域。相应地,可以根据所述像素类别以及所述语义分割区域来区分所述第二对象的真实边界框内对应于所述第二对象的像素的位置以及并非对应于所述第二对象的像素的位置。由此,可以确定所述第二对象的真实边界框内对应于所述第二对象的像素的位置的第一区域,以利用第一区域内的像素训练神经网络以调整用于锚框生成的参数,从而有效地降低训练过程中的计算量以提高训练效率。具体地,在一个示例中,当待处理图像上的每个像素的像素类别被粗略地预测为“前景”或“背景”时,可以去除所述第二对象的真实边界框内“背景”像素类别所对应的语义分割区域,并将该真实边界框内的其余区域作为第一区域,从而仅利用所述第一区域内的像素训练神经网络以调整用于锚框生成的参数。在另一示例中,当待处理图像上的每个像素被划分为更为具体的涉及对象类别的像素类别时,可以确定所述第二对象的真实边界框内与所述第二对象的对象类别一致的像素类别所对应的语义分割区域作为第一区域,从而仅利用所述第一区域内的像素训练神经网络以调整用于锚框生成的参数。
在此示例中,当确定了所述第二对象的真实边界框内的第一区域后,即可根据所述第一区域内的像素生成第二损失函数,以利用所述第二损失函数训练所述神经网络以调整用于锚框生成的参数。具体地,所述第二损失函数由所述第一区域内的每个像素的损失函数构成,其中所述第一区域内的每个像素的损失函数可以反映出利用用于锚框生成的参数针对所述第一区域内的每个像素预测出的锚框与训练对象的真实边界框之间的差异。
通过以上所述的利用构成困难样本的第二对象训练神经网络以调整用于锚框生成的参数,并根据所述语义分割区域确定所述第二对象的真实边界框内的第一区域,以根据所述第一区域内的像素生成训练用的第二损失函数的方式,能够增强神经网络针对对象变化的鲁棒性,并有效地降低训练过程中的计算量以提高训练效率。
根据本发明的上述图像处理方法,能够根据语义信息对预先生成的数量较多的锚框进行过滤以去除其中的无效锚框,从而将过滤后的锚框进一步用于训练神经网络以及执行目标检测。这种图像处理方法能够减少在训练过程或目标检测过程对无效锚框的处理,提高训练神经网络及执行目标检测的效率。
此外,根据本发明的上述图像处理方法,能够将训练对象分别划分为用于训练神经网络以调整用于锚框回归的参数的常规样本,以及用于训练神经网络以调整用于锚框生成的参数的困难样本,从而增强神经网络针对对象变化的鲁棒性。
下面将参照图6描述根据本发明实施例的图像处理装置。图6示出根据本发明实施例的图像处理装置600的框图。如图6所示,图像处理装置600包括获取单元610、语义信息生成单元620、锚框过滤单元630、对象分类单元640、锚框回归单元650和锚框生成单元660。这里,图像处理装置600的各个部件可以实现根据本发明实施例的神经网络的对应功能或操作。除了这些单元以外,图像处理装置600还可以包括其他部件,例如,图6所示的图像处理装置还可以包括实现神经网络的其它功能或操作的单元,本发明在此不对其进行限制。这里,由于根据本发明实施例的图像处理装置600执行的下述操作的具体细节与在上文中参照图1-图5描述的细节相同,因此在这里为了避免重复而对其进行简要描述。
图像处理装置600中的获取单元610被配置为获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量。
如本领域技术人员所熟知的,通常可以将使用神经网络进行目标检测的过程划分为“训练过程”和“目标检测过程”这两个具体过程。相应地,获取单元610所获取的待处理图像可以是用于训练神经网络的训练图像,或用于进行目标检测的检测图像。当待处理图像为训练图像时,待处理图像中包含的至少一个对象为训练对象,并且训练对象预先经人工标注有训练对象类别以及包围该训练对象以表示其在待处理图像上的具体位置的真实边界框;当待处理图像为检测图像时,待处理图像中可以包含至少一个待检测对象,并且目标检测结果可以是在待处理图像上输出预测的待检测对象类别以及包围该待检测对象以表示其在待处理图像上的具体位置的预测边界框。
获取单元610可以获取作为训练图像或检测图像的待处理图像上的多个预先生成的锚框,并在进行训练的情况下将这些预先生成的锚框与训练对象的真实边界框一起用于训练神经网络,或者,在进行目标检测的情况下将这些预先生成的锚框送入训练好的神经网络以获得最终的待检测对象的预测边界框。可选地,在训练过程或目标检测过程中,以待处理图像上的每个像素或部分像素为中心,生成具有不同的位置、大小及宽高比的矩形框作为所述多个预先生成的锚框。在一个示例中,预先生成的锚框的位置、大小及宽高比可以通过手动来人为设置。在另一个示例中,可以通过k-means聚类算法等自动地生成更加符合训练对象或待检测对象情况的锚框。
为了便于说明,将在此步骤中预先生成的锚框的数量称为第一数量。通常,为了能够较好地覆盖及匹配具有各种尺寸和位置的真实边界框或获得位置、大小及形状各异的待检测对象的预测边界框,预先生成的锚框往往十分密集,数量较多。而相比之下,训练图像中包含的训练对象或检测图像中包含的待检测对象通常较为稀疏,因此在训练过程中能够与训练对象匹配并实际参与训练,或者在目标检测过程中能够通过其生成最终的预测边界框的锚框的数量实际上十分有限,这导致在训练过程或目标检测过程中浪费了大量的时间及计算量对无效的锚框进行处理,从而影响了训练神经网络或执行目标检测的效率。在本发明的实施例中,可以通过在下文具体描述的根据语义信息对预先生成的锚框进行过滤的手段来减小无效锚框的数量,从而提高训练神经网络或执行目标检测的效率。
图像处理装置600中的语义信息生成单元620被配置为根据所述待处理图像生成语义信息。
具体地,语义信息生成单元620根据所述待处理图像生成语义信息,以便在后续过程中锚框过滤单元630根据语义信息对预先生成的锚框进行过滤。在一个示例中,所述语义信息生成单元620根据所述待处理图像生成语义信息可以包括:根据所述待处理图像获取所述待处理图像上的每个像素的像素类别。
例如,如图2所示,可以通过语义信息生成单元620对图2中左侧的待处理图像的语义信息进行预测,获得了如右侧的图像所示的预测结果,其中待处理图像上的每个像素被分别预测为具有像素类别“人”、“车”或“背景”。以上所述的通过语义信息生成单元620将待处理图像上的每个像素预测为具有“人”、“车”或“背景”等像素类别的方式仅为示例。在实际应用中,语义信息生成单元620可以仅将待处理图像上的每个像素的像素类别粗略地预测为“前景”或“背景”从而不生成涉及具体对象类别的像素类别,或者可以对待处理图像上的每个像素的像素类别进行更加细致的预测及划分并生成更为具体的像素类别,从而使像素类别与用户关注的训练对象或检测对象的类别相适应,以满足不同的锚框过滤需求。
图像处理装置600中的锚框过滤单元630被配置为利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
在通过语义信息生成单元620输出预测的语义信息从而获取了所述待处理图像上的每个像素的像素类别的情况下,锚框过滤单元630可以基于像素类别对预先生成的锚框进行过滤,根据所述像素类别去除所述锚框中的部分锚框以获得所述过滤后的锚框。
在一个示例中,锚框过滤单元630可以根据各个锚框的中心位置处的像素所具有的像素类别对所述锚框进行过滤。例如,在锚框的中心位置处的像素的像素类别属于“背景”的情况下,此时可以认为该锚框与训练过程中预先标注的训练对象的真实边界框的偏移或者与目标检测过程中最终生成的待检测对象的预测边界框的偏移较大,并且相应地属于训练过程或目标检测过程中的无效锚框。因此,在此示例中,可以根据各个锚框的中心位置处的像素所具有的像素类别对所述锚框进行过滤,从而去除中心位置处的像素的像素类别属于背景的锚框以获得所述过滤后的锚框。将此步骤中获得的过滤后的锚框的数量称为第二数量,并且,由于根据像素类别去除了预先生成的部分锚框,过滤后的锚框所对应的第二数量小于预先生成的锚框所对应的第一数量。
以上所述的去除中心位置处的像素的像素类别属于背景的锚框以获得所述过滤后的锚框的方式仅为示例。在另一个示例中,锚框过滤单元630可以根据实际的训练或目标检测需求,保留中心位置处的像素的像素类别属于用户关注的训练对象或检测对象的类别的锚框,并去除属于其他类别的锚框以获得所述过滤后的锚框,从而获得更具有针对性的锚框过滤结果。
此外,在另一示例中,锚框过滤单元630还可以根据锚框内具有特定像素类别的像素所占的比例与预定阈值的比较来对所述锚框进行过滤以获得所述过滤后的锚框。具体地,例如,可以计算锚框内具有背景像素类别的像素相对于该锚框内的所有像素所占的比例,此时若具有背景像素类别的像素的比例高于预定阈值,则可以认为该锚框属于训练过程或目标检测过程中的无效锚框并相应地去除该锚框。
根据本发明的上述图像处理装置,可以根据语义信息对预先生成的锚框进行过滤以获得所述过滤后的锚框,从而大大减少其中的无效锚框的数量,并能够在训练过程中利用过滤后的锚框训练神经网络中的参数,或者在目标检测过程中将过滤后的锚框送入训练好的神经网络以获得待检测对象的预测边界框,从而提高了训练神经网络或执行目标检测的效率。
在上文中详细介绍了利用本发明的上述图像处理装置中包含的语义信息生成单元620生成待处理图像的语义信息,从而使锚框过滤单元630利用该语义信息对锚框进行过滤的具体过程。此外,在训练过程中,还可以利用对象分类单元640对训练对象进行分类,并通过锚框回归单元650和锚框生成单元660利用分类后的训练对象来训练神经网络,以分别调整用于锚框回归的参数及用于锚框生成的参数的具体过程。在此需要说明的是,以上利用对象分类单元640、锚框回归单元650和锚框生成单元660训练神经网络的方式仅为示例,在实际应用中,锚框回归单元650和锚框生成单元660也可以应用于实际的目标检测过程,并且本发明不对此进行限制。
具体地,在本发明的一个实施例中,对象分类单元640可以根据所述过滤后的锚框与所述真实边界框的交集面积与并集面积之比,将所述训练对象分类为第一对象及第二对象,锚框回归单元650可以利用所述第一对象训练所述神经网络以调整用于锚框回归的参数,而锚框生成单元660可以利用所述第二对象训练所述神经网络以调整用于锚框生成的参数。其中,所述第一对象构成用于训练所述神经网络以调整用于锚框回归的参数的常规样本,所述第二对象构成用于训练所述神经网络以调整用于锚框生成的参数的困难样本。
如图3所示,对象分类单元640可以获取过滤后的锚框与训练对象的真实边界框的交集面积与并集面积之比(IOU),并且将所获得的IOU与预定的第一IOU阈值进行比较。当训练对象的真实边界框与至少一个过滤后的锚框的IOU大于第一IOU阈值时,对象分类单元640可以将所述训练对象分类为用于构成常规样本的第一对象;否则,若该训练对象的真实边界框与所有过滤后的锚框的IOU均小于阈值,则对象分类单元640可以将所述训练对象分类为用于构成困难样本的第二对象。
通常情况下,在训练过程中,确定每个锚框仅与IOU满足阈值要求并具有最大IOU的单个真实边界框相匹配,并通过使该锚框回归该匹配的单个真实边界框来进行训练。然而,这导致可能存在其他虽然与锚框的IOU满足阈值要求但并非具有最大IOU因此始终无法参与到训练过程中的真实边界框。因此,在本发明的实施例中,为了使训练样本的利用率最大化,对象分类单元640可以当训练对象的真实边界框与至少一个过滤后的锚框的IOU大于阈值时,即确定该真实边界框与该至少一个过滤后的锚框相匹配,并且可以将该训练对象划分为用于构成常规样本的第一对象以用于由锚框回归单元650进行训练。此外,对象分类单元640通过将无法与过滤后的锚框相匹配的训练对象划分为用于构成困难样本的第二对象并用于由锚框生成单元660进行训练,可以增强神经网络针对对象变化的鲁棒性。
在对象分类单元640通过以上方式将训练对象划分为用于构成常规样本的第一对象以及用于构成困难样本的第二对象之后,锚框回归单元650即可相应地利用所述第一对象训练所述神经网络以调整用于锚框回归的参数,以及锚框生成单元660即可相应地利用所述第二对象训练所述神经网络以调整用于锚框生成的参数。但在此需要说明的是,以上锚框生成单元660利用所述第二对象训练所述神经网络以调整用于锚框生成的参数的方式仅为示例,在实际应用中,锚框生成单元660也可以利用所有的训练对象来一同训练所述神经网络以调整用于锚框生成的参数,并且本发明不对此进行限制。
接下来将详细描述上述锚框回归单元650利用所述第一对象训练所述神经网络以调整用于锚框回归的参数的具体过程。
其中,所述锚框回归单元650利用所述第一对象训练所述神经网络以调整用于锚框回归的参数可以包括:根据所述过滤后的锚框与所述第一对象的真实边界框的匹配结果获得第一损失函数,并利用所述第一损失函数训练所述神经网络以调整用于锚框回归的参数。具体地,在训练过程中,当所述过滤后的锚框与所述第一对象的真实边界框相匹配时,锚框回归单元650可以计算所述过滤后的锚框相对于与其匹配的真实边界框的实际的锚框偏移。此外,锚框回归单元650还可以计算所述过滤后的锚框相对于预测边界框的预测的锚框偏移,所述预测边界框是通过将锚框回归参数应用于过滤后的锚框所生成的。从而可以基于该预测的锚框偏移与该实际的锚框偏移之间的差异来获得第一损失函数。在一个实施例中,锚框回归单元650可以在训练过程中调整用于锚框回归的参数以令获得的第一损失函数尽可能的小,并将第一损失函数收敛时的神经网络中用于锚框回归的参数作为调整后的参数,由此在目标检测过程中,输出根据调整后的参数预测的锚框偏移,从而利用预测的锚框偏移对预先生成的锚框的位置及尺寸进行调整以获得待检测对象的预测边界框。
在构造第一损失函数的一个示例中,锚框回归单元650首先获取所述过滤后的锚框与所述第一对象的真实边界框之间的IOU。由于在前述对训练对象进行分类的过程中已经获得了过滤后的锚框与所有训练对象的真实边界框之间的IOU,因此在此步骤中,也可以直接利用在对训练对象进行分类的过程中所获得IOU从而进一步降低计算量。在获取了所述过滤后的锚框与所述第一对象的真实边界框之间的IOU后,将其与预定的第二IOU阈值进行比较以获得所述过滤后的锚框与所述第一对象的真实边界框的匹配结果。可选地,第二IOU阈值可以与用于对训练对象进行分类的第一IOU阈值相等或大于第一IOU阈值,并且在第二IOU阈值与第一IOU阈值相等的情况下,可以直接采用在对训练对象进行分类的过程中所获取的锚框与真实边界框的匹配结果作为所述过滤后的锚框与所述第一对象的真实边界框的匹配结果。
在一个示例中,锚框回归单元650根据所述第一对象的真实边界框中与所述过滤后的锚框相匹配的所有边界框获得第一损失函数。如上所述,在通常的训练过程中,每个锚框仅会匹配并回归与其具有最大IOU的第一对象的真实边界框,并且相应地,根据具有最大IOU的第一对象的真实边界框与锚框之间的损失函数来构造第一损失函数。然而,实际上,一个锚框可能与不止一个的第一对象的真实边界框的IOU满足阈值要求。在仅根据具有最大IOU的第一对象的真实边界框与锚框之间的损失函数来构造第一损失函数的情况下,可能导致存在一部分虽然与锚框的IOU满足阈值要求,然而由于其并不具有最大的IOU,因此始终无法参与到训练过程中的第一对象。因此,在此示例中,可以确定每个锚框与所有与其IOU满足阈值要求的真实边界框相匹配,从而基于所述过滤后的锚框与所有与其相匹配的真实边界框之间的损失函数来获得第一损失函数,并利用该第一损失函数来进行训练,以使训练样本的利用率最大化。具体地,确定每个锚框与所有与其IOU满足阈值要求的真实边界框相匹配,并根据所述第一对象的真实边界框中与所述过滤后的锚框相匹配的所有边界框获得的第一损失函数L1,可以如以下的公式(1)所示:
其中,具有相匹配的真实边界框的所述过滤后的锚框的数量表示为n个,所述第一对象的真实边界框中与每个锚框i相匹配的所有边界框的数量表示为mi个,Lij表示每个锚框i和与其相匹配的所有边界框中的每个边界框j之间的损失函数,IOUij表示每个锚框i和与其相匹配的所有边界框中的每个边界框j之间的IOU,以及IOUi表示每个锚框i和与其相匹配的所有边界框之间的IOU之和。在公式(1)所表示的第一损失函数L1中,每个锚框i和与其相匹配的所有边界框中的每个边界框j之间的损失函数Lij的损失权重即为对应的经归一化的IOU值IOUij/IOUi,并且通过对每个损失函数Lij进行加权求和从而获得第一损失函数L1。可选地,每个锚框i和与其相匹配的所有边界框中的每个边界框j之间的损失函数Lij可以为交叉熵损失函数或SmoothL1损失函数,但也可以使用其他类型的损失函数,并且本发明不对此进行限制。通过以上所述的锚框回归单元650利用所述第一对象的真实边界框中与所述过滤后的锚框相匹配的所有边界框,获得第一损失函数来训练神经网络,以调整用于锚框回归的参数,使得所获得的第一损失函数尽可能的小。通过上述方式,能够避免存在一部分虽然与锚框的IOU满足阈值要求然而始终无法参与到训练过程中的对象,从而使训练样本的利用率最大化。
接下来将详细描述锚框生成单元660利用所述第二对象训练所述神经网络以调整用于锚框生成的参数的具体过程。
具体地,所述锚框生成单元660利用所述第二对象训练所述神经网络以调整用于锚框生成的参数可以包括:根据所述语义分割区域确定所述第二对象的真实边界框内的第一区域,并根据所述第一区域内的像素生成第二损失函数,以利用所述第二损失函数训练所述神经网络以调整用于锚框生成的参数。
在以上针对图2所描述的生成语义信息的示例中,已经说明了待处理图像上的每个像素的像素类别还可以对应于待处理图像上的语义分割区域。相应地,锚框生成单元660可以根据所述像素类别以及所述语义分割区域来区分所述第二对象的真实边界框内对应于所述第二对象的像素的位置以及并非对应于所述第二对象的像素的位置。由此,锚框生成单元660可以确定所述第二对象的真实边界框内对应于所述第二对象的像素的位置的第一区域,以利用第一区域内的像素来训练神经网络,从而有效地降低训练过程中的计算量以提高训练效率。具体地,在一个示例中,当待处理图像上的每个像素的像素类别被粗略地预测为“前景”或“背景”时,锚框生成单元660可以去除所述第二对象的真实边界框内“背景”像素类别所对应的语义分割区域,并将该真实边界框内的其余区域作为第一区域,从而仅利用所述第一区域内的像素训练神经网络以调整用于锚框生成的参数。在另一示例中,当待处理图像上的每个像素被划分为更为具体的涉及对象类别的像素类别时,锚框生成单元660可以确定所述第二对象的真实边界框内与所述第二对象的对象类别一致的像素类别所对应的语义分割区域作为第一区域,从而仅利用所述第一区域内的像素训练神经网络以调整用于锚框生成的参数。
在此示例中,当确定了所述第二对象的真实边界框内的第一区域后,锚框生成单元660即可根据所述第一区域内的像素生成第二损失函数,以利用所述第二损失函数训练所述神经网络以调整用于锚框生成的参数。具体地,所述第二损失函数由所述第一区域内的每个像素的损失函数构成,其中所述第一区域内的每个像素的损失函数可以反映出利用用于锚框生成的参数针对所述第一区域内的每个像素预测出的锚框与训练对象的真实边界框之间的差异。
通过以上所述的锚框生成单元660利用构成困难样本的第二对象训练神经网络,并根据所述语义分割区域确定所述第二对象的真实边界框内的第一区域,以根据所述第一区域内的像素生成训练用的第二损失函数的方式,能够增强神经网络针对对象变化的鲁棒性,并有效地降低训练过程中的计算量以提高训练效率。
在一个示例中,当语义信息生成单元620、锚框回归单元650和锚框生成单元660被应用于同一神经网络时,这三个单元可以通过共用相同的参数来共享神经网络中诸如用于特征提取之类的浅层,从而提高这三个单元的训练效率。
根据本发明的上述图像处理装置,能够根据语义信息对预先生成的数量较多的锚框进行过滤以去除其中的无效锚框,从而将过滤后的锚框进一步用于训练神经网络以及执行目标检测。这种图像处理装置能够减少在训练过程或目标检测过程对无效锚框的处理,提高训练神经网络及执行目标检测的效率。
此外,根据本发明的上述图像处理装置,能够将训练对象分别划分为用于训练神经网络以调整用于锚框回归的参数的常规样本,以及用于训练神经网络以调整用于锚框生成的参数的困难样本,从而增强神经网络针对对象变化的鲁棒性。
下面,参照图7来描述根据本发明实施例的图像处理装置。图7示出根据本发明实施例的图像处理装置700的框图。如图7所示,该装置700可以是计算机或服务器。
如图7所示,图像处理装置700包括一个或多个处理器710以及存储器720,当然,除此之外,图像处理装置700还可能包括多传感器成像系统以及输出装置(未示出)等,这些组件可以通过总线系统和/或其它形式的连接机构互连。应当注意,图7所示的图像处理装置700的组件和结构只是示例性的,而非限制性的,根据需要,图像处理装置700也可以具有其他组件和结构。
处理器710可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其它形式的处理单元,并且可以利用存储器720中所存储的计算机程序指令以执行期望的功能,可以包括:获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量;根据所述待处理图像生成语义信息;利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
存储器720可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器710可以运行所述程序指令,以实现上文所述的本发明的实施例的图像处理装置的功能以及/或者其它期望的功能,并且/或者可以执行根据本发明实施例的图像处理方法。在所述计算机可读存储介质中还可以存储各种应用程序和各种数据。
下面,描述根据本发明实施例的计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现以下步骤:获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量;根据所述待处理图像生成语义信息;利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
当然,上述的具体实施例仅是例子而非限制,且本领域技术人员可以根据本发明的构思从上述分开描述的各个实施例中合并和组合一些步骤和装置来实现本发明的效果,这种合并和组合而成的实施例也被包括在本发明中,在此不一一描述这种合并和组合。
注意,在本发明中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本发明的各个实施例必须具备的。另外,上述发明的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本发明为必须采用上述具体的细节来实现。
本发明中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
本发明中的步骤流程图以及以上方法描述仅作为例示性的例子并且不意图要求或暗示必须按照给出的顺序进行各个实施例的步骤。如本领域技术人员将认识到的,可以按任意顺序进行以上实施例中的步骤的顺序。诸如“其后”、“然后”、“接下来”等等的词语不意图限制步骤的顺序;这些词语仅用于引导读者通读这些方法的描述。此外,例如使用“一个”、“一”或者“该”对于单数的要素的任何引用不被解释为将该要素限制为单数。
另外,本文中的各个实施例中的步骤和装置并非仅限定于某个实施例中实行,事实上,可以根据本发明的概念来结合本文中的各个实施例中相关的部分步骤和部分装置以构思新的实施例,而这些新的实施例也包括在本发明的范围内。
以上所述的方法的各个操作可以通过能够进行相应的功能的任何适当的手段而进行。该手段可以包括各种硬件和/或软件组件和/或模块,包括但不限于电路、专用集成电路(ASIC)或处理器。
可以利用被设计用于进行在此所述的功能的通用处理器、数字信号处理器(DSP)、ASIC、现场可编程门阵列信号(FPGA)或其他可编程逻辑器件(PLD)、离散门或晶体管逻辑、离散的硬件组件或者其任意组合而实现或进行所述的各个例示的逻辑块、模块和电路。通用处理器可以是微处理器,但是作为替换,该处理器可以是任何商业上可获得的处理器、控制器、微控制器或状态机。处理器还可以实现为计算设备的组合,例如DSP和微处理器的组合,多个微处理器、与DSP核协作的一个或多个微处理器或任何其他这样的配置。
结合本发明描述的方法或算法的步骤可以直接嵌入在硬件中、处理器执行的软件模块中或者这两种的组合中。软件模块可以存在于任何形式的有形存储介质中。可以使用的存储介质的一些例子包括随机存取存储器(RAM)、只读存储器(ROM)、快闪存储器、EPROM存储器、EEPROM存储器、寄存器、硬盘、可移动盘、CD-ROM等。存储介质可以耦接到处理器以便该处理器可以从该存储介质读取信息以及向该存储介质写信息。在替换方式中,存储介质可以与处理器是整体的。软件模块可以是单个指令或者许多指令,并且可以分布在几个不同的代码段上、不同的程序之间以及跨过多个存储介质。
在此发明的方法包括用于实现所述的方法的一个或多个动作。方法和/或动作可以彼此互换而不脱离权利要求的范围。换句话说,除非指定了动作的具体顺序,否则可以修改具体动作的顺序和/或使用而不脱离权利要求的范围。
所述的功能可以按硬件、软件、固件或其任意组合而实现。如果以软件实现,功能可以作为一个或多个指令存储在切实的计算机可读介质上。存储介质可以是由计算机访问的任何可用的切实介质。通过例子而不是限制,这样的计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储或其他磁存储器件或者可以用于携带或存储指令或数据结构形式的期望的程序代码并且可以由计算机访问的任何其他切实介质。如在此使用的,盘(disc)包括紧凑盘(CD)、激光盘、光盘、数字通用盘(DVD)、软盘和蓝光盘。
因此,计算机程序产品可以进行在此给出的操作。例如,这样的计算机程序产品可以是具有有形存储(和/或编码)在其上的指令的计算机可读的有形介质,该指令可由一个或多个处理器执行以进行在此所述的操作。计算机程序产品可以包括包装的材料。
软件或指令也可以通过传输介质而传输。例如,可以使用诸如同轴电缆、光纤光缆、双绞线、数字订户线(DSL)或诸如红外、无线电或微波的无线技术的传输介质从网站、服务器或者其他远程源传输软件。
此外,用于进行在此所述的方法和技术的模块和/或其他适当的手段可以在适当时由用户终端和/或基站下载和/或其他方式获得。例如,这样的设备可以耦接到服务器以促进用于进行在此所述的方法的手段的传送。或者,在此所述的各种方法可以经由存储部件(例如RAM、ROM、诸如CD或软盘等的物理存储介质)提供,以便用户终端和/或基站可以在耦接到该设备或者向该设备提供存储部件时获得各种方法。此外,可以利用用于将在此所述的方法和技术提供给设备的任何其他适当的技术。
其他例子和实现方式在本发明和所附权利要求的范围和精神内。例如,由于软件的本质,以上所述的功能可以使用由处理器、硬件、固件、硬连线或这些的任意的组合执行的软件实现。实现功能的特征也可以物理地位于各个位置,包括被分发以便功能的部分在不同的物理位置处实现。而且,如在此使用的,包括在权利要求中使用的,在以“至少一个”开始的项的列举中使用的“或”指示分离的列举,以便例如“A、B或C的至少一个”的列举意味着A或B或C,或AB或AC或BC,或ABC(即A和B和C)。此外,措辞“示例的”不意味着描述的例子是优选的或者比其他例子更好。
可以不脱离由所附权利要求定义的教导的技术而进行对在此所述的技术的各种改变、替换和更改。此外,本发明的权利要求的范围不限于以上所述的处理、机器、制造、事件的组成、手段、方法和动作的具体方面。可以利用与在此所述的相应方面进行基本相同的功能或者实现基本相同的结果的当前存在的或者稍后要开发的处理、机器、制造、事件的组成、手段、方法或动作。因而,所附权利要求包括在其范围内的这样的处理、机器、制造、事件的组成、手段、方法或动作。
提供所发明的方面的以上描述以使本领域的任何技术人员能够做出或者使用本发明。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本发明的范围。因此,本发明不希望被限制到在此示出的方面,而是按照与在此发明的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不希望将本发明的实施例限制到在此发明的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (11)
1.一种图像处理方法,包括:
获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量;
根据所述待处理图像生成语义信息;
利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
2.如权利要求1所述的方法,其中,
所述根据所述待处理图像生成语义信息包括:根据所述待处理图像获取所述待处理图像上的每个像素的像素类别;
所述利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框包括:根据所述像素类别去除所述锚框中的部分锚框以获得所述过滤后的锚框。
3.如权利要求2所述的方法,其中,所述待处理图像为训练图像,所述至少一个对象为训练对象,所述训练图像上预先标注有各个训练对象的真实边界框,所述方法还包括利用所述过滤后的锚框和所述真实边界框训练神经网络。
4.如权利要求3所述的方法,其中,所述利用所述过滤后的锚框和所述真实边界框训练神经网络包括:
根据所述过滤后的锚框与所述真实边界框的交集面积与并集面积之比,将所述训练对象分类为第一对象及第二对象,利用所述第一对象训练所述神经网络以调整用于锚框回归的参数,以及利用所述第二对象训练所述神经网络以调整用于锚框生成的参数。
5.如权利要求4所述的方法,其中,所述利用所述第一对象训练所述神经网络以调整用于锚框回归的参数包括:根据所述过滤后的锚框与所述第一对象的真实边界框的匹配结果获得第一损失函数,并利用所述第一损失函数训练所述神经网络以调整用于锚框回归的参数。
6.如权利要求5所述的方法,其中,根据所述第一对象的真实边界框中与所述过滤后的锚框相匹配的所有边界框获得第一损失函数。
7.如权利要求4所述的方法,其中,所述待处理图像上的每个像素的像素类别对应于所述待处理图像上的语义分割区域,
所述利用所述第二对象训练所述神经网络以调整用于锚框生成的参数包括:根据所述语义分割区域确定所述第二对象的真实边界框内的第一区域,并根据所述第一区域内的像素生成第二损失函数,以利用所述第二损失函数训练所述神经网络以调整用于锚框生成的参数。
8.如权利要求3-7中任一项所述的方法,其中,所述方法还包括根据所述神经网络获得检测图像上的至少一个待检测对象的预测边界框。
9.一种图像处理装置,包括:
获取单元,配置为获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量;
语义信息生成单元,配置为根据所述待处理图像生成语义信息;
锚框过滤单元,配置为利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
10.一种图像处理装置,包括:
处理器;
和存储器,在所述存储器中存储有计算机程序指令,
其中,在所述计算机程序指令被所述处理器运行时,使得所述处理器执行以下步骤:
获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量;
根据所述待处理图像生成语义信息;
利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
11.一种计算机可读存储介质,其上存储有计算机程序指令,其中,所述计算机程序指令被处理器执行时实现以下步骤:
获取待处理图像以及所述待处理图像上的多个预先生成的锚框,其中所述待处理图像为包含至少一个对象的图像,所述锚框的数量为第一数量;
根据所述待处理图像生成语义信息;
利用所述语义信息对所述锚框进行过滤以获得过滤后的锚框,其中所述过滤后的锚框的数量为第二数量,所述第二数量小于所述第一数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010066923.2A CN113139565A (zh) | 2020-01-20 | 2020-01-20 | 图像处理方法、图像处理装置和计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010066923.2A CN113139565A (zh) | 2020-01-20 | 2020-01-20 | 图像处理方法、图像处理装置和计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113139565A true CN113139565A (zh) | 2021-07-20 |
Family
ID=76809157
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010066923.2A Pending CN113139565A (zh) | 2020-01-20 | 2020-01-20 | 图像处理方法、图像处理装置和计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113139565A (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109032744A (zh) * | 2018-07-27 | 2018-12-18 | 百度在线网络技术(北京)有限公司 | 图标展示方法、装置、服务器及存储介质 |
CN109815979A (zh) * | 2018-12-18 | 2019-05-28 | 通号通信信息集团有限公司 | 一种弱标签语义分割标定数据生成方法及系统 |
CN109859163A (zh) * | 2018-12-19 | 2019-06-07 | 重庆邮电大学 | 一种基于特征金字塔卷积神经网络的lcd缺陷检测方法 |
CN109934163A (zh) * | 2018-12-27 | 2019-06-25 | 北京航空航天大学 | 一种基于场景先验和特征再融合的航空图像车辆检测方法 |
CN110516095A (zh) * | 2019-08-12 | 2019-11-29 | 山东师范大学 | 基于语义迁移的弱监督深度哈希社交图像检索方法和系统 |
-
2020
- 2020-01-20 CN CN202010066923.2A patent/CN113139565A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109032744A (zh) * | 2018-07-27 | 2018-12-18 | 百度在线网络技术(北京)有限公司 | 图标展示方法、装置、服务器及存储介质 |
CN109815979A (zh) * | 2018-12-18 | 2019-05-28 | 通号通信信息集团有限公司 | 一种弱标签语义分割标定数据生成方法及系统 |
CN109859163A (zh) * | 2018-12-19 | 2019-06-07 | 重庆邮电大学 | 一种基于特征金字塔卷积神经网络的lcd缺陷检测方法 |
CN109934163A (zh) * | 2018-12-27 | 2019-06-25 | 北京航空航天大学 | 一种基于场景先验和特征再融合的航空图像车辆检测方法 |
CN110516095A (zh) * | 2019-08-12 | 2019-11-29 | 山东师范大学 | 基于语义迁移的弱监督深度哈希社交图像检索方法和系统 |
Non-Patent Citations (1)
Title |
---|
XILI WANG等: "Deep Learning Model for Target Detection in Remote Sensing Images Fusing Multilevel Features", 《IGARSS 2019 - 2019 IEEE INTERNATIONAL GEOSCIENCE AND REMOTE SENSING SYMPOSIUM》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108268869B (zh) | 目标检测方法、装置及系统 | |
CN112435215B (zh) | 一种基于图像的车辆定损方法、移动终端、服务器 | |
JP6873237B2 (ja) | 画像ベースの車両損害評価方法、装置、およびシステム、ならびに電子デバイス | |
US20230089380A1 (en) | Neural network construction method and apparatus | |
WO2023138300A1 (zh) | 目标检测方法及应用其的移动目标跟踪方法 | |
JP7266668B2 (ja) | ビデオ物体の高速検出方法、装置、サーバ及び記憶媒体 | |
WO2017166586A1 (zh) | 基于卷积神经网络的图片鉴别方法、系统和电子设备 | |
CN112634209A (zh) | 一种产品缺陷检测方法和装置 | |
WO2020024585A1 (zh) | 一种训练物体检测模型的方法、装置以及设备 | |
Pasupa et al. | Evaluation of deep learning algorithms for semantic segmentation of car parts | |
CN109840883B (zh) | 一种训练物体识别神经网络的方法、装置及计算设备 | |
CN106887018B (zh) | 立体匹配方法、控制器和系统 | |
CN113272827A (zh) | 卷积神经网络中分类决策的验证 | |
CN110533046B (zh) | 一种图像实例分割方法、装置、计算机可读存储介质及电子设备 | |
WO2023050651A1 (zh) | 图像语义分割方法、装置、设备及存储介质 | |
CN115631112B (zh) | 一种基于深度学习的建筑轮廓矫正方法及装置 | |
CN116129330B (zh) | 基于视频的图像处理、行为识别、分割、检测方法及设备 | |
JP2017062790A (ja) | 対象分割方法、対象分割装置及び対象分割プログラム | |
Laopracha et al. | A novel feature selection in vehicle detection through the selection of dominant patterns of histograms of oriented gradients (DPHOG) | |
Wang et al. | Doobnet: Deep object occlusion boundary detection from an image | |
CN112991349B (zh) | 图像处理方法、装置、设备和存储介质 | |
CN115578616A (zh) | 多尺度物体实例分割模型的训练方法、分割方法和装置 | |
CN115731409A (zh) | 图像分类器的即时校准 | |
CN110705330A (zh) | 车道线检测方法、车道线检测装置和计算机可读存储介质 | |
CN107305688B (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 |