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

视频关键点识别方法及装置、存储介质及电子设备与流程

2022-06-11 08:37:10 来源:中国专利 TAG:
1.本公开涉及图像与视频处理
技术领域
:,具体而言,涉及一种视频关键点识别方法及装置、计算机可读存储介质及电子设备。
背景技术
::2.随着计算机科学的不断发展,人脸识别技术的应用范围也越来越广,在视频图像中对人脸进行跟踪检测时,主要依赖于对人脸关键点的确定,3.现有技术中的视频中的人脸跟踪是基于人脸识别模型以及光流估计模型共同实现的,但是现有技术中的方法精度较差,且复杂度较高。4.需要说明的是,在上述
背景技术
:部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。技术实现要素:5.本公开的目的在于提供一种视频关键点识别方法、视频关键点识别装置、计算机可读介质和电子设备,进而至少在一定程度上降低对视频关键点检测的复杂度,并提升识别精度。6.根据本公开的第一方面,提供一种视频关键点识别方法,包括:利用视频识别模型获取所述视频中多帧图像的初始关键点数据以及多帧图像之间的光流数据;利用所述初始关键点数据、所述光流数据确定各帧图像对应的目标关键点数据;根据所述初始关键点数据和所述目标关键点数据更新所述视频识别模型;响应所述目标关键点数据满足预设条件,输出所述目标关键点数据。7.根据本公开的第二方面,提供一种视频关键点识别装置,包括:获取模块,用于利用视频识别模型获取所述视频中多帧图像的初始关键点数据以及多帧图像之间的光流数据;计算模块,用于利用所述初始关键点数据、所述光流数据确定各帧图像对应的目标关键点数据;更新模块,用于据所述初始关键点数据和所述目标关键点数据更新所述视频识别模型;输出模块,响应所述目标关键点数据满足预设条件,输出所述目标关键点数据。8.根据本公开的第三方面,提供一种计算机可读介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的方法。9.根据本公开的第四方面,提供一种电子设备,其特征在于,包括:一个或多个处理器;以及存储器,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述的方法。10.本公开的一种实施例所提供的视频关键点识别方法,利用视频识别模型获取所述视频中多帧图像的初始关键点数据以及多帧图像之间的光流数据;利用所述初始关键点数据、所述光流数据确定各帧图像对应的目标关键点数据;根据所述初始关键点数据和所述目标关键点数据更新所述视频识别模型;响应所述目标关键点数据满足预设条件,输出所述目标关键点数据。相较于现有技术,本技术根据所述初始关键点数据和所述目标关键点数据更新所述视频识别模型,将光流数据与关键点紧密结合,不需要后续的处理过程,降低了对视频关键点识别的复杂度,同时,响应所述目标关键点数据满足预设条件,输出所述目标关键点数据,在识别过程中一直在对视频识别模型进行更新,直到其满足预设条件,能够提升对视频关键点识别的识别精度。11.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明12.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:13.图1示出了可以应用本公开实施例的一种示例性系统架构的示意图;14.图2示意性示出本公开示例性实施例中一种视频关键点识别方法的流程图;15.图3示意性示出本公开示例性实施例中一种计算目标关键点数据的流程图;16.图4示意性示出本公开示例性实施例中一种更新所述视频识别模型的流程图;17.图5示意性示出本公开示例性实施例中一种视频关键点识别方法数据流向图;18.图6示意性示出本公开示例性实施例中另一种视频关键点识别方法的流程图;19.图7示意性示出本公开示例性实施例中视频关键点识别装置的组成示意图;20.图8示出了可以应用本公开实施例的一种电子设备的示意图。具体实施方式21.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。22.此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。23.图1示出了系统架构的示意图,该系统架构100可以包括终端110与服务器120。其中,终端110可以是智能手机、平板电脑、台式电脑、笔记本电脑等终端设备,服务器120泛指提供本示例性实施方式中视频关键点识别相关服务的后台系统,可以是一台服务器或多台服务器形成的集群。终端110与服务器120之间可以通过有线或无线的通信链路形成连接,以进行数据交互。24.在一种实施方式中,可以由终端110执行上述视频关键点识别方法。例如,用户使用终端110拍摄视频或者用户在终端110的相册中选取视频后,由终端110对视频进行关键点识别,输出目标关键点数据。25.在一种实施方式中,可以由服务器120可以执行上述视频关键点识别方法。例如,用户使用终端110拍摄视频或者用户在终端110的相册中选取视频后,终端110将该视频上传至服务器120,由服务器120对该视频进行关键点识别,向终端110返回目标关键点数据。26.由上可知,本示例性实施方式中的视频关键点识别方法的执行主体可以是上述终端110或服务器120,本公开对此不做限定。27.本公开的示例性实施方式还提供一种用于执行上述视频关键点识别方法的电子设备,该电子设备可以是上述终端110或服务器120。一般的,该电子设备可以包括处理器与存储器,存储器用于存储处理器的可执行指令,处理器配置为经由执行可执行指令来执行上述图像视频关键点识别方法。28.下面结合图2对本示例性实施方式中的视频关键点识别方法进行说明,图2示出了该视频关键点识别方法的示例性流程,可以包括:29.步骤s210,利用视频识别模型获取所述视频中多帧图像的初始关键点数据以及多帧图像之间的光流数据;30.步骤s220,利用所述初始关键点数据、所述光流数据确定各帧图像对应的目标关键点数据;31.步骤s230,根据所述初始关键点数据和所述目标关键点数据更新所述视频识别模型;32.步骤s240,响应所述目标关键点数据满足预设条件,输出所述目标关键点数据。33.基于上述方法,相较于现有技术,本技术根据所述初始关键点数据和所述目标关键点数据更新所述视频识别模型,将光流数据与关键点紧密结合,不需要后续的处理过程,降低了对视频关键点识别的复杂度,同时,响应所述目标关键点数据满足预设条件,输出所述目标关键点数据,在识别过程中一直在对视频识别模型进行更新,直到器满足预设条件,能够提升对视频关键点识别的识别精度。34.下面对图2中的每个步骤进行具体说明。35.参考图2,在步骤s210中,利用视频识别模型获取所述视频中多帧图像的初始关键点数据以及多帧图像之间的光流数据。36.在本公开的一种示例实施方式中,上述视频识别模型可以包括关键点识别子模型和光流计算子模型,其中,关键点识别子模型用于获取视频中各帧图像中的初始关键点数据;光流计算子模型用于获取视频中多帧图像之间的光流数据。37.需要说明的是,视频识别模型可以对人脸关键点进行识别,也可以对其他关键点进行识别,例如,人体骨骼、动物形体、植物等,还可以根据用户需求及进行自定义,在本示例实施方式中不做具体限定。38.在示例实施方式中,可以首先获取上述视频识别模型,即首先获取关键点识别子模型和光流计算子模型。39.在获取上述关键点识别子模型时,可以首先获取第一初始模型,然后获取第一训练数据,第一训练数据可以包括多张图像以及每张图像对应的关键点数据,以人脸关键点数据为例,其中人脸关键点数据中的关键点数量可以根据用户需求进行自定义,举例而言,两眼睛、鼻子、两嘴角五个点,也可以包括两百多个关键点,在本示例实施方式中不做具体限定。上述第一训练数据还可以包括视频数据以及视频数据中每一帧图像对应的关键点数据,关键点数据的具体细节上述已经进行了详细说明,因此,此处不再赘述。40.上述关键点识别子模型主要是基于深度学习的神经网络模型。例如,关键点识别子模型可以是基于前馈神经网络的。前馈网络可以被实现为无环图,其中节点布置在层中。通常,前馈网络拓扑包括输入层和输出层,输入层和输出层通过至少一个隐藏层分开。隐藏层将由输入层接收到的输入变换为对在输出层中生成输出有用的表示。网络节点经由边缘全连接至相邻层中的节点,但每个层内的节点之间不存在边缘。在前馈网络的输入层的节点处接收的数据经由激活函数被传播(即,“前馈”)至输出层的节点,所述激活函数基于系数(“权重”)来计算网络中的每个连续层的节点的状态,所述系数分别与连接这些层的边缘中的每一个相关联。关键点识别子模型可以是卷积神经网络(cnn)模型或循环神经网络(rnn)模型,但不限于此,也可以采用本领域技术人员公知的其他神经网络模型。41.关键点识别子模型是需要通过上述第一训练数据对第一初始模型训练获得。下面以上述第一初始模型为卷积神经网络(cnn)模型为例对第一初始模型的训练进行说明,在用于神经网络的监督式学习训练过程期间,将由网络响应于表示第一训练数据中的实例的输入至上述卷积神经网络(cnn)模型中,将得到卷积神经网络(cnn)模型的输出与该实例的“正确”的已标记输出相比较;计算表示所述输出与已标记输出之间的差异的误差信号;以及当将误差信号向后传播穿过网络的层时,调节与所述连接相关联的权重以最小化该误差。当从训练数据集的实例中生成的每个输出的误差被最小化时,该第一初始模型被视为“已经过训练”并定义为关键点识别子模型。42.在本示例实施方式中,上述光流计算子模型可以是卷积神经网络(cnn)模型或循环神经网络(rnn)模型,但不限于此,也可以采用本领域技术人员公知的其他神经网络模型。43.同理,上述光流计算子模型的训练过程也可以采用上述方式,具体而言,首先获取第二初始模型以及对应的第二训练数据,其中第二训练数据可以包括视频中多帧图像之间的光流数据,利用上述第二训练数据训练上述训练第二初始模型得到上述光流计算子模型。训练过程可以参照上述对第一初始模型的训练,在此不再赘述。44.在本示例实施方式中,在得到上述关键点识别模型之后,即得到上述光流计算子模型以及关键点识别子模型之后,可以将上述视频输入至上述光流计算子模型以及关键点识别子模型进而获得视频中的多帧图像之间的光流数据以及多帧图像对应的初始关键点数据。45.在本示例实施方式中,上述多帧图像可以是视频中的部分帧的图像,例如,10帧、20帧等,也可以是上述视频中所有帧的图像,还可以根据用户需求进行自定义,在本示例实施方式中不做具体限定。46.在步骤s220中,利用所述初始关键点数据、所述光流数据确定各帧图像对应的目标关键点数据。47.在本公开的一种示例实施方式中,可以设定上述视频中包括m帧图像,其中,m为正整数,参照图3所示,在利用所述初始关键点数据、所述光流数据确定各帧图像对应的目标关键点数据时可以分为如下集中情况,具体而言,在n等于1时,将所述第1帧的所述初始关键点数据作为所述第1帧的所述目标关键点数据。在n大于1且小于m时,可以包括步骤s310和步骤s320,具体而言,48.在步骤s310中,响应n大于1且小于m,获取第n-a帧的初始关键点数据、第n帧的初始关键点数据和第n a帧的初始关键点数据。49.在本示例实施方式中,在n大于1且小于m时,可以首先获取n-a帧的初始关键点数据、第n帧的初始关键点数据和第n a帧的初始关键点数据,其中a为正整数,例如1、2、3等,还可以根据用户需求进行自定义,在本示例实施方式中不做具体限定。50.在本示例实施方式中,n-a大于或等于1,n a小于或等于m。n和m均为正整数,且m大于或等于n。51.在本示例实施方式中,可以利用上述关键点识别子模型来获取第n-a帧的初始关键点数据、第n帧的初始关键点数据和第n a帧的初始关键点数据。52.在本示例实施方式中,在a等于1时,可以获取计算出较为准确的目标关键点数据。53.在步骤s320中,根据所述第n-a帧的初始关键点数据和第n a帧的初始关键点数据中的至少一种、第n帧的初始关键点数据、所述光流数据计算所述第n帧的所述目标关键点数据。54.在本公开的一种示例实施方式中,可以根据第n-a帧的初始关键点数据与第n帧的初始关键点数据以及光流数据来确定目标关键点数据,具体而言,可以根据第n-a帧的初始关键点数据和第n-a帧至第n帧的前向光流数据计算第n帧的第一中间关键点数据,然后将第一中间关键点数据和第n帧的初始关键点数据的平均值作为上述目标人脸关键数据,也可以将第n-a帧的初始人脸关键第一中间关键点数据与第n帧的初始关键点数据做加权平均来计算得到上述目标关键点数据,具体的计算方式还可以根据用户需求及进行自定义,在本示例实施方式中不做具体限定。55.在本公开的另一种示例实施方式中,可以根据第n a帧的初始关键点数据与第n帧的初始关键点数据以及光流数据来确定目标关键点数据,具体而言,首先可以第n a帧的初始关键点数据和第n a帧至第n帧的后向光流数据计算第n帧的第二中间关键点数据,然后可以将第二中间关键点数据和第n帧的初始关键点数据的平均值作为上述目标人脸关键数据,也可以将第二中间关键点数据与第n帧的初始关键点数据做加权平均来计算得到上述目标关键点数据。具体的计算方式还可以根据用户需求及进行自定义,在本示例实施方式中不做具体限定。56.在本公开的再一种示例实施方式中,可以根据上述第n-a帧的初始关键点数据、第n a帧的初始关键点数据和第n帧的初始关键点数据以及光流数据来计算上述目标关键点数据,具体而言,可以首先根据第n-a帧的初始关键点数据和第n-a帧至第n帧的前向光流数据计算第n帧的第一中间关键点数据,根据第n a帧的初始关键点数据和第n a帧至第n帧的后向光流数据计算第n帧的第二中间关键点数据;然后可以将第一中间关键点数据、第二中间关键点数据和第n帧的初始关键点数据的平均值作为上述目标人脸关键数据,也可以将第n-a帧的初始关键点数据、第n a帧的初始关键点数据与第n帧的初始关键点数据做加权平均来计算得到上述目标关键点数据。具体的计算方式还可以根据用户需求及进行自定义,在本示例实施方式中不做具体限定。57.在本公开的一种示例实施方式中,可以响应上述n等于m,获取第m-a帧的初始关键点数据、第m帧的初始关键点数据,并根据第m-a帧的初始关键点数据、第m帧的初始关键点数据以及光流数据计算第m帧的目标关键点数据。具体而言,可以利用上述关键点识别子模型获取第m-a帧的初始关键点数据、第m帧的初始关键点数据,然后根据上述第m-a帧的初始关键点数据第m-a帧至第m帧的前向光流数据计算第m帧的第三中间关键点数据,之后将第三中间关键点数据和第m帧的初始关键点数据的平均值作为第m帧的目标关键点数据,计算第m帧的目标关键点数据的方式还可以根据用户需求进行自定义,在本示例实施方式中不做具体限定。58.在步骤s230中,根据所述初始关键点数据和所述目标关键点数据更新所述视频识别模型;59.在步骤s240中,响应所述目标关键点数据满足预设条件,输出所述目标关键点数据。60.在本公开的一种示例实施方式中,根据所述初始关键点数据和所述目标关键点数据更新所述视频识别模型可以包括步骤s410至步骤s430,具体如下:61.在步骤s410中,计算所述初始关键点数据和所述目标关键点数据之间的误差值。62.在本示例实施方式中,可以计算初始关键点数据与目标关键点数据之间的误差值,具体可以为将初始关键点数据与目标关键点数据做差并求其绝对值作为上述误差值。63.在计算得到上述误差值之后,可以首先判定上述目标关键点数据是否满足预设条件,若上述目标关键点数据满足预设条件,则将上述目标关键点数据输出,此时不需要对上述模型进行更新,即在上述目标关键点数据满足预设条件时,即停止更新上述视频识别模型,若上述目标关键点数据不满足上述预设条件,则执行步骤s420。64.在本示例实施方式中,上述预设条件可以是上述误差值小于或等于第二预设值,其中,第二预设值的取值可以是2、2.5等,也可以根据用户需求进行自定义,在本示例实施方式中不做具体限定。65.在步骤s420中,响应所述误差值小于或等于第一预设值,利用所述目标关键点数据更新所述关键点识别子模型。66.在本示例实施方式中,在可以首先设定一个第一预设值,其中第一预设值的数值可以是10、9等正整数,也可以是例如9.1、9.5等小数,孩可以根据用户需求进行自定义,在示例实施方式中不做具体限定。67.在本示例实施方式中,在上述目标关键点数据不满足上述预设条件,且在上述误差值小于或者等于上述第一预设值时,可以判定为上述关键点识别子模型的精度不够,则利用上述目标关键点数据更新上述脸关键点识别子模型。68.在步骤s430中,响应所述误差值大于第一预设值,利用所述初始关键点数据更新所述光流计算子模型。69.在本示例实施方式中,若上述误差值大于上述第一预设值,则判定上述光流计算子模型精度不足,可以利用上述初始关键点数据更新上述光流计算子模型。70.在本公开的一种示例实施方式中,可以重复上述步骤s410至步骤s430,直至上述目标关键点数据满足预设条件,最后输出满足预设条件的目标关键点数据,在上述目标关键点数据满足预设条件时,停止对模型的更新完成对视频关键点数据的提取。71.在本公开的一种示例实施方式中,在首次得到目标关键点数据之后,可以判定目标关键点数据是否满足预设条件,直接利用目标关键点数据和初始关键点数据更新上述视频识别模型,在第二次得到目标关键点数据之后,才开始判断上述目标关键点数据是否满足预设条件,在上述目标关键点数据满足预设条件时,停止更新上述视频识别模型,并输出目标关键点数据,若不满足则持续更新上述视频识别模型,直至上述目标关键点数据满足预设条件。72.在本公开的一种示例实施方式中,可以参照图5所示,采用一具体的示例实施方式对上述视频关键点数据提取方法进行说明,首先可以利用关键点识别子模型502获取视频中的多帧图像501的初始关键点数据503,然后将上述初始关键点数据503均输入至上述光流计算子模型504中,获取各帧图像之间的光流向量505,然后根据上述初始关键点数据503和光流向量505计算目标关键点数据506,之后确定上述目标关键点数据是否满足预设条件,若满足,则输出目标关键点数据,若不满足,则根据确定上述目标关键点数据与初始关键点数据之间的误差值507,若上述误差值小于或等于第一预设值,则利用上述目标关键点数据更新关键点识别子模型502,若大于等于第一预设值,则利用上述初始关键点数据更新上述光流计算子模型504。73.参照图6所示,以上述a等于1为例,对上述视频人脸检测模型进行详细说明,首先可以执行步骤s610,将待识别的视频解码为帧,然后执行步骤s620,使用预训练好的关键点识别子模型进行关键点检测得到初始关键点数据;之后执行步骤s630,使用光流模型对输入的视频帧计算光流向量,在本示例实施方式中,光流向量可以包括前向光流向量和后向光流向量,前向光流向量即从t-1时刻到t时刻的光流向量v(t-1,t);后向光流向量即从t 1时刻到t时刻的光流向量v(t 1,t)。其次,执行步骤s640,基于光流向量,分别计算关键点根据光流向量计算第一中间关键点数据和第二中间关键点数据,即第一中间关键点数据ldmk_det(t-1) v(t-1,t)和第二中间关键点数据ldmk_det(t 1) v(t 1,t),然后执行步骤s650,根据第一中间关键点数据和第二中间关键点数据计算t时刻的目标关键点数据((ldmk_det(t-1) v(t-1,t)) (ldmk_det(t 1) v(t 1,t)) ldmk_det(t))/3;执行步骤s610至步骤s650,过滤所有帧的关键点得到ldmk_f;之后执行步骤s660,计算初始关键点数据与目标关键点数据的误差值;在得到上述误差值之后,执行步骤s670,判断所述误差值是否满足预设条件,若满足,则执行步骤s680输出目标关键点数据,若不满足,则执行步骤s690,若上述误差值小于或等于第一预设值,则执行步骤s691,利用上述目标关键点数据更新关键点识别子模型,若大于等于第一预设值,则执行步骤s692,利用上述初始关键点数据更新上述光流计算子模型。具体而言,通过计算误差值dif=||ldmk_det-ldmk_f||来判断光流模型的计算结果是否准确,如果误差值diff小于第一预设值,则认为光流计算是准确的,使用光流计算得到的关键点ldmk_dif_small替换模型预测的关键点;否则是不准确的,保留模型预测的关键点ldmk_dif_large,利用初始关键点数据更新上述光流计算子模型。74.综上所述,本示例性实施方式中,根据所述初始关键点数据和所述目标关键点数据更新所述视频识别模型,将光流数据与关键点紧密结合,不需要后续的处理过程,降低了对视频关键点识别的复杂度,同时,响应所述目标关键点数据满足预设条件,输出所述目标关键点数据,在识别过程中一直在对视频识别模型进行更新,直到其满足预设条件,能够提升对视频关键点识别的识别精度。在不准确场景下,光流模型通过学习关键点模型输出的坐标的形式来提升光流模型预测的准确性,用光流模型和关键点检测模型无监督的互学习的形式来提升关键点检测模型的坐标预测稳定性。75.需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。76.进一步的,参考图7所示,本示例的实施方式中还提供一种视频关键点识别装置700,包括获取模块710、计算模块720、更新模块730和输出模块740。其中:77.获取模块710可以用于利用视频识别模型获取所述视频中多帧图像的初始关键点数据以及多帧图像之间的光流数据。78.在本示例实施方式中,所述视频识别模型包括:关键点识别子模型,用于获取所述视频中各帧图像中的初始关键点数据;光流计算子模型,用于获取所述视频中多帧图像之间的光流数据。79.计算模块720可以用于利用所述初始关键点数据、所述光流数据确定各帧图像对应的目标关键点数据。80.在本公开的一种示例实施方式中,所述视频包括m帧图像,所述利用所述初始关键点数据、所述光流数据计算各帧图像对应的目标关键点数据包括:响应n大于1且小于m,获取第n-a帧的初始关键点数据、第n帧的初始关键点数据和第n a帧的初始关键点数据;根据所述第n-a帧的初始关键点数据和第n a帧的初始关键点数据中的至少一种、第n帧的初始关键点数据、所述光流数据计算所述第n帧的所述目标关键点数据;其中,a正整数,且n-a大于或等于1,n a小于或等于m。81.在本示例实施方式中,所述光流数据包括前向光流数据和后向光流数据,根据所述第n-a帧的初始关键点数据和第n a帧的初始关键点数据中的至少一种、第n帧的初始关键点数据、所述光流数据计算所述第n帧的所述目标关键点数据,包括:根据所述第n-a帧的初始关键点数据和第n-a帧至第n帧的所述前向光流数据计算第n帧的第一中间关键点数据;和/或根据所述第n a帧的初始关键点数据和第n a帧至第n帧的所述后向光流数据计算第n帧的第二中间关键点数据;根据第n帧的第二中间关键点数据和第n帧的第一中间关键点数据中的至少一种,以及所述第n帧的初始关键点数据、计算所述第n帧的所述目标关键点数据。82.在本公开的一种示例实施方式中,计算模块720响应n等于1,将所述第1帧的所述初始关键点数据作为所述第1帧的所述目标关键点数据;响应n等于m,获取第m-a帧的初始关键点数据、第m帧的初始关键点数据,并根据所述第m-a帧的初始关键点数据、第m帧的初始关键点数据以及所述光流数据计算所述第m帧的所述目标关键点数据。在根据所述第m-a帧的初始关键点数据、第m帧的初始关键点数据以及所述光流数据计算所述第m帧的所述目标关键点数据时,可以根据所述第m-a帧的初始关键点数据、第m帧的初始关键点数据以及所述光流数据计算所述第m帧的所述目标关键点数据。83.在一示例性实施例中,更新模块730可以用于根据所述初始关键点数据和所述目标关键点数据更新所述视频识别模型,具体而言,计算所述初始关键点数据和所述目标关键点数据之间的误差值;响应所述误差值小于或等于第一预设值,利用所述目标关键点数据更新所述关键点识别子模型;响应所述误差值大于第一预设值,利用所述初始关键点数据更新所述光流计算子模型。84.输出模块740可以用于响应所述目标关键点数据满足预设条件,输出所述目标关键点数据,具体而言,响应所述误差值小于或等于第二预设值,输出所述目标关键点数据;其中,所述第一预设值大于所述第二预设值。。85.上述装置中各模块的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。86.下面以图8中的移动终端800为例,对该电子设备的构造进行示例性说明。本领域技术人员应当理解,除了特别用于移动目的的部件之外,图8中的构造也能够应用于固定类型的设备。87.如图8所示,移动终端800具体可以包括:处理器801、存储器802、总线803、移动通信模块804、天线1、无线通信模块805、天线2、显示屏806、摄像模块807、音频模块808、电源模块809与传感器模块210。88.处理器801可以包括一个或多个处理单元,例如:处理器801可以包括ap(applicationprocessor,应用处理器)、调制解调处理器、gpu(graphicsprocessingunit,图形处理器)、isp(imagesignalprocessor,图像信号处理器)、控制器、编码器、解码器、dsp(digitalsignalprocessor,数字信号处理器)、基带处理器和/或npu(neural-networkprocessingunit,神经网络处理器)等。本示例性实施方式中的视频关键点识别方法可以由ap、gpu或dsp来执行,当方法涉及到神经网络相关的处理时,可以由npu来执行。89.编码器可以对图像或视频进行编码(即压缩),例如可以将目标图像编码为特定的格式,以减小数据大小,便于存储或发送。解码器可以对图像或视频的编码数据进行解码(即解压缩),以还原出图像或视频数据,如可以读取目标图像的编码数据,通过解码器进行解码,以还原出目标图像的数据,进而对该数据进行视频关键点识别的相关处理。移动终端800可以支持一种或多种编码器和解码器。这样,移动终端800可以处理多种编码格式的图像或视频,例如:jpeg(jointphotographicexpertsgroup,联合图像专家组)、png(portablenetworkgraphics,便携式网络图形)、bmp(bitmap,位图)等图像格式,mpeg(movingpictureexpertsgroup,动态图像专家组)1、mpeg2、h.263、h.264、hevc(highefficiencyvideocoding,高效率视频编码)等视频格式。90.处理器801可以通过总线803与存储器802或其他部件形成连接。91.存储器802可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器801通过运行存储在存储器802的指令,执行移动终端800的各种功能应用以及数据处理。存储器802还可以存储应用数据,例如存储图像,视频等文件。92.移动终端800的通信功能可以通过移动通信模块804、天线1、无线通信模块805、天线2、调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。移动通信模块804可以提供应用在移动终端800上2g、3g、4g、5g等移动通信解决方案。无线通信模块805可以提供应用在移动终端800上的无线局域网、蓝牙、近场通信等无线通信解决方案。93.显示屏806用于实现显示功能,如显示用户界面、图像、视频等。摄像模块807用于实现拍摄功能,如拍摄图像、视频等。音频模块808用于实现音频功能,如播放音频,采集语音等。电源模块809用于实现电源管理功能,如为电池充电、为设备供电、监测电池状态等。传感器模块810可以包括深度传感器8101、压力传感器8102、陀螺仪传感器8103、气压传感器8104等,以实现相应的感应检测功能。94.所属
技术领域
:的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。95.本公开的示例性实施方式还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。96.需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。97.在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。98.此外,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如java、c 等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。99.本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本技术旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本
技术领域
:中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。100.应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。当前第1页12当前第1页12
再多了解一些

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

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

相关文献