深度学习和目标检测系列教程 21-凯发k8官方网
凯发k8官方网
收集整理的这篇文章主要介绍了
深度学习和目标检测系列教程 21-300:deepsorts测试小车经过的时间和速度
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
@author:runsen
deepdeepsort
deepsort是一种用于跟踪目标的模型,为每个目标分配 id,为每一个不同的类别分配label。
在deepsort 中,过程如下。
- 使用yolo 计算边界框(检测)
- 使用sort(卡尔曼滤波器)和reid(识别模型)链接边界框和轨迹
- 如果无法建立活动链接,则会分配一个新 id 并将其新添加到track。
deepdeepsort所谓的“检测”是每一帧中的目标列表,“轨迹”是当前被跟踪的列表。
deepsorts项目地址:https://github.com/mikelbrostrom/yolov5_deepsort_pytorch
deepsorts测试小车经过的时间和速度
本次项目代码
参考项目:https://github.com/dyh/unbox_yolov5_deepsort_counting。
该项目封装了deepsorts和yolov5文件,非常易于其他需求的开发,个人在
该项目上进行二次开发。
项目实现目标要求:通过deepsorts测试图中的小车到拐弯是否存在超速的行为。
个人通过image_pixel小软件对图片进行标点和标线。一共划分了六条线和六个区域块。
项目的主要结构
由于yolov5模型存在一定的检测异常,因此需要在设置线时,最好设置成小矩形。最后的矩形判断的速度设置为4,也大约是15km/h。
下面是部分具体的测试结果,保存image 和 是否超速的结果写到rabbitmq中。
fusing layers... 进入第一块矩形类别: truck | id: 3 | : 碰撞点的坐标 (148, 245) | : time: 9.04 进入第一块矩形类别: truck | id: 3 | : 碰撞点的坐标 (148, 246) | : time: 9.08 进入第一块矩形类别: car | id: 3 | : 碰撞点的坐标 (148, 247) | : time: 9.12 进入第一块矩形类别: truck | id: 3 | : 碰撞点的坐标 (149, 246) | : time: 9.16 进入第一块矩形类别: truck | id: 3 | : 碰撞点的坐标 (149, 246) | : time: 9.2 进入第一块矩形类别: truck | id: 3 | : 碰撞点的坐标 (150, 247) | : time: 9.24 进入第一块矩形类别: truck | id: 3 | : 碰撞点的坐标 (151, 247) | : time: 9.28 进入第二块矩形类别: truck | id: 3 | : 碰撞点的坐标 (161, 258) | : time: 9.96 第一块花费的时间: 0.6800000000000015 进入第二块矩形类别: truck | id: 3 | : 碰撞点的坐标 (162, 258) | : time: 10.0 第一块花费的时间: 0.7200000000000006 进入第二块矩形类别: car | id: 3 | : 碰撞点的坐标 (163, 259) | : time: 10.04 第一块花费的时间: 0.7599999999999998 进入第二块矩形类别: truck | id: 3 | : 碰撞点的坐标 (163, 259) | : time: 10.08 第一块花费的时间: 0.8000000000000007 进入第二块矩形类别: car | id: 3 | : 碰撞点的坐标 (163, 260) | : time: 10.12 第一块花费的时间: 0.8399999999999999 进入第三块矩形类别: truck | id: 3 | : 碰撞点的坐标 (179, 273) | : time: 10.96 第二块花费的时间: 0.8400000000000016 进入第三块矩形类别: truck | id: 3 | : 碰撞点的坐标 (180, 273) | : time: 11.0 第二块花费的时间: 0.8800000000000008 进入第三块矩形类别: truck | id: 3 | : 碰撞点的坐标 (180, 273) | : time: 11.04 第二块花费的时间: 0.9199999999999999 进入第三块矩形类别: truck | id: 3 | : 碰撞点的坐标 (181, 275) | : time: 11.08 第二块花费的时间: 0.9600000000000009 进入第三块矩形类别: truck | id: 3 | : 碰撞点的坐标 (182, 275) | : time: 11.12 第二块花费的时间: 1.0 进入第五块矩形类别: truck | id: 3 | : 碰撞点的坐标 (208, 299) | : time: 12.36 第四块花费的时间: 1.0 进入第五块矩形类别: truck | id: 3 | : 碰撞点的坐标 (235, 325) | : time: 13.48 第五块花费的时间: 1.2400000000000002 进入第五块矩形类别: truck | id: 3 | : 碰撞点的坐标 (235, 326) | : time: 13.52 第五块花费的时间: 1.2400000000000002 进入第五块矩形类别: truck | id: 3 | : 碰撞点的坐标 (237, 327) | : time: 13.56 第五块花费的时间: 1.2400000000000002 进入第五块矩形类别: truck | id: 3 | : 碰撞点的坐标 (238, 328) | : time: 13.6 第五块花费的时间: 1.2400000000000002 进入第五块矩形类别: truck | id: 3 | : 碰撞点的坐标 (238, 329) | : time: 13.64 第五块花费的时间: 1.2400000000000002 进入第五块矩形类别: truck | id: 3 | : 碰撞点的坐标 (240, 329) | : time: 13.72 第五块花费的时间: 1.2400000000000002 进入第五块矩形类别: truck | id: 3 | : 碰撞点的坐标 (241, 329) | : time: 13.76 第五块花费的时间: 1.2400000000000002 离开的时间:: truck | id: 3 | : 碰撞点的坐标 (275, 364) | : time: 16.12 11.904761904761907 10.0 8.064516129032256 7.1428571428571415 4.237288135593218 true 离开的时间:: truck | id: 3 | : 碰撞点的坐标 (276, 364) | : time: 16.16 11.904761904761907 10.0 8.064516129032256 7.1428571428571415 4.166666666666666 true 离开的时间:: truck | id: 3 | : 碰撞点的坐标 (277, 364) | : time: 16.2 11.904761904761907 10.0 8.064516129032256 7.1428571428571415 4.0983606557377055 true 离开的时间:: truck | id: 3 | : 碰撞点的坐标 (277, 365) | : time: 16.24 11.904761904761907 10.0 8.064516129032256 7.1428571428571415 4.032258064516132 true 离开的时间:: truck | id: 3 | : 碰撞点的坐标 (277, 365) | : time: 16.28 11.904761904761907 10.0 8.064516129032256 7.1428571428571415 3.968253968253966 false 离开的时间:: truck | id: 3 | : 碰撞点的坐标 (277, 365) | : time: 16.4 11.904761904761907 10.0 8.064516129032256 7.1428571428571415 3.7878787878787894 false 离开的时间:: truck | id: 3 | : 碰撞点的坐标 (278, 365) | : time: 16.44 速度:11.904761904761907 10.0 8.064516129032256 7.1428571428571415 3.7313432835820874 false附上github:https://github.com/maolirunsen/deepsort-yolov5-car
总结
以上是凯发k8官方网为你收集整理的深度学习和目标检测系列教程 21-300:deepsorts测试小车经过的时间和速度的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇:
- 下一篇: