计算;推算;计数设备的制造及其应用技术1.本技术实施例涉及视频识别技术领域,特别涉及一种动作计数方法、装置、设备及存储介质。背景技术:2.视频动作计数,是指对给定的视频,统计其中某个重复动作的出现次数。视频动作计数在工业生产、农业生产以及日常生活中具有重要的应用,例如在工业工艺生产过程中,某些工序的完成程度直接关系到最终产品的质量,工序动作次数过少或者过多直接导致产品质量欠佳,甚至无法使用;在体育活动中,对选手进行跳绳、仰卧起坐、引体向上等项目考核时,均需要进行动作次数计数。3.然而,现有针对视频的动作计数方法,要么是单纯的利用动作的周期性进行动作计数,要么是单纯利用单帧图像进行动作分类识别,进而实现动作计数。4.虽然,这两种方式可以实现动作计数,但是由于在实际应用中同一重复动作的周期性、频率、完整程度等均会呈现较大差异,这就使得按照固定周期提取到的特征存在不完整的情况,进而导致仅根据周期性来进行动作计数的方案缺乏鲁棒性;而通过单帧图像进行动作分类识别,由于关键动作姿态并不能完全定义完整动作类型,因而仅通过单帧图像进行动作分类识别的方案容易出现误判、计数不准确的问题。技术实现要素:5.本技术实施例的目的在于提供一种动作计数方法、装置、设备及存储介质,旨在解决上述技术问题。6.为解决上述技术问题,本技术的实施例提供了一种动作计数方法,包括:7.利用预先训练获得的视频帧动作识别模型对待计数视频进行识别,得到高斯回归输出序列;8.根据所述高斯回归输出序列进行高斯建模,得到高斯模型;9.根据所述高斯模型中高斯分布的个数,进行动作计数。10.为实现上述目的,本技术实施例还提供了一种动作计数装置,包括:11.网络模型推理模块,用于利用预先训练获得的视频帧动作识别模型对待计数视频进行识别,得到高斯回归输出序列;12.高斯建模处理模块,用于根据所述高斯回归输出序列进行高斯建模,得到高斯模型;13.动作计数模块,用于根据所述高斯模型中高斯分布的个数,进行动作计数。14.为实现上述目的,本技术实施例还提供了一种动作计数设备,包括:15.与所述至少一个处理器通信连接的存储器;其中,16.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行如上所述的动作计数方法。17.为实现上述目的,本技术实施例还提供了一种计算机可读存储介质,存储有计算机程序。所述计算机程序被处理器执行时实现上述所述的动作计数方法。18.本技术提出的动作计数方法、装置、设备及存储介质,从概率统计学的角度出发,用高斯分布来表征一个完整的动作区间,基于这一特性预先训练能够识别出待计数视频中每一视频帧的高斯回归值的视频帧动作识别模型,进而在对待计数视频进行动作计数时,利用视频帧动作识别模型对待计数视频进行识别,便可以得到能够表征整个待计数视频的高斯回归输出序列,进而通过根据高斯回归输出序列进行高斯建模,得到记录了待计数视频中每一个动作区间对应的高斯分布的高斯模型,最终通过统计高斯模型中高斯分布的个数,将统计的高斯分布的个数作为待计数视频中包括的动作次数即可实现对待计数视频的动作计数。该方式由于是针对每一个完整的动作区间,进行一次计数,因而相较于现有单纯利用动作的周期性或单帧图像进行动作计数的方法,视频帧动作识别模型的鲁棒性更好,计数更加准确。19.此外,本技术提出的动作计数方法、装置、设备及存储介质,基于高斯分布的动作计数方式,在输出动作次数的同时,还可以根据高斯分布给出动作的起始时间点和终止时间点,对时序动作定位具有重要的指导意义。附图说明20.一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定。21.图1是本技术第一实施例提供的动作计数方法的流程图;22.图2是本技术第一实施例提供的动作计数方法中涉及的视频帧动作识别模型的网络结构示意图;23.图3是本技术第一实施例提供的动作计数方法中高斯建模得到的高斯模型的示意图;24.图4是本技术第二实施例提供的动作计数方法的流程图;25.图5是本技术第三实施例提供的动作计数装置的结构示意图;26.图6是本技术第四实施例提供的动作计数设备的结构示意图。具体实施方式27.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合附图对本技术的各实施例进行详细的阐述。然而,本领域的普通技术人员可以理解,在本技术各实施例中,为了使读者更好地理解本技术而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本技术所要求保护的技术方案。以下各个实施例的划分是为了描述方便,不应对本技术的具体实现方式构成任何限定,各个实施例在不矛盾的前提下可以相互结合相互引用。28.本技术的第一实施例涉及一种动作计数方法,该方法首先,利用预先训练获得的视频帧动作识别模型对待计数视频进行识别,得到高斯回归输出序列;然后,根据所述高斯回归输出序列进行高斯建模,得到高斯模型;最后,根据所述高斯模型中高斯分布的个数,进行动作计数。由于该方式是针对每一个完整的动作区间,进行一次计数,因而相较于现有单纯利用动作的周期性或单帧图像进行动作计数的方法,视频帧动作识别模型的鲁棒性更好,计数更加准确。29.下面对本实施例的动作计数方法的实现细节进行说明,以下内容仅为方便理解而提供的实现细节,并非实施本方案的必须。30.本实施提供的动作计数方法具体是应用于能够执行该方法的任意终端设备,该终端设备可以是客户端设备,比如个人计算机、平板电脑、智能手机等,也可以是服务端设备,比如服务器等,本实施例对此不做限制。31.此外,为了便于说明,本实施例以动作计数方法应用于工业工艺生产过程中,对操作人员对某项工序进行的操作进行动作计数为例进行具体说明。32.本实施例的具体流程如图1所示,具体包括以下步骤:33.步骤101,利用预先训练获得的视频帧动作识别模型对待计数视频进行识别,得到高斯回归输出序列。34.具体的说,在实际应用中,为了保证动作计数的顺利进行,需要预先训练获得所述视频帧动作识别模型。35.为了使最终基于训练获得的所述视频帧动作识别模型,统计的动作次数更加精准,本实施例从概率统计学的角度出发,用高斯分布来表征一个完整的动作区间,进而通过统计每一个完整的动作区间,便可以实现对待计数视频的动作计数。36.故而,本实施例训练获得的视频帧动作识别模型所基于的网络模型结构至少需要包括高斯回归输出支路。37.关于基于这种网络模型结构的训练,具体如下:38.(1)获取动作视频样本。39.可理解的,在实际训练中,获取的动作视频样本为已知动作次数,以及每一动作的起始帧时刻、终止帧时刻、关键帧时刻,以及时序长度因子的视频。40.(2)对所述动作视频样本中的动作区间进行高斯分布标注。41.具体的说,为了确保高斯分布的3σ(拉依达)区域均位于动作区间内,本实施例是根据高斯分布的拉依达3σ准则,对所述动作视频样本中的动作区间进行高斯分布标注的。42.关于对所述动作视频样本中的动作区间进行高斯分布标注的操作,具体为:43.将所述动作视频样本中的动作起始帧时刻标记为ts,动作终止帧时刻标记为te,关键帧时刻标记为tm,时序尺度因子标记为s。44.基于上述标注信息,本实施例令动作的高斯分布值满足如下公式(1):[0045][0046]其中,μ=stm,[0047]由此,在经上述步骤(1)和步骤(2)完成对动作视频样本的标注后,便可以进入步骤(3)所说的模型训练环节。[0048](3)利用标记好的所述动作视频样本,对预先设计好的网络模型结构进行迭代训练至满足预设收敛条件,得到所述视频帧动作识别模型。[0049]可理解的,由于动作视频样本往往是有多帧视频组成的,为了实现对动作视频样本中每一视频帧的识别训练,同时又避免一次性将整个动作视频样本输入网络模型结构进行训练,影响训练速度。本实施例在利用标记好的动作视频样本,对预先设计好的网络模型结构,即包括了高斯回归输出支路的网络模型结构进行迭代训练时,具体是通过以下流程实现:[0050]首先,从标记好的所述动作视频样本中选择预设长度的连续视频帧,得到连续视频帧序列。[0051]为了便于理解,以下结合实例进行说明:[0052]比如,对于由100帧视频帧组成的动作视频样本,规定每次读取连续的32帧视频帧,作为输入网络模型结构中的高斯回归输出支路的连续视频帧序列。[0053]则首次从标记好的动作视频样本中读取的视频帧为第0帧至第31帧,这32帧连续的视频帧。[0054]然后,将所述连续视频帧序列输入所述网络模型结构中的所述高斯回归输出支路。[0055]具体的,在实际应用中,可以按序将读取的每一组连续视频帧序列输入所述网络模型结构中的所述高斯回归输出支路,由高斯回归输出支路对每一组连续视频帧序列中的每一帧视频帧进行分析处理。[0056]进一步地,在实际应用中,还可以在网络模型结构中预置缓存队列,将输入的每一组连视频帧序列按序添加到缓存队列,以便高斯回归输出支路完成一组连续视频帧序列的分析处理后,再按序从缓存队列中取出下一组连续视频帧序列进行分析处理,从而避免线程阻塞,影响处理速度。[0057]最后,随机选择所述连续视频帧序列的起始位置,并采用带动量的随机梯度下降法对所述高斯回归输出支路进行迭代训练至满足预设收敛条件,得到所述视频帧动作识别模型。[0058]具体的说,关于所述预设收敛条件,可以根据实际业务需求进行设置,比如对于要求高收敛的业务场景,设置的收敛条件可以是一个较高的训练次数。[0059]相应地,对于收敛要求相对低的业务场景,设置的收敛条件可以是一个较低的训练次数。[0060]在本实施例中,为了既保证收敛效果,又保证训练速度,设置的训练次数为200000次,即采用带动量的随机梯度下降法对所述高斯回归输出支路进行迭代训练200000次后,便可以将当前的网络模型结构作为视频帧动作识别模型了。[0061]应当理解的是,上述示例仅是为了更好的理解本实施例的技术方案而列举的示例,不作为对本实施例的唯一限制。[0062]由此,在实际应用中,通过将待计数视频,同样可以是按照预设长度从待计数视频中读取连续的视频帧输入基于上述方式训练获得的视频帧动作识别模型,经该视频帧动作识别模型处理,输出的结果便是每一视频帧的高斯分布值,通过按序将高斯分布值组合,便可以得到本实施例中所说的高斯回归输出序列了。[0063]此外,在实际应用中,为了尽可能降低高斯回归输出支路的训练难度,同时加速网络收敛,训练获得视频帧动作识别模型所采用的网络模型结构还可以包括动作分类输出支路。[0064]具体的说,所述动作分类输出支路主要用于判别视频帧是否属于动作。[0065]具体的,在实际应用中,可以通过判断每一视频帧的的置信度来确定该帧视频是否属于动作,比如设置置信度高于某一阈值时,确定该帧视频帧属于动作。[0066]此外,在实际应用中,除了可以借助动作分类输出支路判别视频帧是否属于动作,还可以借助动作分类输出支路判别视频帧的具体动作类型,比如跑、跳、走等,此处不再一一列举,本实施例对此也不做限制。[0067]相应地,针对网络模型结构包括动作分类输出支路和高斯回归输出支路的情况,所述利用标记好的所述动作视频样本,对预先设计好的网络模型结构进行迭代训练至所述网络模型结构满足预设收敛条件,得到所述视频帧动作识别模型,具体为:[0068]首先,从标记好的所述动作视频样本中选择预设长度的连续视频帧,得到连续视频帧序列。[0069]然后,将所述连续视频帧序列输入所述网络模型结构中的所述高斯回归输出支路。[0070]接着,将所述连续视频帧序列中每一视频帧对应的高斯分布标签转换为二值标签,并将转换后的所述连续视频帧序列输入所述网络模型结构中的所述动作分类输出支路。[0071]即,在对动作分类输出支路进行训练之前,需要将动作视频样本中每一视频帧对应的高斯标签(gaussian label),即采用高斯分布标注的的高斯分布标签,转换为二值标签(binary label)。[0072]具体的,可以规定高斯标签的取值大于0的,表示动作,则该指令输出1,否则该指令输出0,故而通过识别二值标签具体是0还是1,便可以确定视频帧是否为动作。[0073]最后,随机选择所述连续视频帧序列的起始位置,并采用带动量的随机梯度下降法对所述高斯回归输出支路和所述动作分类输出支路进行迭代训练至满足预设收敛条件,得到所述视频帧动作识别模型。[0074]即,对于包括动作分类输出支路和高斯回归输出支路的网络模型结构,在将连续视频帧输入网络模型结构时,具体是分别输入给这两个支路,这样高斯回归输出支路的训练过程既可以参考动作分类输出支路,又可以避免完全依赖动作分类输出支路的输出结果进行训练,会存在因动作分类输出结果异常导致高斯回归输出支路的收敛性、鲁棒性差的问题。[0075]此外,在实际应用中,为了解决现有动作计数方案中,进行深度特征提取时使用空间rgb图形与时序光流序列图进行时序特征提取,导致提取能力不强,并且计数复杂度高的问题,训练获得视频帧动作识别模型所采用的网络模型结构还可以包括3d卷积干路。[0076]具体的说,所述3d卷积干路用于时序特征提取。[0077]为了更好的理解本实施例中,基于包括3d卷积干路、动作分类输出支路和高斯回归输出支路的网络模型结构训练获得视频帧动作识别模型的过程,以下结合图2进行说明:[0078]具体的说,在实际应用中,在按照上述步骤(1)和步骤(2)给出的样本标注方式,对动作视频样本进行高斯分布标注后,首先从标记好的所述动作视频样本中选择预设长度的连续视频帧,得到连续视频帧序列;接着,将所述连续视频帧序列输入图2中的3d卷积干路,由所述3d卷积干路进行时序特征提取,并将提取到的时序特征作为需要分别输入图2中的高斯回归输出支路和动作分类输出支路;最后,随机选择所述连续视频帧序列的起始位置,并采用带动量的随机梯度下降法对所述高斯回归输出支路和所述动作分类输出支路进行迭代训练至满足预设收敛条件,得到所述视频帧动作识别模型。[0079]可理解的,由于动作分类输出支路的训练是基于二值标签的因此3d卷积干路输出的连续视频帧序列在输入动作分类输出支路时,同样需要进行上述所说的将高斯标签转换为二值标签的操作。[0080]通过上述描述可知,最终输入高斯回归输出支路和动作分类输出支路的连续视频帧序列是3d卷积干路处理过的连续视频帧序列,基于3d卷积提取能力强,计算复杂度低的特性,大大降低了训练获得视频帧动作识别模型,以及后期利用训练获得的视频帧动作识别模型进行识别时提取的特征的复杂度,进而降低了最终的计算复杂度。[0081]可理解的,在实际应用中,3d卷积主干具体选择包括多少层的残差网络,可以根据实际业务需求决定,比如说对于要求收敛性、鲁棒性较高,对训练时间要求较低的情况,可以选择层相对多的残差网络,反之则选择层相对少的残差网络。[0082]结合上述两点,本实施例选择了18层残差网络的3d卷积版本,即resnet8-3d作为3d卷积主干进行时序特征特权。[0083]此外,可理解的,在实际应用中,不论是动作分类输出支路,还是高斯回归输出支路,均包括全连接层,并在全连接层后采用损失函数进行了相应处理。[0084]具体的,对于动作分类输出支路,采用的损失函数具体为softmax交叉熵损失函数;对于高斯回归输出支路,为了便于根据高斯回归输出支路输出的高斯分布值进行后续处理,本实施例规定高斯回归输出支路的输出范围在0.0至1.0之间,故而对于高斯回归输出支路,采用的损失函数具体为sigmoid交叉熵损失函数。[0085]此外,需要说明的是,由于动作分类输出支路是为了将高斯分布标签(图3中的“о”)转换为二值标签(图3中的“——”),而本实施例中高斯回归输出支路输出的高斯分布值的的范围是限定在0.0至1.0之间的,故而可以设置在高斯标签的取值大于0时,表示动作,则动作分类输出分支输出的结果为1,否则输出的结果为0。[0086]应当理解的是,以上给出的是针对三种业务需求,预设设计的网络模型结构包括的具体干路、支路,在实际应用中,本领域技术人员可以根据需要选择合适的网络模型结构训练获得视频帧动作识别模型,以使得视频帧动作识别模型能够实现低复杂度、高鲁棒性、收敛性,以及计算准确的效果。[0087]步骤102,根据所述高斯回归输出序列进行高斯建模,得到高斯模型。[0088]具体的说,在实际应用中,对于高斯回归输出序列,若使用整体最小二乘法进行拟合很容易陷入局部最优解,进而导致高斯拟合失败。故而,本实施例在进行高斯拟合,即高斯建模时,具体是基于分段高斯拟合的启发式方法,根据所述高斯回归输出序列进行高斯建模,进而得到如图3所示的高斯模型。[0089]关于基于分段高斯拟合的启发式方法,根据所述高斯回归输出序列进行高斯建模的操作,具体为:[0090]a)给定高斯回归输出序列y(t),设定最小高斯取值阈值εval=0.1,最小高斯采样点数阈值εnum=4,初始高斯个数k=0,高斯参数[0091]b)计算序列y(t)的最大值ymax并记录最大值对应的索引序号为tmax;[0092]c)若ymax《εval,结束分段高斯拟合,返回参数k及ω,否则进入步骤d);[0093]d)以tmax作为起始点,往左查找y(t)中第一个小于εval的值,记其对应的索引序号为tl;[0094]e)以tmax作为起始点,往右查找y(t)中第一个小于εval的值,记其对应的索引序号为tr;[0095]f)若|tr-tl|《εnum则将y(tl:tr)置0,返回步骤b),否则对y(tl:tr)进行单高斯拟合,置高斯个数k=k+1,高斯参数(μk,σk),高斯参数集合ω=ω∪(μk,σk),将y(tl:tr)置0,返回步骤b)。[0096]关于上述所说的单高斯拟合,具体过程如下:[0097]对单个高斯模型,可以表示为如下公式(2):[0098][0099]其中,(μ,σ)为待估计参数,两边取对数可以得到:[0100][0101]其中,利用最小二乘法可以得到参数估计[0102]由此,实现了根据所述高斯回归输出序列进行高斯建模,得到高斯模型的操作,如基于图3所示的动作视频样本进行高斯建模,得到的高斯模型即为图3中高斯拟合结果(图3中的“....”)。[0103]步骤103,根据所述高斯模型中高斯分布的个数,进行动作计数。[0104]具体的说,从概率统计学的角度出发,一个高斯分布,即从最低点到最高点,再回到最低点,能够表征一个完整的动作区间,而一个完整的动作区间,即对应的是一次动作。故而,本实施例在根据图3所示的高斯模型中的高斯分布的个数进行动作计数时,实质是通过估计高斯模型中每一个完整的高斯分布(图3中的“....”),进而将统计得到的高斯分布个数作为待计数视频中包括的动作次数,实现针对待计数视频的动作计数。[0105]仍以图3为例,通过统计可以确定,图3所示的高斯模型中包括了4个完整的高斯分布,故而最终的的动作次数即为4。[0106]通过上述描述不难发现,本实施例提供的动作计数方法,从概率统计学的角度出发,用高斯分布来表征一个完整的动作区间,基于这一特性预先训练能够识别出待计数视频中每一视频帧的高斯回归值的视频帧动作识别模型,进而在对待计数视频进行动作计数时,利用视频帧动作识别模型对待计数视频进行识别,便可以得到能够表征整个待计数视频的高斯回归输出序列,进而通过根据高斯回归输出序列进行高斯建模,得到记录了待计数视频中每一个动作区间对应的高斯分布的高斯模型,最终通过统计高斯模型中高斯分布的个数,将统计的高斯分布的个数作为待计数视频中包括的动作次数即可实现对待计数视频的动作计数。该方式由于是针对每一个完整的动作区间,进行一次计数,因而相较于现有单纯利用动作的周期性或单帧图像进行动作计数的方法,视频帧动作识别模型的鲁棒性更好,计数更加准确。[0107]此外,本实施例提供的动作计数方法,基于高斯分布的动作计数方式,在输出动作次数的同时,对任一完整动作,根据高斯分布描述为n(μi,σi),1≤i≤k,那么动作的起始时间点即为μi-3σi,动作的终止时间点即为μi+3σi。[0108]也就是说,本实施例提供的动作计数方法,除了可以根据拟合的高斯个数准确的预测动作次数,还可以根据高斯分布给出动作的起始时间点和终止时间点,对时序动作定位具有重要的指导意义。[0109]本技术的第二实施例涉及一种动作计数方法。第二实施例在第一实施例的基础上做了进一步改进,主要改进之处为:基于能够判别视频帧是否为动作的视频帧动作识别模型,按照预设的重叠策略对待计数视频进行识别,以保证识别结果的准确性,进而保证最终动作计数结果的准确性。[0110]如图4所示,第二实施例涉及的动作计数方法,包括如下步骤:[0111]步骤401,按照预设的重叠策略,利用预先训练获得的视频帧动作识别模型对待计数视频进行识别,得到高斯回归输出序列。[0112]具体的说,本实施例中所说的重叠策略规定了第n-1个长度为t的连续视频帧序列中含有与第n个长度为t的连续视频帧序列中相同的l个视频帧,并且l和t满足如下关系:0《l《t。[0113]关于按照上述重叠策略,利用预先训练获得的视频帧动作识别模型对待计数视频进行识别,得到高斯回归输出序列的操作,具体如下:[0114](1)从所述待计数视频中选择固定长度t的连续视频帧,得到n个长度为t的连续视频帧序列。[0115](2)依次将n个长度为t的连续视频帧序列输入所述视频帧动作识别模型,得到每一个长度为t的连续视频帧序列中每一视频帧的动作分类输出结果和高斯分布值,所述动作分类输出结果为1或0,所述高斯分布值的取值在[0,1]之间。[0116]可理解的,由于训练获得的视频帧动作识别模型中动作分类输出支路是根据二值标签训练的,而高斯回归输出支路是根据高斯分布标签训练的,故而在将需要进行动作计数的连续视频帧输入到训练获得的视频帧动作识别模型后,视频帧动作识别模型中的动作分类输出支路会针对每一视频帧输出对应的二进制数,即要么是0,要么是1;而高斯回归输出支路输出的高斯分布值则会分布在[0,1]之间。[0117](3)对于每一所述视频帧,判断对应的动作分类输出结果是否为1。[0118](4)如果为1,确定所述视频帧是动作,并获取所述视频帧的动作分类输出结果的置信度。[0119]可理解的,由于在训练视频帧动作识别模型时,规定了对于对应动作的视频帧,高斯回归输出支路输出的高斯分布值在[0,1]之间,而动作分类输出支路输出的结果为1,反之,即视频帧不是动作时,动作分类输出支路输出的结果为0。[0120]因此,基于这一关系,并结合动作分类输出结果的置信度值,来确定重复的视频帧的高斯分布值,有效保证了高斯分布值的准确性,进而增加了基于高斯分布值构建的高斯模型进行的动作计数结果的准确性。[0121](5)将第n-1个长度为t的连续视频帧序列与第n个长度为t的连续视频帧序列中相同视频帧的动作分类输出结果的置信度进行比较。[0122](6)根据比较结果,选择置信度较高的动作分类结果作为所述视频帧识别模型识别出的所述视频帧的目标动作分类结果。[0123](7)将所述目标动作分类结果对应的高斯分布值作为所述述视频帧识别模型识别出的所述视频帧的目标高斯分布值。[0124](8)根据所述视频帧在所述待计数视频中出现的时间,顺序排列所述目标高斯分布值,得到所述高斯回归输出序列。[0125]为了更好的理解上述步骤(1)至步骤(8)的操作,以下结合实例进行说明:[0126]假设待计数视频包括100帧视频帧,固定长度t=32,即每次从待计数视频中读取连续的32帧视频帧,重叠长度l=16,即相邻两组连续视频帧序列中,有16帧视频帧是相同的。[0127]基于上述规定,第一次读取到的连续视频帧序列为第0帧至第31帧的视频帧,第二次读取到的连续视频帧序列为第16帧至第47帧的视频帧,第三次读取到的连续视频帧序列为第32帧至第63帧的视频帧...以此类推,即第n次读取到的连续视频帧序列含有与n-1次读取到的连续视频帧序列中相同的l帧视频帧。[0128]对于相邻两次读取到的连续视频帧序列中相同的l帧视频帧,选择两次输出的动作分类输出结果的置信度较高的一个对应的动作分类输出结果和高斯分布值作为这l帧视频帧对应的目标动作分类输出结果和目标高斯分布值。[0129]最终,按序排列待计数视频中每一个视频帧的目标高斯分布值,便可以得到最终构建高斯模型的高斯回归输出序列。[0130]步骤402,根据所述高斯回归输出序列进行高斯建模,得到高斯模型。[0131]步骤403,根据所述高斯模型中高斯分布的个数,进行动作计数。[0132]不难发现,本实施例中的步骤402和步骤403与第一实施例中的步骤102和步骤103大致相同,在此就不再赘述。[0133]由此,本实施例提供的动作计数方法,在利用预先训练获得的视频帧动作识别模型对待计数视频进行识别,以获得高斯回归输出序列时,通过基于有重叠的单帧预测的重叠策略从待计数视频中选择输入视频帧动作识别模型进行识别,最终通过选取重叠的视频帧中动作分类输出结果的置信度较高的识别结果作为该视频帧的预测结果,不仅可以纠正识别错误,还能够尽可能减少误识别,从而进一步保证了最终对待计数视频进行的动作计数结果的准确性。[0134]此外,本实施例提供的动作计数方法,对待计数视频的长度没有任何限制,通过循环输入固定帧数到视频帧动作识别模型,便能够完成对待计数视频中所有视频帧的密集预测,整个计数过程方便简单,易于实现,从而能够更好的适应于各种实际应用场景。[0135]此外,应当理解的是,上面各种方法的步骤划分,只是为了描述清楚,实现时可以合并为一个步骤或者对某些步骤进行拆分,分解为多个步骤,只要包括相同的逻辑关系,都在本专利的保护范围内;对算法中或者流程中添加无关紧要的修改或者引入无关紧要的设计,但不改变其算法和流程的核心设计都在该专利的保护范围内。[0136]本技术的第三实施例涉及一种动作计数装置,如图5所示,包括:网络模型推理模块501、高斯建模处理模块502和动作计数模块503。[0137]其中,网络模型推理模块501,用于利用预先训练获得的视频帧动作识别模型对待计数视频进行识别,得到高斯回归输出序列;高斯建模处理模块502,用于根据所述高斯回归输出序列进行高斯建模,得到高斯模型;动作计数模块503,用于根据所述高斯模型中高斯分布的个数,进行动作计数。[0138]此外,在另一个例子中,动作计数装置,还包括:网络模型训练模块。[0139]具体的,网络模型训练模块,用于根据预先设计好的网络模型结构,利用标注好的动作视频样本进行迭代训练,以获得视频帧动作识别模型。[0140]此外,在另一个例子中,经网络模型训练模型训练获得的视频帧动作识别模型可以仅用于实现高斯分布值的识别。[0141]故而,对应这种情况,实现设计好的网络模型结构可以仅包括高斯回归输出支路。[0142]相应地,网络模型训练模块,具体用于按照如下流程训练获得视频帧动作识别模型:[0143]获取动作视频样本;[0144]对所述动作视频样本中的动作区间进行高斯分布标注;[0145]利用标记好的所述动作视频样本,对预先设计好的网络模型结构进行迭代训练至满足预设收敛条件,得到所述视频帧动作识别模型。[0146]此外,在另一个例子中,所述对所述动作视频样本中的动作区间进行高斯分布标注,具体为:[0147]将所述动作视频样本中的动作起始帧时刻标记为ts,动作终止帧时刻标记为te,关键帧时刻标记为tm,时序尺度因子标记为s;[0148]令动作的高斯分布值满足如下公式:[0149][0150]其中,μ=stm,[0151]此外,在另一个例子中,网络模型训练模块具体用于:[0152]从标记好的所述动作视频样本中选择预设长度的连续视频帧,得到连续视频帧序列;[0153]将所述连续视频帧序列输入所述网络模型结构中的所述高斯回归输出支路;[0154]随机选择所述连续视频帧序列的起始位置,并采用带动量的随机梯度下降法对所述高斯回归输出支路进行迭代训练至满足预设收敛条件,得到所述视频帧动作识别模型。[0155]此外,在另一个例子中,为了提视频帧动作识别模型的收敛效果,同时降低训练过程中高斯回归输出支路的训练难度,预先设计好的网络模型结构还可以包括动作分类输出支路。[0156]具体的,动作分类输出支路,用于判断视频帧是否属于动作。[0157]相应地,网络模型训练模块,具体用于按照如下流程训练获得视频帧动作识别模型:[0158]从标记好的所述动作视频样本中选择预设长度的连续视频帧,得到连续视频帧序列;[0159]将所述连续视频帧序列输入所述网络模型结构中的所述高斯回归输出支路;[0160]将所述连续视频帧序列中每一视频帧对应的高斯分布标签转换为二值标签,并将转换后的所述连续视频帧序列输入所述网络模型结构中的所述动作分类输出支路;[0161]随机选择所述连续视频帧序列的起始位置,并采用带动量的随机梯度下降法对所述高斯回归输出支路和所述动作分类输出支路进行迭代训练至满足预设收敛条件,得到所述视频帧动作识别模型。[0162]此外,在另一个例子中,为了进一步降低训练获得视频帧动作识别模型的复杂度,预先设计好的网络模型结构还可以包括3d卷积干路。[0163]相应地,网络模型训练模块,具体用于按照如下流程训练获得视频帧动作识别模型:[0164]从标记好的所述动作视频样本中选择预设长度的连续视频帧,得到连续视频帧序列;[0165]将所述连续视频帧序列输入所述网络模型结构中的所述3d卷积干路,由所述3d卷积干路进行时序特征提取,并将提取到的时序特征作为需要分别输入所述网络模型结构中的所述高斯回归输出支路和所述动作分类输出支路的连续视频帧序列;[0166]将3d卷积干路输出的连续视频帧序列分别输入所述网络模型结构中的所述高斯回归输出支路和所述动作分类输出支路;[0167]随机选择所述连续视频帧序列的起始位置,并采用带动量的随机梯度下降法对所述高斯回归输出支路和所述动作分类输出支路进行迭代训练至满足预设收敛条件,得到所述视频帧动作识别模型。[0168]此外,在另一个例子中,为了保证最终统计的动作次数的准确性,网络模型推理模块501在利用预先训练获得的视频帧动作识别模型对待计数视频进行识别,得到高斯回归输出序列时,具体为:[0169]按照预设的重叠策略,利用预先训练获得的视频帧动作识别模型对待计数视频进行识别,得到高斯回归输出序列。[0170]需要说明的,在本实施例中,所述重叠策略规定第n-1个长度为t的连续视频帧序列中含有与第n个长度为t的连续视频帧序列中相同的l个视频帧,0《l《t。[0171]此外,在另一个例子中,网络模型推理模块501按照预设的重叠策略,利用预先训练获得的视频帧动作识别模型对待计数视频进行识别,得到高斯回归输出序列的操作,具体为:[0172]从所述待计数视频中选择固定长度t的连续视频帧,得到n个长度为t的连续视频帧序列;[0173]依次将n个长度为t的连续视频帧序列输入所述视频帧动作识别模型,得到每一个长度为t的连续视频帧序列中每一视频帧的动作分类输出结果和高斯分布值,所述动作分类输出结果为1或0,所述高斯分布值的取值在[0,1]之间;[0174]对于每一所述视频帧,判断对应的动作分类输出结果是否为1;[0175]如果为1,确定所述视频帧是动作,并获取所述视频帧的动作分类输出结果的置信度;[0176]将第n-1个长度为t的连续视频帧序列与第n个长度为t的连续视频帧序列中相同视频帧的动作分类输出结果的置信度进行比较;[0177]根据比较结果,选择置信度较高的动作分类结果作为所述视频帧识别模型识别出的所述视频帧的目标动作分类结果;[0178]将所述目标动作分类结果对应的高斯分布值作为所述述视频帧识别模型识别出的所述视频帧的目标高斯分布值;[0179]根据所述视频帧在所述待计数视频中出现的时间,顺序排列所述目标高斯分布值,得到所述高斯回归输出序列。[0180]即,相邻两个相同长度的连续视频帧序列中存在部分相同的视频帧,通过这种对给点视频帧进行重叠预测的方式来确定重叠的视频帧的实际高斯分布值,进而得到能够准确反映实际情况的高斯回归输出序列。[0181]此外,在另一个例子中,为了避免单纯采用单高斯拟合进行高斯建模容易陷入最优解,进而导致高斯拟合失败的问题,高斯建模处理模块502据所述高斯回归输出序列进行高斯建模,得到高斯模型时,具体为:[0182]基于分段高斯拟合的启发式方法,根据所述高斯回归输出序列进行高斯建模,得到高斯模型。[0183]此外,在另一个例子中,动作计数模块503在根据所述高斯模型中高斯分布的个数,进行动作计数时,具体为:[0184]统计所述高斯模型中每一个完整的高斯分布,得到高斯分布的个数;[0185]将所述高斯分布的个数作为所述待计数视频中包括的动作次数。[0186]基于此,本技术实施例提供的动作计数装置,与现有技术相比,至少具有如下优点:[0187](1)本技术设计的3d卷积干路、动作分类输出支路与高斯回归输出支路的网络模型结构,借助3d卷积干路进行时序特征提取,不仅提取能力强,同时大大降低了计算复杂度,而动作分类输出支路的引入可以大大降低高斯回归输出支路的训练难度,同时加速网络收敛;[0188](2)本技术从概率统计学的角度出发,用高斯分布来表征一个完整的动作区间,高斯分布个数即代表动作次数,再使用高效的分段高斯拟合算法进行高斯拟合,获取高斯个数,相比现有方法,本技术在实现场景动作计数应用中更加准确、更加鲁棒;[0189](3)得益于新颖的高斯分布动作表征方法,本技术在输出动作次数的同时,还可以根据高斯分布的3σ准则给出动作的起始时间点及终止时间点,对时序动作定位具有重要的指导意义;[0190](4)本技术在进行网络模型推理时,一方面,基于有重叠的单帧预测的策略,可以纠正识别错误,减少误识别;另一方面,通过循环输入固定帧数送入网络模型,完成所有视频帧的密集预测,因而本技术对视频的长度没有任何限制。[0191]此外,不难发现,本实施例为与第一或第二实施例相对应的装置实施例,本实施例可与第一或第二实施例互相配合实施。第一或第二实施例中提到的相关技术细节在本实施例中依然有效,为了减少重复,这里不再赘述。相应地,本实施例中提到的相关技术细节也可应用在第一或第二实施例中。[0192]值得一提的是,本实施例中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本技术的创新部分,本实施例中并没有将与解决本技术所提出的技术问题关系不太密切的单元引入,但这并不表明本实施例中不存在其它的单元。[0193]本技术的第四实施例涉及一种动作计数设备,如图6所示,包括:包括至少一个处理器601;以及,与至少一个处理器601通信连接的存储器602;其中,存储器602存储有可被至少一个处理器601执行的指令,指令被至少一个处理器601执行,以使至少一个处理器601能够执行上述方法实施例所描述的动作计数方法。[0194]其中,存储器602和处理器601采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器601和存储器602的各种电路连接在一起。总线还可以将诸如外围设备、稳压器和功率管理电路等之类的各种其他电路连接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器601处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器601。[0195]处理器601负责管理总线和通常的处理,还可以提供各种功能,包括定时,外围接口,电压调节、电源管理以及其他控制功能。而存储器602可以被用于存储处理器601在执行操作时所使用的数据。[0196]本技术的第五实施例涉及一种计算机可读存储介质,存储有计算机程序。计算机程序被处理器执行时实现上述方法实施例所描述的动作计数方法。[0197]即,本领域技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。[0198]本领域的普通技术人员可以理解,上述各实施例是实现本技术的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本技术的精神和范围。
图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!
内容声明:本文中引用的各种信息及资料(包括但不限于文字、数据、图表及超链接等)均来源于该信息及资料的相关主体(包括但不限于公司、媒体、协会等机构)的官方网站或公开发表的信息。部分内容参考包括:(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供参考使用,不准确地方联系删除处理!本站为非盈利性质站点,发布内容不收取任何费用也不接任何广告!
免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理,本文部分文字与图片资源来自于网络,部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理!的,若有来源标注错误或侵犯了您的合法权益,请立即通知我们,情况属实,我们会第一时间予以删除,并同时向您表示歉意,谢谢!
动作计数方法、装置、设备及存储介质与流程
作者:admin
2022-08-02 20:20:34
422
关键词:
计算;推算;计数设备的制造及其应用技术
专利技术
- 下一篇: 一种基于卷积神经网络的自动识别微地震信号算法
- 上一篇: 二十五味避瘟藏香的制作方法