项目介绍:
“现在五星花园环岛通行状况良好,涪江路双向的通行状况也未出现拥堵,接送考生的车辆可以畅通行驶……”昨日上午 8 点 20 分,FM91.5南充交通音乐广播首次启用遥控无人飞行器服务考生。对市区易堵路段,特别是一些重点考点进行灵活监拍,以便更加直观地监控车辆,以最大限度确保爱心送考车辆准时到达考场。
空中拍摄 无间断监控车流量
昨日上午八点,遥控无人飞行器在南充市顺庆区涪江路南充高中附近升起,屏幕上显示出南充高中周边的道路状况。传输的道路车流量状况,不仅画面十分高清,而且是沿着路面不断前进,不像以往固定的视频探头拍出来的固定区域画面。
“这就是遥控无人飞行器拍摄到的路面情况。”南充市航模协会会员赵宇介绍,为实现对高考期间周边重点区域的全面监控,高考期间,热心的航模协会主动提供给FM91.5南充交通音乐广播,遥控无人飞行器,对重点考场道路进行空中监控,并回传实时图像。
8点20分,记者来到南充十中,工作人员正准备操控“无人机”进行第二次航拍巡逻。“这架遥控无人飞行器能够携带多种拍摄设备进行动态和定点监控,飞行高度可达500米,最高巡航速度达80公里/小时,续航时间达到30分钟,遥控飞行半径最大可达5公里,能够自动飞行执行任务,可长时间空中悬停,执行停机定点监控、拍摄,远距离无线实时影像回传。”赵宇介绍,每个点都准备了两个遥控无人飞行器,无间断的监控车流量。
效果演示:
python智慧交通deepsort航拍车流量检测道路车辆检测
技术应用:
- DeepSort目标跟踪算法是联系目标在视频连续序列的关系,目标检测算法是单独对视频每帧图片进行检测,需要确定连续帧中检测到的目标是否为同一目标则必须要用到跟踪算法。该算法主要用到Kalman滤波、级联匹配等,有兴趣可以自行了解,这里不再赘述。
主程序为track.py文件,运行前需要设置,weights为使用到的目标检测算法的模型;source为检测的视频源,若为视频文件则填写视频文件的位置,若为摄像头则填0或者填写摄像头的ip地址。
- 车辆计数:该部分通过跟踪算法返回的跟踪框的信息:xywh、id、class,通过设定固定的检测线,当框的像素信息通过检测线则根据其类别计数,并且记录这个框的id,防止重复计数,并在该id驶离检测区域时删除关于这个id的记录。
- 车速检测:视频测速中最重要的部分就是需要标定实际距离,需要将视频中的像素距离转换到实际距离,根据视频的帧数信息即可计算出速度。
- 实时车速检测,主要的原理为记录经过固定帧数i后此时该id中心像素位置,并使用欧式距离计算此时移动的像素距离d1。标定小汽车的车辆宽d2=1.85m,此时跟踪框的d2/w表示的此时视频中每像素代表的实际距离,(d2*d1)*fps/(w*i)为最终测得速度的公式,其中摄像视频存在一定的角度差异,需要根据实际车速进行修正,这里没有固定的公式,并且该公式计算出来的单位为m/s根据要求单位自行转换。
- 虚拟线测速,通过设定两条固定检测线,测出检测线之间的实际距离d,通过记录每个id经过两条检测线的时间t1、t2来计算速度。
- 车牌识别:每当目标检测算法检测到车辆时,截取该检测框的图像使用开源车牌识别算法hyperlpr,它会返回所检测到的车牌号以及置信度。在算法中设置一个择优更新车牌记录,对于同一个id,当检测到的车牌的置信度大于之前的置信度则替换到车牌记录中原来的车牌。
注意:在研究过程中发现hyperlpr与opencv之间的版本之间存在bug,如果报这个错误:
需要打开报错位置,hyperlpr.py文件中的231行,并进行修改,需要把图中的
mat_ = cv2.estimateRigidTransform(…) 改成下图的代码。
项目下载地址:
#下载地址
https://mbd.pub/o/bread/ZJeVmZhs
print(“感谢支持”)