本发明属于基于深度学习的工序检测技术领域,特别涉及一种基于深度学习的工序检测装置及其工序检测方法。
背景技术:
由于制造类企业近年来的生产成本的急剧上升,其中大部分来自于劳动成本的上升,许多制造类企业,特别是劳动密集性企业,不仅面临着工人工资的大幅上升,而且面临着工人难招,离职率高,而且面临工人难以管理,生产效率和产品质量难以保证的困境。
现有技术中使用亮灯分拣系统来监管生产效率和提升品质,但是由于亮灯分拣系统需要设计专门的电路板,并配置主机,硬件造价成本较高;由于制造类企业的生产线上的物料种类差别很大,型号复杂,对于工位区域内有些动作不在亮灯的信号采集区域,就无法采集数据。因此亟需提供一种成本低廉、兼容性好、工序检测准确的基于深度学习的工序检测装置。
技术实现要素:
本发明为了克服上述现有技术的不足,提供了一种基于深度学习的工序检测装置,本发明成本低廉、兼容性好、工序检测准确。
为实现上述目的,本发明采用了以下技术措施:
一种基于深度学习的工序检测装置包括离线工序检测模型训练模块和在线工序检测模块,其中,
离线工序检测模型训练模块,用于获取工序中每一个步骤的产品图像信息,并对所述产品图像信息进行分析训练,得到工序对应的神经网络模型,并将所述神经网络模型存储至模型库;
在线工序检测模块,用于接收操作人员从模型库中选择的神经网络模型,分析并识别出工序类型,并将工序类型反馈至操作人员。
优选的,所述离线工序检测模型训练模块包括背景图像获取单元、第一样本生成单元、分割模型训练单元、工件图像获取单元、工件分割单元、第二样本生成单元、训练目标检测模型单元,
背景图像获取单元,用于分别获取不同环境下的多个颜色的背景图像,并将所述背景图像发送至第一样本生成单元;
第一样本生成单元,用于获取不带有背景图像的工件图像,并对不带有背景图像的工件图像进行图像处理操作,得到图像处理后的工件图像,将所述图像处理后的工件图像贴到背景图像的任意位置,得到第一样本图像,对第一样本图像进行二值化处理,得到第一标签图像;
分割模型训练单元,用于接收来自第一样本生成单元的第一样本图像和第一标签图像,利用第一样本图像和第一标签图像训练基于深度学习的图像分割模型,输出多个颜色的背景图像的分割模型;
工件图像获取单元,用于获取不同环境下的工件以及与工件颜色反差较大的背景相结合的图像,并将结合后的图像发送至工件分割单元;
工件分割单元,用于接收来自分割模型训练单元的多个颜色的背景图像的分割模型,以及来自工件图像获取单元的结合后的图像,多个颜色的背景图像的分割模型分割结合后的图像,得到分割后的工件图像;
第二样本生成单元,用于接收来自工件分割单元的分割后的工件图像,并将分割后的工件图像进行图像处理操作,得到第二样本图像,对第二样本图像进行二值化处理,得到第二标签图像;
训练目标检测模型单元,用于接收来自第二样本生成单元的第二样本图像以及第二标签图像,利用第二样本图像和第二标签图像训练基于深度学习的目标检测模型,输出工序对应的神经网络模型。
优选的,所述在线工序检测模块包括图像提取单元、预处理单元、工件目标检测单元、手部目标检测单元、工序判断单元以及计时显示单元;
图像提取单元,用于获取监控设备拍摄的视频图像,并将所述视频图像发送至预处理单元;
预处理单元,用于对视频图像进行预处理操作,并将预处理后的视频图像分别发送至工件目标检测单元、手部目标检测单元、计时显示单元;
工件目标检测单元,用于接收来自训练目标检测模型单元的工序对应的神经网络模型以及预处理后的视频图像,得到预处理后的视频图像中的工件目标的坐标、大小以及类别;
手部目标检测单元,用于接收预处理后的视频图像,利用基于深度学习的手部检测模型,得到预处理后的视频图像中的手部目标的坐标、大小;
工序判断单元,用于接收预处理后的视频图像中的工件目标的坐标、大小、类别以及预处理后的视频图像中的手部目标的坐标、大小,判断视频图像中的工件目标的工序类型以及工件目标是否为人工正在操作的工件,并将判断结果发送至计时显示单元;
计时显示单元,用于更新各个工序的计时,在监控设备拍摄的视频图像中画出工件目标的位置、工序以及时间。
本发明还提供了一种基于深度学习的工序检测装置的工序检测方法,包括以下步骤:
s1、所述背景图像获取单元分别获取不同环境下的多个颜色的背景图像,并将所述背景图像发送至第一样本生成单元;
s2、所述第一样本生成单元获取不带有背景图像的工件图像,并对不带有背景图像的工件图像进行图像处理操作,得到图像处理后的工件图像,将所述图像处理后的工件图像贴到背景图像的任意位置,得到第一样本图像,对第一样本图像进行二值化处理,得到第一标签图像;
s3、所述分割模型训练单元接收来自第一样本生成单元的第一样本图像和第一标签图像,利用第一样本图像和第一标签图像训练基于深度学习的图像分割模型,分割模型训练单元输出多个颜色的背景图像的分割模型;
s4、所述工件图像获取单元获取不同环境下的工件以及与工件颜色反差较大的背景相结合的图像,并将结合后的图像发送至工件分割单元;
s5、所述工件分割单元接收来自分割模型训练单元的多个颜色的背景图像的分割模型,以及接收来自工件图像获取单元的结合后的图像,多个颜色的背景图像的分割模型分割结合后的图像,得到分割后的工件图像;
s6、所述第二样本生成单元接收来自工件分割单元的分割后的工件图像,并将分割后的工件图像进行图像处理操作,得到第二样本图像,对第二样本图像进行二值化处理,得到第二标签图像;
s7、所述训练目标检测模型单元接收来自第二样本生成单元的第二样本图像以及第二标签图像,利用第二样本图像和第二标签图像训练基于深度学习的目标检测模型,输出工序对应的神经网络模型;
s8、所述图像提取单元获取监控设备拍摄的视频图像,并将所述视频图像发送至预处理单元;
s9、所述预处理单元对视频图像进行预处理操作,并将预处理后的视频图像分别发送至工件目标检测单元、手部目标检测单元、计时显示单元;
s10、所述工件目标检测单元接收来自训练目标检测模型单元的工序对应的神经网络模型以及预处理后的视频图像,得到预处理后的视频图像中的工件目标的坐标、大小以及类别;
s11、所述手部目标检测单元接收预处理后的视频图像,利用基于深度学习的手部检测模型,得到预处理后的视频图像中的手部目标的坐标、大小;
s12、所述工序判断单元接收预处理后的视频图像中的工件目标的坐标、大小、类别以及预处理后的视频图像中的手部目标的坐标、大小,判断视频图像中的工件目标的工序类型以及工件目标是否为人工正在操作的工件,并将判断结果发送至计时显示单元;
s13、所述计时显示单元更新各个工序的计时,在监控设备拍摄的视频图像中画出工件目标的位置、工序以及时间。
优选的,步骤s9中的所述预处理单元对视频图像进行预处理操作具体包括以下步骤:
s91、将视频图像按照原图像比例缩放为长边448像素;
s92、所述长边448像素中的每个像素点均除以255,将每个像素点归一化到0~1之间,得到归一化后的像素点;
s93、所述归一化后的像素点中的每个通道分别减去相应通道的均值,得到预处理后的视频图像。
进一步的,步骤s1中的所述不同环境包括光照、焦距、噪音环境。
进一步的,步骤s2中的图像处理操作包括随机缩放、旋转、模糊、光照以及对比度抖动。
进一步的,步骤s10的具体操作步骤包括:将预处理后的视频图像输入至工序对应的神经网络模型,工序对应的神经网络模型利用yolo算法输出最多980个工件目标的检测结果,每个工件目标的检测结果包括工件目标的坐标、大小以及类别。
进一步的,步骤s11的具体操作步骤包括:将预处理后的视频图像输入至基于深度学习的手部检测模型,基于深度学习的手部检测模型利用yolo算法输出预处理后的视频图像中的手部目标的坐标、大小。
本发明的有益效果在于:
1)、本发明包括离线工序检测模型训练模块和在线工序检测模块,所述离线工序检测模型训练模块用于获取工序中每一个步骤的产品图像信息,并对所述产品图像信息进行分析训练,得到工序对应的神经网络模型,并将所述神经网络模型存储至模型库,在线工序检测模块用于接收操作人员从模型库中选择的神经网络模型,分析并识别出工序类型,并将工序类型反馈至操作人员。本发明的成本低廉、兼容性好、工序检测准确,而且能够对生产物料进行实时追踪,记录工件的坐标,数量以及计算装配时间,记录工件装配顺序。
2)、所述在线工序检测模块包括图像提取单元、预处理单元、工件目标检测单元、手部目标检测单元、工序判断单元以及计时显示单元,所述工件目标检测单元和手部目标检测单元分别给出工件目标和手在每一帧图像中的类别和坐标,作为判断工序依据,使得工序判断的更加准确,可靠性高。
附图说明
图1为本发明的一个实施例的工序检测装置的结构框图;
图2为本发明的一个实施例的离线工序检测模型训练模块的结构框图;
图3为本发明的一个实施例的在线工序检测模块的结构框图;
图4为本发明的一个实施例的基于深度学习的图像分割模型的原理图。
图中的附图标记含义如下:
10—离线工序检测模型训练模块11—背景图像获取单元
12—第一样本生成单元13—分割模型训练单元
14—工件图像获取单元15—工件分割单元
16—第二样本生成单元17—训练目标检测模型单元
20—在线工序检测模块21—图像提取单元
22—预处理单元23—工件目标检测单元
24—手部目标检测单元25—工序判断单元
26—计时显示单元
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,一种基于深度学习的工序检测装置包括离线工序检测模型训练模块10和在线工序检测模块20,所述离线工序检测模型训练模块10用于获取工序中每一个步骤的产品图像信息,并对所述产品图像信息进行分析训练,得到工序对应的神经网络模型,并将所述神经网络模型存储至模型库;在线工序检测模块20用于接收操作人员从模型库中选择的神经网络模型,分析并识别出工序类型,并将工序类型反馈至操作人员。
当需要添加一个新的加工程序时,操作人员拍摄工序中每一个步骤的产品图像,送入离线工序检测模型训练模块10,离线工序检测模型训练模块10可以自动分析训练,得到与工序对应的神经网络模型。
当一个工序开始加工时,操作人员从模型库中选择相应的模型,启动在线工序检测模块20,则在线工序检测模块20可以分析和识别出每个工序的类型,反馈给操作人员。
如图2所示,所述离线工序检测模型训练模块10包括背景图像获取单元11、第一样本生成单元12、分割模型训练单元13、工件图像获取单元14、工件分割单元15、第二样本生成单元16、训练目标检测模型单元17,
背景图像获取单元11,用于分别获取不同环境下的多个颜色的背景图像,并将所述背景图像发送至第一样本生成单元12;
第一样本生成单元12,用于获取不带有背景图像的工件图像,并对不带有背景图像的工件图像进行图像处理操作,得到图像处理后的工件图像,将所述图像处理后的工件图像贴到背景图像的任意位置,得到第一样本图像,对第一样本图像进行二值化处理,得到第一标签图像;
第一标签图像的背景区域为1即白色,工件图像区域为0即黑色。
分割模型训练单元13,用于接收来自第一样本生成单元12的第一样本图像和第一标签图像,利用第一样本图像和第一标签图像训练基于深度学习的图像分割模型,输出多个颜色的背景图像的分割模型;
工件图像获取单元14,用于获取不同环境下的工件以及与工件颜色反差较大的背景相结合的图像,并将结合后的图像发送至工件分割单元15;
工件分割单元15,用于接收来自分割模型训练单元13的多个颜色的背景图像的分割模型,以及来自工件图像获取单元14的结合后的图像,多个颜色的背景图像的分割模型分割结合后的图像,得到分割后的工件图像;
第二样本生成单元16,用于接收来自工件分割单元15的分割后的工件图像,并将分割后的工件图像进行图像处理操作,得到第二样本图像,对第二样本图像进行二值化处理,得到第二标签图像;
训练目标检测模型单元17,用于接收来自第二样本生成单元16的第二样本图像以及第二标签图像,利用第二样本图像和第二标签图像训练基于深度学习的目标检测模型,输出工序对应的神经网络模型。
如图3所示,所述在线工序检测模块20包括图像提取单元21、预处理单元22、工件目标检测单元23、手部目标检测单元24、工序判断单元25以及计时显示单元26;
图像提取单元21,用于获取监控设备拍摄的视频图像,并将所述视频图像发送至预处理单元22;
预处理单元22,用于对视频图像进行预处理操作,并将预处理后的视频图像分别发送至工件目标检测单元23、手部目标检测单元24、计时显示单元26;
工件目标检测单元23,用于接收来自训练目标检测模型单元17的工序对应的神经网络模型以及预处理后的视频图像,得到预处理后的视频图像中的工件目标的坐标、大小以及类别;
手部目标检测单元24,用于接收预处理后的视频图像,利用基于深度学习的手部检测模型,得到预处理后的视频图像中的手部目标的坐标、大小;
工序判断单元25,用于接收预处理后的视频图像中的工件目标的坐标、大小、类别以及预处理后的视频图像中的手部目标的坐标、大小,判断视频图像中的工件目标的工序类型以及工件目标是否为人工正在操作的工件,并将判断结果发送至计时显示单元26;
计时显示单元26,用于更新各个工序的计时,在监控设备拍摄的视频图像中画出工件目标的位置、工序以及时间。
本发明还提供了一种基于深度学习的工序检测装置的工序检测方法,包括以下步骤:
s1、所述背景图像获取单元11分别获取不同光照、焦距、噪音环境下的多个颜色的背景图像,并将所述背景图像发送至第一样本生成单元12;
s2、所述第一样本生成单元12获取不带有背景图像的工件图像,并对不带有背景图像的工件图像进行随机缩放、旋转、模糊、光照以及对比度抖动,得到图像处理后的工件图像,将所述图像处理后的工件图像贴到背景图像的任意位置,得到第一样本图像,对第一样本图像进行二值化处理,得到第一标签图像;
s3、所述分割模型训练单元13接收来自第一样本生成单元12的第一样本图像和第一标签图像,利用第一样本图像和第一标签图像训练基于深度学习的图像分割模型,分割模型训练单元13输出多个颜色的背景图像的分割模型;
s4、所述工件图像获取单元14获取不同光照、焦距、噪音环境下的工件以及与工件颜色反差较大的背景相结合的图像,并将结合后的图像发送至工件分割单元15;
s5、所述工件分割单元15接收来自分割模型训练单元13的多个颜色的背景图像的分割模型,以及接收来自工件图像获取单元14的结合后的图像,多个颜色的背景图像的分割模型分割结合后的图像,得到分割后的工件图像;
s6、所述第二样本生成单元16接收来自工件分割单元15的分割后的工件图像,并将分割后的工件图像进行随机缩放、旋转、模糊、光照以及对比度抖动,得到第二样本图像,对第二样本图像进行二值化处理,得到第二标签图像;
s7、所述训练目标检测模型单元17接收来自第二样本生成单元16的第二样本图像以及第二标签图像,利用第二样本图像和第二标签图像训练基于深度学习的目标检测模型,输出工序对应的神经网络模型;
s8、所述图像提取单元21获取监控设备拍摄的视频图像,并将所述视频图像发送至预处理单元22;
s9、所述预处理单元22对视频图像进行预处理操作,并将预处理后的视频图像分别发送至工件目标检测单元23、手部目标检测单元24、计时显示单元26;
s10、所述工件目标检测单元23接收来自训练目标检测模型单元17的工序对应的神经网络模型以及预处理后的视频图像,得到预处理后的视频图像中的工件目标的坐标、大小以及类别;
s11、所述手部目标检测单元24接收预处理后的视频图像,利用基于深度学习的手部检测模型,得到预处理后的视频图像中的手部目标的坐标、大小;
s12、所述工序判断单元25接收预处理后的视频图像中的工件目标的坐标、大小、类别以及预处理后的视频图像中的手部目标的坐标、大小,判断视频图像中的工件目标的工序类型以及工件目标是否为人工正在操作的工件,并将判断结果发送至计时显示单元26;
s13、所述计时显示单元26更新各个工序的计时,在监控设备拍摄的视频图像中画出工件目标的位置、工序以及时间。
具体的,步骤s9中的所述预处理单元22对视频图像进行预处理操作具体包括以下步骤:
s91、将视频图像按照原图像比例缩放为长边448像素;
s92、所述长边448像素中的每个像素点均除以255,将每个像素点归一化到0~1之间,得到归一化后的像素点;
s93、所述归一化后的像素点中的每个通道分别减去相应通道的均值,得到预处理后的视频图像。
每个通道指的是rgb三个通道,通道均值指的是每个通道的所有像素点相加,再除以像素点数目。
如图4所示,步骤s3中的利用第一样本图像和第一标签图像训练基于深度学习的图像分割模型的方法为现有技术,具体步骤包括:输入图像经过vgg-16构成的基网络提取特征,再经过5层反卷积网络,得到与原图大小相同的特征图,最终的输出层通道数与图像中目标类别数相同,每张图包含工件目标和背景两类,因此输出通道数为2,训练时,使用的误差函数是经过softmax的交叉熵。
每个长方体方体表示一个卷积层,数字表示卷基层的输出通道数,最后一层的输出通道数与类别数相同,最后一层的输出通道数为2。
forward/inference表示前向/预测,含义是输入图像从左向右经过网络运算,能够得到图像的分割结果;
backward/learning表示反向/训练,含义是训练模型时,模型的误差和梯度反向传播,能够训练模型参数;
pixelwiseprediction表示像素级预测结果,含义是模型输出时每个像素点会得到一个单独的结果,表示该像素点属于分割结果的哪一类;
segmentationg.t表示分割结果,不同颜色表示不同像素点属于图像中不同的类别。
步骤s7中的利用第二样本图像和第二标签图像训练基于深度学习的目标检测模型的方法为现有技术,输入图像经过darknet-19构成的基网络提取特征,再经过以三层卷积网络构成的rpn网络,rpn网络的输出层中不同通道,具有不同的物理意义。若以448×448的图像作为输入,rpn网络可以输出最多980个目标检测结果,每个结果包括该目标的坐标、大小、类别,类别的概率信息。
步骤s10的具体操作步骤包括:将预处理后的视频图像输入至工序对应的神经网络模型,工序对应的神经网络模型利用yolo算法输出最多980个工件目标的检测结果,每个工件目标的检测结果包括工件目标的坐标、大小以及类别、类别的概率信息,如果类别的概率信息大于阈值,阈值设置为0.24,则该目标被判断为有效目标。
步骤s11的具体操作步骤包括:将预处理后的视频图像输入至基于深度学习的手部检测模型,基于深度学习的手部检测模型利用yolo算法输出预处理后的视频图像中的手部目标的坐标、大小、手部的置信度信息,如果手部的置信度信息大于阈值,阈值设置为0.3,则该目标被判断为手部。
步骤s12中的所述工序判断单元25判断视频图像中的工件目标是否为人工正在操作的工件即手部目标的具体操作步骤包括:
所有手部目标iou之和最小的工件为工人正在操作的工件,两个手部目标的iou定义为,两个手部目标区域的交集与并集之比iou=areai∩areaj/areai∪areaj,areai为第i个手部目标在图像中所占区域的面积,areaj为第j个手部目标在图像中所占区域的面积,若连续n帧视频图像中,同一手部目标被判断为操作目标,则认为该手部目标为操作目标,n=15。
若当前帧视频图像判断的操作目标与之前判断的操作目标为不同目标,则开始计数,若连续m帧不同,则认为操作目标有改变,输出前一个目标的工序结果,m=30。
若当前帧视频图像中没有检测到手部,或手部与任何一个目标的iou都为0,则开始计数,若连续k帧没有检测到手部,则认为目标对应工序已完成,输出工序判断结果,k=30。
步骤s12中的所述工序判断单元25判断视频图像中的工件目标的工序类型的具体操作步骤包括:
若一个工件目标的当前帧视频图像工序检测结果与之前判断相同,则检测结果即为工序判断结果;
若一个工件目标的当前帧视频图像工序检测结果与之前判断不同,则开始计数,若计数小于阈值q,则工序判断结果仍为之前的工序类型,在计数达到q之前,检测结果与之前判断结果相同,则计数清0;若连续q帧视频图像工序检测结果都判断为其他类型,则判断检测结果为新类型,q=30。
手部目标iou之和指的是图像中可能有不止一个手,经常会有两只手操作一个工件的情况,对一个工件,计算该工件与每只手的iou,再把这些iou相加,即为手部目标iou之和。
所述计时显示单元26记录工序判断单元25输出的工序起始及完成时间,记录和显示每个工序的操作时间,并根据工序判断单元25输出的工序类别及坐标信息,在图像中画出目标区域,提供给用户界面用于显示。
综上所述,本发明的成本低廉、兼容性好、工序检测准确,而且能够对生产物料进行实时追踪,记录工件的坐标,数量以及计算装配时间,记录工件装配顺序。