概述
在目标识别等应用场景中,通常使用卷积神经网络提取目标的深度特征,得到半结构化的特征向量,针对特征向量的相似性计算可以实现特定目标的检索。比如基于图片库提取特征向量形成底库后,可以将目标图片使用相同的神经网络提取深度特征生成待查询的向量,并将其在底库中进行特征比对,若相似度达到给定阈值则认为在底库中检索到目标。以底库量级划分,检索库分为小库(精确搜索)和大库(非精确搜索)。通常小库规模在30万~100万条的量级,而大库规模可达到千万甚至亿级别。
功能模块介绍
本案例系统框架如下:
在现有的Faiss代码框架下,基于CANN新架构,增加资源抽象层以及加速算子层
本案例检索原理如下:
以小库检索方案为例,首先将底库图片使用神经网络提取特征建立特征底库,其次将待检索图片也用同样神经网络提取特征,在昇腾AI处理器的CUBE中进行特征比对,在ControlCPU将比对结果进行topk排序,返回最终的检索结果。
效果展示
基于随机生成的特征数据建立底库,待检索特征为底库前10条特征