关键点处理方法及装置、可读存储介质、终端与流程

文档序号:27311368发布日期:2021-11-09 22:32阅读:62来源:国知局
1.本发明涉及图像处理
技术领域
:,尤其涉及一种关键点处理方法及装置、可读存储介质、终端。
背景技术
::2.在视频图像处理技术中,随着视频美颜瘦脸、视频实时变脸/换妆、基于视频手势/人体骨骼关键点检测的体感游戏等应用的推广,对于人脸识别的平滑性和稳定性的要求越来越高。3.然而,由于视频流中的人脸运动状态较为复杂,如人脸姿态的变化、人脸在图像平面内的平移、人脸与摄像头距离的变化导致人脸大小的变化等因素,均可能导致在变脸后发生关键点平滑性不足的问题。4.亟需一种关键点处理方法,能够有效提高人脸关键点的平滑性。技术实现要素:5.本发明解决的技术问题是提供一种关键点处理方法及装置、可读存储介质、终端,可以提高关键点处理后的人脸平滑性。6.为解决上述技术问题,本发明实施例提供一种关键点处理方法,包括:在视频中采集前一帧图像和当前帧图像,并分别检测多个关键点的位置;对于每个关键点,确定所述前一帧图像和当前帧图像的位置偏移量,然后对所述位置偏移量进行滤波处理,得到滤波后帧间偏移量;对于每个关键点,根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置。7.可选的,采用下述公式,确定所述前一帧图像和当前帧图像的位置偏移量,然后对所述位置偏移量进行滤波处理,得到滤波后帧间偏移量:8.diffoffset=rigidcur‑rigidpre9.diffsmooth=filter(diffoffset,radius)10.其中,diffoffset用于表示该关键点在所述前一帧图像和当前帧图像的位置偏移量,rigidcur用于表示该关键点在所述当前帧图像的关键点的位置,rigidpre用于表示所述前一帧图像中该关键点的位置,filter()用于表示滤波处理函数,diffsmooth用于表示该关键点的滤波后帧间偏移量,radius用于表示滤波半径。11.可选的,采用下述公式,根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置:12.dstpts=rigidpre+diffsmooth13.其中,dstpts用于表示该关键点在所述当前帧图像的调整后的位置,rigidpre用于表示所述前一帧图像中该关键点的位置,diffsmooth用于表示该关键点的滤波后帧间偏移量。14.可选的,在根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置之前,还包括:根据滤波后帧间偏移量,确定帧间最大全局偏移量;根据所述帧间最大全局偏移量以及第一分段线性函数,确定第一关键点偏移回归系数;根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置包括:根据所述滤波后帧间偏移量与所述第一关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置。15.可选的,采用下述公式,根据所述帧间最大全局偏移量以及第一分段线性函数,确定第一关键点偏移回归系数:16.f1(diffmax)=0,ifdiffmax≤1;17.f1(diffmax)=(diffmax‑n)/(n‑1)+1,elseif1<diffmax≤n;18.f1(diffmax)=1,elseifdiffmax≥n;19.其中,diffmax用于表示帧间最大全局偏移量,f1(x)用于表示第一分段线性函数,f1(diffmax)用于表示第一关键点偏移回归系数,n为正有理数。20.可选的,历史视频中相邻两帧图像之间的一个或多个关键点位置抖动均值越小,所述n选值越小。21.可选的,采用下述公式,根据所述滤波后帧间偏移量与所述第一关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置:22.dstpts=rigidpre+f1(diffmax)×diffsmooth23.其中,dstpts用于表示该关键点在所述当前帧图像的调整后的位置,rigidpre用于表示所述前一帧图像中该关键点的位置,f1(diffmax)用于表示第一关键点偏移回归系数,diffsmooth用于表示该关键点的滤波后帧间偏移量。24.可选的,在根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置之前,关键点处理方法还包括:根据滤波后帧间偏移量,确定帧间最大全局偏移量;根据各个关键点在所述前一帧图像和当前帧图像的位置偏移量,确定关键点采集稳定性标定参数;根据所述帧间最大全局偏移量、所述关键点采集稳定性标定参数以及第二分段线性函数,确定第二关键点偏移回归系数;根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置包括:根据所述滤波后帧间偏移量与所述第二关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置。25.可选的,采用下述公式,根据滤波后帧间偏移量,确定帧间最大全局偏移量:26.diffmax=max(diffsmooth_all)27.其中,diffmax用于表示帧间最大全局偏移量,max()为最大值函数,diffsmooth_all用于表示各个关键点的滤波后帧间偏移量。28.可选的,采用下述公式,根据各个关键点在所述前一帧图像和当前帧图像的位置偏移量,确定关键点采集稳定性标定参数:29.diffpts=abs(rigidcur‑rigidpre)30.stablethr=min(m,max(diffpts_all))31.其中,diffpts用于表示该关键点在所述前一帧图像和当前帧图像的位置偏移量的绝对值,abs()用于表示绝对值函数,diffpts_all用于表示各个关键点在所述前一帧图像和当前帧图像的位置偏移量的绝对值,max()为最大值函数,min()为最小值函数,stablethr用于表示关键点采集稳定性标定参数,m为正有理数。32.可选的,选择历史视频中相邻两帧图像,该两帧图像之间的一个或多个关键点位置抖动均值越小,所述m选值越小。33.可选的,采用下述公式,根据所述帧间最大全局偏移量、所述关键点采集稳定性标定参数以及第二分段线性函数,确定第二关键点偏移回归系数:34.f2(diffmax)=0,ifdiffmax≤1;35.f2(diffmax)=(diffmax‑stablethr)/(stablethr‑1)+1,elseif1<diffmax≤stablethr;36.f2(diffmax)=1,elseifdiffmax≥stablethr;37.其中,diffmax用于表示帧间最大全局偏移量,f2(x)用于表示第二分段线性函数,f2(diffmax)用于表示第二关键点偏移回归系数,stablethr为关键点采集稳定性标定参数。38.可选的,采用下述公式,根据所述滤波后帧间偏移量与所述第二关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置:39.dstpts=rigidpre+f2(diffmax)×diffsmooth40.其中,dstpts用于表示该关键点在所述当前帧图像的调整后的位置,rigidpre用于表示所述前一帧图像中该关键点的位置,f2(diffmax)用于表示第二关键点偏移回归系数,diffsmooth用于表示该关键点的滤波后帧间偏移量。41.可选的,满足以下一项或多项:所述关键点为人脸关键点;所述关键点的位置为所述关键点在图像中的像素点序号。42.为解决上述技术问题,本发明实施例提供一种关键点处理装置,包括:关键点位置检测模块,用于在视频中采集前一帧图像和当前帧图像,并分别检测多个关键点的位置;滤波模块,用于对于每个关键点,确定所述前一帧图像和当前帧图像的位置偏移量,然后对所述位置偏移量进行滤波处理,得到滤波后帧间偏移量;位置调整模块,用于对于每个关键点,根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置。43.为解决上述技术问题,本发明实施例提供一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时执行上述关键点处理方法的步骤。44.为解决上述技术问题,本发明实施例提供一种终端,包括存储器和处理器,所述存储器上存储有能够在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行上述关键点处理方法的步骤。45.与现有技术相比,本发明实施例的技术方案具有以下有益效果:46.在本发明实施例中,通过对前一帧图像和当前帧图像的位置偏移量进行滤波处理,得到滤波后帧间偏移量,再根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置,可以利用局部滤波平滑技术滤除局部点的抖动。相比于现有技术中,由于帧间检测相对独立,不存在信息交互,且帧间人脸图像质量存在如噪声、亮度等差异,使得即便人脸在视频中处于静止,人脸关键点检测的帧间结果不可避免的存在对齐偏差,表现为人脸关键点无规则抖动,采用本发明实施例的方案,可以利用局部滤波平滑技术,求取全局点相对运动的同时滤除局部点的无规律抖动,提高关键点处理后的人脸平滑性。47.进一步,根据所述帧间最大全局偏移量以及第一分段线性函数,确定第一关键点偏移回归系数;根据所述滤波后帧间偏移量与所述第一关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置,可以通过使用分段线性函数,实现视频流人脸关键点的静态稳定和动态回归。48.进一步,根据各个关键点在所述前一帧图像和当前帧图像的位置偏移量,确定关键点采集稳定性标定参数;根据所述帧间最大全局偏移量、所述关键点采集稳定性标定参数以及第二分段线性函数,确定第二关键点偏移回归系数;根据所述滤波后帧间偏移量与所述第二关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置,可以对人脸关键点检测模型进行稳定性标定,通过获取稳定性标定参数以知晓采集模型的稳定性情况,方便实现最佳的视频流人脸关键点稳定效果。进一步地,结合关键点采集稳定性标定参数,得到分段线性函数,可以进一步提高视频流人脸关键点的静态稳定和动态回归。49.进一步,所述关键点的位置为所述关键点在图像中的像素点序号,有效降低算法复杂度。附图说明50.图1是本发明实施例中第一种关键点处理方法的流程图;51.图2是本发明实施例中的人脸关键点示意图;52.图3是本发明实施例中第二种关键点处理方法的流程图;53.图4是本发明实施例中第三种关键点处理方法的流程图;54.图5是本发明实施例中第四种关键点处理方法的流程图;55.图6是本发明实施例中一种关键点处理装置的结构示意图。具体实施方式56.在视频图像处理技术中,由于视频流中的人脸运动状态较为复杂,可能导致在变脸后发生关键点平滑性不足的问题,需要提高人脸关键点的平滑性。57.在本发明实施例中,通过对前一帧图像和当前帧图像的位置偏移量进行滤波处理,得到滤波后帧间偏移量,再根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置,可以利用局部滤波平滑技术滤除局部点的抖动。相比于现有技术中,由于帧间检测相对独立,不存在信息交互,且帧间人脸图像质量存在如噪声、亮度等差异,使得即便人脸在视频中处于静止,人脸关键点检测的帧间结果不可避免的存在对齐偏差,表现为人脸关键点无规则抖动,采用本发明实施例的方案,可以利用局部滤波平滑技术,求取全局点相对运动的同时滤除局部点的无规律抖动,提高关键点处理后的人脸平滑性。58.为使本发明的上述目的、特征和有益效果能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。59.参照图1,图1是本发明实施例中第一种关键点处理方法的流程图。所述第一种关键点处理方法可以包括步骤s11至步骤s13:60.步骤s11:在视频中采集前一帧图像和当前帧图像,并分别检测多个关键点的位置;61.步骤s12:对于每个关键点,确定所述前一帧图像和当前帧图像的位置偏移量,然后对所述位置偏移量进行滤波处理,得到滤波后帧间偏移量;62.步骤s13:对于每个关键点,根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置。63.可以理解的是,在具体实施中,所述方法可以采用软件程序的方式实现,该软件程序运行于芯片或芯片模组内部集成的处理器中。64.在步骤s11的具体实施中,所述视频可以为正在录制的视频,如美颜瘦脸、视频实时变脸/换妆的视频,还可以为录播传输中的视频,如具有主播互动功能的瘦脸、变脸视频等。在瘦脸、变脸后,需要继续保持一致性,也就需要持续对当前帧图像进行调整。65.进一步地,所述关键点可以为人脸关键点,从而对视频中的人脸进行调整,提高人脸显示的平滑性。66.在进行人脸关键点检测前,可以先对视频流图像进行人脸面部识别,检出人脸位置信息,根据人脸位置信息截取完整面部区域,然后进行人脸关键点检测,检测结果为人脸面部关键点位置信息。67.进一步地,所述关键点的位置可以为所述关键点在图像中的像素点序号。68.以一帧图像为996×1024pixel为例,则可以采用不同方向上的像素点数量进行表示,如500×500pixel可以表示横向(如x轴方向)像素点序号为500,纵向(如y轴方向)像素点序号为500的唯一关键点。69.在本发明实施例中,所述关键点的位置为所述关键点在图像中的像素点序号,有效降低算法复杂度。70.参照图2,图2是本发明实施例中的人脸关键点示意图。71.所述关键点可以是脸颊、眼睛、嘴巴、眉毛和鼻子等,具体地,可以采用人脸关键点检测模型检测脸颊、眼睛、嘴巴、眉毛和鼻子等在图像中的位置信息。72.在图中以104个关键点为示例,可以理解的是,关键点提取越多,越有利于提高关键点处理后的人脸平滑性,然而处理速率将受到影响,严重时出现视频卡顿,也会影响用户体验。73.继续参照图1,在步骤s12的具体实施中,对于每个关键点,针对两帧图像的位置偏移量进行滤波处理。74.进一步地,采用下述公式,确定所述前一帧图像和当前帧图像的位置偏移量,然后对所述位置偏移量进行滤波处理,得到滤波后帧间偏移量:75.diffoffset=rigidcur‑rigidpre76.diffsmooth=filter(diffoffset,radius)77.其中,diffoffset用于表示该关键点在所述前一帧图像和当前帧图像的位置偏移量,rigidcur用于表示该关键点在所述当前帧图像的关键点的位置,rigidpre用于表示所述前一帧图像中该关键点的位置,filter()用于表示滤波处理函数,diffsmooth用于表示该关键点的滤波后帧间偏移量,radius用于表示滤波半径。78.在步骤s13中,在所述当前帧图像,调整该关键点的位置。79.进一步地,可以采用下述公式,根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置:80.dstpts=rigidpre+diffsmooth81.其中,dstpts用于表示该关键点在所述当前帧图像的调整后的位置,rigidpre用于表示所述前一帧图像中该关键点的位置,diffsmooth用于表示该关键点的滤波后帧间偏移量。82.在本发明实施例中,通过对前一帧图像和当前帧图像的位置偏移量进行滤波处理,得到滤波后帧间偏移量,再根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置,可以利用局部滤波平滑技术滤除局部点的抖动。相比于现有技术中,由于帧间检测相对独立,不存在信息交互,且帧间人脸图像质量存在如噪声、亮度等差异,使得即便人脸在视频中处于静止,人脸关键点检测的帧间结果不可避免的存在对齐偏差,表现为人脸关键点无规则抖动,采用本发明实施例的方案,可以利用局部滤波平滑技术,求取全局点相对运动的同时滤除局部点的无规律抖动,提高关键点处理后的人脸平滑性。83.参照图3,图3是本发明实施例中第二种关键点处理方法的流程图。所述第二种关键点处理方法可以包括图1中的步骤s11至步骤s12,还可以包括步骤s31至步骤s33,以下对步骤s31至步骤s33进行说明。84.需要指出的是,步骤s31至步骤s32可以在步骤s11之前执行,还可以在步骤s12之后执行,在本发明实施例中,步骤的序号不代表对各步骤之间的执行顺序的限制。85.在步骤s31中,根据滤波后帧间偏移量,确定帧间最大全局偏移量。86.进一步地,可以采用下述公式,根据滤波后帧间偏移量,确定帧间最大全局偏移量:87.diffmax=max(diffsmooth_all)88.其中,diffmax用于表示帧间最大全局偏移量,max()为最大值函数,diffsmooth_all用于表示各个关键点的滤波后帧间偏移量。89.在步骤s32中,根据所述帧间最大全局偏移量以及第一分段线性函数,确定第一关键点偏移回归系数。90.进一步地,可以采用下述公式,根据所述帧间最大全局偏移量以及第一分段线性函数,确定第一关键点偏移回归系数:91.f1(diffmax)=0,ifdiffmax≤1;92.f1(diffmax)=(diffmax‑n)/(n‑1)+1,elseif1<diffmax≤n;93.f1(diffmax)=1,elseifdiffmax≥n;94.其中,diffmax用于表示帧间最大全局偏移量,f1(x)用于表示第一分段线性函数,f1(diffmax)用于表示第一关键点偏移回归系数,n为正有理数。95.进一步地,所述n选值可以是根据经验数据确定的,例如根据历史视频中相邻两帧图像之间的一个或多个关键点位置抖动均值确定。关键点位置抖动均值越小,所述n选值越小。96.其中,历史视频中相邻两帧图像可以是在人脸保持静止状态下的相邻两帧图像,例如可以在人脸保持静止状态下,提前拍摄至少包含两帧图像的视频,然后采用同样的关键点检测模型检测相邻两帧图像的关键点的位置偏移量,并确定关键点位置的抖动均值。97.其中,关键点位置抖动均值可以是相邻两帧图像的关键点的位置偏移量的均值,其中,所述位置偏移量可以为x轴方向上的像素点差值以及y轴方向上的像素点差值。98.在步骤s33中,根据所述滤波后帧间偏移量与所述第一关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置。99.进一步地,可以采用下述公式,根据所述滤波后帧间偏移量与所述第一关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置:100.dstpts=rigidpre+f1(diffmax)×diffsmooth101.其中,dstpts用于表示该关键点在所述当前帧图像的调整后的位置,rigidpre用于表示所述前一帧图像中该关键点的位置,f1(diffmax)用于表示第一关键点偏移回归系数,diffsmooth用于表示该关键点的滤波后帧间偏移量。102.在本发明实施例中,根据所述帧间最大全局偏移量以及第一分段线性函数,确定第一关键点偏移回归系数;根据所述滤波后帧间偏移量与所述第一关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置,可以通过使用分段线性函数,实现视频流人脸关键点的静态稳定和动态回归。也即在提高平滑性的同时,提高成像稳定性。103.参照图4,图4是本发明实施例中第三种关键点处理方法的流程图。所述第三种关键点处理方法可以包括图1中的步骤s11至步骤s12,还可以包括步骤s41至步骤s44,以下对步骤s41至步骤s44进行说明。104.需要指出的是,步骤s41至步骤s43可以在步骤s11之前执行,还可以在步骤s12之后执行,在本发明实施例中,步骤的序号不代表对各步骤之间的执行顺序的限制。105.在步骤s41中,根据滤波后帧间偏移量,确定帧间最大全局偏移量。106.进一步地,可以采用下述公式,根据滤波后帧间偏移量,确定帧间最大全局偏移量:107.diffmax=max(diffsmooth_all)108.其中,diffmax用于表示帧间最大全局偏移量,max()为最大值函数,diffsmooth_all用于表示各个关键点的滤波后帧间偏移量。109.在步骤s42中,根据各个关键点在所述前一帧图像和当前帧图像的位置偏移量,确定关键点采集稳定性标定参数。110.进一步地,可以采用下述公式,根据各个关键点在所述前一帧图像和当前帧图像的位置偏移量,确定关键点采集稳定性标定参数:111.diffpts=abs(rigidcur‑rigidpre)112.stablethr=min(m,max(diffpts_all))113.其中,diffpts用于表示该关键点在所述前一帧图像和当前帧图像的位置偏移量的绝对值,abs()用于表示绝对值函数,diffpts_all用于表示各个关键点在所述前一帧图像和当前帧图像的位置偏移量的绝对值,max()为最大值函数,min()为最小值函数,stablethr用于表示关键点采集稳定性标定参数,m为正有理数。114.更进一步地,所述m选值可以是根据经验数据确定的,例如根据历史视频中相邻两帧图像之间的一个或多个关键点位置抖动均值确定。关键点位置抖动均值越小,所述m选值越小。115.可以理解的是,m选值不应当过大,否则会导致过于钝感,抖动过大也仍然得不到抑制,例如人员确实进行了移动却误以为是正常抖动;m选值不应当过小,否则会导致过于敏感,较小抖动都判断为人员移动。116.作为一个非限制性的例子,m可以采用1.5~5,例如m=2。117.其中,历史视频中相邻两帧图像可以是在人脸保持静止状态下的相邻两帧图像,例如可以在人脸保持静止状态下,提前拍摄至少包含两帧图像的视频,然后采用同样的关键点检测模型检测相邻两帧图像的关键点的位置偏移量,并确定关键点位置的抖动均值。118.其中,关键点位置抖动均值可以是相邻两帧图像的关键点的位置偏移量的均值,其中,所述位置偏移量可以为x轴方向上的像素点差值以及y轴方向上的像素点差值。119.在本发明实施例中,通过确定各个关键点在所述前一帧图像和当前帧图像的位置偏移量的绝对值的最大值,然后与m进行比较,保留其中的较小值,可以在两帧图像偏移过大时,保留m值,可以避免抖动极值的影响,进一步有效提高成像稳定性。120.在步骤s43中,根据所述帧间最大全局偏移量、所述关键点采集稳定性标定参数以及第二分段线性函数,确定第二关键点偏移回归系数。121.进一步地,可以采用下述公式,根据所述帧间最大全局偏移量、所述关键点采集稳定性标定参数以及第二分段线性函数,确定第二关键点偏移回归系数:122.f2(diffmax)=0,ifdiffmax≤1;123.f2(diffmax)=(diffmax‑stablethr)/(stablethr‑1)+1,elseif1<diffmax≤stablethr;124.f2(diffmax)=1,elseifdiffmax≥stablethr;125.其中,diffmax用于表示帧间最大全局偏移量,f2(x)用于表示第二分段线性函数,f2(diffmax)用于表示第二关键点偏移回归系数,stablethr为关键点采集稳定性标定参数。126.在本发明实施例中,引用关键点采集稳定性标定参数得到第二分段线性函数,可以避免抖动极值的影响的情况下,进行动态回归处理,进一步提高稳定性。127.在步骤s44中,根据所述滤波后帧间偏移量与所述第二关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置。128.进一步地,可以采用下述公式,根据所述滤波后帧间偏移量与所述第二关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置:129.dstpts=rigidpre+f2(diffmax)×diffsmooth130.其中,dstpts用于表示该关键点在所述当前帧图像的调整后的位置,rigidpre用于表示所述前一帧图像中该关键点的位置,f2(diffmax)用于表示第二关键点偏移回归系数,diffsmooth用于表示该关键点的滤波后帧间偏移量。131.在本发明实施例中,根据各个关键点在所述前一帧图像和当前帧图像的位置偏移量,确定关键点采集稳定性标定参数;根据所述帧间最大全局偏移量、所述关键点采集稳定性标定参数以及第二分段线性函数,确定第二关键点偏移回归系数;根据所述滤波后帧间偏移量与所述第二关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置,可以对人脸关键点检测模型进行稳定性标定,通过获取稳定性标定参数以知晓采集模型的稳定性情况,方便实现最佳的视频流人脸关键点稳定效果。进一步地,结合关键点采集稳定性标定参数,得到分段线性函数,可以进一步提高视频流人脸关键点的静态稳定和动态回归。132.参照图5,图5是本发明实施例中第四种关键点处理方法的流程图。所述第四种关键点处理方法可以包括步骤s51至步骤s57,以下对各个步骤进行说明。133.在步骤s51中,面部识别。134.具体地,对视频中的人脸进行面部识别,以检出人脸位置信息。在本发明实施例中,对于具体的面部识别的方法不做限制。135.在步骤s52中,检测人脸关键点的像素点序号。136.具体地,可以根据人脸位置信息截取完整面部区域,然后进行人脸关键点检测,检测结果为人脸面部关键点位置信息,所述关键点的位置可以为所述关键点在图像中的像素点序号,可以采用不同方向上的像素点序号表示。137.进一步地,在检测人脸关键点的像素点序号之后,可以采用rigidcur表示该关键点在所述当前帧图像的关键点的位置,采用rigidpre表示所述前一帧图像中该关键点的位置。138.在步骤s53中,滤波处理。139.具体地,可以确定所述前一帧图像和当前帧图像的位置偏移量,然后对所述位置偏移量进行滤波处理,得到滤波后帧间偏移量。140.在步骤s54中,确定帧间最大全局偏移量。141.具体地,可以根据前一步骤中确定的滤波后帧间偏移量,确定帧间最大全局偏移量。142.在步骤s55中,确定关键点采集稳定性标定参数。143.具体地,可以根据各个关键点在所述前一帧图像和当前帧图像的位置偏移量,确定关键点采集稳定性标定参数。144.在步骤s56中,确定第二分段线性函数。145.具体地,可以将稳定性标定参数引入第二分段线性函数,根据所述帧间最大全局偏移量、所述关键点采集稳定性标定参数以及第二分段线性函数,确定第二关键点偏移回归系数。146.在步骤s57中,调整关键点的位置。147.具体地,可以根据所述滤波后帧间偏移量与所述第二关键点偏移回归系数的乘积,以及前一帧图像的位置,调整该关键点在所述当前帧图像的位置。148.在具体实施中,有关步骤s51至步骤s57的更多详细内容请参照图1至图4中的步骤描述进行执行,此处不再赘述。149.参照图6,图6是本发明实施例中一种关键点处理装置的结构示意图。所述关键点处理装置可以包括:150.关键点位置检测模块61,用于在视频中采集前一帧图像和当前帧图像,并分别检测多个关键点的位置;151.滤波模块62,用于对于每个关键点,确定所述前一帧图像和当前帧图像的位置偏移量,然后对所述位置偏移量进行滤波处理,得到滤波后帧间偏移量;152.位置调整模块63,用于对于每个关键点,根据所述滤波后帧间偏移量与前一帧图像的位置,调整该关键点在所述当前帧图像的位置。153.在具体实施中,上述装置可以对应于用户设备中具有数据处理功能的芯片;或者对应于用户设备中包括具有数据处理功能芯片的芯片模组,或者对应于用户设备。154.本发明实施例还提供了一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器运行时执行上述方法的步骤。所述可读存储介质可以是计算机可读存储介质,例如可以包括非挥发性存储器(non‑volatile)或者非瞬态(non‑transitory)存储器,还可以包括光盘、机械硬盘、固态硬盘等。155.具体地,在本发明实施例中,所述处理器可以为中央处理单元(centralprocessingunit,简称cpu),该处理器还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,简称dsp)、专用集成电路(applicationspecificintegratedcircuit,简称asic)、现成可编程门阵列(fieldprogrammablegatearray,简称fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。156.还应理解,本技术实施例中的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read‑onlymemory,简称rom)、可编程只读存储器(programmablerom,简称prom)、可擦除可编程只读存储器(erasableprom,简称eprom)、电可擦除可编程只读存储器(electricallyeprom,简称eeprom)或闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,简称ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的随机存取存储器(randomaccessmemory,简称ram)可用,例如静态随机存取存储器(staticram,简称sram)、动态随机存取存储器(dram)、同步动态随机存取存储器(synchronousdram,简称sdram)、双倍数据速率同步动态随机存取存储器(doubledataratesdram,简称ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,简称esdram)、同步连接动态随机存取存储器(synchlinkdram,简称sldram)和直接内存总线随机存取存储器(directrambusram,简称drram)。157.本发明实施例还提供了一种终端,包括存储器和处理器,所述存储器上存储有能够在所述处理器上运行的计算机程序,所述处理器运行所述计算机程序时执行上述方法的步骤。所述终端包括但不限于手机、计算机、平板电脑等终端设备。158.应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,本文中字符“/”,表示前后关联对象是一种“或”的关系。159.本技术实施例中出现的“多个”是指两个或两个以上。160.本技术实施例中出现的第一、第二等描述,仅作示意与区分描述对象之用,没有次序之分,也不表示本技术实施例中对设备个数的特别限定,不能构成对本技术实施例的任何限制。161.关于上述实施例中描述的各个装置、产品包含的各个模块/单元,其可以是软件模块/单元,也可以是硬件模块/单元,或者也可以部分是软件模块/单元,部分是硬件模块/单元。例如,对于应用于或集成于芯片的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于芯片内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现;对于应用于或集成于芯片模组的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,不同的模块/单元可以位于芯片模组的同一组件(例如芯片、电路模块等)或者不同组件中,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于芯片模组内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现;对于应用于或集成于终端的各个装置、产品,其包含的各个模块/单元可以都采用电路等硬件的方式实现,不同的模块/单元可以位于终端内同一组件(例如,芯片、电路模块等)或者不同组件中,或者,至少部分模块/单元可以采用软件程序的方式实现,该软件程序运行于终端内部集成的处理器,剩余的(如果有)部分模块/单元可以采用电路等硬件方式实现。162.虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1