专利名称:基于浮动车数据提取车辆排队长度的方法
技术领域:
本发明属于智能交通道路实时信息处理技术领域,特别涉及一种利用浮动车数据获取交通信息的方法。具体地说,是一种利用浮动车数据提取路段交叉口排队长度的 方法。
背景技术:
浮动车也称GPS探测车,是近年来国际智能交通系统(ITS)中所采用的获取路 段交通信息的先进技术手段之一,具有应用方便、经济、覆盖范围广的特点。浮动车是由安装有车载GPS (Global Position System,全球定位系统)设备,自由
行驶在实际路段上的车辆构成,目前大部分浮动车是由正常运营的装有GPS设备的出租 车构成。浮动车按照一定的周期通过无线通信向后台回传数据,数据包括车辆GPS设备 编号、车辆GPS位置坐标、瞬时速度、方位角(行驶方向角)、回传时间等。后台计算机处理中心将浮动车数据进行汇总,经过特定的模型和算法处理,生 成反映实时路段情况的交通信息如路段平均速度、行程时间、拥堵状态等,为交通管 理部门和公众提供动态、准确的交通控制、诱导信息。在智能交通控制系统中,路网中各路段交叉口的车辆排队长度是最关键的交通 参数之一,可以为交通信号控制和管理提供非常重要的信息。目前常用的检测交叉口车 辆排队长度的方法有两种第一种是视频检测技术测量交叉口的车辆排队长度,即通过固定摄像头得到的 车辆排队的视频序列,综合利用车辆检测和运动检测来计算车辆排队长度。它需要在交 叉口安装检测设备,此外视频流检测排队长度容易受天气、光照、摄像头抖动等因素的影响。第二种是通过建立基于统计的排队长度与信号灯配时、车辆到达率及交通量的 关系模型,它需要大量实测数据,且模型移植性差。在现有技术中,还没有利用浮动车数据检测交叉口车辆排队的方法。这是因为 缺乏有效的利用浮动车数据进行交叉口排队车辆点提取和判断方法。在浮动车传回的数据中,可分为两大类,一类是移动点浮动车数据,也就是浮 动车处于行驶状态,瞬时速度不为O时回传的GPS数据,另一类是停止点浮动车数据, 也就是浮动车处于停止状态,瞬时速度为0时回传的GPS数据。在交通管理部门的后台计算机中心的浮动车信息数据库中存放有包括移动点、 停止点在内的所有浮动车数据记录,其中所有移动点浮动车数据已经通过常规的地图匹 配方法完成了路段的匹配。常规的地图匹配方法是通过投影距离和车辆行驶方向与路段矢量方向差值加权 的方法来进行地图匹配,判断出车辆行驶的路段。这种方法需要用车辆行驶方向的方位 角作为主要参数,当浮动车的瞬时速度不是O时,其回传的GPS方位角是准确的,可以 用常规的方法进行地图匹配,当浮动车的瞬时速度是O时,其回传的GPS方位角是不准确的,不能用常规的方法 进行地图匹配。若想用浮动车数据进行排队长度的计算,只能使用停止点浮动车数据,而不能 用移动点浮动车数据,因为车辆排队时处于停止状态,交叉口附近停止点浮动车数据与 车辆排队状态有一定的联系,与路段也有联系,如何利用这些联系,判断停止点浮动车 所在路段,并估算出排队长度是本发明要解决的问题。
发明内容
本发明的目的是提出一种基于浮动车数据提取车辆排队长度的方法,该方法首 先通过路段匹配技术提取出路段交叉口前正常排队等待通过的浮动车数据;然后对浮动 车停止点距离交叉口的位置分布变化进行统计,估算出排队长度。本方法无需安装检测 设备及人工进行大量的现场实测,可节省大量的人力物力。为实现上述目的,本发明采用以下技术方案一种基于浮动车数据提取车辆排队长度的方法,包括以下步骤步骤一、设立停止点浮动车记录子数据库从后台计算机处理中心的浮动车信息总数据库中取出停止点浮动车记录,每条 停止点浮动车数据记录包括GPS设备编号及回传时间、GPS位置坐标、瞬时速度、方位 角,将各条记录按回传的时间顺序排列,存放在停止点浮动车记录子数据库中;步骤二、计算停止点浮动车的投影距离用步骤一得到的停止点浮动车记录子数据库中的数据计算每辆停止点浮动车的 投影距离,投影距离是每辆停止点浮动车的GPS位置坐标到路段间的直线距离,将计算 好的投影距离存放在浮动车投影距离子数据库中;步骤三、用投影距离最大允许值过滤停止点浮动车所在路段将步骤二得到的浮动车投影距离子数据库中的投影距离与最大允许值进行比 较,取所有投影距离小于最大允许值的停止点浮动车记录,将其存放在浮动车投影距离 满足设定条件子数据库中;步骤四、通过回查的方式二次判定停止点浮动车所在路段将步骤三得到的浮动车投影距离满足设定条件子数据库中停止点浮动车的GPS 设备编号与浮动车信息总数据库中原有的移动点浮动车路段匹配子数据库中移动点浮动 车的GPS设备编号进行对比,如果记录在浮动车投影距离满足设定条件子数据库中的停 止点浮动车的GPS设备编号能够在移动点浮动车路段匹配子数据库中找到相同的移动点 浮动车GPS设备编号,则匹配成功,就判定该停止点浮动车属于该路段,将所有匹配成 功的停止点浮动车数据放入停止点浮动车二次路段匹配子数据库中;步骤五、计算每辆停止点浮动车到交叉口的距离从步骤四得到的浮动车二次路段匹配子数据库中取出每辆停止点浮动车GPS位 置坐标,根据点到直线距离公式,计算出每辆停止点浮动车到路段交叉口的直线距离, 将计算后得到的距离存放在浮动车到交叉口距离子数据库中;步骤六、对停止点浮动车的排队位置进行排序对步骤五得到的浮动车到交叉口距离子数据库中各条浮动车记录按到交叉口距 离从小到大的顺序进行排列,然后将排序好的浮动车记录放在浮动车到交叉口排队序列子数据库中;步骤七、设定参考长度阀值设定一个参考长度阀值,该参考长度阀值是通过比较多个实测排队长度数据和 浮动车单位长度内排队车辆密度分布之间的关系得到的最佳判断建议值;步骤八、对停止点浮动车的数量进行一次统计以步骤七中的参考长度阀值为一次度量区间,对步骤六得到的浮动车到交叉口 排队序列子数据库中的浮动车的数量进行统计,统计出每个一次度量区间内的浮动车的 数量,直到出现连续两个一次度量区间内浮动车的数量为零;将统计结果放入排队车辆 一次统计结果表中;步骤九、求最大和找出步骤八得到的浮动车数量最大的和次大的两个一次度量区间,对这两个一 次度量区间中的浮动车数量进行相加求最大和;步骤十、对停止点浮动车的数量进行二次统计以步骤七中的参考长度阀值的两倍作为二次度量区间,以一次度量区间大小为 间隔,对步骤六得到的浮动车到交叉口排队序列子数据库中的浮动车的数量进行统计, 依次统计出每个二次度量区间内的浮动车的数量,将统计结果放入排队车辆二次统计结 果表中;步骤十一、确定排队长度用步骤九得到的最大和与步骤十得到的排队车辆二 次统计结果表中的每个二次度量区间的浮动车数量比较,直到第一次出现二次度量区间 内浮动车的数量小于最大和的1/4,则取该二次度量区间的中间值为排队长度值。浮动车数据由移动点数据和停止点数据两部分组成,停止点数据中又有相当一 部分是车辆在交叉口排队等待信号灯时产生的,这些停止点集中在路段交叉口附近,位 置沿路段距交叉口距离由小到大排列。由于等待信号灯而引起的停止点在区间排列具有 一定的规律性,和单位时间段内实际的车辆排队长度具有较强的相关性,是排队车辆的 数据表现形式,因此我们可以利用这些停止点数据计算车辆排队长度。本方法首先将停止点浮动车数据匹配到路段上,提取出排队车辆点;然后以交 叉口为起点,按照到交叉口距离从近到远的顺序排列。分段统计路段上单位长度内排队 车辆点的密度分布,设定判断条件确定排队队尾位置,推导出某一时间段内交叉口的最 大排队长度。本发明避免了常规方法中使用视频检测设备及现场实测数据的不足,节省 人力、物力和时间。路段匹配分两次进行,初次匹 配时,用偏移范围初步判定属于路段的停止点, 过滤异常停止点,二次匹配时,将停止点与同一路段上已经匹配成功的移动点相比较, 采用回查的方式验证停止点数据。排队长度计算的基本原理是对时间段内排队车辆的密度分布进行统计,设定 最佳判断阀值条件,计算出车辆的排队长度。本发明利用浮动车数据进行交叉口排队车辆点提取和判断,可以估算出交叉口 车辆排队的长度。这种方法不需要外部搭建设备和设施,利用浮动车数据可以轻松快速 的完成对路网内所有交叉口车辆排队长度的估算。
图1是本 发明的原理框图。图2是在一交叉口为20分钟内浮动车的分布情况示意图。图3是停止点浮动车记录子数据库。图4是浮动车投影距离子数据库。图5是浮动车投影距离满足设定条件结果子数据库。图6是移动点浮动车路段匹配子数据库。图7是浮动车二次路段匹配子数据库。图8是浮动车到交叉口距离子数据库。图9是浮动车到交叉口排队序列子数据库。图10是排队车辆一次统计结果表。图11是排队车辆二次统计结果表。图12是排队车辆一次统计分布曲线图。
具体实施例方式本发明是一种基于浮动车数据提取车辆排队长度的方法,包括十一个步骤,流 程如图1所示。本方法的各步骤都是通过计算机运行程序,对数据进行处理实现的,具 有实用价值。下面详细描述其原理请参照图2,图2表示一个路段交叉口附近20分钟内浮动车的分布情况,该交叉 口由路段1、路段2、路段3组成,黑色小圈代表浮动车的停止点。本实施例中,共有43个浮动车停止点。这些停止点对应的浮动车的GPS设备编 号分别是5097、6694、3313、2469、2006、4752、9284、7262、7826、5861、7710、 8112, 3571, 9828, 7716, 5384, 4115, 3319, 1915, 7351, I960, 3483, 4901, 7364, 7878, 6816, 7649, 1248, 4323, 1207, 4323, 1248, 7383, 8426, 5856, 7066、 6847、 2132、 4253、 2840、 2093、 528、 5395。下面详细说明本方法的各个步骤步骤一、设立停止点浮动车记录子数据库从后台计算机处理中心的浮动车信息总数据库中取出停止点浮动车记录,每条 停止点浮动车数据记录包括GPS设备编号及回传时间、GPS位置坐标(GPS经纬度坐 标)、瞬时速度、方位角,将各条记录按回传的时间顺序进行排列,存放在“停止点浮动 车记录子数据库”中如图3所示。请参照图3,从图3可以看出图2中的43个停止点浮动车回传了数据,这些记 录被存放在后台计算机处理中心的浮动车信息总数据库中,每条停止点浮动车数据记录 包括GPS设备编号、GPS位置坐标(GPS经度和纬度)、瞬时速度、方位角及回传时间。其中GPS设备编号为1248的浮动车回传了两次数据回传时间分别是{9:49:42} 禾口 {9:51:19}。其中GPS设备编号为4323的浮动车也回传了两次数据回传时间分别是 {9:51:05}和{9:51:16}。其余的停止点浮动车都只回传了 一次数据。
值得一提的是在浮动车信息总数据库中还存放有移动点浮动车的记录,由于 其方向角不为零,所以已经通过常规的地图匹配方法与路段匹配上了。这些移动点浮动车的记录都存放在“移动点浮动车路段匹配子数据库”中如图 6所示。移动点浮动车数据包括车辆GPS (全球定位系统)设备编号、车辆GPS位置坐 标、瞬时速度、方位角、回传时间、所在路段等。常规的地图匹配方法是通过投影距离和车辆行驶方向与路段矢量方向差值加权的方法来进行地图匹配,判断出车辆行驶的路段。步骤二、计算停止点浮动车的投影距离用步骤一得到的“停止点浮动车记录子数据库”中的数据计算每辆停止点浮动 车的投影距离,投影距离是每辆停止点浮动车的GPS位置坐标(经度和纬度坐标)到路段 1的直线距离,将计算好的投影距离存放在图4所示的“浮动车投影距离子数据库”中;由于路段1的起点和终点坐标是已知的,停止点浮动车GPS位置坐标也是已知 的,根据点到直线距离公式,就可以计算出停止点浮动车到路段1的投影距离。请参照 图2、图4,以编号为7649丨9:49:13丨的浮动车为例在{9:49:13丨这一时刻,其GPS位置 坐标到路段1的距离R1 = 7米。步骤三、用投影距离最大允许值过滤停止点浮动车所在路段将步骤二得到的“浮动车投影距离子数据库”中的投影距离与最大允许值进行 比较,取所有投影距离小于最大允许值的停止点浮动车记录,将其存放在“浮动车投影 距离满足设定条件子数据库”中。本实施例中,投影距离的最大允许值是20米,从图4可以看出,GPS设备编号 为2006、4752、9284、7262的停止点浮动车记录由于大于20米,而被删除。将其余没 有被删除的停止点浮动车记录放入“浮动车投影距离满足设定条件结果子数据库”中如 图5所示。从图2可以看出,GPS设备编号为2006、4752、9284、7262的停止点浮动车实 际上是处于路段2。设置步骤三的作用是将可能处在别的路段上的浮动车数据删除。步骤四、通过回查的方式二次判定停止点浮动车所在路段将步骤三得到的“浮动车投影距离满足设定条件子数据库”(如图5所示)中 停止点浮动车的GPS设备编号与浮动车信息总数据库中原有的“移动点浮动车路段匹配 子数据库”(如图6所示)中移动点浮动车的GPS设备编号进行对比,如果记录在“浮 动车投影距离满足设定条件子数据库”中的停止点浮动车的GPS设备编号能够在“移动 点浮动车路段匹配子数据库”中找到相同的移动点浮动车GPS设备编号,则匹配成功, 这说明该停止点浮动车属于路段1,因为在此之前,该浮动车恰好在路段1上处于移动状 态。将所有经回查匹配成功的停止点浮动车数据,放入“浮动车二次路段匹配子数 据库”中如图7所示。也就是说,将图5中停止点浮动车记录和图6中移动点浮动车记录进行对比,如 果能在图6中找出和图5中相同的GPS设备编号,说明这些停止点浮动车属于路段1,因 为在此之前,该浮动车恰好在路段1上处于移动状态。
通过比较,GPS设备编号为6694,9828,4323,8426的停止点浮动车记录没有 在图6中找到各自的设备编号,所以不属于路段1,而被删除。步骤五、计算每辆停止点浮动车到交叉口的距离从步骤四获得的“浮动车二次路段匹配子数据库”中取出每辆停止点浮动车 GPS位置坐标(GPS经度和纬度),根据点到直线距离公式,计算出每辆停止点浮动车到 路段交叉口的直线距离,将计算后得到的距离存放在图8所示的“浮动车到交叉口距离 子数据库”中。由于路段1的终点坐标是已知的,即图2中路段1与路段3的交叉口位置是已知 的,停止点浮动车GPS位置坐标也是已知的,根据点到直线距离公式,就可以计算出停 止点浮动车到路段1终点的投影距离,该距离就是停止点浮动车到路段交叉口的直线距 离请参照图2和图8,以GPS设备编号为7649的浮动车为例在丨9:49:13丨这一时 刻,其GPS位置坐标到交叉口(路段3)的直线距离L1 = 112米。步骤六、对停止点浮动车的排队位置进行排序对步骤五中得到的“浮动车到交叉口距离子数据库”(如图8所示)中各条浮动 车记录按距交叉口距离从小到大的顺序进行排列,然后将排序好的浮动车记录放在“浮 动车到交叉口排队序列子数据库”中如图9所示。步骤七、设定参考长度阀值设定一个参考长度阀值,该参考长度阀值是通过比较多个实测排队长度数据和 浮动车单位长度内排队车辆密度分布之间的关系得到的最佳判断建议值;本实施例中, 参考长度阀值取10米。步骤八、对停止点浮动车的数量进行一次统计以步骤七中的参考长度阀值10米为一次度量区间,对图9所示的“浮动车到交 叉口排队序列子数据库”中的浮动车的数量进行统计,统计出各个一次度量区间内的浮 动车的数量,直到出现连续两个一次度量区间内浮动车的数量为零。即统计距交叉口每 间隔10米内的车辆密度,车辆密度统计的结果放入“排队车辆一次统计结果表”中如图 10所示。图中第一个一次度量区间(0-10米)的车辆数为0,这是因为车辆排队并不是 从道路交叉口开始的,而实际是在交叉口前路口停车线处以保证另一方向车辆通行,该 位置距交叉口有一定的距离,因此车辆排队时道路交叉口到停车线之间没有车辆。也可以用分布图表示车辆排队密度,分布图如图12所示,以距交叉口距离为横 坐标,车辆数为纵坐标,以10米为递增量统计每10米内的车辆数,可以得到图12所示 的分布曲线,我们注意到车辆密度分布随着车辆排队接近队尾,单位长度内车辆的密度 在逐渐减少,直到接近于0。因此本发明采取单位长度疏密程度判断的方法判断排队长 度。步骤九、求最大和找出步骤八得到的“排队车辆一次统计结果表”中浮动车数量最大的和次大的 两个一次度量区间,对这两个一次度量区间中的浮动车数量进行相加求最大和。从图10可以看出,一次度量区间内最大的车辆个数为5,次大的车辆个数为4, 两者之和为5+4 = 9。
步骤十、对停止点浮动车的数量进行二次统计,以步骤七中的参考长度阀值的 两倍作为二次度量区间,以一次度量区间大小为间隔对“浮动车到交叉口排队序列子数 据库”中的浮动车的数量进行统计,依次统计出每个二次度量区间内的浮动车的数量, 将统计结果放入“排队车辆二次统计结果表”中。也就是说以20米作为二次度量区间,以10米大小为间隔对“浮动车到交叉口 排队序列子数据库”(如图9所示)中的浮动车的数量进行统计,依次统计出每个20米 内的浮动车的数量,将统计结果放入“排队车辆二次统计结果表”中如图11所示。步骤十一、确定排队长度用步骤九得到的最大和与步骤十得到的排队车辆二 次统计结果表中的每个二次度量区间的浮动车数量比较,直到第一次出现二次度量区间 内浮动车的数量小于最大和的1/4,则取该二次度量区间的中间值为排队长度值。 用步骤九得到的最大和9,与图11中所示的二次度量区间内的每个数据比较, 80-100米内车辆数为1,最大和9的1/4大于1,由此可以确定最大排队长度在80-100米 之间,即90米为最大排队长度。
权利要求
1. 一种基于浮动车数据提取车辆排队长度的方法,包括以下步骤 步骤一、设立停止点浮动车记录子数据库从后台计算机处理中心的浮动车信息总数据库中取出停止点浮动车记录,每条停止 点浮动车数据记录包括GPS设备编号及回传时间、GPS位置坐标、瞬时速度、方位角, 将各条记录按回传的时间顺序排列,存放在停止点浮动车记录子数据库中; 步骤二、计算停止点浮动车的投影距离用步骤一得到的停止点浮动车记录子数据库中的数据计算每辆停止点浮动车的投影 距离,投影距离是每辆停止点浮动车的GPS位置坐标到路段间的直线距离,将计算好的 投影距离存放在浮动车投影距离子数据库中;步骤三、用投影距离最大允许值过滤停止点浮动车所在路段 将步骤二得到的浮动车投影距离子数据库中的投影距离与最大允许值进行比较,取 所有投影距离小于最大允许值的停止点浮动车记录,将其存放在浮动车投影距离满足设 定条件子数据库中;步骤四、通过回查的方式二次判定停止点浮动车所在路段将步骤三得到的浮动车投影距离满足设定条件子数据库中停止点浮动车的GPS设备 编号与浮动车信息总数据库中原有的移动点浮动车路段匹配子数据库中移动点浮动车的 GPS设备编号进行对比,如果记录在浮动车投影距离满足设定条件子数据库中的停止点 浮动车的GPS设备编号能够在移动点浮动车路段匹配子数据库中找到相同的移动点浮动 车GPS设备编号,则匹配成功,就判定该停止点浮动车属于该路段,将所有匹配成功的 停止点浮动车数据放入停止点浮动车二次路段匹配子数据库中; 步骤五、计算每辆停止点浮动车到交叉口的距离从步骤四得到的浮动车二次路段匹配子数据库中取出每辆停止点浮动车GPS位置坐 标,根据点到直线距离公式,计算出每辆停止点浮动车到路段交叉口的直线距离,将计 算后得到的距离存放在浮动车到交叉口距离子数据库中; 步骤六、对停止点浮动车的排队位置进行排序对步骤五得到的浮动车到交叉口距离子数据库中各条浮动车记录按到交叉口距离从 小到大的顺序进行排列,然后将排序好的浮动车记录放在浮动车到交叉口排队序列子数 据库中;步骤七、设定参考长度阀值设定一个参考长度阀值,该参考长度阀值是通过比较多个实测排队长度数据和浮动 车单位长度内排队车辆密度分布之间的关系得到的最佳判断建议值; 步骤八、对停止点浮动车的数量进行一次统计以步骤七中的参考长度阀值为一次度量区间,对步骤六得到的浮动车到交叉口排 队序列子数据库中的浮动车的数量进行统计,统计出每个一次度量区间内的浮动车的数 量,直到出现连续两个一次度量区间内浮动车的数量为零;将统计结果放入排队车辆一 次统计结果表中;步骤九、求最大和找出步骤八得到的浮动车数量最大的和次大的两个一次度量区间,对这两个一次度 量区间中的浮动车数量进行相加求最大和;步骤十、对停止点浮动车的数量进行二次统计以步骤七中的参考长度阀值的两倍作为二次度量区间,以一次度量区间大小为间 隔,对步骤六得到的浮动车到交叉口排队序列子数据库中的浮动车的数量进行统计,依 次统计出每个二次度量区间内的浮动车的数量,将统计结果放入排队车辆二次统计结果 表中;步骤十一、确定排队长度用步骤九得到的最大和与步骤十得到的排队车辆二次统 计结果表中的每个二次度量区间的浮动车数量比较,直到第一次出现二次度量区间内浮 动车的数量小于最大和的1/4,则取该二次度量区间的中间值为排队长度值。
全文摘要
一种基于浮动车数据提取车辆排队长度的方法,包括步骤一、设立停止点浮动车记录子数据库;步骤二、计算停止点浮动车的投影距离;步骤三、用投影距离最大允许值过滤停止点浮动车所在路段;步骤四、通过回查的方式二次判定停止点浮动车所在路段;步骤五、计算每辆停止点浮动车到交叉口的距离;步骤六、对停止点浮动车的排队位置进行排序;步骤七、设定参考长度阀值;步骤八、对停止点浮动车的数量进行一次统计;步骤九、求最大和;步骤十、对停止点浮动车的数量进行二次统计;步骤十一、确定排队长度;本方法利用浮动车数据估算出路段交叉口车辆的排队长度,避免了现有技术中使用视频检测设备及现场实测数据的不足。
文档编号G08G1/00GK102024323SQ20091009250
公开日2011年4月20日 申请日期2009年9月16日 优先权日2009年9月16日
发明者刘楠, 宋向辉, 朱书善, 李亚檬, 王东柱, 谌仪, 赵佳海, 陈艳艳 申请人:交通部公路科学研究所