关于算法:人体检测人体追踪的人流统计AI项目在android端部署落地的实战

51次阅读

共计 1665 个字符,预计需要花费 5 分钟才能阅读完成。

1 训练营课程

(1)本节课次要学习智慧安防实战训练营的课程:

训练课程次要包含:

a. 第⼀节课,即本节课,次要解说 AI ⾏业智慧城市⾏业的⽬前情况,并从边缘设 备、越界辨认应⽤等为案例,进⾏解说。

b. 第⼆节课,次要从边缘设施的⽅式,Aidlux 进⾏解说,理解 在边缘端的各⽅⾯内容。

c. 第三节课,次要从⽬标检测算法的训练,Aidlux 上的移植、测试等⽅⾯进⾏解说。

d. 第四节课,学习了⽬标检测后,会将⽬标检测和⽬标追踪结 合,尝试残缺的⼈体检测追踪,为后⾯的各类业务性能做筹备。

e. 第五节课,会将越界辨认的业务性能也增加进来,当有⼈越 界的时候,会通过喵揭示的⽅式,告诉开发者及时查看⼿机⾥⾯的越界图⽚。

2)学习目标

本次课程是由江大白老师全程教学,第一次接触江大白老师是在知乎上看到他的一篇高赞文章《ref=”https://zhuanlan.zhihu.com/p/397993315″> 深入浅出 Yolo 系列之 Yolox 外围根底残缺解说》,关注后发现,大白老师的文章都是对老手十分敌对的,深入浅出,讲的十分粗疏,看了之后获益匪浅。起初长期关注并进了探讨群,有趣味的敌人也能够关注,兴许会有所播种。

两周前,大白老师分享训练营打算,我思考了一下,便抉择加入,因为我从事 AI 行业以来,始终做的是 CPU 部署。想通过这个机会,学习一下 android 端的部署流程。因为通过这一年多的学习,我对本人的定位就是做 AI 落地方面的工作, 至于钻研新的 trick,对非科班的我来说是难度较大的。并且该课程与我当初做的一些我的项目也很相似,可能借此机会学习一下大佬的代码也是很不错的。

通过两周的学习,咱们根本曾经把握了从 PC 端到 android 端的开发与部署测试流程。所以江大白老师给咱们留了一个大作业。

2 作业题目

(1)题目:

在学习了越界辨认的性能后,采纳人体检测 + 人体追踪 + 业务性能的形式实现 人流统计。

(2)实现成果:

上传视频,有 Vscode 代码页面露出,有 AidLux 界面露出。

比方 Vscode 界面 +Aidlux 端的 PC 端显示的视频。视频链接:https://b23.tv/hg2bp6m

3)代码实现:

相干流程和代码以及原理能够找大白老师分享,代码文件次要包含推理代码 yolov5_overstep.py, 工具函数 utils.py, 跟踪算法 track 文件夹,以及模型文件 yolov5n_best-fp16.tflite 和测试视频 video.mp4.

其中推理代码 yolov5_overstep.py 次要代码如下:

先加载一些必要的包

1. 用 Aidlux 的 api 加载模型:

2. 初始化一些参数:

3. 读取视频对视频帧预处理并进行人体检测:

4. 对检测到的人体框利用 track 中的跟踪模型算出每个人体框的 id

5. 确定检测线以及每个 id 在以后帧绝对检测线的地位,并记录在 track_id_status 字典中:

这里字典每个名称对应每个 id,内容是以后帧中所有 id 号绝对检测线的地位,包含历史地位:

6. 判断 id 行走方向,统计向上人流数,以及向下人流数:

7. 在待输入的 frame 上显示人流统计:

8. 视频完结后,利用喵揭示公众号下发人流统计信息:

能够看到最终喵揭示性能把测试视频中高低两个方向以及总人流数下发到了微信中。

3 学习心得

当然这只是其中一部分代码,整个过程中还有其余代码,都很值得学习,以及调试部署测试过程都还有一些内容,感兴趣的能够问大白老师支付材料。整个学习过程没有什么压力,因为真的是手把手教学,不得不拜服大佬们的思路。

4 AidLux 应用心得

最初我想发表一下我对 Aidlux 的认识,我是在本人手机上高通骁龙 778 上测试的,我发现 Aidlux 后盾调试代码超过半小时后手机会很烫,待机没事。然而整个测试的过程中跳帧不多,速度还是能够的,能够和一些 CPU 差不多了。后续心愿 Aidlux 官网能出一些前后端的教程,因为一个我的项目并不只是咱们算法工程师实现的,还须要团队的单干。总体而言,我感觉这个终端设备操作简便,便携,成果好,可塑性高,值得摸索一番。期待后续我能有我的项目应用到该产品。

正文完
 0