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

基于人工智能的垃圾投放识别方法、装置、介质及服务器与流程

2022-02-19 14:52:13 来源:中国专利 TAG:


1.本发明属于人工智能技术领域,尤其涉及一种垃圾投放识别方法、装置、计算机可读存储介质及服务器。


背景技术:

2.垃圾投放点是集垃圾收取、储存、中转等功能于一体的重要公共设施,与广大市民的日常生活息息相关。垃圾投放点是否可以得到有效管理,是关系到家家户户的重大民生事项,越来越受到人们的重视和关注。
3.为了提高垃圾处理能力,需要在生活垃圾投放时就做好分类工作。尽管我国垃圾分类已经普及并提倡了多年,但由于监管力度不够,生活垃圾分类工作并不尽如人意。随着生活垃圾强制分类政策的提出,在进行垃圾分类监管时,传统的人工监管的方式耗费人力较多,且效率低下,难以满足当前的实际需求。


技术实现要素:

4.有鉴于此,本发明实施例提供了一种垃圾投放识别方法、装置、计算机可读存储介质及服务器,以解决现有技术存在的耗费人力较多,效率低下,难以满足当前实际需求的问题。
5.本发明实施例的第一方面提供了一种垃圾投放识别方法,可以包括:
6.通过预设的摄像装置采集目标区域的原始图像帧;
7.通过预设的人体关节点识别模型对所述原始图像帧进行人体关节点识别,得到人体肘关节点的位置坐标;
8.通过预设的垃圾袋识别模型对所述原始图像帧进行垃圾袋识别,得到垃圾袋的位置坐标;
9.根据所述人体肘关节点的位置坐标和所述垃圾袋的位置坐标判断是否发生垃圾投放行为;
10.若发生垃圾投放行为,则根据所述垃圾袋的位置坐标判断所述垃圾袋是否投放至所述垃圾投放点的垃圾桶中;
11.若投放至垃圾桶中,则通过预设的垃圾种类识别模型确定所述垃圾袋中的垃圾种类,并根据所述垃圾种类判断垃圾投放是否正确。
12.在第一方面的一种具体实现方式中,在通过预设的摄像装置采集目标区域的原始图像帧之后,还包括:
13.通过预设的图像压缩模型对所述原始图像帧进行图像压缩,得到与所述原始图像帧对应的压缩图像帧;
14.所述图像压缩模型包括第一卷积神经网络、中间处理网络和第二卷积神经网络,所述通过预设的图像压缩模型对所述原始图像帧进行图像压缩,得到与所述原始图像帧对应的压缩图像帧,包括:
15.使用所述第一卷积神经网络对所述原始图像帧进行卷积和下采样处理,得到第一处理结果;
16.使用所述中间处理网络中预设的残差模块对所述第一处理结果进行处理,得到第二处理结果;
17.使用所述第二卷积神经网络对所述第二处理结果进行卷积和上采样处理,得到与所述原始图像帧对应的压缩图像帧。
18.在第一方面的一种具体实现方式中,所述图像压缩模型的训练过程包括:
19.从预设的训练样本数据库中获取训练样本集合;所述训练样本集合中包括各个训练样本,且每个训练样本均包括一个原始图像帧以及一个预期输出图像帧,其中,每个训练样本中的预期输出图像帧与原始图像帧具有一一对应的关系;
20.将各个训练样本中的原始图像帧输入所述图像压缩模型中进行图像压缩,得到实际输出图像帧;
21.计算各个训练样本中的预期输出图像帧与实际输出图像帧之间的第一训练损失值;
22.若所述第一训练损失值大于预设的第一阈值,则对所述图像压缩模型的模型参数进行调整,直至所述第一训练损失值小于或等于所述第一阈值为止。
23.在第一方面的一种具体实现方式中,所述计算各个训练样本中的预期输出图像帧与实际输出图像帧之间的第一训练损失值,包括:
24.根据下式计算所述第一训练损失值:
[0025][0026]
其中,n为训练样本的序号,1≤n≤n,n为训练样本的总数,pix为像元的序号,1≤pix≤pixn,pixn为图像中的像元总数,s
n,pix
为第n个训练样本的预期输出图像帧的第pix个像元的值,y
n,pix
为第n个训练样本的实际输出图像帧的第pix个像元的值,loss1为所述第一训练损失值。
[0027]
在第一方面的一种具体实现方式中,所述人体关节点识别模型的训练过程包括:
[0028]
获取预设的训练样本集;所述训练样本集中包括各个样本图像,且每个样本图像均对应于一个预先标注的第一集合;
[0029]
使用所述人体关节点识别模型分别对所述训练样本集中的各个样本图像进行人体关节点识别,得到各个样本图像对应的第二集合;
[0030]
根据各个样本图像对应的第一集合和第二集合计算所述训练样本集的第二训练损失值;
[0031]
若所述第二训练损失值大于预设的第二阈值,则对所述人体关节点识别模型的模型参数进行调整,所述第二训练损失值小于或等于所述第二阈值为止。
[0032]
在第一方面的一种具体实现方式中,所述根据各个样本图像对应的第一集合和第二集合计算所述训练样本集的第二训练损失值,包括:
[0033]
根据下式计算所述第二训练损失值:
[0034][0035]
其中,m为各个样本图像的序号,0≤m≤m

1,m为样本图像的总数,p为各个人体关节点的序号,0≤p≤pn

1,pn为人体关节点的数目,ftx
m,p
和fty
m,p
分别为第m个样本图像对应的第一集合中的第p个人体关节点的横轴坐标和纵轴坐标,sdx
m,p
和sdy
m,p
分别为第m个样本图像对应的第二集合中的第p个人体关节点的横轴坐标和纵轴坐标,loss2为所述第二训练损失值。
[0036]
在第一方面的一种具体实现方式中,所述通过预设的垃圾袋识别模型对所述原始图像帧进行垃圾袋识别,得到垃圾袋的位置坐标,包括:
[0037]
将所述原始图像帧输入至所述垃圾袋识别模型中,并获取所述垃圾袋识别模型输出的识别结果;所述识别结果为二值化图像;
[0038]
分别获取所述识别结果中取值为预设的第一数值的各个像元的位置坐标;
[0039]
根据下式计算所述垃圾袋的位置坐标:
[0040][0041]
其中,g为取值为第一数值的像元的序号,1≤g≤g,g为取值为第一数值的像元的总数,posx
g
和posy
g
分别为第g个取值为第一数值的像元的横轴坐标和纵轴坐标,posx和posy分别为所述垃圾袋的横轴坐标和纵轴坐标。
[0042]
本发明实施例的第二方面提供了一种垃圾投放识别装置,可以包括:
[0043]
原始图像帧采集模块,用于通过预设的摄像装置采集目标区域的原始图像帧;
[0044]
人体关节点识别模块,用于通过预设的人体关节点识别模型对所述原始图像帧进行人体关节点识别,得到人体肘关节点的位置坐标;
[0045]
垃圾袋识别模块,用于通过预设的垃圾袋识别模型对所述原始图像帧进行垃圾袋识别,得到垃圾袋的位置坐标;
[0046]
垃圾投放行为判别模块,用于根据所述人体肘关节点的位置坐标和所述垃圾袋的位置坐标判断是否发生垃圾投放行为;
[0047]
入桶判别模块,用于若发生垃圾投放行为,则根据所述垃圾袋的位置坐标判断所述垃圾袋是否投放至所述垃圾投放点的垃圾桶中;
[0048]
垃圾投放判别模块,用于若投放至垃圾桶中,则通过预设的垃圾种类识别模型确定所述垃圾袋中的垃圾种类,并根据所述垃圾种类判断垃圾投放是否正确。
[0049]
在第二方面的一种具体实现方式中,所述垃圾投放识别装置还可以包括:
[0050]
图像压缩模块,用于通过预设的图像压缩模型对所述原始图像帧进行图像压缩,得到与所述原始图像帧对应的压缩图像帧;
[0051]
所述图像压缩模型包括第一卷积神经网络、中间处理网络和第二卷积神经网络,所述图像压缩模块具体用于:使用所述第一卷积神经网络对所述原始图像帧进行卷积和下采样处理,得到第一处理结果;使用所述中间处理网络中预设的残差模块对所述第一处理结果进行处理,得到第二处理结果;使用所述第二卷积神经网络对所述第二处理结果进行卷积和上采样处理,得到与所述原始图像帧对应的压缩图像帧。
[0052]
在第二方面的一种具体实现方式中,所述垃圾投放识别装置还可以包括:
[0053]
图像压缩模型训练模块,用于从预设的训练样本数据库中获取训练样本集合;所述训练样本集合中包括各个训练样本,且每个训练样本均包括一个原始图像帧以及一个预期输出图像帧,其中,每个训练样本中的预期输出图像帧与原始图像帧具有一一对应的关系;将各个训练样本中的原始图像帧输入所述图像压缩模型中进行图像压缩,得到实际输出图像帧;计算各个训练样本中的预期输出图像帧与实际输出图像帧之间的第一训练损失值;若所述第一训练损失值大于预设的第一阈值,则对所述图像压缩模型的模型参数进行调整,直至所述第一训练损失值小于或等于所述第一阈值为止。所述计算各个训练样本中的预期输出图像帧与实际输出图像帧之间的第一训练损失值,包括:根据下式计算所述第一训练损失值:
[0054][0055]
其中,n为训练样本的序号,1≤n≤n,n为训练样本的总数,pix为像元的序号,1≤pix≤pixn,pixn为图像中的像元总数,s
n,pix
为第n个训练样本的预期输出图像帧的第pix个像元的值,y
n,pix
为第n个训练样本的实际输出图像帧的第pix个像元的值,loss1为所述第一训练损失值。
[0056]
在第二方面的一种具体实现方式中,所述垃圾投放识别装置还可以包括:
[0057]
人体关节点识别模型训练模块,用于获取预设的训练样本集;所述训练样本集中包括各个样本图像,且每个样本图像均对应于一个预先标注的第一集合;使用所述人体关节点识别模型分别对所述训练样本集中的各个样本图像进行人体关节点识别,得到各个样本图像对应的第二集合;根据各个样本图像对应的第一集合和第二集合计算所述训练样本集的第二训练损失值;若所述第二训练损失值大于预设的第二阈值,则对所述人体关节点识别模型的模型参数进行调整,所述第二训练损失值小于或等于所述第二阈值为止。所述根据各个样本图像对应的第一集合和第二集合计算所述训练样本集的第二训练损失值,包括:根据下式计算所述第二训练损失值:
[0058][0059]
其中,m为各个样本图像的序号,0≤m≤m

1,m为样本图像的总数,p为各个人体关节点的序号,0≤p≤pn

1,pn为人体关节点的数目,ftx
m,p
和fty
m,p
分别为第m个样本图像对应的第一集合中的第p个人体关节点的横轴坐标和纵轴坐标,sdx
m,p
和sdy
m,p
分别为第m个样本图像对应的第二集合中的第p个人体关节点的横轴坐标和纵轴坐标,loss2为所述第二训练损失值。
[0060]
在第二方面的一种具体实现方式中,所述垃圾袋识别模块具体用于:将所述原始图像帧输入至所述垃圾袋识别模型中,并获取所述垃圾袋识别模型输出的识别结果;所述识别结果为二值化图像;分别获取所述识别结果中取值为预设的第一数值的各个像元的位置坐标;根据下式计算所述垃圾袋的位置坐标:
[0061]
[0062]
其中,g为取值为第一数值的像元的序号,1≤g≤g,g为取值为第一数值的像元的总数,posx
g
和posy
g
分别为第g个取值为第一数值的像元的横轴坐标和纵轴坐标,posx和posy分别为所述垃圾袋的横轴坐标和纵轴坐标。
[0063]
本发明实施例的第三方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种垃圾投放识别方法的步骤。
[0064]
本发明实施例的第四方面提供了一种服务器,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一种垃圾投放识别方法的步骤。
[0065]
本发明实施例的第五方面提供了一种计算机程序产品,当计算机程序产品在服务器上运行时,使得服务器执行上述任一种垃圾投放识别方法的步骤。
[0066]
本发明实施例与现有技术相比存在的有益效果是:本发明实施例通过预设的摄像装置采集目标区域的原始图像帧,通过预设的人体关节点识别模型对所述原始图像帧进行人体关节点识别,得到人体肘关节点的位置坐标,通过预设的垃圾袋识别模型对所述原始图像帧进行垃圾袋识别,得到垃圾袋的位置坐标,根据所述人体肘关节点的位置坐标和所述垃圾袋的位置坐标判断是否发生垃圾投放行为,若发生垃圾投放行为,则根据所述垃圾袋的位置坐标判断所述垃圾袋是否投放至所述垃圾投放点的垃圾桶中,若投放至垃圾桶中,则通过预设的垃圾种类识别模型确定所述垃圾袋中的垃圾种类,并根据所述垃圾种类判断垃圾投放是否正确。通过本发明实施例,可以大大减少人工管理的投入成本,提升管理效率,有效满足了当前的实际需求。
附图说明
[0067]
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
[0068]
图1为本发明实施例中一种垃圾投放识别方法的一个实施例流程图;
[0069]
图2为通过预设的图像压缩模型对原始图像帧进行图像压缩,得到与原始图像帧对应的压缩图像帧的示意流程图;
[0070]
图3为本发明实施例中一种垃圾投放识别装置的一个实施例结构图;
[0071]
图4为本发明实施例中一种服务器的示意框图。
具体实施方式
[0072]
为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
[0073]
本发明实施例可以基于人工智能技术对相关的数据进行获取和处理。其中,人工
智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。
[0074]
人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、机器人技术、生物识别技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
[0075]
本发明实施例的执行主体可以为基于人工智能的服务器,用于执行本发明实施例中的垃圾投放识别方法。所述服务器可以是独立的服务器,也可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
[0076]
请参阅图1,本发明实施例中一种垃圾投放识别方法的一个实施例可以包括:
[0077]
步骤s101、通过预设的摄像装置采集目标区域的原始图像帧。
[0078]
所述目标区域为垃圾投放点所在的区域。所述摄像装置可以设置于生活小区、办公场所或者公共场所的垃圾投放点附近,用于拍摄垃圾投放点的视频图像信息,且能够连续拍摄垃圾投放点的视频图像信息,生成视频流,所拍摄的视频图像信息可以为:asf格式、avi格式、mpeg格式、mov格式等等,其中的每一帧视频图像信息均可记为一帧原始图像帧。
[0079]
在本发明实施例的一种具体实现中,可以直接利用安防监控系统中位于垃圾投放点的监控摄像头作为摄像设备,无需再重新建设新的监控摄像头,较为方便,且节约成本。
[0080]
可选地,在本发明实施例的一种具体实现中,为了减少后续进行图像识别的运算量,在采集得到所述原始图像帧之后,还可以通过预设的图像压缩模型对所述原始图像帧进行图像压缩,得到与所述原始图像帧对应的压缩图像帧。
[0081]
所述图像压缩模型共包括第一卷积神经网络、中间处理网络和第二卷积神经网络三个部分,如图2所示,具体的处理过程可以包括如下步骤:
[0082]
步骤s1011、使用所述第一卷积神经网络对所述原始图像帧进行卷积和下采样处理,得到第一处理结果。
[0083]
此处将所述第一卷积神经网络的层数记为layernum1,layernum1的具体取值可以根据实际情况进行设置,在本发明实施例中,优选设置layernum1=3,并将这三层依次记为dl1、dl2和dl3。其中,dl1为所述第一卷积神经网络的第一层,其输入为所述原始图像帧,输出为所述原始图像帧经过dl1中的卷积和下采样处理所得到的结果,此处将dl1的输出记为dl1_res;dl2为所述第一卷积神经网络的第二层,其输入为dl1_res,输出为dl1_res经过dl2中的卷积和下采样处理所得到的结果,此处将dl2的输出记为dl2_res;dl3为所述第一卷积神经网络的第三层,其输入为dl2_res,输出为dl2_res经过dl3中的卷积和下采样处理所得到的结果。
[0084]
以dl1中的具体处理过程为例详细说明如下:原始图像帧的通道数为3个,即r(红色)、g(绿色)、b(蓝色)三个通道,dl1中的卷积核对原始图像帧进行卷积处理,得到原始图像帧的特征图(feature map),dl1中的卷积核个数可以根据实际情况进行设置,在本实施例中,优选将其设置为8个,则原始图像帧经过dl1的卷积处理后,可以得到8通道的特征图,
再采用激活函数(例如,可以采用线性整流函数(rectified linear unit,relu)作为激活函数)对特征图进行处理,将特征图中的值限定在[0,1]的范围内,然后对特征图进行下采样处理,缩小特征图的尺度,例如,可以通过下采样处理将特征图的长度和宽度均缩小为原来的一半,经过dl1的下采样处理后的特征图将作为dl2的输入。
[0085]
dl2和dl3的处理过程与dl1类似,此处不再赘述。但是,需要注意的是,dl2中的卷积核个数为dl1中的卷积核个数的2倍,dl3中的卷积核个数为dl2中的卷积核个数的2倍,这样,dl1、dl2、dl3所输出的特征图的通道数依次为8个、16个和32个。最后,dl3输出的特征图即为所述第一处理结果。
[0086]
步骤s1012、使用所述中间处理网络中预设的残差模块对所述第一处理结果进行处理,得到第二处理结果。
[0087]
所述中间处理网络中包括残差模块,在所述残差模块的结构中包括两条支线,其中,第一条支线用于对所述第一处理结果进行更深层特征的提取,而第二条支线则用于保持所述第一处理结果,在第一条支线中所述第一处理结果可以依次经过卷积处理、relu函数处理、卷积处理等过程,第一条支线中进行卷积处理的卷积核的个数与dl3中的卷积核个数相同,因此,整个处理过程中,特征图的通道数保持不变;而第二条支线中,通过跳跃连接的方式,使得所述第一处理结果可以跳过在第一条支线中的处理过程,两条支线上的数据加权叠加得到所述第二处理结果。通过这样的处理方式,能够有效保持数据的高频特性,解决了由于网络深度的加深而可能导致的梯度消失和梯度爆炸问题,使得在训练更深的神经网络的同时,又能保证良好的性能。其中,在第一条支线中提取出了所述原始图像帧中更深层的图像特征,而在第二条支线中保持了所述原始图像帧中较浅层的图像特征,本发明实施例中对这两者进行叠加,从而在进行图像压缩的同时,使得压缩图像帧能够更加全面的表征出所述原始图像帧中的图像特征。
[0088]
步骤s1013、使用所述第二卷积神经网络对所述第二处理结果进行卷积和上采样处理,得到与所述原始图像帧对应的压缩图像帧。
[0089]
所述第二卷积神经网络的层数与所述第一卷积神经网络的层数相同,以下仍以层数为3的情况为例进行说明,将这三层依次记为ul1、ul2和ul3。其中,ul1为所述第二卷积神经网络的第一层,其输入为所述第二处理结果,输出为所述第二处理结果经过ul1中的卷积和上采样处理所得到的结果,此处将ul1的输出记为ul1_res;ul2为所述第二卷积神经网络的第二层,其输入为ul1_res,输出为ul1_res经过ul2中的卷积和上采样处理所得到的结果,此处将ul2的输出记为ul2_res;ul3为所述第二卷积神经网络的第三层,其输入为ul2_res,输出为ul2_res经过ul3中的卷积和上采样处理所得到的结果。
[0090]
以ul1中的具体处理过程为例详细说明如下:ul1中的卷积核个数与dl2中的卷积核个数相同,则所述第二处理结果经过ul1的卷积处理后,可以得到16通道的特征图,再采用激活函数(例如,可以采用relu作为激活函数)对特征图进行处理,将特征图中的值限定在[0,1]的范围内,然后对特征图进行上采样处理,扩展特征图的尺度,例如,可以通过上采样处理将特征图的长度和宽度均扩展为原来的一倍,经过ul1的上采样处理后的特征图将作为ul2的输入。
[0091]
ul2和ul3的处理过程与ul1类似,此处不再赘述。但是,需要注意的是,ul2中的卷积核个数为ul1中的卷积核个数的一半,ul3中的卷积核个数为3,这样,ul1、ul2、ul3所输出
的特征图的通道数依次为16个、8个和3个。最后,可以对ul3所输出的特征图再进行1次卷积处理(卷积核个数为3)和1次激活函数(例如,可以采用sigmoid作为激活函数)处理,得到与所述原始图像帧对应的压缩图像帧。需要注意的是,在所述第一卷积神经网络和所述第二卷积神经网络之间还引入了跳跃连接,在所述第二卷积神经网络中的每一次卷积处理之前,均将待进行卷积处理的数据与所述第一卷积神经网络中相同通道数的输出结果进行叠加,并将叠加结果作为紧接着的下一次卷积处理的输入。
[0092]
所述图像压缩模型是基于样本训练得到的,在投入使用之前,可以预先通过如下过程进行训练:
[0093]
步骤s201、从预设的训练样本数据库中获取训练样本集合。
[0094]
所述训练样本集合中包括各个训练样本,且每个训练样本均包括一个原始图像帧以及一个预期输出图像帧,其中,每个训练样本中的预期输出图像帧与原始图像帧具有一一对应的关系。
[0095]
步骤s202、将各个训练样本中的原始图像帧输入所述图像压缩模型中进行图像压缩,得到实际输出图像帧。
[0096]
步骤s202的具体过程可以参照步骤s1011至步骤s1013中的详细叙述,此处不再赘述。
[0097]
步骤s203、计算各个训练样本中的预期输出图像帧与实际输出图像帧之间的第一训练损失值。
[0098]
具体地,可以根据下式计算所述第一训练损失值:
[0099][0100]
其中,n为训练样本的序号,1≤n≤n,n为训练样本的总数,pix为像元的序号,1≤pix≤pixn,pixn为图像中的像元总数,s
n,pix
为第n个训练样本的预期输出图像帧的第pix个像元的值,y
n,pix
为第n个训练样本的实际输出图像帧的第pix个像元的值,loss1为所述第一训练损失值。
[0101]
步骤s204、判断所述第一训练损失值是否大于预设的第一阈值。
[0102]
若所述第一训练损失值大于所述第一阈值,则执行步骤s205,若所述第一训练损失值小于或等于所述第一阈值,则执行步骤s206。
[0103]
步骤s205、对所述图像压缩模型的模型参数进行调整。
[0104]
在完成参数调整后,返回执行步骤s202,即继续使用所述训练样本集合对所述图像压缩模型进行训练,直至所述第一训练损失值小于或等于所述第一阈值为止。
[0105]
步骤s206、所述图像压缩模型的训练结束。
[0106]
当所述第一训练损失值小于或等于所述第一阈值时,则说明训练已经达到预定的效果,可以结束训练。此时确定出来的图像压缩模型经过了大量的样本训练,且其第一训练损失值保持在一个较小的范围内,使用该图像压缩模型对原始图像帧进行处理,可以获得较佳的处理效果。
[0107]
需要注意的是,若在采集得到原始图像帧之后,未对其进行图像压缩,则后续步骤s102至步骤s106中所使用的原始图像帧均指代未进行图像压缩的原始图像帧。若在采集得到原始图像帧之后,对其进行了图像压缩,则后续步骤s102至步骤s106中所使用的原始图
像帧均指代图像压缩后得到的压缩图像帧。
[0108]
步骤s102、通过预设的人体关节点识别模型对所述原始图像帧进行人体关节点识别,得到人体肘关节点的位置坐标。
[0109]
所述人体关节点识别模型为预先训练得到的用于进行人体关节点识别的神经网络模型,具体采用何种类型的神经网络模型可以根据实际情况进行设置。在本发明实施例中,优选采用openpose作为所述人体关节点识别模型,openpose是基于卷积神经网络和监督学习并以caffe为框架写成的开源模型,可以实现人的面部表情、躯干和四肢甚至手指的跟踪,不仅适用于单人也适用于多人,同时具有较好的鲁棒性。使用openpose对所述原始图像帧进行人体关键点识别,可以得到所述原始图像帧对应的位置坐标集合。所述位置坐标集合中包括各个人体关节点的位置坐标,这些人体关节点可以包括但不限于人体的脖子、左手肘、右手肘、左脚踝和右脚踝等关节点。在本发明实施例中,还可以根据实际情况设置其它的人体关节点识别模型,包括但不限于卷积姿态机(convolutional pose machines,cpm)、堆叠沙漏网络(stacked hourglass network,shn)、级联金字塔网络(cascaded pyramid network,cpn)等等。通过任意一个人体关节点识别模型均可对所述原始图像帧进行人体关节点识别,从而得到所述原始图像帧对应的位置坐标集合。通过这样的方式,可以将投放垃圾人员的动作行为简化为人体关键点的位置变化情况,便于对垃圾投放行为进行快速的识别。
[0110]
所述人体关节点识别模型是基于样本训练得到的,在投入使用之前,可以预先通过如下过程进行训练:
[0111]
步骤s301、获取预设的训练样本集。
[0112]
所述训练样本集中包括各个样本图像,且每个样本图像均对应于一个预先标注的位置坐标集合,此处将其记为第一集合,该第一集合可以保存为json文件,其中包括对应的样本图像中的各个人体关节点的位置坐标。所述训练样本集可以采用各种公开的图片数据集,包括但不限于mscoco、imagenet、open images dataset、cifar

10以及其它的图片数据集。
[0113]
步骤s302、使用人体关节点识别模型分别对所述训练样本集中的各个样本图像进行处理,得到各个样本图像对应的第二集合。
[0114]
对于每个样本图像而言,其对应的第二集合中也包括该样本图像中的各个人体关节点的位置坐标。但需要注意的是,其第一集合为标注的预期输出,而第二集合则为实际输出。
[0115]
步骤s303、根据各个样本图像对应的第一集合和第二集合计算所述训练样本集的第二训练损失值。
[0116]
具体地,可以根据下式计算所述训练样本集的第二训练损失值:
[0117][0118]
其中,m为各个样本图像的序号,0≤m≤m

1,m为样本图像的总数,p为各个人体关节点的序号,0≤p≤pn

1,pn为人体关节点的数目,ftx
m,p
和fty
m,p
分别为第m个样本图像对应的第一集合中的第p个人体关节点的横轴坐标和纵轴坐标,sdx
m,p
和sdy
m,p
分别为第m个样本图像对应的第二集合中的第p个人体关节点的横轴坐标和纵轴坐标,loss2为所述训练样
本集的第二训练损失值。
[0119]
步骤s304、判断所述第二训练损失值是否大于预设的第二阈值。
[0120]
所述第二阈值的具体取值可以根据实际情况进行设置,若所述第二训练损失值大于所述第二阈值,则执行步骤s305,若所述第二训练损失值小于或等于所述第二阈值,则执行步骤s306。
[0121]
步骤s305、对人体关节点识别模型的模型参数进行调整。
[0122]
在完成参数调整之后,返回执行步骤s302,即开始进行下一轮的训练过程,直至所述第二训练损失值小于或等于所述第二阈值为止。
[0123]
步骤s306、结束训练,得到所述预训练好的人体关节点识别模型。
[0124]
当所述第二训练损失值小于或等于所述第二阈值时,说明所述人体关节点识别模型已经收敛,此时则可结束训练,此时的人体关节点识别模型即为所述预训练好的人体关节点识别模型。
[0125]
在得到所述预训练好的人体关节点识别模型,即可使用所述预训练好的人体关节点识别模型对所述原始图像帧进行处理,从而得到所述原始图像帧对应的位置坐标集合。
[0126]
进一步地,考虑到人体关节点识别模型输出的位置坐标集合中的人体关节点的位置坐标有时可能会出现跳变,因此,在本发明实施例中,在得到各个人体关节点的位置坐标之后,优选对所述位置坐标集合中的各个人体关节点的位置坐标进行卡尔曼滤波,得到滤波后的位置坐标集合,保证其平滑性。在本发明实施例的后续过程中,主要使用其中的人体肘关节点的位置坐标。
[0127]
步骤s103、通过预设的垃圾袋识别模型对所述原始图像帧进行垃圾袋识别,得到垃圾袋的位置坐标。
[0128]
所述垃圾袋识别模型为预先训练得到的用于进行垃圾袋识别的神经网络模型,具体采用何种类型的神经网络模型可以根据实际情况进行设置。在本发明实施例中,优选采用bp神经网络作为所述垃圾袋识别模型,当然也可以选取其它的神经网络模型,本发明实施例对此不作具体限定。
[0129]
在使用垃圾袋识别模型之前,可以首先构建对其进行训练的训练数据集,然后使用训练数据集对初始的垃圾袋识别模型进行训练,直至满足预设的训练条件,以得到已训练的垃圾袋识别模型。
[0130]
所述训练样本集合中包括各个训练样本,且每个训练样本均包括一帧待识别图像以及一个预期输出图像,其中,每个训练样本中的预期输出图像与待识别图像具有一一对应的关系。
[0131]
需要注意的是,预期输出图像为二值化的图像,在该图像中,垃圾袋区域对应的像元的值为预设的第一数值,非垃圾袋区域对应的像元的值为预设的第二数值,所述第一数值和所述第二数值的具体取值可以根据实际情况进行设置,例如,可以将所述第一数值设置为1,将所述第一数值设置为0,当然,也可以将所述第一数值和所述第二数值设置为其它取值,本发明实施例对此不作具体限定。
[0132]
具体的训练过程可以参照步骤s201至s206中的具体描述,本发明实施例对此不再赘述。
[0133]
在训练完成后,即可将所述原始图像帧输入至垃圾袋识别模型中,并获取垃圾袋
识别模型输出的识别结果。该识别结果是一个二值化的图像,分别获取该图像中取值为第一数值的像元的位置坐标,分别记为:
[0134]
(posx1,posy1)、(posx2,posy2)、
……
、(posx
g
,posy
g
)、
……
、(posx
g
,posy
g
)
[0135]
其中,g为取值为第一数值的像元的序号,1≤g≤g,g为取值为第一数值的像元的总数,posx
g
和posy
g
分别为第g个取值为第一数值的像元的横轴坐标和纵轴坐标,例如,当g为3时,posx3和posy3分别为第3个取值为第一数值的像元的横轴坐标和纵轴坐标,则可以根据下式计算垃圾袋的位置坐标:
[0136][0137]
其中,posx和posy分别为所述垃圾袋的横轴坐标和纵轴坐标。
[0138]
例如,若g取值为5,即共有5个取值为第一数值的像元,这些像元的位置坐标依次为:(6,8)、(7,7)、(7,8)、(7,9)、(8,8),则可以计算得到所述垃圾袋的位置坐标(posx,posy)的取值为(7,8)。
[0139]
步骤s104、根据所述人体肘关节点的位置坐标和所述垃圾袋的位置坐标判断是否发生垃圾投放行为。
[0140]
对于任意一帧原始图像帧,根据其中的人体肘关节点的位置坐标和垃圾袋的位置坐标,可以计算两者之间的距离。将连续多帧的原始图像帧,分别计算这一距离,可以得到如下所示的距离序列d:
[0141]
d=(d1,d2,

,d
t
,

,d
t
)
[0142]
其中,t为原始图像帧的序号,1≤t≤t,t为原始图像帧的总数,d
t
为在第t帧原始图像帧中,人体肘关节点的位置坐标和垃圾袋的位置坐标之间的距离。
[0143]
当这一距离不变时,说明尚未发生垃圾投放行为;
[0144]
当这一距离不断扩大,说明发生垃圾投放行为,此时需执行步骤s105。
[0145]
步骤s105、根据所述垃圾袋的位置坐标判断所述垃圾袋是否投放至所述垃圾投放点的垃圾桶中。
[0146]
当发生垃圾投放行为时,在连续多帧的原始图像帧中,获取最终垃圾袋的位置坐标。
[0147]
所述垃圾投放点的垃圾桶的位置范围可以预先进行设置,若垃圾袋的位置坐标位于这一范围之外,则说明垃圾袋并未投放至垃圾桶中,即当前人员随意丢弃了垃圾。
[0148]
若垃圾袋的位置坐标位于这一范围之内,则说明垃圾袋已投放至垃圾桶中,此时需执行步骤s106。
[0149]
步骤s106、通过预设的垃圾种类识别模型确定所述垃圾袋中的垃圾种类,并根据所述垃圾种类判断垃圾投放是否正确。
[0150]
所述垃圾种类识别模型为预先训练得到的用于进行垃圾种类识别的神经网络模型,最终得到的垃圾种类可以为:湿垃圾、干垃圾、可回收垃圾或有害垃圾。
[0151]
具体采用何种类型的神经网络模型可以根据实际情况进行设置。在本发明实施例中,优选采用bp神经网络作为所述垃圾种类识别模型,当然也可以选取其它的神经网络模型,本发明实施例对此不作具体限定。
[0152]
在使用垃圾种类识别模型之前,可以首先构建对其进行训练的训练数据集,然后使用训练数据集对初始的垃圾种类识别模型进行训练,直至满足预设的训练条件,以得到已训练的垃圾种类识别模型。具体的训练过程可以参见现有技术中的任意一种训练方法,本发明实施例对此不作具体限定。
[0153]
在确定垃圾袋中的垃圾种类之后,可以进一步确定垃圾袋所投放的垃圾桶所对应的垃圾种类,在本发明实施例的一种具体实现方式中,可以通过颜色识别的方式确定垃圾桶所对应的垃圾种类,即首先识别垃圾桶的颜色,不同的颜色对应不同的垃圾种类,例如,绿色对应湿垃圾、灰色对应干垃圾、蓝色对应可回收垃圾、红色对应有害垃圾。
[0154]
在本发明实施例的另一种具体实现方式中,还可以通过对垃圾桶上的文字的识别来确定对应的垃圾种类,例如,若在垃圾桶上识别出“干垃圾”、“湿垃圾”、“可回收垃圾”、“有害垃圾”等文字,则可以确定其对应的垃圾种类。
[0155]
若垃圾袋中的垃圾种类与垃圾桶所对应的垃圾种类一致,则说明垃圾投放正确,否则,则说明垃圾投放错误。
[0156]
在本发明实施例中,还可以对投放垃圾的人员进行人脸识别,确定其身份信息,并将垃圾投放识别的结果(未投放至垃圾桶、投放至错误垃圾桶、正确投放)发送至与其身份信息对应的终端设备,以对其进行提醒,并将该结果记录到相关监管部门的服务器中,以便对垃圾投放人员进行相应的奖励或处罚。
[0157]
综上所述,本发明实施例通过预设的摄像装置采集目标区域的原始图像帧,通过预设的人体关节点识别模型对所述原始图像帧进行人体关节点识别,得到人体肘关节点的位置坐标,通过预设的垃圾袋识别模型对所述原始图像帧进行垃圾袋识别,得到垃圾袋的位置坐标,根据所述人体肘关节点的位置坐标和所述垃圾袋的位置坐标判断是否发生垃圾投放行为,若发生垃圾投放行为,则根据所述垃圾袋的位置坐标判断所述垃圾袋是否投放至所述垃圾投放点的垃圾桶中,若投放至垃圾桶中,则通过预设的垃圾种类识别模型确定所述垃圾袋中的垃圾种类,并根据所述垃圾种类判断垃圾投放是否正确。通过本发明实施例,可以大大减少人工管理的投入成本,提升管理效率,有效满足了当前的实际需求。
[0158]
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
[0159]
对应于上文实施例所述的一种垃圾投放识别方法,图3示出了本发明实施例提供的一种垃圾投放识别装置的一个实施例结构图。
[0160]
本实施例中,一种垃圾投放识别装置可以包括:
[0161]
原始图像帧采集模块301,用于通过预设的摄像装置采集目标区域的原始图像帧;
[0162]
人体关节点识别模块302,用于通过预设的人体关节点识别模型对所述原始图像帧进行人体关节点识别,得到人体肘关节点的位置坐标;
[0163]
垃圾袋识别模块303,用于通过预设的垃圾袋识别模型对所述原始图像帧进行垃圾袋识别,得到垃圾袋的位置坐标;
[0164]
垃圾投放行为判别模块304,用于根据所述人体肘关节点的位置坐标和所述垃圾袋的位置坐标判断是否发生垃圾投放行为;
[0165]
入桶判别模块305,用于若发生垃圾投放行为,则根据所述垃圾袋的位置坐标判断
所述垃圾袋是否投放至所述垃圾投放点的垃圾桶中;
[0166]
垃圾投放判别模块306,用于若投放至垃圾桶中,则通过预设的垃圾种类识别模型确定所述垃圾袋中的垃圾种类,并根据所述垃圾种类判断垃圾投放是否正确。
[0167]
在本发明实施例的一种具体实现方式中,所述垃圾投放识别装置还可以包括:
[0168]
图像压缩模块,用于通过预设的图像压缩模型对所述原始图像帧进行图像压缩,得到与所述原始图像帧对应的压缩图像帧;
[0169]
所述图像压缩模型包括第一卷积神经网络、中间处理网络和第二卷积神经网络,所述图像压缩模块具体用于:使用所述第一卷积神经网络对所述原始图像帧进行卷积和下采样处理,得到第一处理结果;使用所述中间处理网络中预设的残差模块对所述第一处理结果进行处理,得到第二处理结果;使用所述第二卷积神经网络对所述第二处理结果进行卷积和上采样处理,得到与所述原始图像帧对应的压缩图像帧。
[0170]
在本发明实施例的一种具体实现方式中,所述垃圾投放识别装置还可以包括:
[0171]
图像压缩模型训练模块,用于从预设的训练样本数据库中获取训练样本集合;所述训练样本集合中包括各个训练样本,且每个训练样本均包括一个原始图像帧以及一个预期输出图像帧,其中,每个训练样本中的预期输出图像帧与原始图像帧具有一一对应的关系;将各个训练样本中的原始图像帧输入所述图像压缩模型中进行图像压缩,得到实际输出图像帧;计算各个训练样本中的预期输出图像帧与实际输出图像帧之间的第一训练损失值;若所述第一训练损失值大于预设的第一阈值,则对所述图像压缩模型的模型参数进行调整,直至所述第一训练损失值小于或等于所述第一阈值为止。所述计算各个训练样本中的预期输出图像帧与实际输出图像帧之间的第一训练损失值,包括:根据下式计算所述第一训练损失值:
[0172][0173]
其中,n为训练样本的序号,1≤n≤n,n为训练样本的总数,pix为像元的序号,1≤pix≤pixn,pixn为图像中的像元总数,s
n,pix
为第n个训练样本的预期输出图像帧的第pix个像元的值,y
n,pix
为第n个训练样本的实际输出图像帧的第pix个像元的值,loss1为所述第一训练损失值。
[0174]
在本发明实施例的一种具体实现方式中,所述垃圾投放识别装置还可以包括:
[0175]
人体关节点识别模型训练模块,用于获取预设的训练样本集;所述训练样本集中包括各个样本图像,且每个样本图像均对应于一个预先标注的第一集合;使用所述人体关节点识别模型分别对所述训练样本集中的各个样本图像进行人体关节点识别,得到各个样本图像对应的第二集合;根据各个样本图像对应的第一集合和第二集合计算所述训练样本集的第二训练损失值;若所述第二训练损失值大于预设的第二阈值,则对所述人体关节点识别模型的模型参数进行调整,所述第二训练损失值小于或等于所述第二阈值为止。所述根据各个样本图像对应的第一集合和第二集合计算所述训练样本集的第二训练损失值,包括:根据下式计算所述第二训练损失值:
[0176][0177]
其中,m为各个样本图像的序号,0≤m≤m

1,m为样本图像的总数,p为各个人体关
节点的序号,0≤p≤pn

1,pn为人体关节点的数目,ftx
m,p
和fty
m,p
分别为第m个样本图像对应的第一集合中的第p个人体关节点的横轴坐标和纵轴坐标,sdx
m,p
和sdy
m,p
分别为第m个样本图像对应的第二集合中的第p个人体关节点的横轴坐标和纵轴坐标,loss2为所述第二训练损失值。
[0178]
在本发明实施例的一种具体实现方式中,所述垃圾袋识别模块具体用于:将所述原始图像帧输入至所述垃圾袋识别模型中,并获取所述垃圾袋识别模型输出的识别结果;所述识别结果为二值化图像;分别获取所述识别结果中取值为预设的第一数值的各个像元的位置坐标;根据下式计算所述垃圾袋的位置坐标:
[0179][0180]
其中,g为取值为第一数值的像元的序号,1≤g≤g,g为取值为第一数值的像元的总数,posx
g
和posy
g
分别为第g个取值为第一数值的像元的横轴坐标和纵轴坐标,posx和posy分别为所述垃圾袋的横轴坐标和纵轴坐标。
[0181]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0182]
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
[0183]
图4示出了本发明实施例提供的一种服务器的示意框图,为了便于说明,仅示出了与本发明实施例相关的部分。
[0184]
在本实施例中,该服务器4可包括:处理器40、存储器41以及存储在所述存储器41中并可在所述处理器40上运行的计算机可读指令42,例如执行上述的垃圾投放识别方法的计算机可读指令。所述处理器40执行所述计算机可读指令42时实现上述各个垃圾投放识别方法实施例中的步骤,例如图1所示的步骤s101至s106。或者,所述处理器40执行所述计算机可读指令42时实现上述各装置实施例中各模块/单元的功能,例如图3所示模块301至306的功能。
[0185]
示例性的,所述计算机可读指令42可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器41中,并由所述处理器40执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机可读指令段,该指令段用于描述所述计算机可读指令42在所述服务器4中的执行过程。
[0186]
所述处理器40可以是中央处理单元(central processing unit,cpu),还可以是其它通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field

programmable gate array,fpga)或者其它可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
[0187]
所述存储器41可以是所述服务器4的内部存储单元,例如服务器4的硬盘或内存。所述存储器41也可以是所述服务器4的外部存储设备,例如所述服务器4上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡
(flash card)等。进一步地,所述存储器41还可以既包括所述服务器4的内部存储单元也包括外部存储设备。所述存储器41用于存储所述计算机可读指令以及所述服务器4所需的其它指令和数据。所述存储器41还可以用于暂时地存储已经输出或者将要输出的数据。
[0188]
在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0189]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干计算机可读指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储计算机可读指令的介质。
[0190]
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

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

相关文献