原标题:retianet + pytorch-reid实现了在摄像头中行人重识别的任务
原文来自:CSDN 原文链接:https://blog.csdn.net/weixin_40327145/article/details/103798831
说明
关于行人重检测和行人重识别的整个算法框架整理了一份代码,放到了github上。主要是行人重识别部分,方便大家以后在跟进新的算法,发表论文,或算法落地到实际场景中时,该部分代码可直接移植到硬件设备中运行,使用是直接可以把自己的算法添加到models中即可。
代码地址: https://github.com/zhanghlgithub/pytorch-reid.git
本代码完成了行人检测和行人重识别的工作,行人检测使用Retianet作为主干网络,损失函数使用Focal loss,参考论文
行人重识别部分,已经最简化了行人重识别的训练过程,只需将自己读到的最新算法的网络结构,添加到reid/deep-person-reid/torchreid/models目录下,即可训练自己的模型。 参考pytorch-reid库,参考代码。本代码修改了库的部分源码,实现了在摄像头中实时的响应行人重识别的任务。
接下来会单独写一篇博客说明Pytorch-ReID每个文件的作用以及如何修改使用到自己的算法逻辑中,也可以参考上文给出的参考链接。
流程图如下:
目录说明
- detection # 行人检测部分代码
-- NMS # NMS算法库,这个是额外添加进来的,需要nvcc编译,也可以自己写
-- cam_detection.py # 在摄像头中测试行人检测效果- reid # 行人重识别部分代码
-- . # 该部分代码主要基于pytorch 库修改12345
运行环境依赖
硬件环境:
Ubuntu 16.0.4, Pytorch > 1.2, cuda+cudaa(根据自己电脑安装相应版本)
库依赖:
pip install pandas
pip install pycocotools
pip install opencv-python
pip install requests
其他安装按照reid/deep-person-reid/requirements.txt补充安装12345678
运行脚本及使用
python demo.py # 查看级联模型的在视频中的效果# 说明:需要把预训练的模型加载到对应的ckpt文件,已经打包到百度云链接,链接地址12
# 本代码库已经最简化了行人重识别的训练过程,只需将自己读到的最新算法的网络结构,# 添加到reid/deep-person-reid/torchreid/models目录下,即可训练自己的模型12
效果展示:
ReID效果展示
模型训练前后提取特征对比
发现训练后的模型,对人体的响应更聚焦,说明我们的算法收敛的还不错,使用hotmap可以更直观的查看自己模型和算法的效果
模型效果展示
免责声明:本文来自互联网新闻客户端自媒体,不代表本网的观点和立场。
合作及投稿邮箱:E-mail:editor@tusaishared.com