CN115170611A - 一种复杂交叉路口车辆行驶轨迹分析方法、***及应用 - Google Patents
一种复杂交叉路口车辆行驶轨迹分析方法、***及应用 Download PDFInfo
- Publication number
- CN115170611A CN115170611A CN202210808478.1A CN202210808478A CN115170611A CN 115170611 A CN115170611 A CN 115170611A CN 202210808478 A CN202210808478 A CN 202210808478A CN 115170611 A CN115170611 A CN 115170611A
- Authority
- CN
- China
- Prior art keywords
- vehicle
- model
- image
- target
- training
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000004458 analytical method Methods 0.000 title claims abstract description 28
- 238000000034 method Methods 0.000 claims abstract description 42
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 22
- 238000013526 transfer learning Methods 0.000 claims abstract description 22
- 230000008859 change Effects 0.000 claims abstract description 9
- 230000008447 perception Effects 0.000 claims abstract description 9
- 238000012549 training Methods 0.000 claims description 71
- 230000006870 function Effects 0.000 claims description 21
- 238000000605 extraction Methods 0.000 claims description 15
- 238000001514 detection method Methods 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 11
- 230000009466 transformation Effects 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 claims description 7
- 238000013136 deep learning model Methods 0.000 claims description 6
- 230000004927 fusion Effects 0.000 claims description 6
- 238000012544 monitoring process Methods 0.000 claims description 5
- 238000005520 cutting process Methods 0.000 claims description 4
- 238000011068 loading method Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 claims description 3
- 230000008014 freezing Effects 0.000 claims description 3
- 238000007710 freezing Methods 0.000 claims description 3
- 238000004590 computer program Methods 0.000 claims description 2
- 238000003860 storage Methods 0.000 claims description 2
- 238000012795 verification Methods 0.000 claims description 2
- 238000013508 migration Methods 0.000 claims 2
- 230000005012 migration Effects 0.000 claims 2
- 238000013135 deep learning Methods 0.000 description 10
- 239000000523 sample Substances 0.000 description 8
- 238000012360 testing method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 6
- 238000009826 distribution Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000004913 activation Effects 0.000 description 3
- 238000002372 labelling Methods 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 238000003491 array Methods 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 239000013074 reference sample Substances 0.000 description 2
- 206010039203 Road traffic accident Diseases 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 238000000137 annealing Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000004880 explosion Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000002569 neuron Anatomy 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000008092 positive effect Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000010998 test method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/764—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/82—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/52—Surveillance or monitoring of activities, e.g. for recognising suspicious objects
-
- G—PHYSICS
- G08—SIGNALLING
- G08G—TRAFFIC CONTROL SYSTEMS
- G08G1/00—Traffic control systems for road vehicles
- G08G1/01—Detecting movement of traffic to be counted or controlled
- G08G1/0104—Measuring and analyzing of parameters relative to traffic conditions
- G08G1/0125—Traffic data processing
- G08G1/0129—Traffic data processing for creating historical data or processing based on historical data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/30—Subject of image; Context of image processing
- G06T2207/30241—Trajectory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/07—Target detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V2201/00—Indexing scheme relating to image or video recognition or understanding
- G06V2201/08—Detecting or categorising vehicles
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Chemical & Material Sciences (AREA)
- Analytical Chemistry (AREA)
- Image Analysis (AREA)
Abstract
本发明属于计算机视觉技术领域,公开了一种复杂交叉路口车辆行驶轨迹分析方法、***及应用,首先对YOLOv5进行迁移学习,实现复杂交叉路口车辆感知;然后以虚拟线圈中心点构建参考坐标系原点,采用自适应方式构建参考坐标系,并利用DeepSORT对车辆行驶轨迹进行跟踪,最后以同一车辆在像素位置变化为分类依据,利用KNN算法实现车辆行驶轨迹分析。本发明利用迁移学习方式训练YOLOv5和DeepSORT模型,实现复杂环境下的车辆精确感知和目标跟踪;以车辆在图像像素位置变化为分类依据,利用KNN算法分析车辆行驶轨迹;利用迁移学习和KNN实现复杂交叉路口车辆感知和轨迹分析,其具有更高的精度和鲁棒性。
Description
技术领域
本发明属于计算机视觉技术领域,尤其涉及一种复杂交叉路口车辆行驶轨迹分析方法、***及应用。
背景技术
目前,近年来随着我国城市化建设的加快,城市人口和交通车辆不断增加,我国城市交通面临着严峻挑战,例如交通要道的车流量剧增所导致交通事故频发,交通拥堵等各种问题;复杂路口的车辆行驶轨迹分析和数据统计显的愈加重要,其数据分析结果有助于交通部门管理调度各个路口车辆通行。传统的车流量轨迹分析和数据统计主要使用地磁和RFID电子标签的方式进行统计;例如已授权专利CN108831163A,授权日为2021年6月25日,专利名称为“一种基于地磁的主干路协同信号机控制方法”,该专利公开了一种通过部署地磁在多个交通路口检测车辆位置以及轨迹信息,制定最优协调信号控制方案,有效的缓解交通道路拥堵。例如已授权专利CN109215350A,授权日为2021年5月25日,专利名称为“一种基于RFID电子车牌数据的短期交通状态预测方法”,该专利公开了一种通过部署RFID***对车辆进行检测,在一定的时间间隔内计算出路段之间交通流量获取当前交通状态。以上传统的方式不仅建设成本和维护成本较高,并且安装方式较为复杂,不利于实地部署。
随着当前深度学习技术在计算机视觉领域的发展,该技术广泛应用在交通领域;主要在体现在基于图像的车辆检测,车辆跟踪,车牌号识别以及车辆轨迹分析。该技术不仅成本低,而且对于识别,跟踪的车辆目标其准确性和实时性高。车辆轨迹分析是基于车辆跟踪和车辆检测的更高级的视觉任务;其要点在于对多个运动目标在连续时间区间内图像帧中车辆目标位置坐标变化关系的分析和准确判断,统计各个复杂路口车流量。目前大多数方法为设置虚拟线圈的方法对跟踪目标车辆在路口位置变化设置阈值判断其运动的方向,该方法在复杂交通场景下无法精确进行一个判断。
发明内容
针对现有技术存在的问题,本发明提供了一种复杂交叉路口车辆行驶轨迹分析方法、***及应用。
本发明是这样实现的,一种复杂交叉路口车辆行驶轨迹分析方法包括:
首先对YOLOv5进行迁移学习,实现复杂交叉路口车辆感知;
然后以虚拟线圈中心点构建参考坐标系原点,采用自适应方式构建参考坐标系,并利用DeepSORT对车辆行驶轨迹进行跟踪;
最后以同一车辆在像素位置变化为分类依据,利用KNN算法实现车辆行驶轨迹分析。
进一步,所述复杂交叉路口车辆行驶轨迹分析方法具体包括:
步骤1,引入交通要道监控摄像头采集多个连续时刻内视频图像数据集;人工标注数据集中每张图像中所有车辆外接矩形框标签,对于连续视频内同一目标车辆使用同一ID进行标识,构建深度学习模型训练集;
作为优选,步骤1所述交通车辆图像数据集为:
{datak(x,y),k∈[1,K],x∈[1,W],y∈[1,H])
其中,datak(x,y)表示目标车辆的图像训练集中第k帧图像中的第x行第y列像素信息,K表示车辆的图像训练集中图像的数量,W为图像宽度,H为图像高;
步骤1中所述车辆外接矩形框标签数据集定义为:
其中,Boxk,n表示在交通车辆图像训练集中第k帧图像中第n个车辆矩形框标注信息,c_xk,n表示在交通车辆图像训练集中第k帧图像中第n个车辆矩形框中心横坐标,c_yk,n表示在交通车辆图像训练集中第k帧图像中第n个车辆矩形框中心纵坐标,wk,n表示在交通车辆图像训练集中第k帧图像中第n个车辆矩形框宽度,hk,n表示在交通车辆图像训练集中第k幅图像中第n个车辆矩形框高度,,idk,n第k帧图像中第n个车辆矩形框车牌号;Nk表示交通车辆图像训练集中第k帧图像中车辆目标的数量即车辆外接矩形框的数量;
步骤1所述交通车辆图像训练集中类别定义为:
步骤1中所述车辆重识别数据集定义为:
{Reid(c,i)(x,y),c∈[1,C],i∈[1,1],x∈[1,W_1],y∈[1,H_1]}
其中,Reid(c,i)(x,y)表示重识别训练集中属于c类别车辆中第i个图像中的第x行第y列像素信息,C表示重识别训练集中车辆类别的数量,I表示该类别的数量,W_1为重识别训练集中图像宽度,H_1为重识别训练集中图像高度;
步骤2,引入YOLOv5目标检测模型网络,构建深度学习目标检测网络损失函数模型,将步骤1中交通车辆图像训练集和车辆外接矩形框标签数据集输入到YOLOv5网络模型中,通过基于迁移学习方式进行优化训练模型,得到训练好的YOLOv5网络模型;
作为优选。步骤2所述YOLOv5深度学习网络结构为:
YOLOv5由特征提取主干网络层,特征融合网络层,输出网络层三大模块所构成;
特征提取主干网络主要用于提取图像语义特征和位置特征,该层输入为步骤1中训练集图像,输出为不同尺度特征图。特征融合网络主要将高维特征和低维特征相融合,能有效提升检测精准,该层输入为不同尺度特征图。输出为固定大小特征图。输出网络层用于最终预测输出,该层输入为上一模块输出特征图,输出即为图像中预测出的车辆目标矩形框以及置信度。
输出网络层预测出车辆目标矩形框中心横坐标,纵坐标,宽度,高度,置信度5个目标数据信息和目标类别信息,输出网络层预测出车辆目标矩形框中心坐标和高度,宽度可得到第k帧图像第i个网格预测的第n个车辆目标边框中心横坐标中心纵坐标宽度高度目标类别信息为图像训练集第k帧图像第i个网格预测的第n个类别置信度信息为图像训练集第k帧图像第i个网格预测的第n个类别类别置信度可
步骤2所述引入YOLOv5构建深度学习网络损失函数模型为:
所述深度学习网络损失函数包括:类别损失,目标边界框损失和置信度损失;
所述类别损失的定义为:
其中,G为图像划分的网格数,B为每个网格中预测的边界框数,i表示单元格个数,j表示锚框个数,表示第i个网格上第j个先验框有目标车辆情况,表示第i个网格上第j个先验框无目标车辆情况。typek,n,i表示图像训练集第k幅图像第i个网格的第n个目标类别,表示第k帧图像第i个网格预测的第n个车辆目标类别;λnoobj表示没有物体时置信度惩罚权重系数。其中由于在复杂交通路口其目标车辆数目较多,其正样本远多于负样本,这样导致正负样本不平衡导致模型训练过程中难以收敛,故在二元交叉熵函数基础上引入平衡因子γ和a优化损失函数训练。
所述目标边界框框损失的定义为:
其中,表示第k帧图像第i个网格预测的第n个车辆目标边框中心横坐标,表示第k帧图像第i个网格预测的第n个车辆目标边框中心纵坐标,c_xk,n,i表示图像训练集第k幅图像第i个网格第n个车辆目标边框中心横坐标,c_yk,n,i表示图像训练集第k幅图像第i个网格第n个车辆目标边框中心纵坐标,ρ代表的是计算两个中心点间的欧式距离,c代表同时包含预测车辆目标边框和真实车辆目标边框的最小闭包区域的对角线距离,分别表示第k帧图像第i个网格预测的第n个车辆目标边框宽度和高度,wk,n,i,hk,n,i表示图像训练集第k帧图像第i个网格第n个车辆目标边框宽度和高度,IOU是预测框和真实框之间的交集和并集之比。
所述置信度损失的定义为:
所述YOLOv5损失函数为:
LOSS=LOSS(class)+LOSS(conf)+LOSS(box)
进一步,所述基于迁移学习的方式训练YOLO V5模型,包括:
将步骤1中深度学习模型图像训练集作为输入数据,使用YOLOv5模型载入预训练权重,修改其分类类别,将构建的数据集对网络进行迁移训练;
进一步,冻结YOLOv5网络特征提取主干网络层L1和特征融合网络层L2,由于只需要识别是否为车辆,故修改输出网路层L3中分类类别个数为1。使用SGD优化器更新输出网路层L3参数数据集训练轮次epoch设定为50,批量大batch小设定为8,初始学习率a设定为1e-5,使用余弦退火公式调整器学习率;公式如下:
其中和代表学习率变化的范围,Tcur代表上次重启后,经过了多少个epoch。Ti代表第i次重启,一共需要训练多少个epoch。经过以上训练得到优化后第i个组件中第e层卷积层的寻优参数为为第i个模块中卷积层的数量;
步骤3,引入DeepSORT目标跟踪网络模型,构建深度学习目标跟踪网络损失函数模型,将步骤1中车辆重识别数据集输入到DeepSORT网络模型进行优化训练模型,得到训练好的DeepSORT网络模型;
作为优选,步骤3所述DeepSORT深度学习网络结构为:
DeepSORT由目标车辆图像特征提取模块、目标车辆位置预测模块,目标车辆特征匹配模块;
进一步,车辆特征提取模块是由一个小型ResNet网络所构成,该网络包含多个卷积层,每个卷积层待优化参数为定义为ηf,即第f层卷积层的优化参数为ηf,e∈[1,L],L为第卷积层的数量,该层输入为步骤1中图像数据集,输出为定义为128维特征向量X(x0,x1,x2,…,x128),该层主要提取出车辆目标矩形框对应的图像特征用于后续相似度计算进行目标匹配和下一帧位置预测。目标车辆位置预测模块主要采用卡尔曼滤波算法预测出当前帧内目标车辆矩形框框在下一帧出现的矩形框位置坐标。目标车辆特征匹配模块采用匈牙利算法将当前帧车辆出现矩形区域位置和预测出下一帧矩形框位置坐标进行匹配分配唯一id号进行目标跟踪。
进一步,ResNet特征提取网络由多个卷积层,池化层,BN层组成;其中多个卷积层堆叠成Residual模块,该模块引入残差结构有效的解决反向传播过程中梯度消失和梯度***问题。该网络输出层使用平均池化层代替全连接层可解决输入图像尺寸大小固定问题。输入最终输出为128维特征向量。
进一步,定义ResNet特征提取网络其损失函数为:
进一步,通过结合ResNet提取出车辆目标外表特征以及通过卡尔曼滤波算法计算运动特征得到代价矩阵,使用匈牙利算法对目标车辆进行id分配达到对于目标车辆跟踪功能。
进一步,所述训练DeepSORT目标跟踪模型,包括:训练轮次epoch设定为100轮次,优化器选择SGD优化器,初始学习率设定为1e-5,训练完毕后,得到优化后第e层卷积层的寻优参数为为卷积层的数量;
步骤4:通过道路监控摄像头实时采集初始图像并传输至计算处理主机,使用YOLO目标检测模型检测出每帧图像中目标车辆,输出目标车辆位置矩形框作为DeepSORT目标跟踪模型的输入去预测各个车辆在下一帧轨迹,对其分配ID进行实时跟踪;
作为优选,步骤4中采集视频图像数据定义为:
进一步,使用训练好的YOLOv5模型对输入的测试连续视频帧每一帧图像识别出矩形框定义为:
其中,表示YOLOv5模型输出第k帧图像第x行第y列像素信息,typek,n表示YOLOv5模型输出第k帧图像第n个车辆外接矩形边框中车辆类别标签为1,c_xk,n表示YOLOv5模型输出第k帧图像中第n个车辆矩形框中心横坐标,c_yk,n表示YOLOv5模型输出第k帧图像中第n个车辆矩形框中心纵坐标,wk,n表示YOLOv5模型输出第k帧图像中第n个车辆矩形框宽度,hk,n表示YOLOv5模型输出第k帧图像中第n个车辆矩形框高度,typek,n表示YOLOv5模型输出第k帧图像中第n个车辆矩形框置信度,Nk表示YOLOv5模型输出第k帧图像中车辆目标的数量即车辆外接矩形框的数量;
进一步,将YOLOv5预测出目标车辆外接矩形框作为DeepSORT输入,定义DeepSORT输出为:
其中,表示DeepSORT模型输出第k+1帧图像第x行第y列像素信息,typek,n表示DeepSORT模型输出第k帧图像第n个车辆外接矩形边框中车辆类别标签为1,c_xk,n表示DeepSORT模型输出第k+1帧图像中第n个车辆矩形框中心横坐标,c_yk,n表示DeepSORT模型输出第k+1帧图像中第n个车辆矩形框中心纵坐标,wk,n表示DeepSORT模型输出第k+1帧图像中第n个车辆矩形框宽度,hk,n表示DeepSORT模型输出第k+1帧图像中第n个车辆矩形框高度,typek,n表示DeepSORT模型输出第k+1帧图像中第n个车辆矩形框置信度,idk,n表示DeepSORT模型输出第k+1帧图像中第n个车辆矩形框id标识符,Nk表示DeepSORT模型输出第k+1帧图像中车辆目标的数量即车辆外接矩形框的数量;
步骤5,使用YOLOv5模型预测出目标车辆外接矩形作为DeepSORT算法输入对其同一目标车辆进行跟踪,以同一目标车辆在视频帧内外接矩形中心点坐标变化量为数据集样本,对其行驶方向通过人工标注构建起车辆轨迹方向预测数据集,使用KNN算法计算在不同时序内图像帧中目标车辆坐标变换进行目标车辆轨迹判断。
作为优选,步骤5中车辆坐标变换数据集用于KNN算法判断车轨迹,主要用目标跟踪模型DeepSORT在视频流中跟踪不同车辆在t时间内变换坐标(dx,dy),该坐标以虚拟线圈作为坐标参考系,人工进行标注直线轨迹或是转弯轨迹,所述KNN算法选取1000个目标车辆的坐标变换作为样本进行测试。
进一步,定义人工标注轨迹方向数据集为:
{data(dxi,dxi,direi),dx∈[0,1],dy∈[0,1],dire∈{0,1}}
其中data(dxi,dxi,direi)表示在t时间内第i个跟踪目标车辆x轴方向,y轴方向变化量以及其标记为直行还是拐弯,0表示直行,1表示拐弯。
进一步,通过对视频图像内车辆进行识别跟踪效果,对同一目标车辆分配唯一ID号,将其在视频帧内出现的初始坐标和最后消失的终止坐标做差计算出坐标的变换量(dx,dy)。通过人工观测的方式对其手动标注,标注是直线还是转弯两种情况,将该数据作为后面使用KNN算法进行预测判断的样本信息。
进一步,对标注轨迹方向数据集进行7:3划分训练集和验证集,通过大量交叉测试训练得到的k让其车辆目标轨迹分类准确率最好;对各种车辆目标轨迹进行二分类之后若是转弯则进行对其车辆目标轨迹分类,通过其坐标正负性直接分类出是左行驶还是右行驶。
本发明的另一目的在于提供一种复杂交叉路口车辆行驶轨迹分析***。
本发明的另一目的在于提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行所述的复杂交叉路口车辆行驶轨迹分析方法。
本发明的另一目的在于提供一种信息数据处理终端,所述信息数据处理终端用于实现所述的复杂交叉路口车辆行驶轨迹分析方法。
结合上述的所有技术方案,本发明所具备的优点及积极效果为:
本发明提出基于迁移学习的目标检测框架和目标跟踪框架算法对目标车辆进行精准跟踪,为后续目标车辆轨迹判断提供基础,提出基于KNN的目标车辆轨迹分析判断方法,该方法应用于车辆轨迹分类较于传统方法更加准确且实施更加方便。
本发明利用迁移学习方式训练YOLOv5和DeepSORT模型,实现复杂环境下的车辆精确感知和目标跟踪;以车辆在图像像素位置变化为分类依据,利用KNN算法分析车辆行驶轨迹;相对于传统方法利用阈值方法实现车辆轨迹判断,本方法利用迁移学习和KNN实现复杂交叉路口车辆感知和轨迹分析,其具有更高的精度和鲁棒性。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图做简单的介绍,显而易见地,下面所描述的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的复杂交叉路口车辆行驶轨迹分析方法流程图;
图2是本发明实施例提供的复杂交叉路口车辆行驶轨迹分析方法原理图;
图3是本发明实施例提供的训练YOLOv5模型效果图;
图4是本发明实施例提供的训练DeepSORT模型特征提取网络效果图;
图5是本发明实施例提供的测试YOLOv5模型识别检测车辆效果图;
图6是本发明实施例提供的测试YOLOv5和DeepSORT模型在多帧图像分别跟踪不同轨迹状态的目标车辆效果图(从左往右分别为:左转弯,直行,右转弯,从上往下为时间轴);
图7是本发明实施例提供的训练KNN算法进行车辆轨迹状态分类的训练数据集分布情况;
图8是本发明实施例提供的训练好的KNN算法对测试集中车辆轨迹状态分类的判断。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
现有技术存在的问题及缺陷为:基于地磁传感器等传统方式其部署困难其成本较高,其耗费人力物力巨大,其部署拆卸较麻烦。且在其特定条件下,无法达到比较高得精准度。在深度学习视觉处理领域其下游模型框架发展较为成熟,在其相关应用领域还有待进一步证明与实践应用。
解决以上问题意义为:深度学习视觉技术处理在其相关领域应用前景巨大,该技术能够准确实时的获取车辆轨迹方向数据后进一步分析处理。
针对现有技术存在的问题,本发明提供了一种复杂交叉路口车辆行驶轨迹分析方法、***及应用,下面结合附图对本发明作详细的描述。
如图1所示,本发明实施例提供的复杂交叉路口车辆行驶轨迹分析方法包括:
S101,对YOLOv5进行迁移学习,实现复杂交叉路口车辆感知;
S102,以虚拟线圈中心点构建参考坐标系原点,采用自适应方式构建参考坐标系,并利用DeepSORT对车辆行驶轨迹进行跟踪;
S103,以同一车辆在像素位置变化为分类依据,利用KNN算法实现车辆行驶轨迹分析。
在本发明一优选实施例中,图2是本发明实施例提供的复杂交叉路口车辆行驶轨迹分析方法原理包括:
Step1:通过路口摄像头拍摄当前时间点的交通道路图像。
Step2:使用基于迁移学习训练好的YOLO v5模型对当前时间拍摄的图像作为输入检测出目标车辆位置信息,裁剪出识别车辆图像并且获取其位置坐标信息作为输出。
Step3:使用基于迁移学习训练好的DeepSORT模型对上一步识别出来车辆位置以及裁剪出来车辆图像作为输入,对多个车辆进行跟踪;使用外接矩形框标记出车辆在图像中位置,对于同一目标车辆分配唯一的ID号。
Step4:以图像中心点为坐标原点建立起直角坐标系,以跟踪出车辆矩形外接框中心点为参考坐标,获取跟踪目标车辆在视频帧内出现点的坐标(x0,y0)坐标,目标车辆消失在视频帧内最后的位置坐标(xt,yt)并计算出轨迹偏移量(dx,dy)
Step5:使用上一步收集的车辆偏移量(dx,dy),对其部分数据提前通过人工标记的方式标记出直行或转弯状态作为参照样本,使用KNN算法计算和参照样本之间的距离进行轨迹分类;分类出是直行还是拐弯。
Step6:若为拐弯轨迹,则通过消失点的x坐标正负性判断出左拐或是右拐。
实施例1.基于迁移学习训练YOLOv5对目标车辆进行识别。
该方法包括:1)采用迁移学习方式训练YOLOv5模型2)交通路口识别。
具体而言:
(1)采用迁移学习方式训练YOLOv5模型
本发明主要是在复杂交通十字路口进行一个车辆的识别并进行后续的处理,目标车辆的准确性对于后续的任务极为重要,这里采用YOLOv5模型进行训练去进行准确实时的定位目标车辆。
在YOLOV5模型中,经过一系列特征提取,特征融合等操作之后,最后得到三种不同尺度的张量(tensor)分别代表不同感受野下的输出,也就是完成在不同尺度的特征图上的一个预测。这样有助于对小目标检测的精度的提升。模型最终对于目标车辆同时进行回归和分类任务。由于本发明目标检测部分只需要检测目标是否为车,在YOLOv5中产生的目标建议区域(anchor)进行一个二分类任务(区分是背景还是目标车辆)。所以需要对网络分类修改其激活函数,采用sigmoid激活函数:
其中z为当前神经元节点的输出值,进行sigmoid函数激活之后其值在0-1之间概率分布,其概率值大于0.5判定为目标,否则为背景。对此其分类的损失函数也要重新设计,此外由于在复杂交通情况下其目标车辆存在区域较多导致正负样本不平衡,故将其损失函数设计为改进版二值交叉熵损失函数:
其中y为预测的概率,为标签;当为0时表示该目标建议区域不存在目标车辆,否则就存在,a为平衡正负样本超参数。由于YOLOv5模型里面各个层都进行了精心的设计,不便于直接修改,这里只需要修改其激活函数和分类损失函数即可,对于额外的超参数也进行一定的修改调整在对网络进行一定调整后对其进行迁移学习的训练;通过迁移学习的方式载入预训练文件,调整设置超参数,采用自己拍摄复杂交通路口图片对其进行训练;具体而言,冻结其网络模型的特征提取区域和特征融合区域,只对其分类器进行一个训练。这样在极短的时间批次内能够达到比较好的效果。自此,完成对整个YOLOv5模型训练部分。
(2)在检测的十字交通路口部署摄像头使其能覆盖整个路口进行监控,将得到的监控画像视频帧以差帧法的方式进行一个采样,如每隔3帧抽取一帧视频画面,抽帧是为了尽可能保持视频流处理的速度能达到实时处理。将检测的图像输入到YOLOv5网络中进行一个预测,得到的输出为车辆目标在图像画面中中心坐标值x,y以及宽度和高度w,h。得到这些数据之后进行下一步目标跟踪处理。
实施例2.基于DeepSORT目标跟踪对车辆进行实时跟踪。
该方法包括:1)基于迁移学习训练DeepSORT模型2)获取目标车辆轨迹。
具体而言:
(1)使用构建出的重识别数据集通过迁移学习的方法对DeepSORT模型进行少量的训练到达其效果。
(2)DeepSORT将目标检测器YOLOv5输出的多个车辆位置坐标作为输入,输出为目标车辆的轨迹及其同一目标车量分配相同的id。在跟踪目标车辆的基础上保存目标车辆在视频画面中出现在第一帧图像的坐标位置;该坐标位置以人为设定的虚拟线圈作为坐标轴原点得到的(x0,y0)坐标,同时也得到目标车辆消失在视频帧内最后的位置坐标(xt,yt),计算出其坐标的改变量(dx,dy),将该组坐标保存作为KNN算法分类的样本。
实施例3.基于KNN算法训练和目标车辆方向判断:通过上一步目标车辆识别跟踪获取视频内起始帧的多个目标车辆坐标变换量dx,dy最为样本,对其进行KNN分类操作;其中KNN距离公式采用公式3余弦距离公式:
其中(dx0,dy0)为待分类的数据坐标变换量,(dxi,dyi)为第i个样本的坐标变换,总共有n个数据集;
在训练阶段采取交叉测试的方法进行训练获取到最合适的k值,在测试分类阶段对其进行二分类之后若是转弯则进行对其分类,通过其坐标正负性直接分类出是左行驶还是右行驶。
如图6,以图像中心为坐标轴,获取多个跟踪目标车辆(唯一id标识)在视频帧内出现的初始坐标(x1,y1),消失的最终坐标(x2,y2)和计算其偏移量(dx,dy)。对其坐标按照视频宽度和高度大小缩放到0-1之间,标注其目标转弯行驶或直线行驶。采集目标车辆出现时坐标,消失时坐标和其轨迹方向,计算其坐标偏移作为KNN分类部分样本如表1;
表1
编号 | 初始坐标 | 最终坐标 | 偏移坐标 | 方向 |
1 | (-0.06,0.08) | (-0.39,0.27) | (-0.33,0.3) | 直行 |
2 | (-0.06,0.24) | (0.02,-0.28) | (0.07,-0.44) | 直行 |
3 | (-0.05,-0.31) | (-0.42,0.11) | (-0.27,-0.18) | 直线 |
4 | (0.31,-0.27) | (0.25,-0.25) | (0.28,0.03) | 转弯 |
5 | (-0.08,-0.28) | (0.42,-0.22) | (0.5,0.06) | 转弯 |
6 | (-0.05,-0.29) | (0.46,-0.24) | (0.51,0.05) | 转弯 |
7 | (-0.04,-0.3) | (0.05,-0.28) | (0.09,0.02) | 转弯 |
图7即为采集部分样本点分布情况。
应当注意,本发明的实施方式可以通过硬件、软件或者软件和硬件的结合来实现。硬件部分可以利用专用逻辑来实现;软件部分可以存储在存储器中,由适当的指令执行***,例如微处理器或者专用设计硬件来执行。本领域的普通技术人员可以理解上述的设备和方法可以使用计算机可执行指令和/或包含在处理器控制代码中来实现,例如在诸如磁盘、CD或DVD-ROM的载体介质、诸如只读存储器(固件)的可编程的存储器或者诸如光学或电子信号载体的数据载体上提供了这样的代码。本发明的设备及其模块可以由诸如超大规模集成电路或门阵列、诸如逻辑芯片、晶体管等的半导体、或者诸如现场可编程门阵列、可编程逻辑设备等的可编程硬件设备的硬件电路实现,也可以用由各种类型的处理器执行的软件实现,也可以由上述硬件电路和软件的结合例如固件来实现。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,都应涵盖在本发明的保护范围之内。
Claims (10)
1.一种复杂交叉路口车辆行驶轨迹分析方法,其特征在于,所述复杂交叉路口车辆行驶轨迹分析方法包括:利用YOLOv5迁移学习方法进行复杂交叉路口车辆感知;
以虚拟线圈中心点构建参考坐标系原点,采用自适应方式构建参考坐标系,并利用DeepSORT对车辆行驶轨迹进行跟踪;
以同一车辆在像素位置变化为分类依据,进行车辆行驶轨迹分析。
2.如权利要求1所述的复杂交叉路口车辆行驶轨迹分析方法,其特征在于,所述复杂交叉路口车辆行驶轨迹分析方法具体包括:
步骤一,引入连续视频帧内采集得到的交通车辆图像数据集;人工标注数据集中每张图像中所有车辆得到车辆外接矩形框标签数据集,并且对不同帧图像内同一目标车辆裁剪出并且标记同一目标得到车辆重识别数据集,构建深度学习模型训练集;
步骤二,引入YOLOv5目标检测模型网络,构建起模型损失函数,将深度学习模型训练集中的交通车辆图像数据集以及车辆外接矩形框标签数据集输入到YOLOv5中基于迁移学习的方式进行训练,得到训练后的YOLOv5网络模型。
步骤三,引入DeepSORT目标检测模型网络,构建模型损失函数,将深度学习模型训练集中的重识别数据集输入到DeepSORT中基于迁移学习的方式进行训练,得到训练后的DeepSORT网络模型。
步骤四:通过道路监控摄像头实时采集初始图像并传输至计算处理主机,使用YOLO目标检测模型检测出目标车辆矩形框作为DeepSORT输入,模型输出为对其分配ID进行实时跟踪;
步骤五,以不同图像帧内同一目标车辆坐标变化量为依据,使用KNN算法进行轨迹方向的分类,使用KNN算法计算在不同时序图像帧中目标车辆坐标变换进行目标车辆轨迹判断。
3.如权利要求1所述的复杂交叉路口车辆行驶轨迹分析方法,其特征在于,步骤一中,所述深度学习模型训练集包括交通车辆图像数据集、车辆外接矩形框标签数据集和车辆重识别数据集;
所述交通车辆图像数据集来源于不同场景下拍摄的交通路口各类车辆信息,采用YOLO格式进行标注,构建起车辆外接矩形框标签数据集;
所述车辆重识别数据集是将拍摄的交通路口视频多帧图像内车辆目标裁剪,人工标注对其同一目标车辆进行分类。
4.如权利要求1所述的复杂交叉路口车辆行驶轨迹分析方法,其特征在于,步骤一中,对目标车辆数据集进行7:3划分训练集和验证集,进行图像的随机裁剪,翻转,擦除等图像增强技术,扩充其数据集,使得模型泛化能力更强,同样采用处理图像增强技术对车辆重识别数据集进行数据集扩充。
5.如权利要求1所述的复杂交叉路口车辆行驶轨迹分析方法,其特征在于,步骤二中,所述基于迁移学习的方式训练YOLOv5模型,包括:
使用YOLOv5模型载入预训练权重,修改其分类类别个数;将构建的数据集对网络进行迁移训练;通过冻结特征提取主干网络和特征融合网络部分,只需训练最后的分类网络。
6.如权利要求1所述的复杂交叉路口车辆行驶轨迹分析方法,其特征在于,步骤三中,所述构建以及训练DeepSORT模型,包括:
引入DeepSORT模型中ResNet特征提取网络,载入预训练权重去掉网络最后的全连接层,将构建的数据集对ResNet网络进行迁移训练;通过冻结前面卷积层只训练最后一层,设置较小的学习率对其进行训练;
将训练好的ResNet网络作为DeepSORT模型的特征提取网络。
7.如权利要求1所述的复杂交叉路口车辆行驶轨迹分析方法,其特征在于,步骤四中,对DeepSORT目标跟踪框架进行训练以及搭建出YOLOv5结合DeepSORT模型包括:YOLOv5对输入的视频帧图像进行车辆检测,输出其检测框的位置信息;DeepSORT输入为检测出的目标车辆位置信息以及该位置裁剪出的图像输出为预测下一帧的位置信息以及对同一目标进行ID标识。
8.一种执行权利要求1~7任意一项所述的复杂交叉路口车辆行驶轨迹分析方法的复杂交叉路口车辆行驶轨迹分析***。
9.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行权利要求1~7任意一项所述的复杂交叉路口车辆行驶轨迹分析方法。
10.一种信息数据处理终端,其特征在于,所述信息数据处理终端用于实现权利要求1~7任意一项所述的复杂交叉路口车辆行驶轨迹分析方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210808478.1A CN115170611A (zh) | 2022-07-11 | 2022-07-11 | 一种复杂交叉路口车辆行驶轨迹分析方法、***及应用 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210808478.1A CN115170611A (zh) | 2022-07-11 | 2022-07-11 | 一种复杂交叉路口车辆行驶轨迹分析方法、***及应用 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115170611A true CN115170611A (zh) | 2022-10-11 |
Family
ID=83492320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210808478.1A Pending CN115170611A (zh) | 2022-07-11 | 2022-07-11 | 一种复杂交叉路口车辆行驶轨迹分析方法、***及应用 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115170611A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116758732A (zh) * | 2023-05-18 | 2023-09-15 | 内蒙古工业大学 | 雾计算环境下的交叉路口车辆检测和公交优先通行方法 |
CN117077042A (zh) * | 2023-10-17 | 2023-11-17 | 北京鑫贝诚科技有限公司 | 一种农村平交路口安全预警方法及*** |
CN117437792A (zh) * | 2023-12-20 | 2024-01-23 | 中交第一公路勘察设计研究院有限公司 | 基于边缘计算的实时道路交通状态监测方法、设备及*** |
CN117994987A (zh) * | 2024-04-07 | 2024-05-07 | 东南大学 | 基于目标检测技术的交通参数提取方法及相关装置 |
-
2022
- 2022-07-11 CN CN202210808478.1A patent/CN115170611A/zh active Pending
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116758732A (zh) * | 2023-05-18 | 2023-09-15 | 内蒙古工业大学 | 雾计算环境下的交叉路口车辆检测和公交优先通行方法 |
CN117077042A (zh) * | 2023-10-17 | 2023-11-17 | 北京鑫贝诚科技有限公司 | 一种农村平交路口安全预警方法及*** |
CN117077042B (zh) * | 2023-10-17 | 2024-01-09 | 北京鑫贝诚科技有限公司 | 一种农村平交路口安全预警方法及*** |
CN117437792A (zh) * | 2023-12-20 | 2024-01-23 | 中交第一公路勘察设计研究院有限公司 | 基于边缘计算的实时道路交通状态监测方法、设备及*** |
CN117437792B (zh) * | 2023-12-20 | 2024-04-09 | 中交第一公路勘察设计研究院有限公司 | 基于边缘计算的实时道路交通状态监测方法、设备及*** |
CN117994987A (zh) * | 2024-04-07 | 2024-05-07 | 东南大学 | 基于目标检测技术的交通参数提取方法及相关装置 |
CN117994987B (zh) * | 2024-04-07 | 2024-06-11 | 东南大学 | 基于目标检测技术的交通参数提取方法及相关装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110059554B (zh) | 一种基于交通场景的多支路目标检测方法 | |
CN108830188B (zh) | 基于深度学习的车辆检测方法 | |
CN111062413B (zh) | 一种道路目标检测方法、装置、电子设备及存储介质 | |
CN115170611A (zh) | 一种复杂交叉路口车辆行驶轨迹分析方法、***及应用 | |
CN108171136B (zh) | 一种多任务卡口车辆以图搜图的***及方法 | |
Nie et al. | Pavement Crack Detection based on yolo v3 | |
CN112069944B (zh) | 一种道路拥堵等级确定方法 | |
Nie et al. | Pavement distress detection based on transfer learning | |
CN102289686B (zh) | 一种基于迁移学习的运动目标分类识别方法 | |
CN105512640A (zh) | 一种基于视频序列的人流量统计方法 | |
CN112016605B (zh) | 一种基于边界框角点对齐和边界匹配的目标检测方法 | |
CN104978567A (zh) | 基于场景分类的车辆检测方法 | |
CN114648665A (zh) | 一种弱监督目标检测方法及*** | |
CN114998748B (zh) | 遥感图像目标精细识别方法、电子设备及存储介质 | |
CN110008899B (zh) | 一种可见光遥感图像候选目标提取与分类方法 | |
CN112738470A (zh) | 一种高速公路隧道内停车检测的方法 | |
CN102708384B (zh) | 一种基于随机蕨的自举弱学习方法及其分类器 | |
CN115376101A (zh) | 一种面向自动驾驶环境感知的增量式学习方法和*** | |
CN117173913B (zh) | 基于不同时段车流量分析的交通控制方法及*** | |
Gu et al. | Local Fast R-CNN flow for object-centric event recognition in complex traffic scenes | |
CN117333845A (zh) | 一种基于改进YOLOv5s的小目标交通标志实时检测方法 | |
CN104331708A (zh) | 一种人行横道线自动检测分析方法及*** | |
Rouf et al. | Real-time vehicle detection, tracking and counting system based on YOLOv7 | |
CN110555425A (zh) | 一种视频流实时行人检测方法 | |
Wang et al. | Vehicle key information detection algorithm based on improved SSD |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |