python航拍无人机视角下多车型车流量检测车流量多车型计数无人机车流检测yolov5

news/2024/11/6 11:00:22/

航拍无人机视角下车流量检测车流量多车型计数无人机车流检测yolov5

 


  最近在研究告诉高速公路无人机航拍多车型车流量检测,分为car和bus,这里主要说一下遇到的问题以及想法,如有问题欢迎大家指正。

设计思路以及遇到的问题
第一步是完成物体(也就是车辆)的检测,这里有两种解决办法,第一种办法是使用opencv的形态学处理,比如背景消除、做帧差、膨胀腐蚀等等,这个办法比较基础,但是要处理好需要调整诸多细节,我的细节调整的不够好,因此实现时会遇到许多小问题。第二个办法是直接实现物体的识别,需要用到一定的训练模型,我测试过googlenet和yolo,最终选择了yolov5
第二步是追踪,这里用了deepsort追踪
第三步是计数,在CSDN 中找到一篇博文,提到的做法是建立一个类,每次出现新的目标就创建一个类,旧的目标就替换坐标,这个做法后来证实的确有效。但问题是如何判断这一帧的车辆是否新的目标,我给出的解决办法是创建一个列表,将第一帧的所有目标(也就是每一个对象)存入,第二帧的时候遍历每一个目标与列表的每一辆车,判断x,y的距离,如果变化不超过车的长度和宽度,就认为这是同一辆车(也有学长告诉为特征值匹配的办法,也许更可行,但我能力不够没有学到这里,所以没有采用)。

 待检测视频链接:

航拍广东高速公路风景,飞机上看更震撼,美呆了!,旅游,旅途风光,好看视频航拍广东高速公路风景,飞机上看更震撼,美呆了!,本视频由客家人阿牛哥提供,751次播放,好看视频是由百度团队打造的集内涵和颜值于一身的专业短视频聚合平台https://haokan.baidu.com/v?pd=wisenatural&vid=9283681397163393174

补充:我发现了一个csdn大哥写的计数算法。直接拿来用了。效果很棒。完美解决航拍无人机车流量计数。

检测图:

效果图:

 实现程序:

 
labelsPath = "./yolo-coco/coco.names"
LABELS = open(labelsPath).read().strip().split("\n")np.random.seed(42)
COLORS = np.random.randint(0, 255, size=(200, 3),dtype="uint8")weightsPath = "./yolo-coco/yolov5.weights"
configPath = "./yolo-coco/yolov5.cfg"net = cv2.dnn.readNetFromDarknet(configPath, weightsPath)
ln = net.getLayerNames()
ln = [ln[i - 1] for i in net.getUnconnectedOutLayers()]# ----------------------------------------------------------------------------------------------------------------------
"""
# cv2.VideoCapture() --- 里面参数如果地址,打开视频文件 --- 里面参数是0/1,打开摄像头
# 当参数是0的时候,打开计算机的内置摄像头,当参数为1的时候打开计算机的外置摄像头
# (W, H) = (None, None) --- 视频的宽度和高度,初始化视频编写器(writer)和帧尺寸
"""
# ----------------------------------------------------------------------------------------------------------------------vs = cv2.VideoCapture('./input/123.mp4')
(W, H) = (None, None)# ----------------------------------------------------------------------------------------------------------------------
"""
# try to determine the total number of frames in the video file
# 打开一个指向视频文件的文件指针,循环读取帧 --- 尝试确定视频文件中的总帧数(total),以便估计整个视频的处理时间;
# CV_CAP_PROP_FRAME_COUNT --- 视频的帧数
# 这里使用是处理视频的时候固定的过程,不必过度的纠结其使用 ---
#					   if imutils.is_cv2():
#					   	  prop = cv2.cv.CV_CAP_PROP_FRAME_COUNT
#					   else:
#					   	  prop = cv2.CAP_PROP_FRAME_COUNT
#
# vs.get(prop) --- cv2.VideoCapture.get(prop) --- 得到视频的总帧数 
# print("[INFO] {} total frames in video".format(total)) --- 输出视频的帧数
"""
# ----------------------------------------------------------------------------------------------------------------------
try:prop = cv2.cv.CV_CAP_PROP_FRAME_COUNT if imutils.is_cv2() \else cv2.CAP_PROP_FRAME_COUNTtotal = int(vs.get(prop))print("[INFO] {} total frames in video".format(total))except:print("[INFO] could not determine # of frames in video")print("[INFO] no approx. completion time can be provided")total = -1while True:# ----------------------------------------------------------------------------------------------------------------------"""# cv2.VideoCapture.read() ---> 读取视频,在while中循环读取视频的frame# vs.read() ---> 得到两个参数,其中ret是布尔值,如果读取帧是正确的则返回True,# 如果文件读取到结尾,它的返回值就为False。frame就是每一帧的图像,是个三维矩阵。# 第一个参数为False的时候,if not grabbed --- True --- 循环结束,"""(grabbed, frame) = vs.read()if not grabbed:breakif W is None or H is None:(H, W) = frame.shape[:2]

项目下载:

python小目标识别航拍车流量检测统计航拍车辆计数yolov5-深度学习文档类资源-CSDN下载


http://www.ppmy.cn/news/132139.html

相关文章

全景航拍理论基础二

无人机航拍有五个步骤 一、起飞 检查项目完成后,放置无人机在一个平台上,打开GPS,启动无人机。 二、定高悬停 无人机起飞,到达拍摄高度,选好位置,进行悬停。拍摄前可以做测试一圈,观察效果。 拍…

无人机航拍拍摄制作VR全景图教程

航拍对于很多无人机爱好者来说,无疑是持续在无人机市场消费的动力,相对于一般的拍照来说,无人机带领更多的人看到了飞机上也看不到的景观,而VR全景拍摄其中一种方法就是无人机航拍拍摄,他和地拍有一定相似的地方&#…

【航拍干货】航测区域重点建筑物精细化建模航拍技巧

倾斜建模、激光雷达数据处理技术等最新资讯、干货,关注公众号“三维前沿” 原文链接:[原文链接]https://mp.weixin.qq.com/s/TqnBqz2VmR3d1NSlKBc-_Q 文件说明 提供单位:福建三维前沿航空科技有限公司 文章概要:针对航拍测区内…

航拍技巧经验总汇

一、航拍基本动作 直飞     1、直线向前飞,镜头向前: 这是最常用的手法之一,一般拍摄海岸线、沙漠、山脊、笔直的道路等等也多用这种手法。 画面中镜头向前移动,也可从地面慢慢抬头望向远处,镜头一气呵成。 2、直线…

[论文笔记] 遥感航拍影像25篇CVPR39个数据集

摘要 本文讲解了39个数据集,关于高空卫星图和低空无人机航拍图像。 本文汇总了25篇CVPR2020年和2021年的论文。 本文详细介绍了这25篇论文的任务是什么,难点是什么,场景是什么。 同时,本文在需要的地方解释了一些卫星图和航拍…

航拍服务价格表,航拍测绘怎么计费的

什么是无人机航测?无人机航测计算费用有哪些项目?今天来跟大家分享一下。 目录 无人机航测介绍 无人机航测收费标准(参考) 无人机航测优势 无人机航测数据应用: 无人机航测介绍 什么是无人机航测?无人…

目标检测-无人机、航拍数据集总结

目标检测-无人机、航拍数据集总结 今天导师让我整理一下无人机类,航拍类的数据集,大概搜索了一下,找到以下几种数据集,在这边总结分享,方便后人 1、DOTA Dataset(A Large-scale Dataset for Object DeTect…

全景拍摄—航拍

对于摄影爱好者来说,航拍也是一个极具挑战的拍摄方式,航拍全景对于设备和技术的操作要求很高,拍攝出的照片是地面拍摄达不到的震撼效果,因此成为了一些摄影爱好者的追求,那么对于刚入门的新手而言,如何进行…