专利名称:基于弯道模型的有损形状道路识别方法
技术领域:
本发明涉及一种基于弯道模型的有损形状道路识别方法,特别是涉及一种对从浮动车走行所获得的轨迹进行形状识别和处理的过程,属于导航、电子地图、智能交通系统和数据挖掘的交叉领域。
背景技术:
为了获得实际路况信息,提供更精准、更有针对性的导航服务,对浮动车走行轨迹的收集以及分析是一种比较实用的方法。然而,由于浮动车采集的行车轨迹只是在离散时间点上采集的位置信息,因此会导致采集的行车轨迹产生随机的形状损失(形状损失程度与采集的时间间隔和车速有关),尤其在弯道部分,可能带来非常严重的失真。这种失真严重影响轨迹的显示、和电子地图道路的匹配以及对浮动车信息的有效归类、数据挖掘,并严重影响基于浮动车采集信息对电子地图数据进行修正等高级应用。相关名词解释1.浮动车带有各种传感器、能采集相关信息的在道路上实际行驶的汽车。2.有损道路形状带有一定形状损失的道路形状信息,如图1,虚线所示为真实的道路形状,实线所示为有损道路形状。3.形状点用来表示道路或行车轨迹形状的坐标点。4.行车轨迹浮动车在走行过程中采集的、用一系列形状点表示的轨迹形状。5.形状比较对于分别用形状点表示的轨迹或者道路形状,按照距离和值或者两者所围成的多边形面积等方法量化两者形状差异的过程。6扫描段按照走形方向分组后将轨迹划分所得的轨迹段。参见图3、图4。7.相关段走行方向相同,并且各自的外接矩形之间的距离小于设定距离阈值的分别位于两条不同行车轨迹上的一对扫描段。8.可合并段在相关段中通过关系判定所得到的可以直接合并的轨迹部分。
发明内容
本发明所要解决的问题是提供一种基于弯道模型的有损形状识别算法,使用该方法可以提高有损形状的道路轨迹信息与实地图数据道路形状信息或者有损形状的道路轨迹信息的相互比较的准确性,为轨迹形状处理、轨迹形状与实际地图的匹配以及进一步的数据挖掘打下良好的基础。本发明所采用的技术方案以浮动车对轨迹A和B分别采集得到的轨迹线TRACK_A 和TRACK_B作为对象进行处理和判定,每条轨迹线上具有多个用来表示道路或轨迹形状的形状点,两个形状点之间的路段为形状点段,包括以下步骤步骤一、快速筛选,根据轨迹线TRACK_A和TRACK_B的外接矩形来判断两条轨迹线之间的关系;步骤二、走行方向分组,根据轨迹线TRACK_A和TRACK_B的轨迹方向变化对每一条轨迹线的形状点段进行阶段分组;步骤三、根据步骤二得到的两条轨迹线TRACK_A和TRACK_B的阶段分组结果,通过相关性判断,并存储判定结果;步骤四、对步骤三存储的判定结果进行进一步判断,根据距离和轨迹方向对两条轨迹线TRACK_A和TRACK_B的形状点段进行合并,并记录合并位置;步骤五、根据步骤三和四的相关性判断和合并结果进行两条轨迹TRACK_A* TRACK_B之间的关系判定;步骤六、检查是否还有未处理数据,若为是,转为步骤一;若为否,则结束。优选的,上述步骤一具体分为两个步骤1. 1)分别求出有损形状A的轨迹线TRACK_A的外接矩形和有损形状B的轨迹线 TRACK_B的外接矩形;1. 2)根据外接矩形的关系进行快速筛选如果外接矩形没有相交区域,并且相互的距离超过阈值时,则轨迹A与轨迹B是没有关系的两条轨迹线;否则,判定为具有一定关系,并进入步骤二。优选的,上述步骤二具体包括以下步骤2. 1)将平面坐标系分为八个方向上、下、左、右、左上、左下、右上、右下,将轨迹A 和B按照相邻两个形状点之间的前进方向,确定为上述八方向中的某一种;2. 2)将连续相同的走行方向的形状点段分成一组,作为一个扫描段。优选的,上述步骤三具体包括依据走行方向,对TRACK_A上的所有扫描段和 TRACK_B上的所有扫描段,根据扫描段之间的距离找出比较相近的对应段,并将判定信息存储下来。优选的,上述扫描段之间的判定过程如下3. 1)选取TRACK_A第1个扫描段作为TRACK_A上查找的基准段,选取TRACK_B上的第一个扫描段作为TRACK_B上查找的基准段;3. 2)以TRACK_A的基准段作为待比较段,从TRACK_B上的基准段开始,依次选取 TRACK_B上的扫描段与该待比较段做关联性的判断,即分别做两个扫描段的外接矩形,计算出外接矩形的距离,以此来判断两个扫描段的关联程度;3. 3)如果,从TRACK_B上选取的扫描段与该待比较段的外接矩形距离小于规定阈值,则存储这组有关联的扫描段信息,即相关段;并退出TRACK_A的此次查找;3. 4)如果从TRACK_B的基准段直到TRACK_B的最后一个扫描段都没有找到与 TRACK_A的待比较段相似的扫描段,则改变TRACK_A的待比较段为当前基准段的下一个扫描段,再次从TRACK_B的基准段到TRACK_B的最后一个扫描段查找与变化后的TRACK_A基准段相关的扫描段;3. 5)如果改变待比较段后仍然没有在TRACK_B的基准段到最后一个扫描段中找到与当前待比较段相关的扫描段,则将待比较段改变为当前待比较段的下一段继续从 TRACK_B的基准段到其最后一段查找,直至找到相关段或者待比较段已经是TRACK_A中的最后一个扫描段,无法继续改变。优选的,上述步骤四具体包括4. 1)如果没有找到相关段,则先判断两条轨迹方向是否相反,如果是则直接退出, 继续另外一组轨迹的处理;否则,查找两条轨迹是否存在相交,找到交点并存储相关信息后进行下一组轨迹的处理;如果没有其他需要处理的轨迹数据,则退出;4. 2)如果找到相关段,则对每一组相关段进行基于弯道识别的形状比较,判定两条轨迹的关系,返回该结果后进行下一组数据处理,如果没有其他需要处理的轨迹数据,则退出。优选的,上述步骤五具体包括如下5. 1)如果两条轨迹没有相关段,则进行轨迹相交或者首位衔接的判断,将交点或者首尾衔接的顺序加入到判定结果中,转到步骤六;5. 2)如果两条轨迹有相关段,但是没有可合并段,也进行轨迹相交或者首位衔接的判断,并将是否存在交点或者是否首尾衔接的关系记录到判定结果中,转到步骤六;5. 3)如果两条轨迹有相关段,也存在可合并段,则将可合并段尽可能连接成一个较长的可合并段,然后记录到判定结果中,转到步骤六。本发明的优点是能够有效识别有损道路形状的相似程度,对于浮动车采集所得的轨迹信息能够进行形状识别,为之后的轨迹信息与实地图进行匹配以及其他方面的数据挖掘打下基础。
图1是有损道路形状概念例子示意图;图2是本发明的方法流程图;图3是按照走行方向分组中8方向的示意图;图4是按照走行方向分组的示意图;图5是相关段查找的示意图;图6是可合并段查找的示意图;图7是弯道模型识别流程图。
具体实施例方式为了便于本领域普通技术人员理解和实施本发明,下面结合附图及具体实施方式
对本发明作进一步的详细描述。如图2所示,本发明的实现方式,在开始之后包括以下步骤1)快速筛选快速筛选的目的在于以最快的方式确定两个形状是否需要进行形状比较。如果相离较远则不会进入到比较的步骤中去,直接判定为没有关系后返回,进行下一组数据的处理。如果没有其他数据需要处理,则整个流程结束。具体筛选方法如下分别对待处理的两条轨迹形状求出各自的外接矩形,如果两个外接矩形没有相交区域,并且相离较远(阈值)的时候,则认定待处理的两条轨迹形状没有关系。否则,两条估计形状可能存在一定的关系。2)走行方向分组走行方向分组的目的是将每条浮动车行走轨迹按照行走方向进行分组,形成不同的扫描段,从而为进一步确定待处理的两条轨迹中相匹配的部分并进而形状比较打下基石出。走行方向分组的方法如下将平面坐标系分为八个方向(如图幻上、下、左、右、左上、左下、右上、右下,将轨迹按照相邻两个形状点之间的前进方向,确定为上述八方向中的某一种,连续相同(必须连续相同)的走行方向形成一组。比如取阈值α为10°,则图3所示的八个方向依次如下右方向-10° 10°右上方向10° 80°上方向80° 100°左上方向100° 170°左方向170° 190°左下方向190° 洸0°下方向260° 沘0°右下方向280° ;350°。对于图4所示轨迹,按照上述走行方向分组方法,可得到下述分组左上形状点0 形状点2 ;右上形状点2 形状点5 ;上形状点5 形状点6 ;右形状点6 形状点7 ;右下形状点7 形状点9 ;下形状点9 形状点10;左下形状点10 形状点11 ;左形状点11 形状点13。则形状点0 形状点2记作扫描段0,形状点2 形状点5记作扫描段1,形状点5 形状点6记作扫描段2形状点6 形状点7记作扫描段3形状点7 形状点9记作扫描段4形状点9 形状点10记作扫描段5
形状点10 形状点11记作扫描段6形状点11 形状点13记作扫描段7。3)查找相关段查找相关段的目的在于将待处理的两条轨迹形状的根据两条轨迹走行方向分组的结果根据对应扫描段之间的距离等查找得到相似的轨迹段,为之后进一步的形状比较以及关系判定打下基础。具体步骤如下a)将两条轨迹分别记作轨迹TRACK_A和轨迹TRACK_B。选取TRACK_A第1个扫描段即扫描段0作为TRACK_A上查找的基准段。选取TRACK_B上的第一个扫描段即扫描段0 作为TRACK_B上查找的基准段。b)首先,将TRACK_A上的基准段作为待比较段,从TRACK_B上的查找基准段开始, 依次选取扫描段与该待比较段做关联性的判断,即分别做两个扫描段的外接矩形,计算出外接矩形的距离,以此来判断两个扫描段的关联程度。如果,从TRACK_B上选取的扫描段与该待比较段的外接矩形距离小于规定阈值, 则存储这组有关联的扫描段信息(即相关段)。并退出TRACK_A的此次查找。如果从TRACK_B的基准段直到TRACK_B的最后一个扫描段都没有找到与TRACK_ A的待比较段相似的扫描段,则改变TRACK_A的待比较段为当前基准段的下一个扫描段,再次从TRACK_B的基准段到TRACK_B的最后一个扫描段查找与变化后的TRACK_A基准段相关的扫描段。如果改变待比较段后仍然没有在TRACK_B的基准段到最后一个扫描段中找到与当前待比较段相关的扫描段,则将待比较段改变为当前待比较段的下一段继续从TRACK_B 的基准段到其最后一段查找,直至找到相关段或者待比较段已经是TRACK_A中的最后一个扫描段,无法继续改变。以图5中所示为例,TRACK_A上的基准段为扫描段0,待扫描段为扫描段0时无法找到相关段,修改待比较段为扫描段1 (基准段不变),则找到相关段(1,0),即TRACK_A上扫描段1与TRACK_B上扫描段0相关,存储该组对应关系后结束TRACK_A的此次查找。c)对TRACK_B做类似b)中TRACK_A的查找操作,即将TRACK_B上的基准段作为待比较段,从TRACK_A上的查找基准段开始,依次选取扫描段与该待比较段做关联性的判断,即分别做两个扫描段的外接矩形,对计算出外接矩形的距离,以此来判断两个扫描段的关联程度。如果,从TRACK_A上选取的扫描段与该待比较段的外接矩形距离小于规定阈值, 则存储这组有关联的扫描段信息。并退出TRACK_B的此次查找。如果从TRACK_A的基准段直到TRACK_A的最后一个扫描段都没有找到与TRACK_ B的待比较段相关的扫描段,则改变TRACK_B的待比较段为当前基准段的下一个扫描段,再次从TRACK_A的基准段到TRACK_A的最后一个扫描段查找与变化后的TRACK_A基准段相关的扫描段。如果改变待比较段后仍然没有在TRACK_A的基准段到最后一个扫描段中找到与当前待比较段相关的扫描段,则将待比较段改变为当前待比较段的下一段继续从TRACK_A 的基准段到其最后一段查找,直至找到相关段或者待比较段已经是TRACK_B中的最后一个扫描段,无法继续改变。以图5中所示为例,TRACK_B上的基准段为扫描段0,待扫描段为0时查找TRACK_ A基准段0至TRACK_A最后一个扫描段时找到TRACK_A上扫描段1与之对应,存储该组对应关系后退出TRACK_B的此次查找。d)判断b)和C)中返回的相关段结果如果没有找到相关段,则将TRACK_A的基准段和TRACK_B的基准段修改为各自的最后一个扫描段并退出查找。如果找到一个相关段,则将TRACK_A的基准段和TRACK_B的基准段根据返回的对应段的最后一个点的位置关系,将位置比较靠“后”的点(与行车方向有关,这里为在行车方向上比较靠后的点)所在的扫描段作为其中一个基准段,而另外一个基准段则改为原基准段后面的扫描段。如果找到两组相关段,则进一步比较他们的相似程度,选取更加相似的组作为一组相关段存储,并将TRACK_A的基准段和TRACK_B的基准段参照上一种情况中的规则进行修改。以中所示为例,存储的相关段只有一组,(1,0),对应修改TRACK_A上的基准段为扫描段1,修改TRACK_B上的基准段为扫描段1。e)修改基准段后判断各自基准段是否是对应轨迹上的最后一个扫描段。如果均不是,则重复步骤b),c),d)。如果TRACK_A上的基准段是,而TRACK_B上的基准段不是,则将TRACK_A上的基准段修改为第一个扫描段,TRACK_B上的基准段不变,然后重复步骤b),c),d)。如果TRACK_B上的基准段是,而TRACK_A上的基准段不是,则将TRACK_B上的基准段修改为第一个扫描段,TRACK_A上的基准段不变,然后重复步骤b),c),d)。如果均是,则直接退出查找。对于步骤3)中查找结果如下操作A.如果不存在相关段,则转入5)。B.如果存在相关段,则转入4)。4)查找可合并段①取一对相关段,并进行该相关段的可合并段查找。具体方法为首先,根据步骤幻中查找到的相关段中所包含的起始点、终止点以及扫描方向信息确定对应扫描段的比较的起始点,选取轨迹走行方向上更“后”的起始点为比较的起点, 而比较的终点的选取则选相对更“前”的点。然后,根据起点坐标和扫描方向确定在起点处两条轨迹的距离。以轨迹扫描方向为向右的方向即X正方向为例,起点处假定X坐标为1000,则起点处的距离规定为TRACK_ A上该扫描段X= 1000处轨迹上的点的Y坐标(假如X= 1000没有对应的形状点,则根据轨迹对应X = 1000处的前一个形状点和后一个形状点,参照直线方程推算X = 1000时对应的Y的坐标值)和TRACK_B上该扫描段X = 1000处轨迹上的点的Y坐标(同TRACK_ A该处坐标计算方法)的差值。最后,按照特定的步长,例如步长为1,依次计算比较的起点(假定为1000)和比较的终点(假定为1100)之间的各个步点(如1001、1002、1003等)处轨迹的距离值。当距离在计算距离的过程中,做如下处理将距离均小于或者均大于阈值的连续的步点归为一组,均小于的距离阈值的连续的步点所形成的轨迹段记为可合并段。对于距离值均大于阈值的连续的步点形成的轨迹段记为非可合并段。②完成可合并段查找后,需要对查找的结果做相应的处理。处理方法为对所有经过①中步骤返回为可合并段的直接记为可合并段存储,对于①中步骤返回为非可合并段的,则运用弯道识别算法(算法流程参见图7)进行识别,识别为来自同一个弯道时,将这一段与前面的可合并段(如果存在的话)合并为一个可合并段。(如果不存在的话,则该段直接存为可合并段),否则,仍然作为非可合并段。③结果②中处理后,可能得到的处理结果为>没有可合并段。对于这种情况,直接返回此对相关段的可合并段结果为空的判定结果。>有一个可合并段。对于这种情况,程序返回的判定结果为可合并,并记录下可合并段的位置信息。>对于有多个可合并段的。对可合并段的相对位置做判断,将能够合并的可合并段(如相邻或者存在部分重叠的)合并成一个相对较长的可合并段,完成所有可合并段的相对位置判断后,返回判定结果为可合并,并记录下各个可合并段的位置。记录下该对应段的返回结果,如果还有其他未处理的相关段,则返回①。如果没有其他未处理的相关段则转入5)。5)轨迹关系判定A.如果两条轨迹没有相关段,则进行轨迹相交或者首位衔接的判断。将交点或者首尾衔接的顺序加入到判定结果中,转到6)。B.如果两条轨迹有相关段,但是没有可合并段,也进行轨迹相交或者首位衔接的判断。并将是否存在交点或者是否首尾衔接的关系记录到判定结果中,转到6)。C.如果两条轨迹有相关段,也存在可合并段,则将可合并段尽可能连接成一个较长的可合并段,然后记录到判定结果中,转到6)。6)检查是否还有未处理数据。若为“是”,转至步骤1);若为“否”则结束。以上所述,仅是用以说明本发明的具体实施案例而已,并非用以限定本发明的可实施范围,举凡本领域熟练技术人员在未脱离本发明所指示的精神与原理下所完成的一切等效改变或修饰,仍应由本发明权利要求的范围所覆盖。
10
权利要求
1.一种基于弯道模型的有损形状道路识别方法,以浮动车对轨迹A和B分别采集得到的轨迹线TRACK_A和TRACK_B作为对象进行处理和判定,每条轨迹线上具有多个用来表示道路或轨迹形状的形状点,两个形状点之间的路段为形状点段,其特征在于包括以下步骤步骤一、快速筛选,根据轨迹线TRACK_A和TRACK_B的外接矩形来判断两条轨迹线之间的关系;步骤二、走行方向分组,根据轨迹线TRACK_A* TRACK_B&轨迹方向变化对每一条轨迹线的形状点段进行阶段分组;步骤三、根据步骤二得到的两条轨迹线TRACK_A和TRACK_B的阶段分组结果,通过相关性判断,并存储判定结果;步骤四、对步骤三存储的判定结果进行进一步判断,根据距离和轨迹方向对两条轨迹线TRACK_A和TRACK_B的形状点段进行合并,并记录合并位置;步骤五、根据步骤三和四的相关性判断和合并结果进行两条轨迹TRACK_A和TRACK_B 之间的关系判定;步骤六、检查是否还有未处理数据,若为是,转为步骤一;若为否,则结束。
2.根据权利要求1所述的基于弯道模型的有损形状道路识别方法,其特征在于所述步骤一具体分为两个步骤·1. 1)分别求出有损形状A的轨迹线TRACK_A&外接矩形和有损形状B的轨迹线TRACK_ B的外接矩形;·1.2)根据外接矩形的关系进行快速筛选如果外接矩形没有相交区域,并且相互的距离超过阈值时,则轨迹A与轨迹B是没有关系的两条轨迹线;否则,判定为具有一定关系,并进入步骤二。
3.根据权利要求1所述的基于弯道模型的有损形状道路识别方法,其特征在于所述步骤二具体包括以下步骤·2.1)将平面坐标系分为八个方向上、下、左、右、左上、左下、右上、右下,将轨迹A和B 按照相邻两个形状点之间的前进方向,确定为上述八方向中的某一种;·2.2)将连续相同的走行方向的形状点段分成一组,作为一个扫描段。
4.根据权利要求3所述的基于弯道模型的有损形状道路识别方法,其特征在于所述步骤三具体包括依据走行方向,对TRACK_A上的所有扫描段和TRACK_B上的所有扫描段, 根据扫描段之间的距离找出比较相近的对应段,并将判定信息存储下来。
5.根据权利要求4所述的基于弯道模型的有损形状道路识别方法,其特征在于所述扫描段之间的判定过程如下·3.1)选取TRACK_A第1个扫描段作为TRACK_A上查找的基准段,选取TRACK_B上的第一个扫描段作为TRACK_B上查找的基准段;·3. 2)以TRACK_A的基准段作为待比较段,从TRACK_B上的基准段开始,依次选取 TRACK_B上的扫描段与该待比较段做关联性的判断,即分别做两个扫描段的外接矩形,计算出外接矩形的距离,以此来判断两个扫描段的关联程度;·3. 3)如果,从TRACK_B上选取的扫描段与该待比较段的外接矩形距离小于规定阈值, 则存储这组有关联的扫描段信息,即相关段;并退出TRACK_A的此次查找;·3. 4)如果从TRACK_B的基准段直到TRACK_B的最后一个扫描段都没有找到与TRACK_ A的待比较段相似的扫描段,则改变TRACK_A的待比较段为当前基准段的下一个扫描段,再次从TRACK_B的基准段到TRACK_B的最后一个扫描段查找与变化后的TRACK_A基准段相关的扫描段;·3.5)如果改变待比较段后仍然没有在TRACK_B的基准段到最后一个扫描段中找到与当前待比较段相关的扫描段,则将待比较段改变为当前待比较段的下一段继续从TRACK_B 的基准段到其最后一段查找,直至找到相关段或者待比较段已经是TRACK_A中的最后一个扫描段,无法继续改变。
6.根据权利要求5所述的基于弯道模型的有损形状道路识别方法,其特征在于所述步骤四具体包括·4.1)如果没有找到相关段,则先判断两条轨迹方向是否相反,如果是则直接退出,继续另外一组轨迹的处理;否则,查找两条轨迹是否存在相交,找到交点并存储相关信息后进行下一组轨迹的处理;如果没有其他需要处理的轨迹数据,则退出;·4.2)如果找到相关段,则对每一组相关段进行基于弯道识别的形状比较,判定两条轨迹的关系,返回该结果后进行下一组数据处理,如果没有其他需要处理的轨迹数据,则退出ο
7.根据权利要求5所述的基于弯道模型的有损形状道路识别方法,其特征在于所述步骤五具体包括如下·5.1)如果两条轨迹没有相关段,则进行轨迹相交或者首位衔接的判断,将交点或者首尾衔接的顺序加入到判定结果中,转到步骤六;·5. 2)如果两条轨迹有相关段,但是没有可合并段,也进行轨迹相交或者首位衔接的判断,并将是否存在交点或者是否首尾衔接的关系记录到判定结果中,转到步骤六;·5. 3)如果两条轨迹有相关段,也存在可合并段,则将可合并段尽可能连接成一个较长的可合并段,然后记录到判定结果中,转到步骤六。
全文摘要
本发明提出了一种基于弯道模型的有损形状道路识别方法,其步骤包括1)快速筛选,即通过外接矩形关系快速过滤没有相关性的形状;2)走行方向分组,即根据两条轨迹各自记录的轨迹方向变化依次记录其扫描方向等信息;3)查找相关段,即根据两条轨迹走行方向分组的结果以及各个扫描段之间的距离等查找得到最相似的可合并段;4)根据相关段的查找结果进行轨迹关系判定。通过该方法,可以对形状信息损失较大的两条道路轨迹进行形状识别。
文档编号G06K9/62GK102306300SQ201110245228
公开日2012年1月4日 申请日期2011年8月25日 优先权日2011年8月25日
发明者刘俊波, 朱敦尧 申请人:光庭导航数据(武汉)有限公司