一种轻型的人脸跟踪方法和存储设备与流程

文档序号:25023414发布日期:2021-05-11 16:48阅读:71来源:国知局
一种轻型的人脸跟踪方法和存储设备与流程
本发明涉及软件调度
技术领域
,特别涉及一种轻型的人脸跟踪方法和存储设备。
背景技术
:npu的工作原理:1、打开npu专用芯片设备;2、传入模型文件,得到模型task;3、获取task的输入输出信息;4、拷贝输入数据到模型内存中;5、运行模型,得到输出数据。可以得出结论,npu一次只能执行一个模型。基于深度学习的人脸识别算法包括:人脸检测或人脸跟踪、活体检测、人脸识别三个模型。目前人脸识别算法普遍是运行在npu上,根据npu工作原理,这三个模型必须按照顺序,依次执行。这样导致极大地消耗ddr带宽资源。ddr带宽资源过高会影响设备整体功耗。技术实现要素:为此,需要提供一种轻型的人脸跟踪方法,用以解决现有人脸资源识别算法消耗ddr带宽资源过高的技术问题。具体技术方案如下:一种轻型的人脸跟踪方法,包括步骤:检测是否有人脸检测算法抢占不到npu,若有,判断抢占不到npu的人脸检测算法是否符合预设条件,若符合预设条件,则根据预设规则切换所述人脸检测算法至cpu上运行。进一步的,所述“判断抢占不到npu的人脸检测算法是否符合预设条件”,具体还包括步骤:判断抢占不到npu的人脸检测算法是否为对符合预设条件的对实时性要求高的算法。进一步的,所述“则根据预设规则切换所述人脸检测算法至cpu上运行”,具体还包括步骤:在cpu上通过opencv运行人脸检测算法。为解决上述技术问题,还提供了一种存储设备,具体技术方案如下:一种存储设备,其中存储有指令集,所述指令集用于执行:检测是否有人脸检测算法抢占不到npu,若有,判断抢占不到npu的人脸检测算法是否符合预设条件,若符合预设条件,则根据预设规则切换所述人脸检测算法至cpu上运行。进一步的,所述指令集还用于执行:所述“判断抢占不到npu的人脸检测算法是否符合预设条件”,具体还包括步骤:判断抢占不到npu的人脸检测算法是否为对符合预设条件的对实时性要求高的算法。进一步的,所述指令集还用于执行:所述“则根据预设规则切换所述人脸检测算法至cpu上运行”,具体还包括步骤:在cpu上通过opencv运行人脸检测算法。本发明的有益效果是:检测是否有人脸检测算法抢占不到npu,若有,判断抢占不到npu的人脸检测算法是否符合预设条件,若符合预设条件,则根据预设规则切换所述人脸检测算法至cpu上运行。通过上述步骤,可使得npu和cpu搭配运行人脸检测算法,使得不仅降低了cpu的使用频率,而且,npu的带宽也得到提高。附图说明图1为具体实施方式所述一种轻型的人脸跟踪方法的流程图;图2为具体实施方式所述一种轻型的人脸跟踪方法的应用示意图;图3为具体实施方式所述一种存储设备的模块示意图。附图标记说明:300、存储设备。具体实施方式为详细说明技术方案的技术内容、构造特征、所实现目的及效果,以下结合具体实施例并配合附图详予说明。请参阅图1,在本实施方式中,一种轻型的人脸跟踪方法可应用在存储设备上,所述存储设备内设置有npu和cpu。具体实施方式如下:步骤s101:是否有人脸检测算法抢占不到npu?步骤s102:抢占不到npu的人脸检测算法是否符合预设条件?步骤s103:根据预设规则切换所述人脸检测算法至cpu上运行。实时或定时监测是否有人脸检测算法抢占不到npu,若有抢占不到npu的人脸检测算法,则进一步判断抢占不到npu的人脸检测算法是否符合预设条件。在本实施方式中,优选为判断抢占不到npu的人脸检测算法是否为对符合预设条件的对实时性要求高的算法。而对于实时性的需求是和具体产品相关的,比如在人脸识别产品中,显示的人脸框是需要实时动态更新的,不能被卡住,这就要求人脸检测算法需要按一定的帧率执行,比如25fps。若抢占不到npu的人脸检测算法符合预设条件,则根据预设规则切换所述人脸检测算法至cpu上运行。如图2所示,则为部分人脸识别算法在npu上运行,而部分人脸识别算法则被切换到cpu上运行。检测是否有人脸检测算法抢占不到npu,若有,判断抢占不到npu的人脸检测算法是否符合预设条件,若符合预设条件,则根据预设规则切换所述人脸检测算法至cpu上运行。通过上述步骤,可使得npu和cpu搭配运行人脸检测算法,使得不仅降低了cpu的使用频率,而且,npu的带宽也得到提高。其中对比结果如下:cpu占用率(mediaserver)cpu带宽npu带宽帧率track_frame=025.00%9.35%41.22%30track_frame=520.00%10.85%11.43%30track_frame=0:表示全部用npu进行检测。track_frame=5:表示每5帧用npu检测一帧,其他帧用cpu跑。可见,通过在cpu上面运行脸轻型的人脸跟踪算法,不仅降低了cpu的使用频率,而且,npu的带宽提高了接近30%。进一步的,所述“则根据预设规则切换所述人脸检测算法至cpu上运行”,具体还包括步骤:在cpu上通过opencv运行人脸检测算法。避免了当npu被人脸识别算法独占的时候(一般人脸检测算法需要执行几百毫秒的时间),人脸检测算法得不到执行的问题。请参阅图2至图3,在本实施方式中,一种存储设备300的具体实施方式如下:一种存储设备,其中存储有指令集,所述指令集用于执行:检测是否有人脸检测算法抢占不到npu,若有,判断抢占不到npu的人脸检测算法是否符合预设条件,若符合预设条件,则根据预设规则切换所述人脸检测算法至cpu上运行。实时或定时监测是否有人脸检测算法抢占不到npu,若有抢占不到npu的人脸检测算法,则进一步判断抢占不到npu的人脸检测算法是否符合预设条件。在本实施方式中,优选为判断抢占不到npu的人脸检测算法是否为对符合预设条件的对实时性要求高的算法。而对于实时性的需求是和具体产品相关的,比如在人脸识别产品中,显示的人脸框是需要实时动态更新的,不能被卡住,这就要求人脸检测算法需要按一定的帧率执行,比如25fps。若抢占不到npu的人脸检测算法符合预设条件,则根据预设规则切换所述人脸检测算法至cpu上运行。如图2所示,则为部分人脸识别算法在npu上运行,而部分人脸识别算法则被切换到cpu上运行。检测是否有人脸检测算法抢占不到npu,若有,判断抢占不到npu的人脸检测算法是否符合预设条件,若符合预设条件,则根据预设规则切换所述人脸检测算法至cpu上运行。通过上述步骤,可使得npu和cpu搭配运行人脸检测算法,使得不仅降低了cpu的使用频率,而且,npu的带宽也得到提高。其中对比结果如下:cpu占用率(mediaserver)cpu带宽npu带宽帧率track_frame=025.00%9.35%41.22%30track_frame=520.00%10.85%11.43%30track_frame=0:表示全部用npu进行检测。track_frame=5:表示每5帧用npu检测一帧,其他帧用cpu跑。可见,通过在cpu上面运行脸轻型的人脸跟踪算法,不仅降低了cpu的使用频率,而且,npu的带宽提高了接近30%。进一步的,所述指令集还用于执行:所述“则根据预设规则切换所述人脸检测算法至cpu上运行”,具体还包括步骤:在cpu上通过opencv运行人脸检测算法。避免了当npu被人脸识别算法独占的时候(一般人脸检测算法需要执行几百毫秒的时间),人脸检测算法得不到执行的问题。需要说明的是,尽管在本文中已经对上述各实施例进行了描述,但并非因此限制本发明的专利保护范围。因此,基于本发明的创新理念,对本文所述实施例进行的变更和修改,或利用本发明说明书及附图内容所作的等效结构或等效流程变换,直接或间接地将以上技术方案运用在其他相关的
技术领域
,均包括在本发明的专利保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1