低小慢目标捕获与跟踪系列(二)

低小慢目标捕获与跟踪系列(二)


接下来就是填坑的第二步了,第一步已经交给小伙伴去了。此刻小伙伴正在纠结6678到底是多核多镜像,还是多核双镜像的问题了。

网络baseline选择

因为之前做忆阻神经网络的经验,个人手动重写了一遍YOLOv3的MATLAB版本的代码,所以YOLO系列自然是首选。甲方选择了YOLOv5,作为一个资深硬件工程师,逻辑工程师外加嵌入式工程师的我,自然而然选择了全C的方案,不要问我为什么。喜欢嘛,需要理由么?大道至简。如果要说给各种编程语言打分,我还是坚持VHDL第一,C第二。_

所以YOLOv4当然作为了首选项。根据团队内兄弟的经验,经过我们优化后的YOLOv4在TX2上(608 X 608)的输入图像的网络,可以跑到17fps,估计对于用户的要求是足够了。baseline就这样选定了,接下来就是准备数据集啦。

数据集准备

甲方准备了两三台大疆精灵4无人机,甲方工程师也非常认真地准备了大量精灵4的无人机图片以及标注数据,统计了一下,精确数17106张。YOLO的标注文件的格式一如既往地简单:
标注文件为图片文件名对应的.txt文件,文件内根据目标的个数按行标注如下:

class_id xc yc w h 

其中class_id为从0 ~ N-1(N为分类的数量),xc,yc为目标的中心点坐标(按照图像分辨率归一化),w,h分别为目标的宽和高,也是按照图像分辨率归一化后的数据。

把每个图片对应的标注文件准备好后,再随机将图片分为训练集和测试集(分别占数据集总数的70%和30%)

darknet编译

CSDN上有很多darknet的编译方法,实际上我们主要参考了作者的github的链接。但是中间遇到一个比较大的坑,编译成功后运行的时候报了一个cuda的unknow error, 百度谷歌齐上阵,各种方法都尝试了,无效。
眼看着两天时间快过去了,我跟团队做驱动层的小哥哥说,今晚搞不定的话,明天你把服务器扛回来重装系统吧。终究小哥哥没有让我失望。
简单粗暴的解决方案:重装cuda。。。。。。

果然,重装是最佳的解决莫名其妙问题的方案,没有之一。

效果评估

首先贴一下YOLOv4的结果:
5132
detections_count = 9042, unique_truth_count = 5046
class_id = 0, name = UAV, ap = 98.93% (TP = 4926, FP = 72)

for conf_thresh = 0.25, precision = 0.99, recall = 0.98, F1-score = 0.98
for conf_thresh = 0.25, TP = 4926, FP = 72, FN = 120, average IoU = 79.16 %

IoU threshold = 50 %, used Area-Under-Curve for each unique Recall
mean average precision (mAP@0.50) = 0.989330, or 98.93 %
Total Detection Time: 301 Seconds

看起来98.93的准确率还是有点诱人。好奇心下,笔者尝试了YOLOv4-tiny 416 x 416的模型,表现太让人失望了:
calculation mAP (mean average precision)…
Detection layer: 30 - type = 28
Detection layer: 37 - type = 28
5132
detections_count = 1479, unique_truth_count = 5046
class_id = 0, name = UAV, ap = 0.31% (TP = 7, FP = 8)

for conf_thresh = 0.25, precision = 0.47, recall = 0.00, F1-score = 0.00
for conf_thresh = 0.25, TP = 7, FP = 8, FN = 5039, average IoU = 25.92 %

IoU threshold = 50 %, used Area-Under-Curve for each unique Recall
mean average precision (mAP@0.50) = 0.003145, or 0.31 %
太难了,于是换了YOLOv4-tiny 608 X 608的模型,表现也一样令人失望,这个原因只能慢慢查了,有点让我意外。不得不怀疑自己的方法错了,这个有可能后续再继续排查来了。

再贴一些识别结果的图,给大家欣赏一下。
在这里看一个误识别的效果在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值