普通的行人reid,分为特征提取和向量检索两大部分。其他一些商用技术是普通项目接触不到,大概用这两部分,再搜集数据,换换检测模型,提高reid模型就可以了。
对于特征提取,通常步骤如下:
目标检测很耗时,通过会每隔几帧进行检测。没有目标检测的中间帧,则使用上一帧的结果进行目标跟踪即可。行人特征提取开源的项目常用的demo有:
PP-Human,这个项目提供reid的一键式特征提取方案,缺点是paddle的东西不稳定,而且代码修改难度很大。
Yolov5-Deepsort-Fastreid,这个项目通过yolov5识别行人,deepsort基于fastreid特征提取结果进行目标跟踪。这个项目较老,可以参考该项目搭建自己的特征提取项目。
ByteTrack、ByteTrack_ReID、OC-SORT。如果追求检测速度,可以看看这三个项目。
向量检索会涉及到很多东西,出库入库检索之类的。底库特别大会严重影响检索性能。不要自己写检索系统,用成熟的向量检索系统非常好,一方面可以方便管理,另外一方面可以加快检索速度。推荐两个:
向量检索库涉及很多内容,多看看官方文档。无脑就用milvus,想自己弄或者要求不多就用faiss。