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

一种基于自反馈学习的坐姿识别方法及系统与流程

2022-08-27 02:09:35 来源:中国专利 TAG:


1.本发明涉及计算机视觉技术领域,具体而言,尤其涉及一种基于自反馈学习的坐姿识别方法及系统。


背景技术:

2.在现有人体姿态提取方案中,采用基于单目的提取技术和基于双目的提取技术是两支重要分支。其中基于单目的技术常采用估计人体的关键点位置、距离等能够表征姿态的信息,与预设定的标准坐姿表征,通过固定阈值,来对坐姿是否异常进行判别。而基于双目、tof等深度传感器的提取技术,则从表征姿态的准确度层面,取得了更好的表征效果,但对于坐姿的判别仍然多采用上述“与预设定的标准坐姿表征,通过固定阈值,来对坐姿是否异常进行判别”的静态式的方法。这些方法面临静态判别所带来的效果问题,常常体现为因固定阈值常常根据经验或人群统计数据而设定,不能跟随特定用户的习惯特点进行相应自适应调整,导致判断不够灵敏,或者容易产生误判。


技术实现要素:

3.根据上述提出的坐姿识别灵敏度低技术问题,而提供一种基于自反馈学习的坐姿识别方法及系统。本发明基于自反馈增量学习机制,随着识别次数的增加能够不断迭代更新判别参数,提升识别的精准度和灵敏度。
4.本发明采用的技术手段如下:
5.一种基于自反馈学习的坐姿识别方法,包括:
6.定义能够直接或者间接表达坐姿类型情况的坐姿表征,所述坐姿表征基于图像帧获取;
7.获取非连续的图像数据集和连续的视频帧数据集,获取所述图像数据集以及视频帧数据集中各图像帧的标注结果,从而构建标注图像帧与坐姿表征的匹配对数据;
8.将所述标注图像帧与坐姿表征的匹配对数据作为训练数据训练坐姿表征提取模型,获取待识别坐姿图像帧,基于训练完成的坐姿表征提取模型对所述待识别坐姿图像进行处理从而获得待识别坐姿图像帧的坐姿表征;
9.基于待识别坐姿图像帧的坐姿表征以及预设的判别参数实现坐姿类型判别,所述判别参数包括方向系数和偏移参数;
10.根据识别到的坐姿类型进行相应的提醒,提醒后进行反馈动作的判别,基于反馈动作的变化趋势构建正样本包和负样本包,其中所述正样本包包括用户坐姿有变好趋势的一段时间内所有的坐姿表征,所述负样本包包括用户坐姿没有变好趋势的一段时间内所有的坐姿表征;
11.基于所述正样本包和负样本包对预设的判别参数进行迭代优化,从而提高坐姿类型判别的精度。
12.进一步地,所述坐姿表征为:
13.r
seq
=《box,keypoints,basep,θ1,θ2,θ3》
14.其中,r
seq(i)
表示坐姿表征,box表示人体头部的包围框,keypoints表示人体坐姿关键点,basep表示头部基准点,θ1表示俯仰旋角,θ2表示左右摇摆角度,θ3表示左右旋转角度,且basep为θ1,θ2,θ2的坐标基准原点。
15.进一步地,所述坐姿表征提取模型包括提取图像数据集中单帧数据坐姿表征的单帧提取模型,所述单帧提取模型包括第一深度神经网络模块和第二深度神经网络模块;
16.所述第一深度神经网络模块的输入是由单帧数据获取的三通道彩色图像数据,所述第一深度神经网络模块的输出作为第二深度神经网络模块的输入,所述第二神经网络模块的输出包括单帧数据中是否存在人体的判别结果以及坐姿表征。
17.进一步地,所述第二神经网络模块的输出还包括人脸属性辅助判别结果。
18.进一步地,所述单帧提取模型还包括第三深度神经网络模块和第四深度神经网络模块,所述第三深度神经网络模块的输入是由单帧数据获取的3d点云数据,所述第三深度神经网络模块的输出作为第二深度神经网络模块的输入;
19.所述第四深度神经网络模块的输入为第一深度神经网络模块的输出,所述第四深度神经网络模块的输出为回归的3d点云数据。
20.进一步地,所述坐姿表征提取模型还包括提取视频帧数据集连续帧数据坐姿表征的时序帧提取模型,所述时序帧提取模型包括用于进行特征聚集的fa模块和rnn模块;
21.所述fa模块的输入为由所述单帧提取模型提取的当前单帧数据坐姿表征、由所述单帧提取模型提取的当前单帧数据坐姿表征时的第二深度神经网络模块的隐藏层输出以及由所述单帧提取模型提取的前一单帧数据坐姿表征时的第二深度神经网络模块的隐藏层输出,所述fa模块的输出为当前帧的坐姿表征的高位特征,所述当前帧的坐姿表征的高位特征与由所述单帧提取模型提取的当前单帧数据坐姿表征时的第二深度神经网络模块的隐藏层输出级联后作为所述rnn模块的输入,所述rnn模块的输出为视频当前帧的坐姿表征。
22.进一步地,基于待识别坐姿图像帧的坐姿表征以及预设的判别参数实现坐姿类型判别,包括:
23.预先设置每种坐姿类型的独现原始特征和共现原始特征;
24.基于待识别坐姿图像帧的坐姿表征计算派生特征;
25.基于预设的判别参数分别计算派生特征的独现值、派生特征的共现值以及派生特征在时序上的变化值;
26.基于所述派生特征的独现值、派生特征的共现值以及派生特征在时序上的变化值计算待识别坐姿图像帧属于某种坐姿类型的概率。
27.进一步地,基于预设的判别参数分别计算派生特征的独现值、派生特征的共现值以及派生特征在时序上的变化值,包括:
28.基于以下公式计算派生特征的独现值:
[0029][0030]
其中,f1表示多个派生特征的独现值,d
r(n)
表示坐姿表征的第n个派生特征,fa表示
激活函数,w
f1(n)
表示第n个派生特征的方向系数,b
f1(n)
为第n个派生特征的偏移系数;
[0031]
基于以下公式计算派生特征的共现值:
[0032][0033]
其中,f2表示k组派生特征的特征共现值,其中每组有mj个共现特征,w
f2(j,n)
表示第j组中第n个特征的方向系数,d
r(j,n)
表示第j个派生特征,b
f2(j,n)
表示其偏移系数;
[0034]
基于以下公式计算派生特征在时序上的变化值:
[0035][0036]
其中f3表示派生特征在时序上的变化值,将某段时间t依据预设规则划分成t1时段,t2时段和t3时段,其中t1时段表示现在时段,t2时段表示中间时段,t3时段表示过去时段,d
r,t
(n)表示t时段的派生特征值,w
f3(i)
表示派生特征值的权重值。
[0037]
进一步地,基于所述派生特征的独现值、派生特征的共现值以及派生特征在时序上的变化值计算待识别坐姿图像帧属于某种坐姿类型的概率,包括:
[0038]
基于以下公式计算待识别坐姿图像帧属于某种坐姿类型的概率:
[0039]
f=sigmoid(w_norm*(f1 f2 f3))
[0040]
其中,f表示待识别坐姿图像帧属于某种坐姿类型的概率,f1表示派生特征的独现值,f2表示派生特征的特征共现值,f3表示派生特征在时序上的变化值,w_norm表示线性调整因子,为神经网络学习参数。
[0041]
本发明还提供了一种基于自反馈学习的坐姿识别系统,包括:
[0042]
坐姿表征定义模块,其用于定义能够直接或者间接表达坐姿类型情况的坐姿表征,所述坐姿表征基于图像帧获取;
[0043]
匹配对数据构建模块,其用于获取非连续的图像数据集和连续的视频帧数据集,获取所述图像数据集以及视频帧数据集中各图像帧的标注结果,从而构建标注图像帧与坐姿表征的匹配对数据;
[0044]
坐姿表征提取模块,其用于将所述标注图像帧与坐姿表征的匹配对数据作为训练数据训练坐姿表征提取模型,获取待识别坐姿图像帧,基于训练完成的坐姿表征提取模型对所述待识别坐姿图像进行处理从而获得待识别坐姿图像帧的坐姿表征;
[0045]
坐姿类型识别模块,其用于基于待识别坐姿图像帧的坐姿表征以及预设的判别参数实现坐姿类型判别,所述判别参数包括方向系数和偏移参数;
[0046]
提醒模块,其用于根据识别到的坐姿类型进行相应的提醒,提醒后进行反馈动作的判别,基于反馈动作的变化趋势构建正样本包和负样本包,其中所述正样本包包括用户坐姿有变好趋势的一段时间内所有的坐姿表征,所述负样本包包括用户坐姿没有变好趋势的一段时间内所有的坐姿表征;
[0047]
自反馈模块,其用于基于所述正样本包和负样本包对预设的判别参数进行迭代优化,从而提高坐姿类型判别的精度。
[0048]
较现有技术相比,本发明具有以下优点:
[0049]
1、本发明采用多任务学习的方式对坐姿表征提取模型进行训练,能够高效完成多种坐姿表征的提取,同时针对多帧,在特征层和表征层进行信息融合,不仅提高了模型的泛化性,同时捕捉图像帧间的连续性信息,使稳定性进一步提升。
[0050]
2、本发明构建了基于经验阈值的统一置信度坐姿识别模型,克服了已有方法强依赖某一单独特征带来的不稳定性。例如众多方法采用人脸或者人体等关键点,当关键点不可见时通常会使得识别失效。
[0051]
3、本发明提供了一种结合用户反馈动作的增量学习方法,不断迭代更新初始参数,提升识别的精准度和灵敏度,使坐姿识别结果完全符合主观判定的特点,无需用户录入预设定的标准坐姿。
附图说明
[0052]
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图做以简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
[0053]
图1为本发明一种基于自反馈学习的坐姿识别方法流程图。
[0054]
图2为本发明坐姿表征示意图。
[0055]
图3为本发明单帧提取模型架构图。
[0056]
图4为本发明时序帧提取模型架构图。
[0057]
图5为本发明自反馈学习模型架构图。
[0058]
图6为本发明识别参数分区预设示意图。
具体实施方式
[0059]
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
[0060]
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0061]
如图1所示,本发明提供了一种基于自反馈学习的坐姿识别方法,包括:
[0062]
s1、定义能够直接或者间接表达坐姿类型情况的坐姿表征,所述坐姿表征基于图像帧获取。
[0063]
本技术中,采用以下表征数据作为坐姿表征:
[0064]rseq(i)
=《boxi,keypointsi,basepi,θ1i,θ2i,θ3i》
[0065]
其中r
seq(i)
表示第i个图像帧所隐含的坐姿表征,图像帧可以是单目/双目相机提取的rgb数据或者深度相机的点云数据。
[0066]
如图2所示,box表示人体头部的包围框,用于确定头部所处的位置和相对距离。keypoints由k1,k2,k3三个关键点组成,分别表示颈椎根位置、左肩膀位置以及右肩膀位置。basep表示头部基准点,本技术采用了显著性明显的鼻头中心点。具体实施过程中可采用与头部整体呈刚性关系的点,如眉心、下巴中心等。θ1表示pitch旋角,即低头仰头的角度,定义平视的时候,θ1=0,仰头时《0,低头时》0。θ2表示roll旋角,即头左右摇摆歪头的角度,定义无歪斜的时候,θ2=0,向右歪时《0,向左歪时》0。θ3表示yaw旋角,即头左右旋转的角度,定义无旋转的时候,θ3=0,向右旋转时《0,向左旋转时》0。θ1,θ2,θ2的坐标基准原点为basep。
[0067]
s2、获取非连续的图像数据集和连续的视频帧数据集,获取所述图像数据集以及视频帧数据集中各图像帧的人工标注结果,从而构建标注图像帧与坐姿表征的匹配对数据。
[0068]
现有方法多采用单帧,串联多个子特征提取模块,来完成坐姿表征的提取,或一次性送入多帧图像采用3d卷积等算法以充分利用时间序列上的信息,更准确地抽取坐姿表征。本发明中,我们采用多任务学习的方式高效完成多种坐姿表征的提取,同时针对多帧,在特征层和表征层进行信息融合。
[0069]
本实施例中,记imagedata={img_1,img_2,img_n}集合为非连续的图像数据集。非连续的图像数据往往是更易得的,但是图像之间不具有内容连续性。记videodata={v_1_img_1,v_1_img2,v1_img_m,v_2_img1

}集合为连续的视频帧数据集。对上述集合中的每一个元素,利用人工标注的方式,确定其坐姿表征标签。具体可采用标注工具的方式,也可利用辅助设备进行构建。
[0070]
s3、将所述标注图像帧与坐姿表征的匹配对数据作为训练数据训练坐姿表征提取模型,获取待识别坐姿图像帧,基于训练完成的坐姿表征提取模型对所述待识别坐姿图像进行处理从而获得待识别坐姿图像帧的坐姿表征。
[0071]
具体来说,本技术中坐姿表征提取模型包括提取图像数据集中单帧数据坐姿表征的单帧提取模型以及用于提取视频帧数据集连续帧数据坐姿表征的时序帧提取模型。其中单帧提取模型用于提取非连续的图像数据的坐姿表征,时序帧提取模型用于提取连续的视频帧数据的坐姿表征。
[0072]
作为本发明优选的实施方式,单帧提取模型包括第一深度神经网络模块和第二深度神经网络模块。第一深度神经网络模块的输入是由单帧数据获取的三通道彩色图像数据,第一深度神经网络模块的输出作为第二深度神经网络模块的输入,第二神经网络模块的输出包括单帧数据中是否存在人体的判别结果以及坐姿表征。进一步地,第二神经网络模块的输出还包括人脸属性辅助判别结果。更进一步地,单帧提取模型还包括第三深度神经网络模块和第四深度神经网络模块,第三深度神经网络模块的输入是由单帧数据获取的3d点云数据,第三深度神经网络模块的输出作为第二深度神经网络模块的输入;第四深度神经网络模块的输入为第一深度神经网络模块的输出,第四深度神经网络模块的输出为回归的3d点云数据。
[0073]
如图3所示,为本发明中优选的单帧提取模型架构。其中rgb表示成像的三通道彩色图像数据,xyz表示以相机为原点的3d点云数据。net1至net4表示深度神经网络模块,obj表示判定人的存在性网络分支,h1表示回归box,keypoints,basep组成的点集合的分支,h2表示回归θ1,θ2,θ3组成的角度集合的分支,aux作为辅助分支,监督回归人脸属性,如性别、情绪等。虚线表示可选连接结构,分以下典型用例,以涵盖多种应用场景。
[0074]
应用实例1训练数据无xyz数据,此时第三深度神经网络模块net3和第四深度神经网络模块net4非选通,仅依靠第三深度神经网络模块net1和第二深度神经网络模块net2来回归坐姿表征和辅助属性aux,其中训练方法和基础网络架构(net1-net4)是领域共知,如vgg、inception、resnet、mobilenet、shufflenet、vit及其变种等。
[0075]
应用实例2在应用实例1的基础上,训练时有全量或者少量的xyz与rgb匹配对数据,此时net3和net4是选通的,net4用于从rgb数据学习估计其对应的xyz以建立模型对深度的敏感性,推理时可根据硬件的不同,选择是否去除xyz输入和net3的选通,如控制成本低的硬件,仅单独输入rgb输入。
[0076]
这一步骤的目标是在图像数据集上训练确定net1-net4的网络参数,模型可预测输出坐姿表征。这里将单帧提取模型输出的坐姿表征记为:r
img
表示由单帧模型输出图像img的坐姿表征,该img按照不同用例,含有前述rgb、xyz数据。
[0077]
作为本发明优选的实施方式,时序帧提取模型包括用于进行特征聚集的fa模块和rnn模块;fa模块的输入为由所述单帧提取模型提取的当前单帧数据坐姿表征、由所述单帧提取模型提取的当前单帧数据坐姿表征时的第二深度神经网络模块的隐藏层输出以及由所述单帧提取模型提取的前一单帧数据坐姿表征时的第二深度神经网络模块的隐藏层输出,fa模块的输出为当前帧的坐姿表征的高位特征,所述当前帧的坐姿表征的高位特征与由所述单帧提取模型提取的当前单帧数据坐姿表征时的第二深度神经网络模块的隐藏层输出级联后作为所述rnn模块的输入,所述rnn模块的输出为视频当前帧的坐姿表征。
[0078]
具体来说,视频帧数据集不同于前述图像数据集,其帧间具有连续性,且实际系统场景均运行在视频帧模式下,以获得更好的用户体验。这个步骤我们采用上述net2的隐藏层输出和上一帧的坐姿表征输出,两者作为输入来输出当前帧的坐姿表征。如上图4所示,其中r
seq(i)
为视频第i帧的坐姿表征,r
img(i)
为前述单帧提取模型输出的基于图像的坐姿表征(其仅依靠单张图像作为推理依据,往往效果不稳定),h
img(i)
为单帧提取模型中net2网络模块的隐藏层输出结果,典型维度如2048,1024,取决于具体的网络设计,为该领域所共知。虚线框部分为rnn模型,典型如lstm、gru,用于捕捉长时信息依赖。阴影框部分为fa模块,是一个基于注意力机制的特征聚集模块,增强相邻帧间的信息转移。
[0079]
进一步地,其中fa(feature aggregation)模块的具体表达式如下:
[0080]
qi=wq.h
img(i)
[0081]qi-1
=wq.h
img(i-1)
[0082]
ti=w
t
.tanh(qi*q
i-1
))
[0083]vi
=wv.r
img(i)
wv.(ti*r
seq(i-1))
[0084]rseq(i)
=rnn(concat(vi,h
img(i)
)
[0085]
其中qi和q
i-1
分别表示当前帧和前一帧由隐藏特征h
img
经过线性映射的查询向量,ti表示两帧之间信息的相关向量,vi表示当前帧的坐姿表征的高维特征,其与h
img
一起
concat级联之后,送入rnn层,最终获得时序上的坐姿表征r
seq(i)
。其中wq、w
t
、wv为可学习参数。
[0086]
本发明能够兼容多种数据形态的输入,rgb,xyz。从而能够一次性适配不同硬件之间的差异。对imagedata和videodata先后训练对应设计模型,解决了数据建设的成本和充分利用的问题。视频时序上的坐姿表征在隐藏特征层进行信息融合和帧间相关性衡量,解决了视频上识别通常算力需求较大的问题。
[0087]
s4、基于待识别坐姿图像帧的坐姿表征以及预设的判别参数实现坐姿类型判别,所述判别参数包括方向系数和偏移参数。包括:
[0088]
1)预先设置每种坐姿类型的独现原始特征和共现原始特征。
[0089]
2)基于待识别坐姿图像帧的坐姿表征计算派生特征;
[0090]
3)基于预设的判别参数分别计算派生特征的独现值、派生特征的共现值以及派生特征在时序上的变化值;
[0091]
4)基于所述派生特征的独现值、派生特征的共现值以及派生特征在时序上的变化值计算待识别坐姿图像帧属于某种坐姿类型的概率。
[0092]
现有方法多采用比对或者阈值的方式,来进行坐姿类型的判别,存在适应性差、体验不完全符合主观判定的特点,针对这一问题,本技术提出一种结合用户反馈动作的增量学习方法,以改善该问题,同时无需用户录入预设定的标准坐姿。
[0093]
本技术中其根据当前帧及历史帧的坐姿表征r
seq(i)
以及预设的判别参数来完成前述坐姿类型的判别。具体地,记s
t
_(r
seq(i)
)表示过去t秒的坐姿表征数据,类似s
t
_(keypoints(i))则表示过去t秒的坐姿关键点。
[0094]
例如低头判定,通常来说,低头会典型体现在pitch(θ1)角度变小,基准点basep位置会变低,如果成像设备摆放在用户前方,通常还会表现出box变大。而判定期通常在用户静止期,即在用户在动作进行的过程中,则不给出判定。给定多个相应阈值v
θ1
,v
basep
,v
box
,注意此处不同的v其含义是不同的,即可按以下式子表达低头程度。
[0095]
f1=relu(θ1-v
θ1
) relu(basep.y-v
basep
) relu(sizeof(box)-v
box
)
[0096]
f2=relu(θ1-v
θ1
)*relu(basep.y-v
basep
)*relu(sizeof(box)-v
box
)
[0097]
f=f1 f2
[0098]
其中,basep.y表示基准点的高度位置,sizeof(box)表示box的大小,它们是坐姿表征r
seq(i)
的派生特征,relu为领域公知过零激活函数,也可以用tanh代替,f1表示特征独现值,f2表示特征共现值,f的值越大则表明低头特征越明显。
[0099]
对于任意坐姿类型的判别置信度我们提出以下算法:
[0100][0101]
[0102][0103]
f=sigmoid(w_norm*(f1 f2 f3))
[0104]
其中f1表示多个派生特征d
r(n)
的独现值,当中d
r(n)
表示坐姿表征的第n个派生特征,如上述低头例子中使用了三个派生特征,fa表示激活函数,领域公知常用比如relu,tanh等函数。w
f1(n)
为第n个派生特征的方向系数,即例如有的特征不是越小坐姿不标准程度就越大,也可能反之,b
f1(n)
为第n个派生特征的偏移系数,例如前所述的预定义阈值。其中,派生特征的独现值表示在某个坐姿类型中单独出现的特征值,如低头时,常表现为pitch角度发生变化,pitch角度即为所指的独现特征。
[0105]
其中f2表示k组派生特征的特征共现值,其中每组有mj个共现特征,w
f2(j,n)
表示第j组中第n个特征的方向系数,b
f2(j,n)
表示其偏移系数。派生特征的共现值是具有关联关系的一组特征,如略下右下方低头时,既有pitch角变化,又有yaw旋转角变化等。
[0106]
其中f3表示派生特征在时序上的变化值,将某段时间t依据预设规则划分成t1时段,t2时段和t3时段,其中t1时段表示现在时段,t2时段表示中间时段,t3时段表示过去时段,典型地,本实施例将t划分成100等份,0至50等份为t1,50至80等份为t2,80至100等份为t3,d
r,t
(n)表示t时段的派生特征值,w
f3(i)
表示派生特征值的权重值。f3可理解为当有明确坐姿迁移,在t3时段提取的坐姿表征与在t1时间段提取的坐姿表征有较大变化,而相对于中间t2时段的是变化较小,处于稳态。即此处设定当前t1特征值相对于过去的t3发生了变化量d(t1,t3),而相对于中间t2的是变化量为d(t1,t2)其值接近于零,典型值为d(t1,t2)《0.2;实施过程中采用d(t1,t3)/d(t1,t2)》c作为判断坐姿迁移的条件,其中c取2.0,4.0,8.0等分别表征坐姿发生迁移的程度。则基于上述公式获取t时段的时序上派生特性的变化值。t3时段实际应用中常取坐姿正确的时期。派生特征的变化值是在多个原始特征上,进一步利用运算所加工派生出的综合特征,如通过“与”“或”等逻辑运算。
[0107]
f则为前三者的缩放加和,再通过一个sigmoid函数归一化到概率空间。对于某类型的坐姿识别,如表1所示为本发明中坐姿类型与特征的对应关系。
[0108]
表1:坐姿类型及对应特征
[0109][0110]
移动、无人等不在判别范围内,这两种类型则通过坐姿表征提取模型输出结果,判断前后帧是否存在box坐标的变动,超过一定程度则认为在移动,而box小于一定程度则判定为不在判别区,从而识别出不进行判别的移动状态和无人状态。而判别结果为正确坐姿的情况被认为是未识别到上述错误类型的坐姿的状态。
[0111]
定义好其特征独现和共现组之后,可以通过预设恰当的w和b,即前述f1、f2、f3中包含的各个方向系数和偏移系数,来实现判定该类型发生的概率。如当f》0.5则认为该坐姿类型发生。
[0112]
如图5所示,本发明优选将成像区域划分成9个(具体实施时,也可划分成更多个),它们根据于图像提取装置的距离区分为近区,中区,远区,根据角度和用户横行位置的不同分为左右和中间区,根据box的位置不同以及yaw角的不同,将用户划分到不同的区域,其坐姿判别也采用不同的参数组w和b。在实施过程中w和b,既可以采用经验进行预设(如中区a2中,作用在远近相关特征时w中的相关因子为1.0,则b1区域中,w中的相关因子应当小于1.0,例如取0.8),也可以采用随机初始化,由模型训练学习自调整确定。
[0113]
以及前述部分参数需要运行时确定的,我们采取跟踪排序法进行确定,其基于用户是多概率下是正常坐姿的。具体地,如腰背不直导致的位置过低,其参考标准高度h的确定如下:
[0114]
1)取历史判定为坐姿正确的坐姿表征,判定其所处区域,记录其高度位置,对每一个区域单独组成h集合;
[0115]
2)对h集合进行排序,取90分位最高的h作为参考标准高度。
[0116]
其他动态参数也采用类似方法。
[0117]
s5、根据识别到的坐姿类型进行相应的提醒,提醒后进行反馈动作的判别,基于反馈动作的变化趋势构建正样本包和负样本包,其中所述正样本包包括用户坐姿有变好趋势
的一段时间内所有的坐姿表征,所述负样本包包括用户坐姿没有变好趋势的一段时间内所有的坐姿表征。
[0118]
参数预设结果受到增量学习的影响,其主要动机在于,预设的参数常常是人群平均的值,存在个体体验差异。本文方法利用用户反馈动作,增量来更新预设参数,以解决目前已有方法所面临的问题。具体来说,本步骤根据识别到坐姿类型的不同来进行相应的提醒,如果坐姿正常则不进行提示,其余均对应相应的声音提醒,通过扬声器播声。
[0119]
提醒过后,进行反馈动作的判别,例如提醒低头之后,判别其是否产生了抬头动作。提醒通常基于一段时间内持续的错误坐姿,发出提醒音后,一段时间内如果检测到了用户坐姿有变好趋势,则记该段时间内构成提醒的所有坐姿表征为正向样本srp包,通常发出提醒会有相应的后调节参数来触发,如过去一分钟内有40秒是错误类型坐姿,且当前为错误坐姿,即存在多个r∈srp使得前述f置信度值大于判定阈值vf。如前所述vf典型值0.5,其是一个灵敏度的概念,越小则越灵敏,越容易判定为某类型的错误坐姿。取若干历史判定为正确的坐姿表征构成负样本包srn。
[0120]
s6、基于所述正样本包和负样本包对预设的判别参数进行迭代优化,从而提高坐姿类型判别的精度。
[0121]
该步骤主要进行增量学习,目标是根据带噪的srp与srn优化学习出新的w和b,更好地来进行判别,带噪含义为两个集合中的判定并非完全准确的。其动机在于旧的或者预设的w和b并非对应个体最优体验参数,例如,在srp的中坐姿表征对应的置信度数值表现上,平均值可能仅仅略高于vf。
[0122]
增量学习模块一次更新,通过多次的反馈结果,取t个正向样本与负样本包。最小化以下目标函数:
[0123][0124][0125][0126]
其中,p(yi|r;w,b)表示在参数w,b下,坐姿表征r被判定为坐姿类型yi的概率,基于前述计算待识别坐姿图像帧属于某种坐姿类型的概率f的计算方式获取,srn(i,k)表示第i个负样本包中第k个坐姿表征,srp(i,j)表示第i个正样本包中第j个坐姿表征,表示第i个正样本包具有的坐姿表征数目,表示第j个负样本包具有的坐姿表征数目。
[0127]
最小化上式即为选出正样本包中最大置信度的坐姿表征进一步最大化其置信度,选出负样本包中最小置信度的坐姿表征进一步最小化其置信度。
[0128]
具体地,可采用mini-batch梯度下降方法,如adam等优化器,直至目标函数收敛,此类方法为公知。优化后所得的w
*
,b
*
即为更优判定参数,判别预设参数模块将旧有参数进行更新,后续的判定即采用该参数。后续的识别和提醒,再重复这一反馈循环。
[0129]
上述方法主要实现了视频坐姿表征提取,解决了固有经验阈值带来的个体化差异体验问题,而无需用户录入参考的标准坐姿来进行比对。但在本发明优选的实施方式中,也可以在上述方法中如何录入用户自定义的参考标准坐姿的技术方案,来获得更符合用户个
性化需求的体验。
[0130]
具体来说,在优选的实施方式中,可以将坐姿识别工作模式分为自动模式和自定义模式。
[0131]
自动模式即通过预设经验参数w和b进行坐姿识别,并在用户使用过程中自动迭代参数至更优。
[0132]
自定义模式即通过用户手动录入指定类型的静态坐姿图像,算法分析图像数据的坐姿表征并记录为参考坐姿,在工作识别增量学习阶段,对应特征包中样本的选取以录入的坐姿表征为参考。其中指定类型指的静态坐姿可以包括标准正确坐姿,用户坐出其主观认为的标准坐姿,然后采集该图像进行录入。本技术将用户录入的正确坐姿示例的坐姿表征集合记为urn,将错误坐姿示例坐姿表征集合记为:urp
[0133]
最小化以下目标函数:
[0134][0135][0136][0137][0138]
其中与前述公式2.1一致,只是将srp替换为urp,srn替换为urn。
[0139]
l2考虑的是从原srp中取j个与urp中元素相似的坐姿表征计入损失计算,从srn中取k个与urn中元素相似的坐姿表征计入损失计算。
[0140]
其中similar_to(x,s)函数表示返回x与s中相似的元素索引,常用欧式距离或者l1距离来衡量元素之间的相似性。λ是一个预设定的平衡参数,用于平衡取自定义录入的多一点还是反馈中获取的多一点,其也可以是0,即完全按照用户预设的坐姿表征。
[0141]
本发明还提供了一种基于自反馈学习的坐姿识别系统,包括:
[0142]
坐姿表征定义模块,其用于定义能够直接或者间接表达坐姿类型情况的坐姿表征,所述坐姿表征基于图像帧获取;
[0143]
匹配对数据构建模块,其用于获取非连续的图像数据集和连续的视频帧数据集,获取所述图像数据集以及视频帧数据集中各图像帧的人工标注结果,从而构建标注图像帧与坐姿表征的匹配对数据;
[0144]
坐姿表征提取模块,其用于将所述标注图像帧与坐姿表征的匹配对数据作为训练数据训练坐姿表征提取模型,获取待识别坐姿图像帧,基于训练完成的坐姿表征提取模型对所述待识别坐姿图像进行处理从而获得待识别坐姿图像帧的坐姿表征;
[0145]
坐姿类型识别模块,其用于基于待识别坐姿图像帧的坐姿表征以及预设的判别参数实现坐姿类型判别,所述判别参数包括方向系数和偏移参数;
[0146]
提醒模块,其用于根据识别到的坐姿类型进行相应的提醒,提醒后进行反馈动作的判别,基于反馈动作的变化趋势构建正样本包和负样本包,其中所述正样本包包括用户坐姿有变好趋势的一段时间内所有的坐姿表征,所述负样本包包括用户坐姿没有变好趋势的一段时间内所有的坐姿表征;
[0147]
自反馈模块,其用于基于所述正样本包和负样本包对预设的判别参数进行迭代优化,从而提高坐姿类型判别的精度。
[0148]
对于本发明实施例的而言,由于其与上面实施例中的相对应,所以描述的比较简单,相关相似之处请参见上面实施例中部分的说明即可,此处不再详述。
[0149]
在本技术所提供的实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
[0150]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0151]
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0152]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
[0153]
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
再多了解一些

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

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

相关文献