CN114972767A - 一种基于高空无人机视频的车辆轨迹和航向角提取方法 - Google Patents
一种基于高空无人机视频的车辆轨迹和航向角提取方法 Download PDFInfo
- Publication number
- CN114972767A CN114972767A CN202210626786.2A CN202210626786A CN114972767A CN 114972767 A CN114972767 A CN 114972767A CN 202210626786 A CN202210626786 A CN 202210626786A CN 114972767 A CN114972767 A CN 114972767A
- Authority
- CN
- China
- Prior art keywords
- vehicle
- data
- frame
- video
- unmanned aerial
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/10—Terrestrial scenes
- G06V20/17—Terrestrial scenes taken from planes or by drones
-
- 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/20—Image preprocessing
- G06V10/30—Noise filtering
-
- 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/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- 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
- 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
- G06V20/54—Surveillance or monitoring of activities, e.g. for recognising suspicious objects of traffic, e.g. cars on the road, trains or boats
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Remote Sensing (AREA)
- Image Processing (AREA)
Abstract
一种基于高空无人机视频的车辆轨迹和航向角提取方法,1)使用无人机在高空拍摄交通流视频数据,对视频进行视频增稳预处理;2)实施基于数据集的深度学习模型训练,获取旋转目标检测模型YOLOv5‑R的模型文件;3)基于YOLOv5‑R和DeepSort‑R深度学习模型对每一帧图像进行旋转目标检测与跟踪,获取车辆目标的图像坐标、车辆航向角、车辆类别、车辆尺寸等信息;4)对车辆轨迹的坐标和航向角数据进行数据清洗、平滑降噪等预处理;5)人工标定环境参照物的地面坐标作为锚点,计算图像坐标系与地面坐标系之间的坐标转换参数,获取车辆轨迹的地面坐标。本发明有效克服无人机拍摄扰动影响、工作效率高、显著提高车辆轨迹数据提取的精度、可获取车辆尺寸和航向角数据等优点。
Description
技术领域
本发明涉及车辆图像识别相关技术领域,具体来讲涉及的是一种基于高空无人机视频的车辆轨迹和航向角提取方法。
背景技术
无人机航拍作为一种新型的交通流数据获取手段,相比于如地磁感应线圈、视频监控、浮动车、毫米波雷达等其它数据采集方式,具有部署机动灵活、不受地面交通干扰、视角广阔等优势,可以高效率、低风险、低成本地获取从局部到广域的大范围地面交通图像信息。
随着无人机航拍技术和图像处理算法的进一步发展与融合,无人机航拍正逐渐成为道路交通数据采集的热门工具,基于无人机航拍视频提取的车辆轨迹、车辆航向角等数据可用于交通流特性分析、驾驶行为建模、交通仿真、自动驾驶、设施安全评估等,为道路交通规划、设计、管理领域的相关研究和应用提供了有效的实验手段。
使用无人机采集交通流视频时,由于受到气流、电机震动、人为操纵等内外多种因素影响,相机会发生随机性扰动,具体表现为视频图像帧与帧之间不同程度的旋转、缩放与抖动,为高精度车辆轨迹数据的提取造成较大影响:一是视频图像随时间发生不规律的平移与旋转,导致无法准确获取由车辆自身运动发生的真实位移,若不将图像旋转与偏移导致的误差剔除,则可能导致无法依靠车辆坐标判断车辆的运动状态,也无法基于车辆轨迹数据计算准确的微观交通参数。二是由于无人机采集的视频图像中车辆目标往往较小,因相机镜头抖动产生的误差很容易影响车辆轨迹数据的精度。
常用的传统车辆检测方法有背景提取法、光流法等。其中,背景提取法易受光照强度和背景变化干扰,而光流法抗噪性差且计算量较大。相较于传统的目标检测方法,基于深度学习的方法在特征提取和分类回归上有着明显的优势,但是基于深度学习算法的车辆检测往往采用矩形无旋转检测框,若矩形检测框不是车辆的最小外接矩形,在跟踪转弯车辆的轨迹时会造成跟踪中心的偏移,使得轨迹数据产生较大误差,而且检测框大小会随着车辆航向角发生变化,难以获取准确的车辆尺寸信息和车辆航向角信息。
发明内容
为了解决上述现有技术中存在的问题,本发明提供了一种高精度车辆轨迹和车辆航向角数据的提取方法,该方法通过采用OpenCV库中既有的图像处理函数完成视频增稳消抖后,基于YOLOv5-R的旋转目标检测算法与基于DeepSort-R的旋转目标跟踪算法获取车辆图像坐标和车辆航向角数据,通过单应性变换模型获取视频图像坐标系与地面坐标系之间的转换矩阵,再将车辆图像坐标转换为地面坐标,并采用EKF平滑算法完成车辆轨迹地面坐标数据和航向角数据的平滑处理,最终获得高精度的车辆轨迹数据和车辆航向角数据。
本发明解决其技术问题所采用的技术方案是:
一种基于高空无人机视频的车辆轨迹和航向角提取方法,包括有以下步骤:
步骤1:对无人机在高空拍摄交通流视频进行视频稳像预处理,去除因无人机飞行和高空环境影响导致的抖动;
步骤2:
(1)车辆目标类别划分:获取无人机交通流视频数据,根据交通流视频中的典型车辆型式并结合自身研究需要,将车辆目标划分成不同类别;
(2)数据集制作:用于训练的数据集可自己制作或者下载符合要求的现有数据集;
(3)模型训练:使用基于pytorch的深度学习框架进行旋转目标检测模型YOLOv5-R的训练,训练完成后获得YOLOv5.pt模型文件;训练次数可以自行设定,当训练结果进入收敛区间时,平均准确率mAP达到90%以上,平均损失average loss在1.6以下且不再下降;
步骤3:
对步骤1中经过视频稳像处理后的无人机交通流视频数据中的每一帧图像进行目标检测与跟踪,采用的图像处理算法为基于YOLOv5-R的旋转目标检测算法与基于DeepSort-R的旋转目标跟踪算法;获取的数据包括车辆的平面xy坐标、车辆类别信息、车身尺寸信息、车辆航向角信息和车辆编号ID信息,获取的各类信息分别按车辆ID的先后顺序保存至不同的.csv文件;
步骤4:
对步骤3中获取的车辆轨迹和航向角的数据进行数据清洗、平滑降噪预处理;
(1)数据清洗;
通过计算数据之间的欧氏距离是否小于合理阈值,对目标检测结果进行剔除坏值,去除错误检测数据,修正错误追踪数据;
(2)平滑降噪;
通过车辆跟踪算法获取的车辆轨迹和航向角数据是离散时间数据,由于目标检测框的偏移、旋转、形变造成车辆检测中心点的偏移和车辆检测框的偏转,使得车辆轨迹和航向角数据产生误差,需要采用离散时间平滑算法对轨迹数据进行平滑降噪;
步骤5:
将步骤1中增稳处理后无人机交通流视频数据中的第一帧单独提取为图片,选择建筑物的角点、地面交通标志线段的端点、路灯灯柱清晰可辨的固定参照物的特征点作为锚点,锚点的数量至少为4个,且均匀分布于画面中;将锚点作为坐标转换的控制点,将视频拍摄范围内的道路路面视为一个平面,使用鼠标人工标记出锚点,调用OpenCV获取锚点的屏幕坐标(xi,yi),通过谷歌地图获取锚点的地理坐标(xi′,yi′);图像坐标系与地面坐标系的转换实为两个处于不同平面的二维坐标系之间的转换,调用OpenCV的findHomography算法求解图像坐标系与地理坐标系之间的坐标转换矩阵H;
将获取的车辆轨迹的图像坐标通过等式(1)计算得到对应的地理坐标,将计算结果按车辆ID序号存入新的csv文件中。
本发明和现有技术相比,其优点在于:
优点1:本发明方法成功克服了无人机高空悬停拍摄过程中因相机抖动对车辆位置检测带来的误差影响,可显著提升车辆轨迹数据的精度。
优点2:本发明方法采用的算法精度高、实时性好、可操作性强、人工工作量小,易于推广使用。
优点3:与现有其它方法相比,本发明采用旋转目标检测与跟踪算法,既提升了车辆轨迹检测的精度,又可以获取传统目标检测算法无法获得的车辆长度、宽度和航向角信息,有利于推动基于无人机视频的车辆轨迹数据的进一步研究与应用,为驾驶行为特征研究、交通流特性分析、微观交通仿真、自动驾驶等研究领域提供宝贵的数据支撑,具有良好的工程应用前景。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的的车辆轨迹和航向角提取方法流程示意图;
图2为本发明的视频稳像的实现逻辑示意图;
图3为本发明的白天条件下的车辆目标检测与跟踪效果示意图;
图4为本发明的夜晚条件下的车辆目标检测与跟踪效果示意图;
图5为本发明的对车辆轨迹和航向角的数据进行数据清洗、平滑降噪预处理流程示意图;
图6为本发明的车辆轨迹坐标实施EKF平滑处理后的效果示意图;
图7为本发明的车辆X轴轨迹坐标数据示意图;
图8为本发明的车辆Y轴轨迹坐标数据示意图;
图9为本发明的车辆航向角数据的平滑结果示意图;
图10为本发明的实际轨迹数据验证示意图。
具体实施方式
下面将参照附图更详细地描述本发明公开的示例性实施例,这些实施例是为了能够更透彻地理解本发明,并且能够将本发明公开的范围完整的传达给本领域的技术人员。虽然附图中显示了本发明公开的示例性实施例,然而应当理解,本发明而不应被这里阐述的实施例所限制。
一种基于高空无人机视频的车辆轨迹和航向角提取方法,本发明的原理为:
1)使用无人机在高空拍摄交通流视频数据,对视频进行视频增稳预处理;
2)实施基于数据集的深度学习模型训练,获取旋转目标检测模型YOLOv5-R的模型文件;
3)基于YOLOv5-R和DeepSort-R深度学习模型对每一帧图像进行旋转目标检测与跟踪,获取车辆目标的图像坐标、车辆航向角、车辆类别、车辆尺寸等信息;
4)对车辆轨迹的坐标和航向角数据进行数据清洗、平滑降噪等预处理;
5)人工标定环境参照物的地面坐标作为锚点,计算图像坐标系与地面坐标系之间的坐标转换参数,获取车辆轨迹的地面坐标。
具体的,基于高空无人机视频的车辆轨迹和航向角提取方法,包括有以下步骤:
步骤1:
无人机在拍摄视频时,由于受到人为操纵、气流、电机震动等内外多种因素影响,相机会发生不同程度的随机旋转与抖动,导致拍摄出的视频画面存在平移和旋转的变换,使车辆的屏幕坐标发生不规律的变化,给后续的车辆检测、追踪任务引入额外误差,造成数据集不可用,因此需要对无人机在高空拍摄交通流视频进行视频稳像预处理,去除因无人机飞行和高空环境影响导致的抖动。理想的无抖动视频中,画面内同一位置的背景点在不同帧中的屏幕坐标应保持一致,使车辆、行人等目标物体的坐标变化只由物体本身的运动导致,而不包含相机的运动。
视频稳像的实现逻辑如图2所示:
(1)首先抽取视频的第一帧与最后一帧,在第一帧里使用掩膜把路旁建筑物、树木等区域覆盖,避免因为不同高度的物体在透视变换中引起的平面投影误差导致的变形抖动。分别提取第一帧与最后一帧的特征点,进行特征点匹配,留下交集部分,此时所有的特征点只选取在静态物上,可以得到帧中静态物的关键点,即特征模板。然后将特征模板应用到每一帧上,这样可以快速地将视频的所有帧对齐到第一帧,实现视频消抖。
(2)特征点提取使用的是ORB特征点提取算法,调用OpenCV的ORB模块可以实时提取帧中的特征点。两帧之间的特征点匹配,使用Flann算法,调用OpenCV的FLANN模块来快速获得匹配成功的特征点,对这些静态特征点进行使用Lower’s算法进一步筛选优化,获取至少4对优秀的静态特征匹配点,使用特征模板从中筛选出与第一帧画面匹配的静态特征点,调用OpenCV的findHomography算法来计算单应性矩阵H。使用单应性矩阵H,进行两帧之间的透视变换。调用OpenCV的wrapPerspective函数进行帧间图像的透视变换,与前一帧对齐。由于帧在透视变换前后的尺寸不同,造成帧对齐后出现黑边,采用边缘点重复来弥补黑边。将经过处理后的每一帧合并,输出为新的视频。
步骤2:
(1)车辆目标类别划分:获取无人机交通流视频数据,根据交通流视频中的典型车辆型式并结合自身研究需要,将车辆目标划分成不同类别,例如小汽车(car)、卡车(truck)、客车(bus)、面包车(van)、厢式货车(freight car)等。
(2)数据集制作:用于训练的数据集可以自己制作或者下载符合要求的现有数据集(例如DroneVehicle、UAV-ROD数据集等)。
自己制作的数据集可以从无人机采集的交通流视频中随机抽取一定数量以上的帧作为原始图片数据,裁剪为统一大小后使用标签工具(例如labelImg)按照划分的目标类别进行图像标注,即在图片中使用多边形框框选出目标所在位置,并指定其所属类别名称,生成自己的数据集用于模型训练。
下载符合要求的现有数据集需要将图片数据和标签数据按比例划分为训练集、校验集及测试集,将划分好的数据集的voc格式XML标签文件转换为YOLOv5-R模型训练txt标签文件。
模型训练txt标签文件格式为:(x1,y1,x2,y2,x3,y3,x4,y4,label,cls),分别表示旋转检测框的四个角点的图像坐标(x1,y1),(x2,y2),(x3,y3),(x4,y4),标签label和种类cls。
(3)模型训练:使用基于pytorch的深度学习框架进行旋转目标检测模型YOLOv5-R的训练,训练完成后获得YOLOv5.pt模型文件。训练次数(epochs)可以自行设定,当训练结果进入收敛区间时,平均准确率mAP达到90%以上,平均损失average loss在1.6以下且不再下降。
步骤3:
对步骤1中经过视频稳像处理后的无人机交通流视频数据中的每一帧图像进行目标检测与跟踪,采用的图像处理算法为基于YOLOv5-R的旋转目标检测算法与基于DeepSort-R的旋转目标跟踪算法;获取的数据包括车辆的平面xy坐标、车辆类别信息、车身尺寸信息、车辆航向角信息和车辆编号ID信息,获取的各类信息分别按车辆ID的先后顺序保存至不同的.csv文件。
YOLOv5-R旋转目标检测算法:
1、数据的表示方式:YOLOv5正矩形框表示格式为[x,y,w,h],将YOLOv5模型改成直接对旋转矩形框进行预处理,YOLOv5-R旋转框的表示格式为[x1,y1,x2,y2,x3,y3,x4,y4];
2、模型的detect模块:修改检测框的表示格式和绘制方法;
3、旋转框的iou、nms:改为旋转框的iou计算,Nms在测试的时候进行重叠框过滤;
4、loss修改:采用旋转框的iou loss回归。
DeepSort-R旋转目标跟踪算法:
1、Detection、tracker的tlwh格式改为xylst格式(之后可以改名);
2、车辆特征提取get_features,使用最小外接无旋转矩形hbb格式;
3、卡尔曼滤波加入角度参数,由8参数变为10参数:
(xc,yc,a,h,vx,vy,va,vh)→(xc,yc,a,h,θ,vx,vy,va,vh,vθ);
4、iou_obb计算旋转框的相交兴趣区域(将旋转矩形回正/采用最小外接矩形)。
.csv文件保存格式如下:Veh_ID,Center_X,Center_Y,Box_length,Box_width,Box_theta,Vehicle_Class。以上为自定义的文件保存格式,列出了所保存的7条信息的名称,其中Veh_ID为车辆编号,Center_X、Center_Y分别为旋转检测框的中心点对应的图像横坐标和图像纵坐标,Box_length、Box_width、Box_theta分别为旋转检测框的长度、宽度和旋转角度,以像素为单位。Vehicle_Class为车辆类别。
白天和夜晚条件下的车辆目标检测与跟踪效果分别如图3和图4所示。
步骤4:
对步骤3中获取的车辆轨迹和航向角的数据进行数据清洗、平滑降噪预处理。
(1)数据清洗;
通过计算数据之间的欧氏距离是否小于合理阈值,对目标检测结果进行剔除坏值,去除错误检测数据(错误检测为车辆的其他物体的数据、异常的车辆坐标值等),修正错误追踪数据(不同车辆的追踪ID相同、一个轨迹ID包括多辆车的轨迹等)。
(2)平滑降噪;
通过车辆跟踪算法获取的车辆轨迹和航向角数据是离散时间数据,由于目标检测框的偏移、旋转、形变造成车辆检测中心点的偏移和车辆检测框的偏转,使得车辆轨迹和航向角数据产生误差,需要采用离散时间平滑算法对轨迹数据进行平滑降噪。
本发明中的车辆模型使用非完整约束的单车模型,采用扩展卡尔曼滤波算法(Extended Kalman Filter,EKF)对车辆轨迹地面坐标实施平滑处理。使用恒定加速度和转速模型(Constant Turn Rate and Acceleration,CTRA)作为车辆转弯的运动模型,其对应的系统状态转移方程为:
其中和分别表示车辆在i时刻和i-1时刻的状态向量,状态向量包括四个分量,分别为X轴和Y轴方向上的车辆坐标分量x和y、车辆后轮线速度分量v、车辆航向角分量Δt表示相邻2个数据之间的时间差,即视频两帧之间的时间间隔,n表示呈高斯分布的随机误差值。
系统观测方程为:
获取i-1时刻的观测值后,采用扩展卡尔曼滤波对当前i时刻的状态估计公式如下:
修正状态量:Xi=Xi+Ki(zi-HiXi);
修正协方差:Pi=(1-KiHi)Pi。
车辆轨迹坐标实施EKF平滑处理后的效果如图6所示,其中星星表示平滑处理前的数据,直线表示EKF平滑处理后的数据。
车辆X轴轨迹坐标数据、车辆Y轴轨迹坐标数据、车辆航向角数据的平滑结果如图7、图8、图9所示,其中星星表示平滑处理前的数据,直线表示EKF平滑处理后的数据。
步骤5:
将步骤1中增稳处理后无人机交通流视频数据中的第一帧单独提取为图片,选择例如建筑物的角点、地面交通标志线段的端点、路灯灯柱等清晰可辨的固定参照物的特征点作为锚点,锚点的数量至少为4个,且尽量均匀分布于画面中。将锚点作为坐标转换的控制点,将视频拍摄范围内的道路路面视为一个平面,使用鼠标人工标记出锚点,调用OpenCV获取锚点的屏幕坐标(xi,yi),通过谷歌地图获取锚点的地理坐标(x′i,y′i)。图像坐标系与地面坐标系的转换实为两个处于不同平面的二维坐标系之间的转换,调用OpenCV的findHomography算法求解图像坐标系与地理坐标系之间的坐标转换矩阵H。
其中(xi,yi)和(x′i,y′i)分别是锚点的屏幕坐标和地理坐标,则两齐次坐标之间的单应性变换关系为:
其中,H为3×3坐标转换矩阵,hij(i,j=1,2,3)为矩阵H中的元素。由等式(1)可得锚点的二维地理坐标(xi′,yi′)为:
给矩阵H添加约束条件,将矩阵的模||H||变为1,即:
将等式(2)乘以分母展开,整理得到:
8自由度的矩阵H至少需要4对对应的点才能计算出单应矩阵H中各个元素的值,假如已知两幅图片中对应的4个特征点匹配对:(x1,y1)与(x′1,y′1)、(x2,y2)与(x′2,y′2)、(x3,y3)与(x′3,y′3)、(x4,y4)与(x′4,y′4),可以得到如下线性方程组:
根据该线性方程即可计算得到单应矩阵H。然而,在真实的应用场景中,计算的点对中都会包含噪声,如果只使用4个点对来计算单应矩阵,将会产生较大的误差。因此,为了使得计算结果更精确,一般都会使用远大于4个点对来计算单应矩阵H。另外上述方程组采用直接线性解法通常很难得到最优解,所以具体计算过程调用OpenCV的findHomography算法实现。
将获取的车辆轨迹的图像坐标通过等式(1)计算得到对应的地理坐标,将计算结果按车辆ID序号存入新的csv文件中。
经实际轨迹数据验证,如图10所示,通过本发明方法提取的695条车辆轨迹的地面坐标数据的均方根误差(root mean square error,RMSE)总体上<10cm,车辆航向角的均方根误差<2°。
为使本发明实施例的目的、技术方案和优点更加清楚,上面结合本发明实施例中的附图,对本发明实施例中的技术方案进行了清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以上对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
Claims (8)
1.一种基于高空无人机视频的车辆轨迹和航向角提取方法,其特征在于,包括有以下步骤:
步骤1:对无人机在高空拍摄交通流视频进行视频稳像预处理,去除因无人机飞行和高空环境影响导致的抖动;
步骤2:
(1)车辆目标类别划分:获取无人机交通流视频数据,根据交通流视频中的典型车辆型式并结合自身研究需要,将车辆目标划分成不同类别;
(2)数据集制作:用于训练的数据集可自己制作或者下载符合要求的现有数据集;
(3)模型训练:使用基于pytorch的深度学习框架进行旋转目标检测模型YOLOv5-R的训练,训练完成后获得YOLOv5.pt模型文件;训练次数可以自行设定,当训练结果进入收敛区间时,平均准确率mAP达到90%以上,平均损失average loss在1.6以下且不再下降;
步骤3:
对步骤1中经过视频稳像处理后的无人机交通流视频数据中的每一帧图像进行目标检测与跟踪,采用的图像处理算法为基于YOLOv5-R的旋转目标检测算法与基于DeepSort-R的旋转目标跟踪算法;获取的数据包括车辆的平面xy坐标、车辆类别信息、车身尺寸信息、车辆航向角信息和车辆编号ID信息,获取的各类信息分别按车辆ID的先后顺序保存至不同的.csv文件;
步骤4:
对步骤3中获取的车辆轨迹和航向角的数据进行数据清洗、平滑降噪预处理;
(1)数据清洗;
通过计算数据之间的欧氏距离是否小于合理阈值,对目标检测结果进行剔除坏值,去除错误检测数据,修正错误追踪数据;
(2)平滑降噪;
通过车辆跟踪算法获取的车辆轨迹和航向角数据是离散时间数据,由于目标检测框的偏移、旋转、形变造成车辆检测中心点的偏移和车辆检测框的偏转,使得车辆轨迹和航向角数据产生误差,需要采用离散时间平滑算法对轨迹数据进行平滑降噪;
步骤5:
将步骤1中增稳处理后无人机交通流视频数据中的第一帧单独提取为图片,选择建筑物的角点、地面交通标志线段的端点、路灯灯柱清晰可辨的固定参照物的特征点作为锚点,锚点的数量至少为4个,且均匀分布于画面中;将锚点作为坐标转换的控制点,将视频拍摄范围内的道路路面视为一个平面,使用鼠标人工标记出锚点,调用OpenCV获取锚点的屏幕坐标(xi,yi),通过谷歌地图获取锚点的地理坐标(x′i,y′i);图像坐标系与地面坐标系的转换实为两个处于不同平面的二维坐标系之间的转换,调用OpenCV的findHomography算法求解图像坐标系与地理坐标系之间的坐标转换矩阵H;
将获取的车辆轨迹的图像坐标通过等式(1)计算得到对应的地理坐标,将计算结果按车辆ID序号存入新的csv文件中。
2.根据权利要求1所述的一种基于高空无人机视频的车辆轨迹和航向角提取方法,其特征在于:
步骤1中视频稳像的实现逻辑:
(1)首先抽取视频的第一帧与最后一帧,在第一帧里使用掩膜把路旁建筑物、树木区域覆盖;再分别提取第一帧与最后一帧的特征点,进行特征点匹配,留下交集部分,得到帧中静态物的关键点,即特征模板;然后将特征模板应用到每一帧上,快速地将视频的所有帧对齐到第一帧,实现视频消抖;
(2)特征点提取使用的是ORB特征点提取算法,调用OpenCV的ORB模块可以实时提取帧中的特征点;两帧之间的特征点匹配,使用Flann算法,调用OpenCV的FLANN模块来快速获得匹配成功的特征点;对这些静态特征点进行使用Lower’s算法进一步筛选优化,获取至少4对优秀的静态特征匹配点;使用特征模板从中筛选出与第一帧画面匹配的静态特征点,调用OpenCV的findHomography算法来计算单应性矩阵H;使用单应性矩阵H,进行两帧之间的透视变换;调用OpenCV的wrapPerspective函数进行帧间图像的透视变换,与前一帧对齐;由于帧在透视变换前后的尺寸不同,造成帧对齐后出现黑边,采用边缘点重复来弥补黑边;将经过处理后的每一帧合并,输出为新的视频。
3.根据权利要求1所述的一种基于高空无人机视频的车辆轨迹和航向角提取方法,其特征在于:
步骤2中:
自己制作的数据集,可以从无人机采集的交通流视频中随机抽取一定数量以上的帧作为原始图片数据,裁剪为统一大小后使用标签工具按照划分的目标类别进行图像标注,即在图片中使用多边形框框选出目标所在位置,并指定其所属类别名称,生成自己的数据集用于模型训练;
下载符合要求的现有数据集,需要将图片数据和标签数据按比例划分为训练集、校验集及测试集,将划分好的数据集的voc格式XML标签文件转换为YOLOv5-R模型训练txt标签文件;模型训练txt标签文件格式为:(x1,y1,x2,y2,x3,y3,x4,y4,label,cls),分别表示旋转检测框的四个角点的图像坐标(x1,y1),(x2,y2),(x3,y3),(x4,y4),标签label和种类cls。
4.根据权利要求1所述的一种基于高空无人机视频的车辆轨迹和航向角提取方法,其特征在于:
步骤3中:
YOLOv5-R旋转目标检测算法:
1、数据的表示方式:YOLOv5正矩形框表示格式为[x,y,w,h],将YOLOv5模型改成直接对旋转矩形框进行预处理,YOLOv5-R旋转框的表示格式为[x1,y1,x2,y2,x3,y3,x4,y4];
2、模型的detect模块:修改检测框的表示格式和绘制方法;
3、旋转框的iou、nms:改为旋转框的iou计算,Nms在测试的时候进行重叠框过滤;
4、loss修改:采用旋转框的iouloss回归。
5.根据权利要求1所述的一种基于高空无人机视频的车辆轨迹和航向角提取方法,其特征在于:
步骤3中:
DeepSort-R旋转目标跟踪算法:
1、Detection、tracker的tlwh格式改为xylst格式;
2、车辆特征提取get_features,使用最小外接无旋转矩形hbb格式;
3、卡尔曼滤波加入角度参数,由8参数变为10参数:
(xc,yc,a,h,vx,vy,va,vh)→(xc,yc,a,h,θ,vx,vy,va,vh,vθ);
4、iou_obb计算旋转框的相交兴趣区域。
6.根据权利要求1所述的一种基于高空无人机视频的车辆轨迹和航向角提取方法,其特征在于:
步骤3中:
.csv文件保存格式如下:Veh_ID,Center_X,Center_Y,Box_length,Box_width,Box_theta,Vehicle_Class;以上为自定义的文件保存格式,列出了所保存的7条信息的名称,其中Veh_ID为车辆编号,Center_X、Center_Y分别为旋转检测框的中心点对应的图像横坐标和图像纵坐标,Box_length、Box_width、Box_theta分别为旋转检测框的长度、宽度和旋转角度,以像素为单位;Vehicle_Class为车辆类别。
7.根据权利要求1所述的一种基于高空无人机视频的车辆轨迹和航向角提取方法,其特征在于:
步骤4中:
车辆模型使用非完整约束的单车模型,采用扩展卡尔曼滤波算法(Extended KalmanFilter,EKF)对车辆轨迹地面坐标实施平滑处理;使用恒定加速度和转速模型(ConstantTurn Rate and Acceleration,CTRA)作为车辆转弯的运动模型,其对应的系统状态转移方程为:
其中和分别表示车辆在i时刻和i-1时刻的状态向量,状态向量包括四个分量,分别为X轴和Y轴方向上的车辆坐标分量x和y、车辆后轮线速度分量v、车辆航向角分量Δt表示相邻2个数据之间的时间差,即视频两帧之间的时间间隔,n表示呈高斯分布的随机误差值;
获取i-1时刻的观测值后,采用扩展卡尔曼滤波对当前i时刻的状态估计公式如下:
修正状态量:Xi=Xi+Ki(zi-HiXi);
修正协方差:Pi=(1-KiHi)Pi。
8.根据权利要求1所述的一种基于高空无人机视频的车辆轨迹和航向角提取方法,其特征在于:
步骤5中:单应矩阵H的计算方法:
(xi,yi)和(x′i,y′i)分别是锚点的屏幕坐标和地理坐标,则两齐次坐标之间的单应性变换关系为:
其中,H为3×3坐标转换矩阵,hij(i,j=1,2,3)为矩阵H中的元素;由等式(1)可得锚点的二维地理坐标(x′i,y′i)为:
给矩阵H添加约束条件,将矩阵的模||H||变为1,即:
将等式(2)乘以分母展开,整理得到:
8自由度的矩阵H至少需要4对对应的点:(x1,y1)与(x′1,y′1)、(x2,y2)与(x′2,y′2)、(x3,y3)与(x′3,y′3)、(x4,y4)与(x′4,y′4)才能计算出单应矩阵H中各个元素的值,假如已知两幅图片中对应的4个特征点匹配对,可以得到如下线性方程组:
根据该线性方程即可计算得到单应矩阵H。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210626786.2A CN114972767A (zh) | 2022-06-05 | 2022-06-05 | 一种基于高空无人机视频的车辆轨迹和航向角提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210626786.2A CN114972767A (zh) | 2022-06-05 | 2022-06-05 | 一种基于高空无人机视频的车辆轨迹和航向角提取方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114972767A true CN114972767A (zh) | 2022-08-30 |
Family
ID=82959889
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210626786.2A Pending CN114972767A (zh) | 2022-06-05 | 2022-06-05 | 一种基于高空无人机视频的车辆轨迹和航向角提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114972767A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116612493A (zh) * | 2023-04-28 | 2023-08-18 | 深圳先进技术研究院 | 一种行人地理轨迹提取方法及设备 |
CN117455948A (zh) * | 2023-08-09 | 2024-01-26 | 东南大学 | 基于深度学习算法的多视角行人轨迹提取分析方法 |
CN117635663A (zh) * | 2023-12-12 | 2024-03-01 | 中北数科(河北)科技有限公司 | 一种目标车辆视频跟踪方法及电子设备 |
-
2022
- 2022-06-05 CN CN202210626786.2A patent/CN114972767A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116612493A (zh) * | 2023-04-28 | 2023-08-18 | 深圳先进技术研究院 | 一种行人地理轨迹提取方法及设备 |
CN117455948A (zh) * | 2023-08-09 | 2024-01-26 | 东南大学 | 基于深度学习算法的多视角行人轨迹提取分析方法 |
CN117635663A (zh) * | 2023-12-12 | 2024-03-01 | 中北数科(河北)科技有限公司 | 一种目标车辆视频跟踪方法及电子设备 |
CN117635663B (zh) * | 2023-12-12 | 2024-05-24 | 中北数科(河北)科技有限公司 | 一种目标车辆视频跟踪方法及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104766058B (zh) | 一种获取车道线的方法和装置 | |
CN114972767A (zh) | 一种基于高空无人机视频的车辆轨迹和航向角提取方法 | |
CN105718872B (zh) | 两侧车道快速定位及检测车辆偏转角度的辅助方法及系统 | |
CN105844624A (zh) | 动态标定系统、动态标定系统中的联合优化方法及装置 | |
CN113421289B (zh) | 一种克服无人机拍摄扰动的高精度车辆轨迹数据提取方法 | |
CN106780560B (zh) | 一种基于特征融合粒子滤波的仿生机器鱼视觉跟踪方法 | |
CN109815831B (zh) | 一种车辆朝向获取方法及相关装置 | |
CN108009494A (zh) | 一种基于无人机的道路交叉口车辆跟踪方法 | |
Ma et al. | Crlf: Automatic calibration and refinement based on line feature for lidar and camera in road scenes | |
Tang et al. | Multiple-kernel based vehicle tracking using 3D deformable model and camera self-calibration | |
WO2020182691A1 (en) | Method for training and using a neural network to detect ego part position | |
CN116152636A (zh) | 修正三维点云人工标注内容的方法和系统 | |
CN117115414B (zh) | 基于深度学习的无gps无人机定位方法及装置 | |
CN113971697A (zh) | 一种空地协同车辆定位定向方法 | |
CN109543520A (zh) | 一种面向语义分割结果的车道线参数化方法 | |
Zhang et al. | Bundle adjustment for monocular visual odometry based on detected traffic sign features | |
CN112115737B (zh) | 一种车辆朝向的确定方法、装置及车载终端 | |
CN114627395B (zh) | 基于嵌套靶标的多旋翼无人机角度分析方法、系统及终端 | |
Fangfang et al. | Real-time lane detection for intelligent vehicles based on monocular vision | |
CN114820485B (zh) | 一种基于机载图像测量波浪爬高的方法 | |
CN113781524B (zh) | 一种基于二维标签的目标追踪系统及方法 | |
CN111915672B (zh) | 一种基于3d虚拟驾驶场景的目标标注方法及设备 | |
CN111860084B (zh) | 图像特征的匹配、定位方法及装置、定位系统 | |
CN113361477A (zh) | 一种无人机的识别方法及系统 | |
CN112818837A (zh) | 一种基于姿态校正和困难样本感知的航拍车辆重识别方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: Future Transportation Research Center, Department of Civil Engineering, Tsinghua University, No. 30 Shuangqing Road, Haidian District, Beijing 100084 Applicant after: Li Xiaohe Address before: Department of Civil Engineering, Tsinghua University, No. 30 Shuangqing Road, Haidian District, Beijing 100084 Applicant before: Li Xiaohe |
|
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |