一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

模型生成方法、模型生成装置、非瞬时性存储介质、移动体姿势推定方法及其推定装置与流程

2023-02-10 18:53:58 来源:中国专利 TAG:


1.本发明涉及模型生成方法、模型生成装置、非瞬时性存储介质、移动体姿势推定方法、以及移动体姿势推定装置。


背景技术:

2.近年来,正在开发对车辆等对象(object)进行检测的各种各样的技术。例如,garrick brazil,他1名,“m3d-rpn:monocular 3d region proposal network for object detection”,proceedings of the ieee/cvf international conference on computer vision(iccv),2019年,p.9287-9296中记载了,将通过单眼摄像头取得的2维图像、和作为3维数据的通过lidar取得的距离信息(点群数据,point group data)进行对照来制作训练数据,制作检测车辆的机器学习模型。


技术实现要素:

3.在garrick brazil,他1名,“m3d-rpn:monocular 3dregion proposal network for object detection”,proceedings of the ieee/cvf international conference on computer vision(iccv),2019年,p.9287-9296中,由于将2维数据和3维数据进行对照来制作训练数据,所以有可能为了收集充分的训练数据而需要庞大的时间。另外,由于使用了3维数据,所以有可能为了进行机器学习模型的制作所需的运算时间也变得庞大。
4.本发明提供一种能够更容易制作用于进行移动体检测的机器学习模型的模型生成方法、模型生成装置、非瞬时性存储介质、移动体姿势推定方法、以及移动体姿势推定装置。
5.本发明的第1技术方案的模型生成方法,包括:将至少拍摄了移动体的2维图像中的图像坐标指示为所述移动体的关键点,将附加了与所述关键点相关的信息的所述2维图像制作为训练数据,所述图像坐标是从上部观察所述移动体时的所述移动体的外形投影在路上而形成的矩形形状的顶点中的至少1点的图像坐标;和使用所述训练数据进行机器学习,生成从至少拍摄了移动体的2维图像输出所述关键点的机器学习模型。
6.本发明的第2技术方案的模型生成装置具备处理器。所述处理器构成为,将至少拍摄了移动体的2维图像中的图像坐标指示为所述移动体的关键点,将附加了与所述关键点相关的信息所述2维图像制作为训练数据,所述图像坐标是从上部观察所述移动体时的所述移动体的外形投影在路上而形成的矩形形状的顶点中的至少1点的图像坐标,使用所述训练数据进行机器学习,生成从至少拍摄了移动体的2维图像输出所述关键点的机器学习模型。
7.本发明的第3技术方案的非瞬时性存储介质,保存能够由一个或多个处理器执行的命令,所述命令使所述一个或多个处理器执行包括以下的功能:将至少拍摄了移动体的2维图像中的图像坐标指示为所述移动体的关键点,将附加了与所述关键点相关的信息的所
述2维图像制作为训练数据,所述图像坐标是从上部观察所述移动体时的所述移动体的外形投影在路上而形成的矩形形状的顶点中的至少1点的图像坐标;和使用所述训练数据进行机器学习,生成从至少拍摄了移动体的2维图像输出所述关键点的机器学习模型。
8.本发明的第4的技术方案的移动体姿势推定方法,包括:使用通过上述模型生成方法生成的机器学习模型,从至少拍摄了移动体的2维图像,推断所述移动体的所述关键点;和对所述关键点,进行为了推定所述移动体的姿势所需的运算。
9.本发明的第5的技术方案的移动体姿势推定装置,具备处理器,所述处理器构成为:使用通过上述模型生成方法生成的机器学习模型,从至少拍摄了移动体的2维图像,推断所述移动体的所述关键点,对所述关键点,进行为了推定所述移动体的姿势所需的运算。
10.在上述第1~第5的技术方案中,也可以将所述矩形形状的4个顶点指示为所述移动体的所述关键点。
11.在上述第1~第5的技术方案中,也可以将所述矩形形状的顶点中的2点以上的图像坐标指示为所述移动体的所述关键点,也可以按预定的顺序指示所述2维图像中的所述关键点。
12.在上述第1~第5的技术方案中,也可以是,所述移动体是车辆,以位于所述车辆的右侧和左侧中的至少一侧的车轮的接地位置沿着将所述车辆的右侧和左侧中的至少一侧位于前后的2个所述关键点连结的线的方式指示所述关键点。
13.在上述第1~第5的技术方案中,也可以是,所述机器学习模型具有神经网络构造,所述神经网络构造具备:用于从所述2维图像提取特征量的basenet、用于对所述特征量进行多重分辨率解析来制作多重分辨率特征映射的spatialnet、以及基于所述多重分辨率特征映射输出所述关键点的识别器。
14.根据本发明的技术方案的模型生成方法、模型生成装置、非瞬时性存储介质、移动体姿势推定方法、以及移动体姿势推定装置,能够仅使用至少拍摄了移动体的2维图像制作训练数据。换言之,能够不使用lidar等的3维数据来制作训练数据。因此,与使用3维数据的情况相比,能够缩短收集训练数据所需的时间。另外,由于不使用3维数据,所以也能够缩短制作机器学习模型所需的运算时间。由此,能够提供一种更加容易制作用于进行移动体检测的机器学习模型的模型生成方法、模型生成装置、非瞬时性存储介质、移动体姿势推定方法、以及移动体姿势推定装置。
附图说明
15.以下,将参照附图说明本发明的示例性实施例的特征、优点以及技术上和产业上的意义,其中同一附图标记表示同一要素,并且其中:
16.图1是表示本发明的实施方式1的移动体姿势推定装置的构成的一例的框图。
17.图2是表示本发明的实施方式1的移动体姿势推定方法的流程图。
18.图3是示意性表示本发明的实施方式1的边界框(bounding box)和关键点(key point)的图。
19.图4是表示本发明的实施方式1的角模型(corner model)的神经网络构造的图。
20.图5是说明使用了作为本发明的实施方式1的basenet的一例的vgg16进行的运算的图。
21.图6是说明使用了本发明的实施方式1的spatialnet的运算的一例的图。
22.图7是说明本发明的实施方式1的锚(anchor)的图。
23.图8是表示本发明的实施方式1的训练数据的制作处理的流程图。
24.图9是说明本发明的实施方式1的角模型的生成处理的流程图。
25.图10是表示本发明的实施方式1的移动体姿势推定处理的流程图。
具体实施方式
26.实施方式1
27.以下,参照附图说明本发明的实施方式1。但是,本发明并不限定于以下的实施方式1。另外,为了明确说明,将以下的记载以及附图进行了适当简化。
28.图1是表示本实施方式1的移动体姿势推定装置100的构成的一例的框图。移动体姿势推定装置100如图1所示,具备:模型生成块110、推断块120。模型生成块110作为模型生成装置发挥功能。另外,模型生成块110具备:图像取得设备111、输入部112、训练数据制作部113、学习部114、模型保存部130等。另外,推断块120具备:图像取得设备121、输入部122、推断部123、输出部124、模型保存部130等。换言之,模型生成块110和推断块120共有模型保存部130。而且,移动体姿势推定装置100使用预先通过模型生成块110利用机器学习生成的角模型(机器学习模型),从由图像取得设备121取得的2维图像输出为了推定移动体的姿势所需的该移动体的关键点(key point)。
29.图2是表示本实施方式1的移动体姿势推定方法的流程图。如图2所示,首先,模型生成块110制作训练数据(步骤s101;训练数据制作步骤)。接着,模型生成块110使用该训练数据进行机器学习,生成从2维图像输出为了推定移动体的姿势所需的该移动体的关键点的角模型(步骤s102;模型生成步骤)。接着,推断块120使用该角模型,根据由图像取得设备121取得的2维图像来推断移动体的关键点(步骤s103;推断步骤)。接着,推断块120对该关键点(图像坐标)进行预定的运算处理,输出运算处理完毕的关键点(步骤s104;输出步骤)。以下,对模型生成块110以及推断块120进行详细说明。
30.<模型生成块110的构成>
31.图像取得设备111例如是对路上进行拍摄的交通流监视摄像头等取得拍摄了至少包含移动体的场景(scene)的2维图像的摄像头。图像取得设备111将多个2维图像输入至输入部112。
32.输入部112对从图像取得设备111被输入的2维图像,进行必要的处理,用于作为(获得)与训练数据制作部113、学习部114中的处理相适的图像数据。例如,输入部112进行通过调整该2维图像的分辨率来调整数据大小的处理、边缘强调等容易提取特征量的处理、决定不进行处理的范围的处理等。输入部112将进行了该处理后的2维图像向训练数据制作部113以及学习部114输入。
33.训练数据制作部113制作对从输入部112被输入的2维图像附加了为了推定移动体的姿势所需的该移动体的关键点相关的信息而得到的训练数据。
34.具体而言,训练数据制作部113在2维图像上制作一般的边界框(bounding box)。在此,边界框是指,将2维图像所拍摄到的物体的区域(对象区域)围起来的矩形的框。图3示意性示出由训练数据制作部113制作的边界框bx和关键点p1,p2,p3,p4。在图3所示的例子
中,在2维图像上存在从左斜后方拍摄到的卡车的图像区域,并制作了将该卡车的图像区域围起来的边界框bx(在图3中以单点划线示出)。边界框的制作也可以通过制作对2维图像上的物体进行识别的物体识别技术等已知的边界框的技术来进行。另外,边界框的制作也可以通过对移动体姿势推定装置100进行操作的操作员用手工作业来进行。进而,该操作员也可以对训练数据制作部113通过执行已知的物体识别算法制作而成的边界框进行修正。
35.接着,训练数据制作部113对各个边界框内的物体赋予表示该物体进入哪个分类(例如,乘用车、卡车、行人、自行车、摩托车等)的分类(class)的标签(以下,称为“分类标签”)。分类标签的赋予既可以通过对移动体姿势推定装置100进行操作的操作员用手工作业进行,也可以通过训练数据制作部113执行赋予已知的分类标签的算法来进行。另外,分类标签也可以包含更详细的信息。例如,分类标签在2维图像上仅物体的一部分被拍摄到的情况下也可以包含该物体被拍摄到的部分相对于整体的比率(主观的数值)。另外,分类标签在2维图像上物体被重叠拍摄的情况下也可以包含一个物体被其他物体隐藏的部分相对于该一个物体的整体的比率(主观的数值)。
36.接着,训练数据制作部113对由边界框围起来的物体之中、赋予了表示行人、乘用车、卡车、自行车、摩托车等、移动体的分类标签的物体的关键点进行指示。具体而言,训练数据制作部113将从上部观察赋予了表示移动体的分类标签的物体(以下,仅称为“移动体”)时的、该移动体的外形在路上投影形成的矩形形状的顶点的图像坐标指示为该移动体的关键点。在此,图像坐标是指用于表示2维图像上的像素的位置的坐标,例如是将位于2维图像的最左侧且最上侧的像素的中心设为原点,将左右方向或水平方向定义为x方向、将上下方向或垂直方向定义为y方向的坐标。另外,从上部观察移动体时,移动体的外形不严格限定于矩形形状,但是例如,将从上部观察移动体时的包含移动体的外形的实质上最小的矩形形状设为指示关键点时的矩形形状。此外,训练数据制作部113也可以使用训练数据制作部113通过进行预先机器学习制作而成的深层学习网络来制作该矩形形状。另外,矩形形状的制作也可以通过对移动体姿势推定装置100进行操作的操作员用手工作业来进行。进而,该操作员也可以对训练数据制作部113制作而成的矩形形状进行修正。此外,关于除了行人、自行车以及摩托车以外的移动体,训练数据制作部113也可以将上述矩形形状的4个顶点的图像坐标指示为4个关键点。另外,关于移动体中的自行车以及摩托车,训练数据制作部113也可以将上述矩形形状的顶点之中前侧的1点、该前侧的1点所对应的后侧的1点这2点的图像坐标指示为关键点。换言之,关于移动体中的自行车以及摩托车,仅指示2个关键点。另外,关于移动体中的行人,训练数据制作部113既可以将从上部观察行人时的行人头部投影到路上的大致圆形形状的中心点的1点指示为关键点,也可以将从上部观察行人时的脚投影到路上的点这2点指示为关键点。另外,训练数据制作部113也可以将从上部观察行人时包含该行人的外形的实质上最小的矩形形状的顶点中的1点指示为关键点。此外,与移动体的种类无关地,训练数据制作部113也可以将移动体的外形投影到路上形成的矩形形状的4个顶点中的仅任意1点指示为关键点。在图3所示的例子中,在路上形成有矩形形状(在图3中由粗实线表示),该矩形形状的顶点的图像坐标被指示为关键点p1,p2,p3,p4。由此,由于将2维图像上的路上的像素的图像坐标指示为关键点,所以能够根据由4个关键点规定的矩形形状算出移动体在路面上所占的面积,能够推定移动体的大小。具体而言,进行道路上的路标(land mark)点的物理坐标(正交坐标)与图像坐标的校准来求出变换矩阵
(同态矩阵),将4个关键点的图像坐标变换为正交坐标,由此能够推定移动体的大小。此外,正交坐标是指正交图像中的图像坐标。
37.另外,训练数据制作部113在指示关键点时,按预定顺序指示关键点。在图3所示的例子中,关键点按移动体的左前p1、右前p2、右后p3、左后p4的顺序被指示。在此,由于图3所示的卡车从左斜后方被拍摄,所以右前的关键点p2成为推定位置。由此,能够根据与关键点的指示顺序相关的信息推定移动体的方向(姿势)。此外,在移动体是自行车或摩托车的情况下,也可以按将该自行车或摩托车的外形投影到路上形成的矩形形状的顶点中的前侧的1点、和该前侧的1点所对应的后侧的1点的顺序进行指示。由此,能够根据与关键点的指示顺序相关的信息推定自行车或摩托车的方向(姿势)。
38.另外,训练数据制作部113在移动体是车辆(除了自行车、摩托车以外)的情况下,以位于移动体的右侧和左侧中的至少一侧的车轮的接地位置沿着将在该移动体的右侧和左侧中的至少一侧位于前后的2个关键点连结而成的线的方式指示关键点。由此,能够基于图像取得设备121的拍摄范围的位置信息、和拍摄到的2维图像中的关键点的图像坐标来推定移动体的位置。具体而言,进行道路上的路标点的物理坐标(正交坐标)与图像坐标的校准来求出变换矩阵(同态矩阵),将4个关键点的图像坐标变换为正交坐标,由此能够推定移动体的位置。另外,能够根据移动体的方向和移动体的位置的时间变化来推定移动体的行进方向。
39.另外,训练数据制作部113将附加了与边界框的顶点的图像坐标、分类标签、关键点(图像坐标)相关的信息得到的2维图像作为训练数据向学习部114输入。
40.学习部114使用从训练数据制作部113被输入的训练数据、和学习前或学习中的角模型进行机器学习,生成学习完毕的角模型。在此,角模型是指从2维图像输出关键点的机器学习模型。图4示出角模型的神经网络构造。如图4所示,角模型具有神经网络构造,该神经网络构造具备:用于从2维图像提取特征量的basenet、用于对该特征量进行多重分辨率解析来制作多重分辨率特征映射的spatialnet、以及基于多重分辨率特征映射输出所述关键点的识别器。
41.首先,学习部114使用图4所示的basenet从被从输入部112输入的2维图像提取特征量。在此,学习部114从2维图像提取多个特征量。作为basenet,能够使用vgg16、resnet、efficientnet等神经网络。在此,作为basenet,列举使用vgg16的情况为例进行说明。具体而言,学习部114使用vgg16,对从输入部112被输入的2维图像,反复实施卷积运算和池化运算,提取特征量。在此,卷积运算是指对该2维图像施加局部过滤(filter)的运算,池化运算是指对图像大小进行缩小的运算。图5示出使用了vgg16的运算的一例。在图5中,conv1-1、conv1-2、conv2-1、conv2-2、conv3-1、
···
表示卷积运算,maxpooling表示池化运算。而且,例如,conv4-3(64,64,516)(3*3)意味着对64*64的图像大小用3*3的局部过滤来生成516通道(channel)的图像的运算。在进行了该运算之后,学习部114使relu函数(rectified linear unit,线性整流单元)作为激活函数作用于所生成的图像的各像素值,生成作为特征量的特征映射。例如,在图5中,relu_4_3意味着使relu函数作用于通过conv4-3(64,64,516)(3*3)的运算生成的516通道的图像来生成特征映射的运算。同样地,在图5中,relu_7意味着使relu函数作用于通过conv7-1(32,32,1032)(3*3)的运算生成的1032通道的图像来生成特征映射的运算。此外,在此,relu函数例如是指由接下来的
式(1)表示的分段线性函数。
[0042][0043]
接着,学习部114进行使用了图4所示的spatialnet的多重分辨率解析,基于从2维图像中提取出的多个特征量制作多重分辨率特征映射。具体而言,学习部114按该多重分辨率解析中的每个尺度(scale),分配所提取出的多个特征量(特征映射),制作多重分辨率特征映射。图6示出了使用了spatialnet的运算的一例。如图6所示,spatialnet是反复实施卷积运算(conv8-1、conv8-2、conv8-3、conv8-4),生成用于与图像大小的变化对应的多重分辨率特征映射的神经网络。在此,“多重分辨率特征映射”意味着通过阶段性地降低特征映射的分辨率而生成的、分辨率不同的多个特征映射。另外,也将多重分辨率特征映射所包含的各个特征映射称为“层”。另外,“尺度”意味着各特征映射的分辨率。另外,“按每个尺度分配特征映射”意味着阶段性将分辨率降低一半,按每个分辨率分解特征映射。例如,在图6中,relu_8意味着,使relu函数作用于通过对于作为basenet的输出的relu_4_3(64,64,512)进行conv8-1(32,32,256)(1*1)以及conv8-2(16,16,512)(3*3)的运算而生成的512通道的图像,生成分辨率降低了2阶段的特征映射的运算。同样地,在图6中,relu_9意味着使relu函数作用于通过对于作为basenet的输出的relu_4_3(64,64,512)进行conv8-1(32,32,256)(1*1)、conv8-2(16,16,512)(3*3)、conv8-3(16,16,256)(1*1)、以及conv8-4(8,8,512)(3*3)的运算而生成的512通道的图像,生成分辨率降低了4阶段的特征映射的运算。另外,在图6中,relu_7意味着对于作为basenet的输出的relu_4_3(64,64,512)不进行卷积运算,也即是,生成直接的保持原样的分辨率的特征映射。另外,在图6中,relu_4_3_norm意味着对于作为basenet的输出的relu_4_3(64,64,512),进行归一化处理(i2normalize)来生成特征映射。在此,i2normalize是指,以多维向量x的欧几里得范数(各成分的平方和的平方根:大小)来分割向量x,将其大小归一化为1的处理。
[0044]
接着,学习部114使用识别器,基于多重分辨率特征映射进行识别处理,输出关键点。具体而言,学习部114如图4所示,基于多重分辨率特征映射,进行分类标签的赋予、边界框(框)的回归,输出关键点(角,corner)的图像坐标。更具体而言,学习部114对于多重分辨率特征映射的多个层(分辨率不同的多个特征映射)的每一个准备锚(anchor)。在此,“锚”是指与识别对象的形状相应的模板框,是边界框的候选。另外,“锚”根据各层而被设定的数量不同。在图7所示的例子中,对于某层(某分辨率的特征映射)设定有3个矩形形状的锚a1、a2、a3。例如,学习部114对于从spatialnet输出的多重分辨率特征映射所包含的、分辨率不同的多个层(relu_4_3_norm、relu_7、relu_8、relu_9)的每一个设定锚。接着,学习部114按每个锚,进行分类标签的赋予、边界框的回归、关键点的检测。而且,学习部114按每个锚,输出分类标签、边界框的回归运算结果、关键点(角)的图像坐标。
[0045]
接着,学习部114对通过进行基于使用了识别器的多重分辨率特征映射的识别处理而输出的结果(输出值)、与训练数据(正解值)进行比较来算出剩余差(差分)。例如,学习部114通过接下来的式(2)算出剩余差。
[0046]
e(w)=e
focal
e
bb
e
key1
e
key2
e
key3
···
(2)
[0047]
在此,e
focal
表示分类标签的剩余差、e
bb
表示边界框的剩余差、e
key1
表示车辆(除了自行车、摩托车以外)的4个角点(关键点)的剩余差、e
key2
表示自行车或摩托车的2个角点
(关键点)的剩余差、e
key3
表示行人的1个角点(关键点)的剩余差。另外,efo
cal
、e
bb
、e
key1
、e
key2
、e
key3
分别通过接下来的式(3)~(7)而算出。
[0048][0049][0050][0051][0052][0053]
在上述式(3)~(7)中,p表示物体类的概率、i表示对象编号、x表示图像坐标的水平坐标、y表示图像坐标的垂直坐标、p
i,x,v
表示第i个对象中的图像坐标(x,y)的像素的推断结果的类概率、z表示有无可视性(在能看到角点的情况下z=1,在不能看到角点的情况下z=0),ε表示防止交叉熵的发散的微小常数(由于z=0时logz=-∞而发散,所以例如,将ε设为10-5
等。),w表示神经网络的权重(例如,最优化的卷积过滤器的系数等)的高维向量,有gt的添标的变量是训练数据的值(ground truth),没有gt添标的变量是w的函数。另外,在上述式(5)~(7)中,
[0054][0055]
这一项不是必须的。另外,在上述式(3)~(7)中,n表示赋予了分类标签的物体的总数。另外,在上述的式(4)~(7)中,也可以取代绝对值符号||而使用将原点处的角取近似值(round)的smoothl1。通过将原点处的角取近似值而能够进行微分,在机器学习的反向传播(backward propagation)中计算与评价函数的w相关的微分时,能够在任意的位置计算梯度。具体而言,简单的l1与smoothl1的区别由以下的式(8)、(9)表示。
[0056][0057]
l1(x)=|x|
···
(9)
[0058]
此外,在数学用语中,在欧几里得空间中使用l1(小写字母“l”和1,small letter“l”and one),在函数空间中使用l1(大写字母“l”和1,large letter“l”and one),但是上述的smoothl1中的l1是小写字母“l”和1。
[0059]
接着,学习部114判断剩余差是否比预定的阈值小。在剩余差为预定的阈值以上的情况下,学习部114更新basenet、spatialnet、以及识别器中的权重(加权),再次进行上述的处理。在剩余差比预定的阈值小的情况下,学习部114判断为机器学习结束,将权重被更新了的角模型保存于模型保存部130。此外,预定的阈值是根据目的而决定的比较小的值,例如是比1小的值。或者,学习部114也可以在将后述的图9所示的步骤s301~305的处理进行了预定的次数之后,即使剩余差为预定的阈值以上,也结束运算。通过以上,生成机器学习完毕的角模型。
[0060]
<推断块120的构成>
[0061]
图像取得设备121与图像取得设备111同样地,例如是对路上进行拍摄的交通流监
视摄像头等、取得至少拍摄了包含移动体的场景(scene)的2维图像的摄像头。图像取得设备121将多个2维图像向输入部122输入。
[0062]
输入部122对于从图像取得设备121被输入的2维图像,进行必要的处理,用于设为(获得)与推断部123中的处理相适的图像数据。例如,输入部122进行通过调整该2维图像的分辨率来调整数据大小的处理、边缘强调等容易提取特征量的处理、决定不进行处理的范围的处理等。输入部122将进行了该处理的2维图像向推断部123输入。
[0063]
推断部123使用模型保存部130所保存的角模型,根据从输入部122被输入的2维图像,推断关键点。另外,推断部123将所推断出的关键点向输出部124输入。
[0064]
具体而言,首先,推断部123使用该角模型的basenet,根据从输入部122输入的2维图像提取特征量。在此,推断部123从2维图像中提取多个特征量。由推断部123实现的从2维图像中提取多个特征量的处理,由于与由学习部114实现的从2维图像中提取多个特征量的处理同样,所以省略更详细的说明。
[0065]
接着,推断部123进行使用了该角模型的spatialnet的多重分辨率解析,按该多重分辨率解析中的每个尺度,对从2维图像中提取出的多个特征量进行分配,制作多重分辨率特征映射。由推断部123实现的制作多重分辨率特征映射的处理,由于与由学习部114实现的制作多重分辨率特征映射的处理同样,所以省略更详细的说明。
[0066]
接着,推断部123使用识别器,基于多重分辨率特征映射进行识别处理,输出关键点。具体而言,推断部123基于多重分辨率特征映射,进行分类标签的赋予、边界框(框)的回归,输出关键点(角)的图像坐标。由推断部123实现的输出关键点的处理,由于与由学习部114实现的输出关键点的处理同样,所以省略更详细的说明。
[0067]
输出部124对从推断部123输入的关键点,进行为了推定移动体的姿势所需的运算。具体而言,输出部124将关键点(图像坐标)从关键点转换为为了算出移动体的大小、移动体的方向(姿势)、移动体的位置、移动体的行进方向等所需的值。具体而言,输出部124进行道路上的路标点的物理坐标(正交坐标)和图像坐标的校准来求出变换矩阵(同态矩阵),使用该变换矩阵将4个关键点的图像坐标转换为正交坐标。由此,能够根据4个关键点的正交坐标,算出移动体的大小、移动体的方向(姿势)、移动体的位置、移动体的行进方向等。
[0068]
<模型生成方法>
[0069]
接着,参照图8、图9来说明本实施方式1的模型生成方法。图8表示作为图2所示的步骤s101的处理的、训练数据制作处理。另外,图9表示作为图2所示的步骤s102的处理的、角模型生成处理。
[0070]
首先,如图8所示,输入部112向训练数据制作部113输入图像取得设备111取得的2维图像(步骤s201)。
[0071]
接着,训练数据制作部113在2维图像上制作边界框(步骤s202;检测处理)。在2维图像上包含多个物体的情况下,训练数据制作部113在2维图像上制作多个边界框。
[0072]
接着,训练数据制作部113对各个边界框内的物体赋予分类标签(步骤s203;分类处理)。
[0073]
接着,训练数据制作部113对赋予了表示移动体的分类标签的物体的关键点(图像坐标)进行指示(步骤s204;扩展检测处理)。此外,在本说明书中,步骤s202中的“检测处理
””
意味着制作边界框,步骤s204中的“扩展检测处理”意味着除了边界框还指示关键点。
[0074]
接着,如图9所示,从训练数据制作部113向学习部114输入训练数据(步骤s301)。
[0075]
接着,学习部114使用学习中的角模型,输出移动体的关键点(步骤s302)。
[0076]
接着,学习部114将在步骤s302中输出的输出值与训练数据(正解值)进行比较而算出剩余差(步骤s303)。
[0077]
接着,学习部114判断在步骤s303中算出的剩余差是否比预定的阈值小(步骤s304)。
[0078]
在步骤s304中,在该剩余差为预定的阈值以上的情况下(步骤s304;否),学习部114更新basenet、spatialnet、以及识别器中的权重(步骤s305),返回步骤s301的处理。
[0079]
在步骤s304中,在该剩余差比预定的阈值小的情况下(步骤s304;是),学习部114判断为机器学习结束,将学习完毕的角模型保存于模型保存部130,结束本处理。
[0080]
<移动体姿势推定方法>
[0081]
接着,参照图10,说明本实施方式1的移动体姿势推定方法。图10表示作为图2所示的步骤s103、s104的处理的、训练数据的制作处理。
[0082]
首先,如图10所示,输入部122对从图像取得设备121输入的2维图像进行预定的处理,并向推断部123输入(步骤s401)。
[0083]
接着,推断部123使用模型保存部130所保存的学习完毕的角模型的basenet,从在步骤s401中输入的2维图像中提取特征量(步骤s402;特征量提取处理)。
[0084]
接着,推断部123使用该角模型的spatialnet,制作多重分辨率特征映射(步骤s403;分配处理)。
[0085]
接着,推断部123使用该角模型的识别器,基于多重分辨率特征映射,进行分类标签的赋予、边界框(框)的回归,并输出关键点(角)图像坐标(步骤s404;识别处理)。
[0086]
接着,输出部124对从推断部123输入的关键点(输出值),进行移动体的姿势的推定等所需的运算,结束本处理(步骤s405)。
[0087]
根据以上说明的本实施方式1的模型生成方法、作为模型生成装置的模型生成块110、非瞬时性存储介质、移动体姿势推定装置100、以及移动体姿势推定方法,能够仅使用至少拍摄了移动体的2维图像来制作训练数据。换言之,能够不使用lidar等的3维数据来制作训练数据。因此,与使用3维数据的情况相比,能够缩短收集训练数据所需的时间。另外,由于不使用3维数据,所以也能够缩短制作机器学习模型所需的运算时间。由此,能够提供一种能够更容易制作用于进行移动体检测的机器学习模型的模型生成方法、模型生成装置、非瞬时性存储介质、移动体姿势推定方法、以及移动体姿势推定装置。
[0088]
另外,从至少拍摄了移动体的2维图像中,将该2维图像中的图像坐标指示为移动体的4个关键点,所述图像坐标是从上部观察该移动体时的移动体的外形投影在路上而形成的矩形形状的顶点的图像坐标。因此,由于将2维图像上的路上的像素的图像坐标指示为关键点,所以能够根据由4个关键点规定的矩形形状来算出移动体占据路面上的面积,能够推定移动体的大小。由此,即使是仅使用2维图像制作而成的训练数据,也能够生成能够以道路管制等所需的精度来检测移动体的机器学习模型。
[0089]
另外,训练数据制作部113在指示关键点时按预定的顺序指示关键点。由此,能够根据关键点的信息推定移动体的方向(姿势)。
[0090]
另外,在移动体是车辆(除了自行车、摩托车以外)的情况下,训练数据制作部113
以位于该车辆的右侧和左侧中的至少一侧的车轮的接地位置沿着将在车辆的右侧和左侧中的至少一侧位于前后的2个关键点连结而成的线的方式指示关键点。由此,能够基于图像取得设备121的拍摄范围的位置信息、和所拍摄到的2维图像中的关键点的图像坐标,推定车辆的位置。另外,能够根据车辆的方向和车辆的位置的时间变化推定车辆的行进方向。
[0091]
另外,角模型(机器学习模型)具有神经网络构造,所述神经网络构造具备:用于从2维图像提取特征量的basenet、用于对特征量进行多重分辨率解析来制作多重分辨率特征映射的spatialnet、以及基于多重分辨率特征映射来输出关键点的识别器。因此,由于角模型具有比较简单的神经网络构造,所以能够以交通管制等所需的速度来推定移动体和移动体的姿势。
[0092]
此外,本发明不限于上述实施方式,在不脱离主旨的范围能够进行适当变更。例如,在上述的实施方式中,训练数据制作部113也可以指示3维物体的特征点(端点、中央点等)来作为关键点。该情况下,能够推定该物体的位置和姿势。另外,在上述的实施方式中,在移动体是车辆(除自行车、摩托车以外)的情况下,训练数据制作部113将矩形形状的4个顶点的图像坐标指示为4个关键点,在移动体是自行车、摩托车的情况下,训练数据制作部113将矩形形状的前后2个顶点的图像坐标指示为2个关键点,训练数据制作部113也可以将该矩形形状的4个顶点中的仅任意1点指示为1个关键点。即使在该情况下,将通过交通流监视摄像头得到的道路信息与该1个关键点组合,由此也能够推定车辆的姿势。换言之,若通过本实施方式的模型生成装置生成的机器学习模型(角模型)输出与移动体相关的1个关键点,则使用通过交通流监视摄像头得到的道路信息就能够推定移动体的姿势。该情况下,能够使用上述式(7)算出角点(关键点)的剩余差。另外,训练数据制作部113也可以对移动体指示包含矩形形状的4个顶点的5点以上、或与矩形形状的顶点无关的5点以上的关键点。进而,训练数据制作部113指示的关键点的数量不限定于上述实施方式所示的数量。在训练数据制作部113指示m个(m是正整数)关键点的情况下,m个角点(关键点)的剩余差通过以下式(10)算出。
[0093][0094]
此外,在上述式(10)中,m是关键点的数量。
[0095]
另外,在上述的实施方式中,对本发明的技术方案以硬件的构成进行了说明,但是本发明的技术方案并不限定于此。本发明的技术方案也可以通过使cpu(central processing unit)按图2、图8~图10的流程图所记载的处理步骤执行计算机程序而实现。
[0096]
另外,上述的程序使用rom而被保存,能够向计算机供给。另外,上述的程序也可以使用各种类型的非瞬时性计算机可读介质(non-transitory computer readable medium)而被保存,并向计算机供给。非瞬时性计算机可读介质包含各种类型的实体记录介质(tangible storage medium)。非瞬时性计算机可读介质的例子包含磁记录介质(例如软盘、磁带、硬盘驱动器)、光磁记录介质(例如光磁盘)、cd-rom(read only memory)、cd-r、cd-r/w、半导体存储器(例如,掩模rom、prom(programmable rom)、eprom(erasable prom)、闪速rom、ram(random access memory))。另外,程序也可以通过各种类型的瞬时性计算机可读介质(transitory computer readable medium)而向计算机供给。瞬时性计算机可读介质的例子包含电信号、光信号、以及电磁波。瞬时性计算机可读介质能够经由电线
以及光纤等有线通信路、或无线通信路,将程序向计算机供给。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献