计算机执行的从图片中识别损伤的方法及装置与流程

文档序号:19419943发布日期:2019-12-14 01:19阅读:280来源:国知局
计算机执行的从图片中识别损伤的方法及装置与流程

本说明书一个或多个实施例涉及机器学习领域,尤其涉及利用机器学习从图片中识别损伤的方法和装置。



背景技术:

随着机器学习的快速发展,各种人工智能技术已经应用于多种场景,帮助人们解决相应场景下的技术问题。其中,计算机视觉图像识别技术在多种领域多种场景下,都有强烈的应用需求,例如,应用于医疗影像分析,车损智能识别,等等。

例如,在传统车险理赔场景中,保险公司需要派出专业的查勘定损人员到事故现场进行现场查勘定损,给出车辆的维修方案和赔偿金额,并拍摄现场照片,定损照片留档以供后台核查人员核损核价。由于需要人工查勘定损,保险公司需要投入大量的人力成本,和专业知识的培训成本。从普通用户的体验来说,理赔流程由于等待人工查勘员现场拍照、定损员在维修地点定损、核损人员在后台核损,理赔周期长达1-3天,用户的等待时间较长,体验较差。针对这样的行业痛点,希望能够利用图像识别技术,根据普通用户拍摄的现场损失图片,自动识别图片中反映的车损状况,并自动给出维修方案。如此,无需人工查勘定损核损,大大减少保险公司的成本,提升普通用户的车险理赔体验。

在医疗影像分析中,也希望能够借助于图像识别技术,基于医疗影像智能地给出图像特点的分析,帮助医师进行诊断。

以上场景中,都需要从图片(车损图片或医疗图像)中识别出损伤对象。然而,目前的图像识别方案中,对于损伤对象识别的准确度以及可用性还有待进一步提高。因此,希望能有改进的方案,能够更精准地从图片中识别出损伤,从而优化整图分析结果。



技术实现要素:

本说明书一个或多个实施例描述了训练损伤识别模型从而从图片中识别损伤的方法和装置,其中针对损伤识别的场景优化损伤识别模型的训练,更有利于损伤识别在整图分析中的应用。

根据第一方面,提供了一种计算机执行的训练损伤检测模型的方法,包括:

获取标注图片,所述标注图片包括框选出损伤对象的至少一个损伤标注框;

利用损伤检测模型,在所述标注图片中预测得到至少一个损伤预测区,其中包括第一损伤预测区;

确定本次预测的损失函数中与位置偏差相关的位置损失项,包括,判断所述至少一个损伤标注框中是否存在损伤标注框完全包含所述第一损伤预测区;如果存在损伤标注框完全包含该第一损伤预测区,将所述位置损失项确定为零;如果不存在损伤标注框完全包含该第一损伤预测区,从所述至少一个损伤标注框中确定出目标损伤标注框,至少基于所述第一损伤预测区的中心和所述目标损伤标注框的中心之间的距离确定所述位置损失项;

根据所述损失函数,更新所述损伤检测模型,以使得更新后所述损失函数下降。

在一种实施方式中,第一损伤预测区具体为第一损伤预测点对应的像素。

在这样的情况下,判断是否存在损伤标注框完全包含所述第一损伤预测区具体可以为,判断所述第一损伤预测点的坐标是否落入各个损伤标注框的坐标范围之内;

并且可以通过以下方式确定出目标损伤标注框:确定所述第一损伤预测点与各个损伤标注框的中心之间的距离,将最短距离对应的损伤标注框作为所述目标损伤标注框;然后,基于所述最短距离确定所述位置损失项。

在另一种实施方式中,第一损伤预测区具体为第一损伤预测框,具有第一中心,第一宽度和第一高度。

在这样的情况下,可以如下判断第一损伤预测区是否完全包含在各个损伤标注框中:

根据所述第一中心,第一宽度和第一高度,确定所述第一损伤预测框的四个顶点坐标;

对于各个损伤标注框,依次判断所述四个顶点坐标是否均落入该损伤标注框的坐标范围之内。

在该实施方式的一个示例中,可以如下确定出目标损伤标注框:

对于各个损伤标注框,确定所述第一损伤预测框与该损伤标注框的相交面积;

根据所述相交面积,从所述至少一个损伤标注框中确定出所述目标损伤标注框。

在该实施方式下的一个实施例中,上述第一宽度为预设宽度,第一高度为预设高度;在这样的情况下,可以基于所述第一中心和所述目标损伤标注框的中心之间的距离确定所述位置损失项。

在该实施方式下的另一实施例中,上述第一宽度为预测宽度,第一高度为预测高度;在这样的情况下,可以如下确定位置损失项:

基于所述第一中心和所述目标损伤标注框的中心之间的距离确定第一损失项;

基于所述预测宽度和预测高度,确定第二损失项;

基于所述第一损失项和第二损失项的加和,确定所述位置损失项。

在一个更具体的示例中,可以将所述第二损失项确定为,所述预测宽度和预测高度的运算和。

在另一具体示例中,目标损伤标注框具有标注宽度和标注高度;相应的,可以如下确定第二损失项:

在所述预测宽度不大于所述标注宽度的情况下,将宽度损失项确定为零;

在所述预测宽度大于所述标注宽度的情况下,基于所述预测宽度超出所述标注宽度的长度,确定所述宽度损失项;

在所述预测高度不大于所述标注高度的情况下,将高度损失项确定为零;

在所述预测高度大于所述标注高度的情况下,基于所述预测高度超出所述标注高度的长度,确定所述高度损失项;

将所述宽度损失项和高度损失项的加和,作为所述第二损失项。

根据第二方面,提供一种训练损伤检测模型的装置,包括:

获取单元,配置为获取标注图片,所述标注图片包括框选出损伤对象的至少一个损伤标注框;

预测单元,配置为利用损伤检测模型,在所述标注图片中预测得到至少一个损伤预测区,其中包括第一损伤预测区;

确定单元,配置为确定本次预测的损失函数中与位置偏差相关的位置损失项,所述确定单元包括,

判断子单元,配置为判断所述至少一个损伤标注框中是否存在损伤标注框完全包含所述第一损伤预测区;

第一确定子单元,配置为,如果存在损伤标注框完全包含该第一损伤预测区,将所述位置损失项确定为零;

第二确定子单元,配置为,如果不存在损伤标注框完全包含该第一损伤预测区,从所述至少一个损伤标注框中确定出目标损伤标注框,至少基于所述第一损伤预测区的中心和所述目标损伤标注框的中心之间的距离确定所述位置损失项;

更新单元,配置为根据所述损失函数,更新所述损伤检测模型,以使得更新后所述损失函数下降。

根据第三方面,提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行第一方面的方法。

根据第四方面,提供了一种计算设备,包括存储器和处理器,其特征在于,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现第一方面的方法。

根据本说明书实施例提供的方法和装置,提出一种改进的训练损伤检测模型的方式,训练的目标是使得,损伤预测框拟合标注框的中心位置,但对标注框的大小并不进行精确拟合,而是使得预测框尽量不超过标注框,甚至越小越好。如此得到的损伤检测模型更适合于损伤识别独有的特点,由此得到的损伤检测结果更有利于后续与其他检测结果进行融合进行整图分析。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。

图1示出在一个例子中对车辆损伤图片进行标注的标注图片样本;

图2示出根据一个实施例的训练损伤检测模型的流程图;

图3示出在一个实施例中确定目标损伤标注框的示意图;

图4示出根据一个实施例的损伤识别结果;

图5示出根据一个实施例的训练损伤检测模型的装置的示意性框图。

具体实施方式

下面结合附图,对本说明书提供的方案进行描述。

如前所述,在多种场景中,需要利用计算机视觉技术进行图像识别。图像识别中一项基本而典型的任务是目标检测,也就是,从图片中识别出特定的目标对象,例如人脸,动物等,并对目标对象进行分类。为此,可以利用标注的图片样本进行模型训练,训练得到的目标检测模型可以对未知图片中的特定目标对象进行检测和识别。具体而言,目标检测模型会输出目标检测框和预测类别,其中目标检测框是框选出目标对象的最小矩形框,预测类别为针对目标检测框所框选的目标对象预测的类别。

在车辆智能定损、医疗影像分析等多种场景中,需要从图片中识别出损伤对象,例如车辆损伤,器官病变损伤。为此,可以将损伤对象作为特定的目标对象进行标注,基于如此得到的标注图片样本进行训练,即可得到损伤检测模型。换而言之,损伤检测模型是目标检测模型的一种具体化应用,其中将损伤作为目标检测的对象。

相应的,一般来说,损伤检测模型的训练过程与常规的目标检测模型相类似。具体地,由标注人员采用标注框的形式对图片中的损伤对象进行标注,于是得到包含若干损伤标注框的训练图片。然后,利用初步的损伤检测模型对该训练图片进行损伤识别,得到若干损伤预测框。通过损失函数衡量预测得到的损伤预测框与工作人员标注的损伤标注框之间的偏差。一般地,该偏差包含预测类别的偏差,预测框与标注框中心的偏差以及大小的偏差。基于这样的损失函数更新损伤检测模型,使得损伤检测模型向上述偏差减小的方向调整。换而言之,训练的方向和目标是,使得损伤预测框充分地拟合损伤标注框。当损失函数足够小,损伤预测框足够拟合损伤标注框时,认为模型训练完成,可以进行未知图片的预测。

然而,发明人经过研究和分析发现,在损伤识别这一场景中,作为待识别对象的损伤有其独有的特点,相应的,以上的模型训练过程可以进行进一步优化,以针对性的适应于损伤识别的场景特点。下面结合车辆损伤的例子进行描述。

图1示出在一个例子中对车辆损伤图片进行标注的标注图片样本。从图1中可以看到,车辆损伤具有一定的模糊性、连续性和自包含性,与常规的界限分明的目标并不相同。例如,对于车辆上的刮擦损伤来说,一条连续的刮擦划痕可以认为是一个损伤对象,同时该划痕的一部分也可以认为是一个损伤对象(即所谓的自包含性)。这使得标注人员在进行标注时也具有一定的随意性。

此外,损伤识别往往是对应场景中图片分析的一环,需要与其他检测结果进行融合用于后续分析。例如,对于车辆定损来说,最终关注的是什么部件受到什么类型的损伤,因此,损伤识别的结果需要与部件识别的结果进行结合,以得到部件的受损状况。并且,对于特定部件来说,一种损伤类型往往对应一种换修方案,因此部件受损状况只需要表达为(部件名,损伤类型)即可,并不必须精确获知损伤区域的大小。例如,对于(左前门,刮擦)来说,无论刮擦区域大小,都需要对整个左前门进行喷漆处理,因此对于损伤区域大小并不敏感。医疗影像分析中也具有类似的特点,其中更加关注的是,影像图中反映了什么器官具有什么类型的病变/异样,在许多情况下对于异样区域的精确大小并不敏感。

也就是说,由于损伤对象的特点,一方面损伤标注框本身并不十分精确,另一方面在多数情况下对于预测的损伤大小并不敏感,因此发明人提出,在损伤识别模型的训练过程中,精确地拟合损伤标注框的大小并不十分必要。并且,通过精确拟合损伤标注框得到的损伤检测模型,往往会识别出与损伤标注框大小类似的损伤预测框,这样的损伤预测框由于尺寸没有限制,常常出现跨部件的情况,类似于图1中最右侧的标注框,跨越了车前门和车后门两个部件。这反而不利于后续与部件识别结果进行融合。

基于以上的考虑和分析,在本说明书的实施例中,提出一种改进的训练损伤检测模型的方式,训练的目标是使得,损伤预测框拟合标注框的中心位置,但对标注框的大小并不进行精确拟合,而是使得预测框尽量不超过标注框,甚至越小越好。下面描述以上构思的具体实现方式和执行步骤。

图2示出根据一个实施例的训练损伤检测模型的流程图。该方法可以通过任何具有计算、处理能力的装置、设备、平台或设备集群来执行。如图2所示,该方法至少包括以下步骤:步骤210,获取标注图片,所述标注图片包括框选出损伤对象的至少一个损伤标注框;步骤220,利用损伤检测模型,在所述标注图片中预测得到至少一个损伤预测区,其中包括第一损伤预测区;步骤230,根据第一损伤预测区是否完全落入至少一个损伤标注框中,确定本次预测的损失函数中与位置偏差相关的位置损失项;步骤240,根据所述损失函数,更新所述损伤检测模型,以使得更新后所述损失函数下降。下面描述以上各个步骤的执行方式。

首先,在步骤210,获取标注图片。一般地,标注图片是由标注人员经过人工标注产生的用于模型训练的图片。在训练损伤检测模型的情况下,标注图片包括框选出损伤对象的损伤标注框,损伤标注框可以有一个或多个。如前所述,图1即为标注出损伤对象的损伤标注图片,其中包含6个损伤标注框。一般而言,每个损伤标注框可以表示为(x,y,w,h)的形式,其中x和y分别为该损伤标注框的中心位置的横坐标和纵坐标,w为该损伤标注框的宽度,h为该损伤标注框的高度。在其他例子中,损伤标注框也可以用其四个顶点的坐标来表示。并且,可以理解,顶点表示方式和(x,y,w,h)表示方式可以容易地互相转换。

接着,在步骤220,利用损伤检测模型,针对上述标注图片进行预测,得到至少一个损伤预测区。可以理解,步骤220中的损伤检测模型是训练过程中的模型,既可以是包括初始参数的初始模型,也可以是经过若干次参数调优的中间模型。

如前所述,损伤检测模型是目标检测模型的一种具体化。在本领域中,已经基于各种网络结构和各种检测算法提出了各种各样的目标检测模型。例如,单阶段(onestage)检测模型可以从图片中直接确定出目标对象的类别概率和位置坐标,也就是直接识别出目标对象。单阶段检测模型的典型例子包括,ssd模型,yolo模型等。两阶段(twostage)的检测模型首先在图片中生成候选区域,或称为兴趣区域roi,然后在候选区域中进行目标识别和边框回归。两阶段的检测模型的典型例子包括,r-cnn模型,fastr-cnn模型,fasterr-cnn模型等。还提出有其他目标检测模型。以上这些具体的模型结构和算法,均可以用作损伤检测模型。

利用这样的损伤检测模型对标注图片进行预测,可以得到预测结果,即若干损伤预测区,以及对应的预测损伤类别。为了进行模型的训练和优化,接下来,将预测结果与标注数据进行比对,来确定损失函数。上述比对一般包含类别的比对和位置的比对,相应的,损失函数会包含与类别偏差相关的类别损失项,和与位置偏差相关的位置损失项。根据本说明书的实施例,可以采用常规方式确定类别损失项,例如,比对损伤预测区的预测类别和对应损伤标注框的标注类别之间的异同,根据对比结果确定该类别损失项。而对于位置损失项,不同于常规方案中既考虑中心偏差又考虑大小偏差的拟合目标,在本说明书一个或多个实施例中,根据损伤预测区是否完全落入损伤标注框中,确定损失函数中的位置损失项。

于是,在步骤230,根据上述构思,确定本次预测的损失函数中与位置偏差相关的位置损失项。为了描述的简单,结合任意的一个损伤检测区,下文中称为第一损伤预测区,进行描述。

具体的,如图2所示,确定位置损失项的步骤230包括,步骤231,判断是否存在损伤标注框完全包含该第一损伤预测区;如果存在任一损伤标注框完全包含该第一损伤预测区,在步骤232,将该第一损伤预测区对应的位置损失项确定为零;如果各个损伤标注框均未完全包含该第一损伤预测区,那么在步骤233,从至少一个损伤标注框中确定出作为目标损伤标注框,并在步骤234,至少基于第一损伤预测区的中心和目标损伤标注框的中心之间的距离确定位置损失项。

下面结合损伤预测区的不同形式,描述在不同实施例中确定位置损失项的具体执行过程。

在一个实施例,在前述步骤220中,仅预测损伤区中心坐标。此时,得到的损伤预测区可以表示为(x,y),退化为损伤预测点,或者认为损伤预测区即为该损伤预测点对应的像素。相应的,上述任意的第一损伤预测区具体为第一损伤预测点对应的像素,可以表示为(x1,y1)。

在这样的情况下,在步骤231,只需要判断该第一损伤预测点的坐标(x1,y1)是否落入各个损伤标注框的坐标范围之内。如前所述,各个损伤标注框可以表示为四个顶点的形式,或者根据(x,y,w,h)转换得到四个顶点的坐标。四个顶点的坐标可以限定损伤标注框的坐标范围。于是,在该步骤231,可以将(x1,y1)依次与各个损伤标注框的坐标范围进行比对,以判断该第一损伤预测点是否落入某个损伤标注框中。

如果第一损伤预测点落入任意的某个损伤标注框中,那么在步骤232,将该第一损伤预测点对应的位置损失项确定为零。

如果经过步骤231的比对发现,第一损伤预测点在所有损伤标注框之外,那么,在步骤233,从至少一个损伤标注框中确定出目标损伤标注框。具体的,可以计算第一损伤预测点(x1,y1)与各个损伤标注框的中心(xi,yi)之间的距离,将最短距离对应的损伤标注框作为目标损伤标注框。假定目标损伤标注框的中心为(x1,y1)。

接着,在步骤234,基于第一损伤预测点(x1,y1)与目标损伤标注框的中心(x1,y1)之间的距离,即上述最短距离,确定位置损失项。

例如,在一个例子中,可以将位置损失项l确定为上述最短距离,即:

在另一例子中,可以将位置损失项l确定为上述最短距离的平方,即:

l=(x1-x1)2+(y1-y1)2--(2)

如此,确定损伤预测点的位置损失项。

根据第二实施例,在步骤220中,固定损伤预测区的宽度w0和高度h0,预测损伤区中心坐标(x,y),此时,得到的损伤预测区表现为固定大小的矩形损伤预测框,损伤预测框可以表示为(x,y,w0,h0)。由于最终希望得到较小的损伤预测框,因此可以将固定宽度和高度设定为较小的值,例如w0和h0均为4个像素,等等。相应的,上述任意的第一损伤预测区具体即为第一损伤预测框,表示为(x1,y1,w0,h0),其具有第一中心(x1,y1),固定宽度w0和固定高度h0。

在这样的情况下,在步骤231,需要判断该第一损伤预测框(x1,y1,w0,h0)是否完全落入各个损伤标注框中。为此,可以根据其中心坐标(x1,y1),宽度w0和高度h0,确定该第一损伤预测框的四个顶点坐标,例如包括:

如前所述,对于各个损伤标注框,可以预先获得其四个顶点坐标,进而获取其坐标范围。对于每个损伤标注框,可以依次判断上述第一损伤预测框的四个顶点坐标是否均落入该损伤标注框的坐标范围之内。仅在该四个顶点坐标均落入某个损伤标注框的坐标范围的情况下,才认为该第一损伤预测框完全落入或包含在该损伤标注框中。如此,判断第一损伤预测框是否完全落入各个损伤标注框。

如果第一损伤预测框完全落入任意的某个损伤标注框中,那么在步骤232,将该第一损伤预测框对应的位置损失项确定为零。

如果对于各个损伤标注框,该第一损伤预测框均未完全落入,换而言之,各个损伤标注框均不能完全包含该第一损伤预测框,那么在步骤233,从各个损伤标注框中确定出目标损伤标注框,作为第一损伤预测框计算偏差损失的对比目标。该步骤可以有多种执行方式。

图3示出在一个实施例中确定目标损伤标注框的示意图。在图3中示意性用实线示出了2个损伤标注框31和32;还用虚线框示出一个损伤预测框33。损伤标注框31可表示为(x1,y1,w1,h1),损伤标注框32可表示为(x2,y2,w2,h2)。以该损伤预测框33作为当前要分析的第一损伤预测框为例,描述确定目标损伤标注框的过程。

在一个例子中,计算第一损伤预测框的中心(x1,y1)与各个损伤标注框的中心的距离,将最短距离对应的损伤标注框作为目标损伤标注框。

例如,可以分别计算损伤预测框33的中心(x1,y1)与(x1,y1)的距离以及与(x2,y2)的距离。假定与(x1,y1)的距离更小,那么可以选择损伤标注框31作为目标损伤标注框。

在另一例子中,对于各个损伤标注框,可以确定第一损伤预测框与损伤标注框的相交面积。例如,可以分别计算得到损伤预测框33与损伤标注框31的相交面积s1(灰色所示),以及与损伤标注框32的相交面积s2(斜线区所示)。

然后,根据所述相交面积,确定出目标损伤标注框。例如,可以将最大相交面积对应的损伤标注框作为目标损伤标注框。例如,在这样的情况下,可以将损伤标注框32作为目标损伤标注框。在另一例子中,根据相交面积得到损伤预测框和损伤标注框的交并比(iou),即相交面积与合并面积的比例,选择交并比iou最大的损伤标注框作为目标损伤标注框。在这样的情况下,在图3的例子中,可以将损伤标注框31作为目标损伤标注框。

在确定出目标损伤标注框后,在步骤234,基于第一损伤预测框的中心和目标损伤标注框的中心之间的距离确定位置损失项。在该实施例中,由于第一损伤预测框的宽度和高度都为预先设定的固定值,因此可以不必考虑预测框大小方面的损失,仅需考虑中心位置方面的损失。对于中心位置方面的损失,仍然可以采用前述的公式(1)或公式(2)来计算位置损失项,其中(x1,y1)为第一损伤预测框的中心坐标,(x1,y1)为目标损伤标注框的中心坐标。

如此,对于大小固定的第一损伤预测框,确定出其位置损失项。

根据第三实施例,在步骤220中,对损伤区的中心位置和大小均进行预测,得到矩形的损伤预测框,可以表示为(x,y,w,h),其中w为预测宽度,h为预测高度。这与常规的预测过程类似。由此生成的损伤预测框大小不一,并且随着模型训练过程也会不断调整变化。相应的,其中任意的第一损伤预测区具体即为第一损伤预测框,表示为(x1,y1,w1,h1),其具有第一中心(x1,y1),第一宽度w1和第一高度h1。

在这样的情况下,在步骤231,判断该第一损伤预测框(x1,y1,w1,h1)是否完全落入各个损伤标注框中。具体的,根据第一损伤预测框的第一中心,第一宽度和第一高度,确定其四个顶点坐标;然后对于各个损伤标注框,依次判断该四个顶点坐标是否均落入该损伤标注框的坐标范围之内。具体计算和执行过程与前述的第二实施例类似,不再赘述。

如果第一损伤预测框完全落入任意的某个损伤标注框中,那么在步骤232,将该第一损伤预测框对应的位置损失项确定为零。

如果各个损伤标注框均不能完全包含该第一损伤预测框,那么在步骤233,从各个损伤标注框中确定出目标损伤标注框,作为第一损伤预测框计算偏差损失的对比目标。在不同例子中,可以根据第一损伤预测框与各个损伤标注框之间的中心距离、相交面积、交并比等,确定出目标损伤标注框。具体计算和执行过程与前述的第二实施例类似,不再赘述。将目标损伤标注框记为(x1,y1,w1,h1)。

在确定出目标损伤标注框后,在步骤234,对比第一损伤预测框(x1,y1,w1,h1)和目标损伤标注框(x1,y1,w1,h1),来确定位置损失项。在该实施例中,位置损失项既要考虑预测框中心偏差带来的损失,又要考虑框大小方面的损失。因此,可以基于第一中心和目标损伤标注框的中心之间的距离确定第一损失项,即中心偏差方面的损失项。在一个例子中,第一损失项可以采用以上公式(1)或(2)来计算。此外,还基于第一损伤预测框的宽度和高度,确定第二损失项,即框大小方面的损失项;然后基于第一损失项和第二损失项的加和,确定位置损失项。

更具体的,在一个例子中,可以将上述第二损失项确定为,第一损伤预测框的宽度w1和预测高度h1的运算和,例如平方和。相应的,在一个例子中,整个位置损失项可以表示为:

其中,(x1-x1)2+(y1-y1)2作为中心偏差的损失项,作为框大小方面的损失项。

在另一例子中,将框大小方面的第二损失项进一步分解为宽度损失项和高度损失项。对于宽度损失项,将第一损伤预测框的预测宽度w1与目标损伤标注框的标注宽度w1进行比对,如果预测宽度不大于标注宽度,将宽度损失项确定为零;如果预测宽度大于标注宽度,则基于预测宽度超出标注宽度的长度,确定宽度损失项。对于高度进行类似的处理:如果预测高度h1不大于标注高度h1,将高度损失项确定为零;如果预测高度大于标注高度,则基于预测高度超出标注高度的长度,确定高度损失项。最终将宽度损失项和高度损失项的加和,作为上述框大小方面的第二损失项。

更具体的,在一个例子中,位置损失项可以表示为:

l=(x1-x1)2+(y1-y1)2+||max(w1-w1,0)||2+||max(h1-h1,0)||2

--(4)

以上式(4)中,(x1-x1)2+(y1-y1)2作为中心偏差的第一损失项,||max(w1-w1,0)||2+||max(h1-h1,0)||2作为框大小方面的第二损失项;其中,max(w1-w1,0)表示w1-w1和0之间取较大者。

如此,对于预测得到的任意的第一损伤预测框,确定出其位置损失项。

如前所述,对于损失函数中的其他损失项,例如预测类别损失项,可以按照常规方式确定。如此,针对各个损伤预测区确定出其损失项,基于各个损伤预测区的损失项的加和,可以得到本次预测对应的损失函数。

回到图2,在步骤240,根据上述损失函数,更新损伤检测模型,以使得更新后损失函数下降。模型的更新可以采用反向传播、梯度下降等方式。

可以理解,损伤检测模型更新的方向和目标是,使得损失函数尽量的小。因此,损失函数的定义方式,例如其中位置损失项的不同确定方式,决定了损伤检测模型的训练方向。总体而言,图2步骤230中位置损失项的确定方式,会使得预测的损伤区尽量地包含在损伤标注框中,而不是完全拟合标注框的大小。在此基础上,采用不同形式的位置损失项,得到的损伤检测模型会预测出不同的损伤预测区。

例如,当采用以上公式(1)或(2)的位置损失项时,得到的损伤检测模型可以仅预测损伤中心点,且使得预测的损伤中心点落入损伤标注框,或者尽量的接近损伤标注框的中心。

当采用公式(3)确定位置损失项进而确定损失函数时,得到的损伤检测模型会预测出损伤框,为了使得损失函数尽量小,损伤检测模型会被调整优化为,使得损失预测框的宽度w和高度h尽量小。

当采用公式(4)确定位置损失项进而确定损失函数时,得到的损伤检测模型会预测出损伤框,并且损伤检测模型会被调整为,使得损伤预测框的宽度w和高度h不超过标注框的宽度和高度。

如此,在损失函数减小的方向上不断调整和优化模型参数,最终可以得到优化更新后的损伤检测模型。

之后,在使用阶段,就可以利用更新后的损伤检测模型,对待测图片进行损伤识别。

图4示出根据一个实施例的损伤识别结果。在图4中,待测图片为车辆损伤图片。当采用以上方法训练得到的损伤检测模型对车辆损伤图片进行损伤识别时,可以得到图中所示的一系列损伤预测框。可以看到,不同于常规技术中充分拟合标注框大小的预测框,图4中的损伤预测框都非常小,但是仍然准确指示了损伤的位置。这样的损伤预测框出现跨部件的概率非常低,对于后续与部件检测结果进行融合非常有利,从而更加有利于整图的综合定损分析。

根据另一方面的实施例,提供了一种训练损伤检测模型的装置,该装置可以部署在任何具有计算、处理能力的设备、平台或设备集群中。图5示出根据一个实施例的模型训练装置的示意性框图。如图5所示,该装置500包括:

获取单元51,配置为获取标注图片,所述标注图片包括框选出损伤对象的至少一个损伤标注框;

预测单元52,配置为利用损伤检测模型,在所述标注图片中预测得到至少一个损伤预测区,其中包括第一损伤预测区;

确定单元53,配置为确定本次预测的损失函数中与位置偏差相关的位置损失项,所述确定单元53进一步包括,

判断子单元531,配置为判断所述第一损伤预测区是否完全包含在各个损伤标注框中;

第一确定子单元532,配置为,在任一损伤标注框完全包含该第一损伤预测区的情况下,将所述位置损失项确定为零;

第二确定子单元533,配置为,在各个损伤标注框均不能完全包含该第一损伤预测区的情况下,从所述至少一个损伤标注框中确定出目标损伤标注框,至少基于所述第一损伤预测区的中心和所述目标损伤标注框的中心之间的距离确定所述位置损失项;

更新单元54,配置为根据所述损失函数,更新所述损伤检测模型,以使得更新后所述损失函数下降。

在一种实施方式中,第一损伤预测区具体为第一损伤预测点对应的像素。

在该实施方式下的一个示例中,判断子单元531配置为:判断所述第一损伤预测点的坐标是否落入各个损伤标注框的坐标范围之内;第二确定子单元533配置为:确定所述第一损伤预测点与各个损伤标注框的中心之间的距离,将最短距离对应的损伤标注框作为所述目标损伤标注框;以及,基于所述最短距离确定所述位置损失项。

在另一种实施方式中,第一损伤预测区具体为第一损伤预测框,具有第一中心,第一宽度和第一高度。

在该实施方式下的一个示例中,所述判断子单元531配置为:根据所述第一中心,第一宽度和第一高度,确定所述第一损伤预测框的四个顶点坐标;对于各个损伤标注框,依次判断所述四个顶点坐标是否均落入该损伤标注框的坐标范围之内。

在该实施方式下的一个示例中,所述第二确定子单元533配置为:对于各个损伤标注框,确定所述第一损伤预测框与该损伤标注框的相交面积;根据所述相交面积,从所述至少一个损伤标注框中确定出所述目标损伤标注框。

在一个实施例中,上述第一宽度为预设宽度,第一高度为预设高度;在这样的情况下,所述第二确定子单元533可以配置为:基于所述第一中心和所述目标损伤标注框的中心之间的距离确定所述位置损失项。

在另一实施例中,上述第一宽度为预测宽度,第一高度为预测高度;在这样的情况下,所述第二确定子单元533可以进一步包括(未示出):

第一损伤确定模块,配置为基于所述第一中心和所述目标损伤标注框的中心之间的距离确定第一损失项;

第二损失确定模块,配置为基于所述预测宽度和预测高度,确定第二损失项;

第三确定模块,配置为基于所述第一损失项和第二损失项的加和,确定所述位置损失项。

在一个更具体的例子中,第二损失确定模块配置为:将所述第二损失项确定为,所述预测宽度和预测高度的运算和。

在另一个更具体的例子中,目标损伤标注框具有标注宽度和标注高度;在这样的情况下,第二损失确定模块配置为:

在所述预测宽度不大于所述标注宽度的情况下,将宽度损失项确定为零;

在所述预测宽度大于所述标注宽度的情况下,基于所述预测宽度超出所述标注宽度的长度,确定所述宽度损失项;

在所述预测高度不大于所述标注高度的情况下,将高度损失项确定为零;

在所述预测高度大于所述标注高度的情况下,基于所述预测高度超出所述标注高度的长度,确定所述高度损失项;

将所述宽度损失项和高度损失项的加和,作为所述第二损失项。

通过以上的方法和装置,训练得到更适合于进行损伤对象识别的损伤检测模型。

本说明书实施例还提供从图片中识别损伤的装置。该装置可以包括获取单元,用于获取如上所述训练得到的损伤检测模型,以及包括识别单元,配置为利用上述损伤检测模型,对待测图片进行损伤识别。

根据另一方面的实施例,还提供一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行结合图2所描述的方法。

根据再一方面的实施例,还提供一种计算设备,包括存储器和处理器,所述存储器中存储有可执行代码,所述处理器执行所述可执行代码时,实现结合图2所述的方法。

本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的功能可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些功能存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的技术方案的基础之上,所做的任何修改、等同替换、改进等,均应包括在本发明的保护范围之内。

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