识别引擎的监控方法、装置、设备及存储介质与流程

文档序号:23705457发布日期:2021-01-23 13:00阅读:72来源:国知局
识别引擎的监控方法、装置、设备及存储介质与流程

[0001]
本公开涉及人工智能技术领域,尤其涉及识别引擎的监控方法、装置、设备及存储介质。


背景技术:

[0002]
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。其中,在人工智能硬件层面的设备产品,例如门禁设备上会存在着一些因识别引擎辨版本更新、参数迭代、功能开发、模型更新等,带来的识别速度慢、识别错误率高等辨识性能问题,对通行效率带来极大困扰。因此,亟需一种识别引擎的监控方案,以实时对识别引擎的识别处理过程进行监控,进而及时为定位识别引擎存在的辨识性能问题的原因提供数据支持。


技术实现要素:

[0003]
本公开提供一种识别引擎的监控方法、装置、设备及存储介质。本公开的技术方案如下:
[0004]
根据本公开实施例的一方面,提供一种识别引擎的监控方法,包括:
[0005]
响应于对目标识别引擎的监控指令,获取所述目标识别引擎的待识别数据,将所述待识别数据存储到共享内存;
[0006]
触发所述目标识别引擎的识别处理进程;
[0007]
复刻所述识别处理进程,得到所述识别处理进程的识别处理子进程;
[0008]
创建所述目标识别引擎的识别处理进程与所述识别处理子进程间的通信管道;
[0009]
基于所述通信管道监控所述识别处理进程的识别处理过程,所述识别处理过程为根据所述共享内存中的待识别数据执行识别处理的过程。
[0010]
采用上述技术方案,在识别引擎进行识别处理过程中,通过共享内存和通信管道技术相结合的方式,可以实时的监控目标识别引擎的识别处理过程,为定位识别引擎存在的辨识性能问题的原因提供数据支持,便于后续及时定位分析出目标识别引擎存在的辨识性能问题的原因。
[0011]
在一个可选的实施例中,在获取所述目标识别引擎的待识别数据之前,所述方法还包括:
[0012]
获取模式配置文件;
[0013]
根据所述模式配置文件,确定监控模式。
[0014]
通过模式配置文件的设置,可以提供多种监控模式,提高对识别引擎监控的灵活性。
[0015]
在一个可选的实施例中,在所述监控模式为静态引擎分析模式的情况下,所述获取目标识别引擎的待识别数据包括:
[0016]
利用预设复制工具从远程设备上复制所述待识别数据;
[0017]
将所述待识别数据存储在本地设备的第一指定目录;
[0018]
所述将所述待识别数据存储到共享内存包括:
[0019]
将所述第一指定目录中存储的待识别数据存储到所述共享内存。
[0020]
在一个可选的实施例中,在所述监控模式为动态引擎分析模式的情况下,所述获取目标识别引擎的待识别数据包括:
[0021]
利用本地设备上的摄像装置采集所述待识别数据,将所述摄像装置采集的待识别数据存储到本地设备的第一指定目录;
[0022]
所述将所述待识别数据存储到共享内存包括:
[0023]
将所述第一指定目录中存储的待识别数据存储到所述共享内存。
[0024]
在对目标识别引擎进行监控过程中,采用不同监控模式进行监控,实现了对目标识别引擎的多种监控模式的灵活切换,在提高对目标识别引擎监控的灵活性的同时,更好的满足用户需求。
[0025]
在一个可选的实施例中,在所述监控模式为动态引擎分析模式的情况下,在所述响应于对目标识别引擎的监控指令之前,所述方法还包括:
[0026]
配置所述目标识别引擎的帧率间隔参数;
[0027]
所述将所述第一指定目录中的待识别数据存储到所述共享内存包括:
[0028]
按照所述帧率间隔参数从所述第一指定目录中存储的待识别数据中,筛选目标待识别数据;
[0029]
将所述目标待识别数据存储到所述共享内存;
[0030]
所述目标识别引擎在识别处理进程中,基于所述共享内存中的待识别数据进行识别处理,得到识别处理结果包括:
[0031]
所述目标识别引擎在所述识别处理进程中,基于所述共享内存中的目标待识别数据进行识别处理,得到所述识别处理结果。
[0032]
在动态引擎分析模式下,通过设置目标识别引擎的帧率间隔参数,可以对实时采集的图像进行筛选,使得选取的图像(目标待识别数据)与目标识别引擎处理能力相匹配,降低目标识别引擎的计算压力,进而提高目标识别引擎的稳定性。
[0033]
在一个可选的实施例中,所述基于所述通信管道监控所述识别处理进程的识别处理过程包括:
[0034]
利用所述识别处理子进程从所述通信管道,获取在所述识别处理进程中执行识别处理得到的识别处理结果;
[0035]
存储所述识别处理结果,实现实时获取目标识别引擎的识别处理结果,为定位识别引擎存在的辨识性能问题的原因提供数据支持,便于后续及时定位分析出目标识别引擎存在的辨识性能问题的原因。
[0036]
在一个可选的实施例中,在存储所述识别处理结果之后,所述方法还包括:
[0037]
基于存储的识别处理结果对所述目标识别引擎进行性能分析,得到所述目标识别引擎的性能分析结果;
[0038]
渲染所述性能分析结果,进而可以实现对目标识别引擎性能的实时分析。
[0039]
根据本公开实施例的另一方面,提供一种别引擎的监控装置,包括:
[0040]
待识别数据获取模块,被配置为执行响应于对目标识别引擎的监控指令,获取所
述目标识别引擎的待识别数据;
[0041]
待识别数据存储模块,被配置为执行将所述待识别数据存储到共享内存;
[0042]
识别处理进程触发模块,被配置为执行触发所述目标识别引擎的识别处理进程;
[0043]
进程复刻模块,被配置为执行复刻所述识别处理进程,得到所述识别处理进程的识别处理子进程;
[0044]
通信管道创建模块,被配置为执行创建所述目标识别引擎的识别处理进程与所述识别处理子进程间的通信管道;
[0045]
识别处理过程监控模块,被配置为执行基于所述通信管道监控所述识别处理进程的识别处理过程,所述识别处理过程为根据所述共享内存中的待识别数据执行识别处理的过程。
[0046]
在一个可选的实施例中,所述装置还包括:
[0047]
模式配置文件获取模块,被配置为执行在获取所述目标识别引擎的待识别数据之前,获取模式配置文件;
[0048]
监控模式确定模块,被配置为执行根据所述模式配置文件,确定监控模式。
[0049]
在一个可选的实施例中,在所述监控模式为静态引擎分析模式的情况下,所述待识别数据获取模块包括:
[0050]
待识别数据复制单元,被配置为执行利用预设复制工具从远程设备上复制所述待识别数据;
[0051]
第一待识别数据存储单元,被配置为执行将所述待识别数据存储在本地设备的第一指定目录;
[0052]
所述待识别数据存储模块具体被配置为执行将所述第一指定目录中存储的待识别数据存储到所述共享内存。
[0053]
在一个可选的实施例中,在所述监控模式为动态引擎分析模式的情况下,所述装置还包括:
[0054]
帧率间隔参数配置模块,被配置为执行在所述响应于对目标识别引擎的监控指令之前,配置所述目标识别引擎的帧率间隔参数;
[0055]
所述第一待识别数据存储单元具体被配置为执行按照所述帧率间隔参数从所述第一指定目录中存储的待识别数据中,筛选目标待识别数据;以及将所述目标待识别数据存储到所述共享内存。
[0056]
在一个可选的实施例中,在所述监控模式为动态引擎分析模式的情况下,所述待识别数据获取模块可以包括:
[0057]
待识别数据采集单元,被配置为执行利用本地设备上的摄像装置采集所述待识别数据;
[0058]
第二待识别数据存储单元,被配置为执行将所述摄像装置采集的待识别数据存储到本地设备的第一指定目录;
[0059]
所述待识别数据存储模块具体被配置为执行将所述第一指定目录中存储的待识别数据存储到所述共享内存。
[0060]
在一个可选的实施例中,所述识别处理过程监控模块包括:
[0061]
识别处理结果获取单元,被配置为执行利用所述识别处理子进程从所述通信管
道,获取在所述识别处理进程中执行识别处理得到的识别处理结果;
[0062]
识别处理结果存储单元,被配置为执行存储所述识别处理结果。
[0063]
在一个可选的实施例中,所述装置还包括:
[0064]
性能分析模块,被配置为执行基于存储的识别处理结果对所述目标识别引擎进行性能分析,得到所述目标识别引擎的性能分析结果;
[0065]
性能分析结果渲染模块,被配置为执行渲染所述性能分析结果。
[0066]
根据本公开实施例的另一方面,提供一种识别引擎的监控设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如上述任一项所述的方法。
[0067]
根据本公开实施例的另一方面,提供一种计算机可读存储介质,当所述存储介质中的指令由识别引擎的监控设备的处理器执行时,使得所述识别引擎的监控设备能够执行本公开实施例的上述任一所述方法。
[0068]
根据本公开实施例的另一方面,提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本公开实施例的上述任一项所述的方法。
[0069]
本公开的实施例提供的技术方案至少带来以下有益效果:
[0070]
在识别引擎进行识别处理过程中,通过共享内存和通信管道技术相结合的方式,可以实时的监控目标识别引擎的识别处理过程,为定位识别引擎存在的辨识性能问题的原因提供数据支持,便于后续及时定位分析出目标识别引擎存在的辨识性能问题的原因。
[0071]
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
[0072]
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
[0073]
图1是根据一示例性实施例示出的一种识别引擎的监控方法的应用环境示意图;
[0074]
图2是根据一示例性实施例示出的一种识别引擎的监控方法的流程示意图;
[0075]
图3是根据一示例性实施例示出的一种识别引擎的监控方法的流程示意图;
[0076]
图4是根据一示例性实施例示出的一种识别引擎的监控方法的流程示意图;
[0077]
图5是根据一示例性实施例示出的一种识别引擎的监控装置框图;
[0078]
图6是根据一示例性实施例示出的一种识别引擎的监控装置框图;
[0079]
图7是根据一示例性实施例示出的一种识别引擎的监控装置框图;
[0080]
图8是根据一示例性实施例示出的一种终端的结构示意图。
具体实施方式
[0081]
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
[0082]
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或
描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
[0083]
图1是根据一示例性实施例示出的一种识别引擎的监控方法的应用环境示意图;如图1所示,本公开实施例提供的识别引擎的监控方法可以应用于门禁设备100,具体的,该门禁设备100上运行有动态引擎监控工具101和目标识别引擎102。
[0084]
在一个可选的实施例中,目标识别引擎102可以为人脸识别引擎,相应的,动态引擎监控工具101可以用于实时监控人脸识别引擎,实时的获取人脸识别引擎的人脸识别结果,以便能够及时基于获取到的识别处理结果对目标识别引擎的辨识性能问题进行分析定位。
[0085]
此外,需要说明的是,上述图1对应的应用环境仅仅是本说明书实施例中的一种示例,在实际应用中,本说明书实施例提供的识别引擎的监控方法还可以包括其他应用环境,例如还可以应用于收银设备等,目标识别引擎还可以为语音识别引擎等。
[0086]
以下介绍本公开一种识别引擎的监控方法的实施例,图2是根据一示例性实施例示出的一种识别引擎的监控方法的流程示意图,本说明书提供了如实施例或流程图的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图2所示,上述方法可以由运行有目标识别引擎的设备执行,也可以由运行有目标识别引擎的设备上的动态引擎监控工具执行,具体的,可以包括:
[0087]
s201:响应于对目标识别引擎的监控指令,获取目标识别引擎的待识别数据。
[0088]
本说明书实施例中,目标识别引擎可以为监控对象;待识别数据可以为目标识别引擎需要识别处理的数据。待识别数据可以结合目标识别引擎的识别功能不同而不同,例如待识别数据可以为图像数据,也可以为语音数据。在一些实施例中,可以利用运行有目标识别引擎的设备上的采集装置来实时的采集待识别数据,也可以从远程设备获取待识别数据。
[0089]
在本实施例中,远程设备可以包括但不限于终端或服务器,目标识别引擎所在设备和远程设备可以通过有线或无线通信方式进行直接或间接地连接,本公开在此不做限制。
[0090]
在一个具体的实施例中,在从远程设备获取待识别数据的情况下,可以利用预设复制工具从远程设备上复制待识别数据。
[0091]
可选的,预设复制工具可以为winscp(secure copy,安全复制),winscp是一个windows环境下使用ssh(secure shell,安全协议外壳)的开源图形化sftp(ssh file transfer protocol,ssh文件传输协议)客户端。
[0092]
此外,需要说明的是,预设复制工具并不仅限于上述的winscp,在实际应用中,可以采用其他复制工具,例如scp-r(linux下的远程拷贝)。
[0093]
在另一个具体的实施例中,在利用运行有目标识别引擎的设备上的采集装置来实时的采集待识别数据的情况下,若待识别数据为图像数据,采集装置可以为摄像装置,相应
的,可以利用运行有目标识别引擎的设备上的摄像装置采集图像数据,以获取待识别数据。
[0094]
在另一个具体的实施例中,在利用运行有目标识别引擎的设备上的采集装置来实时的采集待识别数据的情况下,若待识别数据为语音数据,采集装置可以为麦克风,相应的,可以利用运行有目标识别引擎的设备上的麦克风采集语音数据,以获取待识别数据。
[0095]
在一些实施例中,对目标识别引擎的监控指令可以由用户触发,可选的,以运行有人脸识别引擎的门禁设备为例,该监控指令可以为某一用户触发的人脸识别指令;在实际应用中,可以先确认摄像装置是否可用,在确认可用的情况下,获取待识别数据,并将待识别数据存储到本地设备的第一指定目录。
[0096]
在一些实施例中,本地设备可以为运行有目标识别引擎的设备。第一指定目录可以为预先设定的用于存储待识别数据的目录。此外,还可以预先配置好存储的待识别数据的数据格式,以便按照统一的格式进行存储,便于数据的管理。
[0097]
s203:将待识别数据存储到共享内存。
[0098]
可选的,在待识别数据存储在本地设备的第一指定目录的情况下,步骤s203中将待识别数据存储到共享内存可以包括:将第一指定目录中存储的待识别数据存储到共享内存。
[0099]
在实际应用中,设备上的多个程序间可以通过设备中的共享内存来传递信息;在一些实施例中,目标识别引擎和用于监控目标识别引擎的动态引擎监控工具可以为设备上运行的两个程序。可选的,当运行有目标识别引擎的设备上具有多个共享内存时,动态引擎监控工具可以绑定一个共享内存,并启动目标识别引擎,该目标识别引擎也绑定该共享内存,相应的,动态引擎监控工具可以将获取的待识别数据存储到共享内存,以便将待识别数据传输给目标识别引擎。
[0100]
本说明书实施例中,在对目标识别引擎进行监控过程中,通过将获取的目标识别引擎的待识别数据存储到共享内存,可以将动态引擎监控工具获取的待识别数据与目标识别引擎共享。
[0101]
s205:触发目标识别引擎的识别处理进程。
[0102]
在一些实施例中,在将待识别数据存储到共享内存之后,可以触发目标识别引擎的识别处理进程,以便目标识别引擎在识别处理进程中,根据共享内存中的待识别数据执行识别处理。
[0103]
s207:复刻识别处理进程,得到识别处理进程的识别处理子进程。
[0104]
s209:创建目标识别引擎的识别处理进程与识别处理子进程间的通信管道。
[0105]
在一个可选的实施例中,可以利用fork(分叉)函数复刻识别处理进程,得到该识别处理进程的识别处理子进程。具体的,复刻出的识别处理子进程为识别处理进程的子进程相应的,识别处理进程为识别处理子进程的父进程。在实际应用中,每个进程各自有不同的用户地址空间,任何一个进程的运行过程中的数据在另一个进程中都看不到,相应的,可以建立进程间通信(ipc,interprocess communication)。
[0106]
在一些实施例中,可以通过创建识别处理进程与识别处理子进程间的通信管道,实现识别处理进程与识别处理子进程间的通信。可选的,本实施例中的通信管道可以为有名管道。
[0107]
本实施例中,通过复刻出识别处理进程的识别处理子进程,并创建识别处理进程
与识别处理子进程间的通信管道,可以实现识别处理进程与识别处理子进程间的通信,以便动态引擎监控工具侧的识别处理子进程可以通过通信管道来监控目标识别引擎在该识别处理进程中执行处理的过程。
[0108]
s211:基于通信管道监控识别处理进程的识别处理过程,该识别处理过程为根据共享内存中的待识别数据执行识别处理的过程。
[0109]
在一个可选的实施例中,基于通信管道监控识别处理进程的识别处理过程可以包括:
[0110]
利用识别处理子进程从通信管道,获取在识别处理进程中执行识别处理得到的识别处理结果;存储该识别处理结果。
[0111]
本说明书实施例中,识别处理结果可以结合目标识别引擎的识别功能不同而不同,例如,若目标识别引擎为人脸识别引擎,即目标识别引擎具有人脸识别功能的情况下,识别处理结果可以包括是活体或非活体等。
[0112]
在实际应用中,识别处理结果可以存储在本地设备的第二指定目录,第二指定目录可以为预先设定的用于存储识别处理结果的目录,以实现对不同时刻获取到的识别处理结果的批量存储,便于数据的管理。此外,还可以预先配置好存储的识别处理结果的数据格式,以便按照统一的格式进行存储。
[0113]
上述实施例中,通过创建识别处理进程与识别处理子进程间的通信管道,可以实现识别处理进程与识别处理子进程间的通信,目标识别引擎在上述识别处理进程中,根据共享内存中的待识别数据执行识别处理,得到的识别处理结果可以由识别处理进程存储到通信管道,动态引擎识别工具可以利用识别处理子进程从通信管道获取识别处理结果,进而实现将目标识别引擎的识别处理结果,通过通信管道实时传输给动态引擎监控工具,实现对目标识别引擎的实时监控,以为后续定位识别引擎存在的辨识性能问题的原因提供数据支持。
[0114]
在实际应用中,在采用动态引擎监控工具对目标识别引擎进行监控的情况下,可以预先进入目标识别引擎所在设备的/etc/root系统目录(属于root用户的目录),进行动态引擎监控工具的权限配置,以便动态引擎监控工具可以对目标识别引擎进行监控。
[0115]
本说明书实施例中,在识别引擎进行识别处理过程中,通过共享内存和通信管道技术相结合的方式,由共享内存将待识别数据共享给目标识别引擎,以便目标识别引擎执行相应的识别处理;同时结合通信管道技术将目标识别引擎执行识别处理得到的识别处理结果,由目标识别引擎的识别处理进程存储到通信管道,并利用识别处理子进程从通信管道实时获取,实现实时监控目标识别引擎的识别处理过程,进而及时的获取识别处理过程的识别处理结果,为定位识别引擎存在的辨识性能问题的原因提供数据支持,便于后续及时定位分析出目标识别引擎存在的辨识性能问题的原因。
[0116]
在一个可选的实施例中,在存储识别处理结果之后,如图3所示,上述方法还可以包括:
[0117]
s213:基于存储的识别处理结果对目标识别引擎进行性能分析,得到目标识别引擎的性能分析结果。
[0118]
s215:渲染上述性能分析结果。
[0119]
在一个可选的实施例中,在识别处理结果存储至本地设备的第二指定目录的情况
下,可以定时从第二指定目录中获取存储的识别处理结果,以对一段时间内的识别处理结果进行性能分析。可选的,当获取的待识别数据往往包括多份待识别数据(例如多张人脸图像),相应的,在由目标识别引擎分别对这多份待识别数据进行识别处理,并得到对应的识别处理结果之后,可以结合这多份识别处理结果对目标识别引擎进行性能分析,实现对目标识别引擎性能的实时分析。
[0120]
在实际应用中,不同识别功能的目标识别引擎,对应的能反映其性能的指标数据不同,相应的,可以结合实际需求,进行相应的性能分析,以得到能够反映目标识别引擎性能的指标数据(性能分析结果包括指标数据)。
[0121]
在一个具体的实施例中,在目标识别引擎为人脸识别引擎的情况下,可以反映人脸识别引擎性能的指标数据可以包括但不限于tar(true accept rate,认真率)、far(fail accept rate,认假率)和verfifystatus(识别状态)等。其中,tar可以为将相同身份的两张人脸图像识别为同一个人的比例;far可以为将不同身份的两张人脸图像识别为同一个人的比例;verfifystatus可以为是否正确识别人脸图像中用户的身份。
[0122]
在另一个具体的实施例中,在目标识别引擎为语音识别引擎的情况下,可以反映语音识别引擎性能的指标数据可以包括但不限于ser(sentence error rate,句错误率),wer(word error rate,词错率/字错率)。其中,ser为错误识别的句子的比例;wer可以为错误识别的字的比例。
[0123]
可选的,可以结合预设的渲染工具,对存储的识别处理结果进行性能分析,以得到相应的性能分析结果(指标数据),并渲染出性能分析结果。
[0124]
可选的,在目标识别引擎为人脸识别引擎的情况下,性能分析结果还可以包括landmark(人脸关键点),相应的,还可以将人脸关键点渲染至相应的人脸图像中,以便用户知道是否是因为关键点定位不准确导致的识别错误,实现辨识问题的精准定位。
[0125]
上述实施例的方法通过对实时获取的识别处理结果的分析,得到能够反映目标识别引擎性能优劣的性能分析结果,再结合待识别数据本身的质量,可以快速的确定出识别引擎出现识别速度慢、识别错误率高(真人识别通过率低,真人被误判为非活体、假人攻击为真人)等辨识性能问题是目标识别引擎内部的识别模型本身缺陷,还是原始图像、语音等待识别数据的质量差带来的,实现了从根本上分析定位出目标识别引擎辨识性能问题的归因,大大节省了定位辨识性能问题原因的时间,进而后续可以有针对进行修复,有效解决门禁设备等产品应用中面临的通行效率低下的问题。
[0126]
在实际应用中,可以结合实际需求预先进行监控模式的配置,将记录有监控模式的配置文件设置在运行有目标识别引擎的设备上。可选的,监控模式可以包括动态引擎分析模式,也可以包括静态引擎分析模式。
[0127]
在一个可选的实施例中,在获取目标识别引擎的待识别数据之前,上述方法还可以包括:
[0128]
获取模式配置文件;
[0129]
根据模式配置文件,确定监控模式。
[0130]
在一些实施例中,动态引擎分析模式可以包括对线上实时使用过程中的目标识别引擎进行监控,即将目标识别引擎在实时的使用过程中的识别处理结果记录并存储下来。静态引擎分析模式可以包括结合预先设置的待识别数据对线下的目标识别引擎进行监控,
即将目标识别引擎在线下对预先设置的待识别数据的识别处理结果记录并存储下来。
[0131]
在一个具体的实施例中,在监控模式为动态引擎分析模式的情况下,对目标识别引擎的监控指令可以由用户触发,可选的,以运行有人脸识别引擎的门禁设备为例,该性能监控指令可以为某一用户触发的人脸识别指令;在实际应用中,在动态引擎分析模式下,可以先确认摄像装置是否可用,在确认可用的情况下,获取待识别数据。具体的,在监控模式为动态引擎分析模式的情况下,获取目标识别引擎的待识别数据可以包括:利用本地设备上的摄像装置采集待识别数据;将摄像装置采集的待识别数据存储到本地设备的第一指定目录。
[0132]
可选的,在目标识别引擎为语音识别引擎的情况下,可以结合本地设备上的麦克风进行待识别数据的采集,并将麦克风采集的待识别数据存储到本地设备的第一指定目录。
[0133]
在一些实施例中,第一指定目录可以为预先设定的用于存储待识别数据的目录。本地设备可以为目标识别引擎所在的设备。
[0134]
可选的,在待识别数据存储在本地设备的第一指定目录的情况下,上述步骤s203中将待识别数据存储到共享内存可以包括:将第一指定目录中存储的待识别数据存储到共享内存。
[0135]
本说明书实施例中,在需要采用摄像装置采集的图像作为待识别数据的场景中,若监控模式为动态引擎分析模式,在响应于对目标识别引擎的监控指令之前,上述方法还可以包括:
[0136]
配置目标识别引擎的帧率间隔参数;
[0137]
相应的,上述将第一指定目录中的待识别数据存储到共享内存可以包括:
[0138]
按照帧率间隔参数从第一指定目录中存储的待识别数据中,筛选目标待识别数据;
[0139]
将目标待识别数据存储到共享内存。
[0140]
相应的,目标识别引擎在识别处理进程中,基于共享内存中的目标待识别数据进行识别处理。
[0141]
在一些实施例中,帧率间隔参数可以为目标识别引擎每秒处理的待识别数据(图像)的数量。具体的,由于在动态引擎分析模式的情况下,摄像装置可以实时采集图像,目标识别引擎无法实时对摄像装置采集的每一帧图像都进行识别处理,相应的,可以通过设置帧率间隔参数,按照帧率间隔参数从第一指定目录中存储的待识别数据中筛选出目标待识别数据后,再存储到共享内存中,以供目标识别引擎进行识别处理。
[0142]
在一些实施例中,在动态引擎分析模式下,通过设置目标识别引擎的帧率间隔参数,可以对实时采集的图像进行筛选,使得选取的图像(目标待识别数据)与目标识别引擎处理能力相匹配,降低目标识别引擎的计算压力,进而提高目标识别引擎的稳定性。
[0143]
在一个具体的实施例中,在监控模式为静态引擎分析模式的情况下,对目标识别引擎的监控指令可以为本地设备的启动指令,可选的,即在静态引擎分析模式下,当本地设备启动,就可以触发对目标识别引擎的监控指令。在实际应用中,在静态引擎分析模式下,需要预先准备好待识别数据,并导入到目标识别引擎所在的设备。具体的,在监控模式为静态引擎分析模式的情况下,获取目标识别引擎的待识别数据可以包括:利用预设复制工具
从远程设备上复制待识别数据;将待识别数据存储在本地设备的第一指定目录。
[0144]
可选的,预设复制工具可以为winscp(secure copy,安全复制),winscp是一个windows环境下使用ssh(secure shell,安全协议外壳)的开源图形化sftp(ssh file transfer protocol,ssh文件传输协议)客户端。
[0145]
此外,需要说明的是,预设复制工具并不仅限于上述的winscp,在实际应用中,可以采用其他复制工具,例如scp-r(linux下的远程拷贝)。
[0146]
在一个可选的实施例中,在上述人脸识别等,可以采用摄像装置采集的图像作为待识别数据的场景中,若确定监控模式为静态引擎分析模式,可以判断摄像装置是否处于关闭状态,相应的,在摄像装置处于关闭状态的情况下,可以执行利用预设复制工具从远程设备上复制待识别数据的步骤;反之,在摄像装置处于未关闭状态的情况下,可以关闭摄像装置。
[0147]
在确定监控模式为静态引擎分析模式的情况下,通过对摄像装置状态的检查,来确保摄像装置不采集数据,可以有效避免两路数据混淆的问题。
[0148]
如图4所示,图4是根据一示例性实施例示出的一种识别引擎的监控方法的流程示意图,具体的,在需要区分监控模式来进行识别引擎的监控处理的情况下,识别引擎的监控方法的流程可以包括:
[0149]
s401:响应于对目标识别引擎的监控指令,获取模式配置文件。
[0150]
s403:根据模式配置文件,确定监控模式。
[0151]
s405:在监控模式为静态引擎分析模式的情况下,利用预设复制工具从远程设备上复制待识别数据。
[0152]
s407:将待识别数据存储在本地设备的第一指定目录。
[0153]
s409:在监控模式为动态引擎分析模式的情况下,利用本地设备上的摄像装置采集待识别数据。
[0154]
s411:将摄像装置采集的待识别数据存储到本地设备的第一指定目录。
[0155]
s413:将第一指定目录中存储的待识别数据存储到共享内存。
[0156]
s415:触发目标识别引擎的识别处理进程。
[0157]
s417:复刻识别处理进程,得到识别处理进程的识别处理子进程。
[0158]
s419:创建目标识别引擎的识别处理进程与识别处理子进程间的通信管道。
[0159]
s421:基于通信管道监控识别处理进程的识别处理过程,该识别处理过程为根据共享内存中的待识别数据执行识别处理的过程。
[0160]
上述实施例中,通过预先配置记录有监控模式的配置文件,在对目标识别引擎进行监控过程中,可以先进行监控模式确认,进而可以按照不同需求,采用不同监控模式进行监控,实现了对目标识别引擎的多种监控模式的灵活切换,在提高对目标识别引擎监控的灵活性的同时,更好的满足了用户需求。
[0161]
图5是根据一示例性实施例示出的一种识别引擎的监控装置框图。参照图5,该装置可以包括:
[0162]
待识别数据获取模块510,可以被配置为执行响应于对目标识别引擎的监控指令,获取目标识别引擎的待识别数据;
[0163]
待识别数据存储模块520,可以被配置为执行将待识别数据存储到共享内存;
[0164]
识别处理进程触发模块530,可以被配置为执行触发目标识别引擎的识别处理进程;
[0165]
进程复刻模块540,可以被配置为执行复刻识别处理进程,得到识别处理进程的识别处理子进程;
[0166]
通信管道创建模块550,可以被配置为执行创建目标识别引擎的识别处理进程与识别处理子进程间的通信管道;
[0167]
识别处理过程监控模块560,可以被配置为执行基于通信管道监控识别处理进程的识别处理过程,该识别处理过程为根据共享内存中的待识别数据执行识别处理的过程。
[0168]
在一个可选的实施例中,如图6所示,图6是根据一示例性实施例示出的一种识别引擎的监控装置框图,装置还包括:
[0169]
模式配置文件获取模块570,可以被配置为执行在获取目标识别引擎的待识别数据之前,获取模式配置文件;
[0170]
监控模式确定模块580,可以被配置为执行根据模式配置文件,确定监控模式。
[0171]
在一个可选的实施例中,在监控模式为静态引擎分析模式的情况下,待识别数据获取模块510包括:
[0172]
待识别数据复制单元,被配置为执行利用预设复制工具从远程设备上复制待识别数据;
[0173]
第一待识别数据存储单元,被配置为执行将待识别数据存储在本地设备的第一指定目录;
[0174]
相应的,待识别数据存储模块具体被配置为执行将第一指定目录中存储的待识别数据存储到共享内存。
[0175]
在一个可选的实施例中,在监控模式为动态引擎分析模式的情况下,装置还包括:
[0176]
帧率间隔参数配置模块,被配置为执行在响应于对目标识别引擎的监控指令之前,配置目标识别引擎的帧率间隔参数;
[0177]
相应的,第一待识别数据存储单元具体被配置为执行按照帧率间隔参数从第一指定目录中存储的待识别数据中,筛选目标待识别数据;以及将目标待识别数据存储到共享内存。
[0178]
在一个可选的实施例中,在监控模式为动态引擎分析模式的情况下,待识别数据获取模块510可以包括:
[0179]
待识别数据采集单元,被配置为执行利用本地设备上的摄像装置采集待识别数据;
[0180]
第二待识别数据存储单元,被配置为执行将摄像装置采集的待识别数据存储到本地设备的第一指定目录;
[0181]
相应的,待识别数据存储模块具体被配置为执行将第一指定目录中存储的待识别数据存储到共享内存。
[0182]
在一个可选的实施例中,上述识别处理过程监控模块560可以包括:
[0183]
识别处理结果获取单元,被配置为执行利用识别处理子进程从通信管道,获取在识别处理进程中执行识别处理得到的识别处理结果;
[0184]
识别处理结果存储单元,被配置为执行存储识别处理结果。
[0185]
在一个可选的实施例中,如图7所示,图7是根据一示例性实施例示出的一种识别引擎的监控装置框图,装置还包括:
[0186]
性能分析模块590,被配置为执行基于存储的识别处理结果对目标识别引擎进行性能分析,得到目标识别引擎的性能分析结果;
[0187]
性能分析结果渲染模块600,被配置为执行渲染上述性能分析结果。
[0188]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0189]
本公开实施例所提供的方法实施例可以在终端、服务器或者类似的运算装置中执行。以运行在终端上为例,图8是根据一示例性实施例示出的一种终端的结构示意图,如图8所示,该终端可以用于实施上述实施例中提供的识别引擎的监控方法。具体来讲:
[0190]
上述终端可以包括rf(radio frequency,射频)电路810、包括有一个或一个以上计算机可读存储介质的存储器820、输入单元830、显示单元840、传感器850、音频电路860、wifi(wireless fidelity,无线保真)模块870、包括有一个或者一个以上处理核心的处理器880、以及电源890等部件。本领域技术人员可以理解,图8中示出的终端结构并不构成对终端的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
[0191]
rf电路810可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器880处理;另外,将涉及上行的数据发送给基站。通常,rf电路810包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(sim)卡、收发信机、耦合器、lna(low noise amplifier,低噪声放大器)、双工器等。此外,rf电路810还可以通过无线通信与网络和其他终端通信。上述无线通信可以使用任一通信标准或协议,包括但不限于gsm(global system of mobile communication,全球移动通讯系统)、gprs(general packet radio service,通用分组无线服务)、cdma(code division multiple access,码分多址)、wcdma(wideband code division multiple access,宽带码分多址)、lte(long term evolution,长期演进)、电子邮件、sms(short messaging service,短消息服务)等。
[0192]
存储器820可用于存储软件程序以及模块,处理器880通过运行存储在存储器820的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器820可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;存储数据区可存储根据上述终端的使用所创建的数据等。此外,存储器820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器820还可以包括存储器控制器,以提供处理器880和输入单元830对存储器820的访问。
[0193]
输入单元830可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元830可包括触敏表面831以及其他输入设备832。触敏表面831,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面831上或在触敏表面831附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面831可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用
户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器880,并能接收处理器880发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面831。除了触敏表面831,输入单元830还可以包括其他输入设备832。具体地,其他输入设备832可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
[0194]
显示单元840可用于显示由用户输入的信息或提供给用户的信息以及上述终端的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元840可包括显示面板841,可选的,可以采用lcd(liquid crystal display,液晶显示器)、oled(organic light-emitting diode,有机发光二极管)等形式来配置显示面板841。进一步的,触敏表面831可覆盖显示面板841,当触敏表面831检测到在其上或附近的触摸操作后,传送给处理器880以确定触摸事件的类型,随后处理器880根据触摸事件的类型在显示面板841上提供相应的视觉输出。其中,触敏表面831与显示面板841可以两个独立的部件来实现输入和输入功能,但是在某些实施例中,也可以将触敏表面831与显示面板841集成而实现输入和输出功能。
[0195]
上述终端还可包括至少一种传感器850,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板841的亮度,接近传感器可在上述终端移动到耳边时,关闭显示面板841和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别终端姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于上述终端还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
[0196]
音频电路860、扬声器861,传声器862可提供用户与上述终端之间的音频接口。音频电路860可将接收到的音频数据转换后的电信号,传输到扬声器861,由扬声器861转换为声音信号输出;另一方面,传声器862将收集的声音信号转换为电信号,由音频电路860接收后转换为音频数据,再将音频数据输出处理器880处理后,经rf电路810以发送给比如另一终端,或者将音频数据输出至存储器820以便进一步处理。音频电路860还可能包括耳塞插孔,以提供外设耳机与上述终端的通信。
[0197]
wifi属于短距离无线传输技术,上述终端通过wifi模块870可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图8示出了wifi模块870,但是可以理解的是,其并不属于上述终端的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
[0198]
处理器880是上述终端的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器820内的软件程序和/或模块,以及调用存储在存储器820内的数据,执行上述终端的各种功能和处理数据,从而对终端进行整体监控。可选的,处理器880可包括一个或多个处理核心;可选的,处理器880可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器880中。
[0199]
上述终端还包括给各个部件供电的电源890(比如电池),可选的,电源可以通过电源管理系统与处理器880逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源890还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
[0200]
尽管未示出,上述终端还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端的显示单元是触摸屏显示器,终端还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行本公开中方法实施例中的指令。
[0201]
在示例性实施例中,还提供了一种识别引擎的监控设备,包括:处理器;用于存储该处理器可执行指令的存储器;其中,该处理器被配置为执行该指令,以实现如本公开实施例中的识别引擎的监控方法。
[0202]
在示例性实施例中,还提供了一种计算机可读存储介质,当该存储介质中的指令由识别引擎的监控设备的处理器执行时,使得识别引擎的监控设备能够执行本公开实施例中的识别引擎的监控方法。
[0203]
在示例性实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行本公开实施例中的识别引擎的监控方法。
[0204]
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本公开所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
[0205]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0206]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1