【技术实现步骤摘要】
基于多消息线程分布式人脸搜索方法与系统
本专利技术涉及人脸识别处理
,具体而言涉及一种基于多消息线程分布式人脸搜索方法与系统。
技术介绍
人脸搜索技术即根据传入的人脸特征数据,在对应人脸库中暴力计算所有的欧式距离并找出距离最小的那个特征,此最小特征对应的那个人脸标识即为要搜索输出最匹配的人脸。如图1所示为现有技术中人脸搜索的消息处理的示例,各个线程并发并且互斥地从未处理消息队列中取消息,需要频繁的加锁解锁操作,使得线程在相当的时间内处于等待状态,不能最大限度的发挥多线程提高并发能力的优势。同时,全量人脸库数据存储的弊端在于当人脸数量越来越大时,即使扩充机器也解决不了存储不足的问题,如果是部署的多机器,则需要每个机器扩充存储空间。
技术实现思路
本专利技术目的在于提供一种基于多消息线程分布式人脸搜索方法与系统,旨在最大限度地发挥多线程提高并发能力的优势,解决全量人脸库存储导致地扩充机器不能解决存储不足的问题。为达成上述目的,本专利技术提出一种基于多消息线程分布式人脸搜索方法,包括:至少 ...
【技术保护点】
1.一种基于多消息线程分布式人脸搜索系统,其特征在于,包括:/n至少一个前置节点,被配置用于转发请求消息以及管理人脸数据库,所述转发请求消息包括向计算节点发送未处理消息队列以及从接收计算节点返回的结果;/n多个计算节点,被设置成配置多个消息处理线程,并且为每个消息处理线程分配一个未处理消息子队列,其中消息处理线程之间的资源相互独立,每个消息处理线程各自从归属的未处理消息子队列中依次取出消息进行处理,处理到人脸搜索请求时,在所属的部分人脸数据中索引计算欧式距离,取得最小值对应的人脸信息并返回给前置节点。/n
【技术特征摘要】
1.一种基于多消息线程分布式人脸搜索系统,其特征在于,包括:
至少一个前置节点,被配置用于转发请求消息以及管理人脸数据库,所述转发请求消息包括向计算节点发送未处理消息队列以及从接收计算节点返回的结果;
多个计算节点,被设置成配置多个消息处理线程,并且为每个消息处理线程分配一个未处理消息子队列,其中消息处理线程之间的资源相互独立,每个消息处理线程各自从归属的未处理消息子队列中依次取出消息进行处理,处理到人脸搜索请求时,在所属的部分人脸数据中索引计算欧式距离,取得最小值对应的人脸信息并返回给前置节点。
2.根据权利要求1所述的基于多消息线程分布式人脸搜索系统,其特征在于,所述至少一个前置节点具有人脸数据库管理模块,被设置成以预定的方式将人脸数据库存储的人脸数据分布地存储到各个计算节点,所有计算节点的人脸数据的集合为全量人脸数据。
3.根据权利要求2所述的基于多消息线程分布式人脸搜索系统,其特征在于,前述人脸数据的分布式存储采用均匀分布的方式。
4.根据权利要求1所述的基于多消息线程分布式人脸搜索系统,其特征在于,所述至少一个前置节点被设置成解析外部人脸搜索请求,并根据解析结果,发送到对应的计算节点进行处理。
5.根据权利要求4所述的基于多消息线程分布式人脸搜索系统,其特征在于,所述至少一个前置节点还被设置用于根据解析结果和外部人脸搜索请求构造内部人脸搜索请求,其请求消息体包括缓存标识、库名、人脸特征数据和消息处理线程标识,其中库名和人脸特征数据从解析结果得到,缓存标识为通过库名检索...
【专利技术属性】
技术研发人员:杨帆,汤静波,张斌,
申请(专利权)人:南京甄视智能科技有限公司,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。