车辆区域识别方法

文档序号:6694965阅读:803来源:国知局
专利名称:车辆区域识别方法
技术领域
本发明涉及一种区域识别方法,尤其是应用全球定位系统技术(Global Position system,简 称GPS)的车辆区域识别方法,应用于交通需求管理领域。
技术背景汽车的出现使人们的出行和货物运输变得更加快捷方便,但是它给人类带来巨大效益的 同时,也引发了一系列的问题,如城市交通拥挤以及由此而生的交通事故;交通事故则进一 步加剧了交通拥挤甚至造成交通阻塞。为了解决城市交通拥挤问题,许多发达国家和发展中 国家都在大量地修筑道路基础设施,但是由于机动车辆的数量激增及城市化过程中人口的集 骤效应,仅靠修筑道路基础设施很难从根本上解决城市交通拥挤问题。面对日益严峻的交通 拥挤问题,国内外一些专家提出了交通需求管理(Travel Demand Management,简称TDM )的 概念,明确了从供求两个方面解决城市交通问题的思想,这是在交通规划和解决城市交通问 题指导思想上的一个转变。利用交通需求管理的思想,对交通效率低下的车辆,通过提高其在拥挤的区域或路段的 计价标准这一经济手段调控优化交通分布,抑制交通效率低下的车辆,如出租车,在交通高 峰期间对有限的道路空间资源占用,从而使出行者的出行方式由低容量向高容量转移,提高 拥挤区域或路段的道路利用率。这不仅能够有效解决城市交通拥挤,而且对环境保护、节约 能源都有显著的效果。通过技术手段将高出标准计价部分的资金回收,用于修筑道路基础设 施。交通需求管理为人们提出了许多新的科研课题,如何利用现有技术中的地理信息系统 (Geographical Information System ,简称GIS )开发车辆区域识别的方法是首先要解决的任 务,在该方法的基础上再开发具有区域识别与计价功能电路,最后开发具有区域识别与计价 功能的计价器,这些都是急需解决的技术问题,而现有技术中还没有解决上述技术问题的技 术方案。
地理信息系统是利用现代计算机图形和数据库技术,用以输入、存储、编辑、分析、显 示空间信息及其属性信息的地理资料系统。它与其他信息系统的主要区别在于其存储和处理 的信息是经过地理编码的。地理位置及与该位置有关的地物属性信息成为信息检索的重要部 分。在地理信息系统中,'现实世界被表达成一系列的地理要素和地理现象,这些地理特征至 少由空间位置参考信息和非位置信息两个部分组成。组件式地理信息系统(Components Geographical Information system ,简称ComGIS)是面向对象模型和组件式软件在地理信息 系统软件中的应用,以组件对象模型和ActiveX控件为技术基础。发明内容本发明所要解决的技术问题是,提供一种以组件式地理信息系统为基础的车辆区域识别 的方法,应用于交通需求管理中,用以判断某一车辆所处的位置是否处于拥挤的区域或路段。为了解决上述技术问题,本发明对判断一个点是否被一个多边形所包含的数学算法中的 弧长方法作了改进,通过区域识别主程序和子程序予以实现,并将该软件嵌入组件式地理信 息系统TopMap ActiveX软件中。本发明的车辆区域识别方法,由存储有组件式地理信息系统软件的公知计算机实现,所 述的计算机还存储有区域识别主程序和区域识别子程序,用于完成对车辆所处的位置是否在某一区域中的判断,计算机在运行区域识别主程序时执行如下步骤(1) 、打开地图文件,调入地图;(2) 、新建图层;(3) 、添加识别区域,并将表示拥挤区域的多边形的顶点地理坐标,输入到城市电子地图上;(4) 、调入车辆的GPS数据;(5) 、将车辆所处位置的地理坐标输入到城市电子地图上;(6) 、进行拥挤区域识别判断;(7) 、判断是否停止识别,如判断结果为否,则执行(4)步骤;(8) 、如(7)步骤中的判断结果为是,则停止;所述的公知计算机内还存储有区域识别子程序,公知计算机在执行上述主程序(6)步骤时运行该子程序,所述计算机在运行该子程序时执行如下步骤-(9) 、进行坐标平移,得到多边形的一边的两端点A、 B的坐标值;(10) 、判断该点是否在Y轴上,如判断结果为否,则执行(14)歩骤;(n)、如(10)步骤中的判断结果为是,则判断该点的纵坐标值是否大于零; (12) 、如(11)步骤中的判断结果为否,则弧度为3冗/2,并执行(16)步骤;(13) 、如(11)步骤中的判断结果为是,则弧度为;r/2,并执行(16)步骤;(14) 、求A、 B点的反切值,得到A、 B点的弧度值;(15) 、校正A 、 B两点的弧度值当点在第一象限时,校正值为原弧度值;当点在第二象 限时,校正值二;r+原弧度值;当点在第三象限时,校正值=冗+原弧度值;当点在第四象 限时,校正值二2;r+原弧度值;(16) 、得到A 、 B两点的弧度值;(17) 、将弧度转换为角度;(18) 、两点的角度相减得角度差;(19) 、进行角度差校正,得到角度差的校正值当两点的角度差大于180度时,角度差的校正值=角度差一360度;当两点的角度差小于一180度时,角度差的校正值=角度差+360度; 其余情况下,不进行校正;(20) 、将进行校正后的角度差(即角度差的校正值)进行累加求和;(21) 、判断是否己计算到最后一边,如判断结果为否,则返回(9)步骤;(22) 、如(21)步骤中的判断结果为是,则判断角度差累加和的绝对值是否等于360度;(23) 、如(22)步骤中的如判断结果为是,则得出结论车辆在拥挤区域内;(24) 、如(22)步骤中的如判断结果为否,则得出结论车辆在拥挤区域外;(25) 、返回主程序(7)步骤。本发明所述的组件式地理信息系统可以是TopMap ActiveX软件,也可以是MapEngine软件。与现有技术相比,本发明具有以下有益效果采用本发明的方法可以判断出车辆是否处 于拥挤的区域或者路段,为交通需求管理的实现、有效解决城市交通拥挤提供技术支持。


图l是本发明区域识别主程序的流程图2是本发明区域识别子程序的流程图;图3是利用本发明的识别程序识别车辆是否位于凹形区域之外的计算示意图。
具体实施方式
目前,判断点是否被一个多边形包含的数学算法有射线法、弧长法、转角法、符号法和 栅格法。转角法和符号法适用于边界为连续的函数的区域,且算法复杂,难以满足实时性的 要求;射线法虽然简单实用,但是由于射线法有其局限性,即当射线通过多边形的拐点或某 一边时,运用射线法就会产生错误的判断结果;栅格法虽然具有数据结构简单的突出优点, 但是它的数据量的多少都有取决于像元的大小,当用较小的像元进行划分时,将会遇海量数 据存储问题, 一般的微型计算机存储空间有限,难以处理。弧长法要求多边形由有向边组成,即规定沿多边形各边的走向其左侧(或右侧)为多边 形的内部,方法是以被测点为圆心作单位圆,将全部有向边向单位圆作径向投影,并计算其 在单位圆上弧长的代数和。相当于计算该点到多边形上所有顶点的夹角和。若弧长的代数和 为O或小于360度,则被测点在多边形之外;若代数和为360度,则被测点在多边形之内。 对于内部有空洞的多边形、凸多边形和凹多边形,只要按照上述规定来定义多边形的有向边, 亦可采用同样的方法进行判断。弧长法的复杂之处在于,这种方法要事先规定多边形的方向, 即规定其走向的某侧为内部,而带着方向进行运算非常复杂。本发明将弧长法进行改进,并且应用到车辆区域识别方法中,与其他算法相比具有明显 的优越性。本系统要求实时的进行区域识别,算法的复杂性会大大影响整个系统的运算速度。 因此,我们对弧长方法作了改进,即对区域的边界先不作方向规定,在进行运算之后对运算 结果作统一修正(1)校正A 、 B两点的弧度值当点在第一象限时,校正值为原弧度值; 当点在第二象限时,校正值="+原弧度值;当点在第三象限时,校正值=冗+原弧度值; 当点在第四象限时,校正值=2"+原弧度值;(2)进行角度差校正当两点的角度差大于 180度时,角度差的校正值=角度差一360度;当两点的角度差小于一180度时,角度差的校正值=角度差+360度;其余情况下,不进行校正,这样通过本发明的区域识别算法子程序使得该算法的复杂性大大降低。由于组件式地理信息系统(ComGIS)能降低开发成本和使用复杂性,且符合地理信息系 统(GIS)的发展趋势,本发明采用组件式地理信息系统(ComGIS)来进行地理信息系统的 开发。对于具体的组件式地理信息系统(ComGIS)的选取,本发明采用了国产的TopMap AstiveX件为开发工具。TopMap ActiveX软件是基于Win98/Me/NT/2O00开发的组件式地 理信息系统开发工具,它以ActiveX控件的形式,提供了全面的地理信息系统功能。在本发明中采用电子地图是比例为1:2.5万、高斯一克吕格投影的地图,高斯一克吕格投 影规定以中央经线为X轴,赤道为Y轴,两轴的交点为坐标原,f。 X坐标值在赤道以北为 正,以南为负;Y坐标值在中央经线以东为正,以西为负。本发明选择Delphi语言作为人机界面开发语言。在本系统中将组件式地理信息系统控件 TopMap ActiveX或MapEngine软件嵌入到Delphi语言环境中。图1是本发明主程序的流程图,图2是本发明子程序的流程图,公知计算机存储有组件 式地理信息系统软件TopMap ActiveX或MapEngine软件,公知计算机还存储有区域识别主 程序和区域识别子程序,用于完成对车辆所处的位置是否在某一区域中的判断,(1) - (8)步 骤由计算机在运行主程序时实现;(9)- (25)步骤由计算机在运行子程序时实现。系统运行过程如下首先,打开地图文件,调入地图,选择主界面工具条上的"添加图层 按钮",则可打开添加图层对话框,在其中键入新图层的名称,点击确定,完成本发明的(l)、 (2)步骤。接下来就可在新的图层上,输入城市电子地图,并按照城市交通研究提供的区域 边界资料在新的图层上添加所需识别的区域,如交通高峰期的拥挤区域,即将表示识别区域 的多边形的顶点地理坐标输入到城市电子地图上,完成本发明的(3)步骤。通过点击"保存 至文件"按钮将区域信息保存到文件中输出,以供定位模块的调用。接着选择"同步GPS接收 机"图标,启动卫星定位系统,调入车辆的GPS数据,将车辆的地理坐标输入到城市电子地 图上,完成本发明的(4) 、 (5)步骤。在(6)步骤,进行区域识别判断。在(7 )步骤中 判断是否停止,如判断结果为否,则执行(4 )步骤。如(7)步骤中的判断结果为是O,则 执行(8)步骤,即停止。卫星定位系统具有选择串口、同步波特率、显示GPS定位数据、 实时显示定位状态等功能。开始定位后,应用程序会在地图上实时显示当前移动车辆的位置, 同时启动区域识别方法子程序,同步显示出当前车辆所处的区域范围及计价标准。公知计算机在执行上述主程序(6)步骤时运行该子程序,所述计算机在运行该子程序时 执行如下步骤在(9)步骤进行坐标平移,得到多边形一边的两端点A 、 B的坐标值。在(10) 步骤判断该点是否在Y轴上,如判断结果为否,则执行(14)步骤;如(10)步骤中的判断 结果为是,则执行(11)步骤即判断该点的纵坐标值是否大于零。如(11)步骤中的判断结 果为否,则执行(12)步骤即弧度为3;r/2,然后执行(16)步骤;如(11)步骤中的判断结 果为是,则执行(13)步骤即弧度为;r/2,然后执行(16)步骤。在(14)步骤求A、 B点
的反切值,得到A、 B点的弧度值。在(15)歩骤校正A 、 B两点的弧度值当点在第一象 限时,校正值为原弧度值;当点在第二象限时,校正值="+原弧度值;当点在第三象限时, 校正值=冗+原弧度值;当点在第四象限时,校正值=2冗+原弧度值。在(16)步骤得到A 、 B两点的弧度值。在(17)步骤将弧度转换为角度。在(18)步骤将两点的角度相减得角度 差。在(19)步骤对角度差校正当两点的角度差大于180度时,'角度差的校正值=角度差 一360度;当两点的角度差小于一180度时,角度差的校正值二角度差+360度;其余情况下, 角度差的校正值等于原角度差,即不进行校正。在(20)步骤求各个经过校正后的角度差的 累加和。在(21)步骤判断是否已计算到最后一边,如判断结果为否,则返回(9 )步骤; 如(21)步骤中的判断结果为是,则执行(22)步骤即判断角度差累加和的绝对值是否等于 360度。如(22)步骤中的如判断结果为是,则执行(23)步骤即得出车辆所处位置在区域 内的结论;如(22)步骤中的如判断结果为否,则执行(24)步骤即得出车辆所处位置在区 域外的结论。在(25)步骤中返回主程序(7)步骤。例如当拥挤区域的多边形是一个正方形,车辆位置位于该正方形的对称中心时,按照 本申请的步骤(9)到(20):平移坐标系,将该中心点位置设置为坐标中心,多边形的四个 顶点分别位于四个象限内,根据各顶点对应坐标及其反切值,得到各顶点对应的角度值,分 别为45°, 135°, 225°和315°,然后计算角度差并进行校正135°—45°=90°,不需要校正; 225°—135°=卯°,不需要校正;315°—225°=卯°,不需要校正;45°—315°=—270'°,需要校 正,角度差的校正值=一270°+360°=90°。然后将校正后的角度差进行累加90°+90°+90°+ 90°=360°,其绝对值为360。,即点在该区域内,车辆位于正方形中。例如当拥挤区域的多边形是一个凹多边形ABCDE (方向如附图3所示),车辆位置在 点0处(在区域外)。按照本申请的步骤(9)到(20),各个边的角度差(即点到多边形 上所有顶点的夹角)分别为ZAOB, ZBOC, ZCOD, ZDOE, ZEOA,其中ZAOB, ZBOC, ZCOD为逆时针方向,ZDOE, ZEOA为顺时针方向。其中ZAOB + ZBOC + ZCOD = ZAOD (为逆时针方向)ZDOE+ZEOA= ZDOA (为顺时针方向)=-ZAOD,所以 所有有向边的角度差的累加和为^八08+ ZBOC+ ZCOD + ZDOE + ZEOA = 0°#360°,, 即校正后的角度差累加的绝对值为零,该点在该凹边形外,车辆位于该凹多边形之外。通过上述实施例可以看出,本发明专利的判断方法无论是对于凸多边形还是凹多边形都 是适用的,并可以正确判断车辆和拥挤区域的位置关系,为交通需求管理的实现、有效解决 城市交通拥挤提供技术支持。
权利要求
1.一种车辆区域识别方法,由存储有组件式地理信息系统软件的公知计算机实现。其特征是,所述的计算机还存储有区域识别主程序和区域识别子程序,用于完成对车辆所处的位置是否在某一区域中的判断,计算机在运行区域识别主程序时执行如下步骤(1)、打开地图文件,调入地图;(2)、新建图层;(3)、添加识别区域,并将表示拥挤区域的多边形的顶点地理坐标,输入到城市电子地图上;(4)、调入车辆的GPS数据;(5)、将车辆所处位置的地理坐标输入到城市电子地图上;(6)、进行拥挤区域识别判断;(7)、判断是否停止识别,如判断结果为否,则执行(4)步骤;(8)、如(7)步骤中的判断结果为是,则停止;所述的公知计算机内还存储有区域识别子程序,公知计算机在执行上述主程序(6)步骤时运行该子程序,所述计算机在运行该子程序时执行如下步骤(9)、进行坐标平移,得到多边形的一边的两端点A、B的坐标值;(10)、判断该点是否在Y轴上,如判断结果为否,则执行(14)步骤;(11)、如(10)步骤中的判断结果为是,则判断该点的纵坐标值是否大于零;(12)、如(11)步骤中的判断结果为否,则弧度为3π/2,并执行(16)步骤;(13)、如(11)步骤中的判断结果为是,则弧度为π/2,并执行(16)步骤;(14)、求A、B点的反切值,得到A、B点的弧度值;(15)、校正 A、B两点的弧度值当点在第一象限时,校正值为原弧度值;当点在第二象限时,校正值=π+原弧度值;当点在第三象限时,校正值=π+原弧度值;当点在第四象限时,校正值=2π+原弧度值;(16)、得到A、B两点的弧度值;(17)、将弧度转换为角度;(18)、两点的角度相减得角度差;(19)、进行角度差校正,得到角度差的校正值当两点的角度差大于180度时,角度差的校正值=角度差-360度;当两点的角度差小于-180度时,角度差的校正值=角度差+360度;其余情况下,不进行校正;(20)、将进行校正后的角度差进行累加求和;(21)、判断是否已计算到最后一边,如判断结果为否,则返回(9)步骤;(22)、如(21)步骤中的判断结果为是,则判断角度差累加和的绝对值是否等于360度;(23)、如(22)步骤中的如判断结果为是,则得出结论车辆在拥挤区域内;(24)、如(22)步骤中的如判断结果为否,则得出结论车辆在拥挤区域外;(25)、返回主程序(7)步骤。
2. 根据权利要求1所述的一种车辆区域识别方法,其特征是,所述的组件式地理信息系统是 TopMap ActiveX软件。
3. 根据权利要求1所述的一种车辆区域识别方法,其特征是,所述的组件式地理信息系统是 MapEngine软件。
全文摘要
本发明提供一种以组件式地理信息系统为基础的车辆区域识别的方法,由存储有组件式地理信息系统软件的公知计算机实现,所述的计算机还存储有区域识别主程序和区域识别子程序,用于完成对车辆所处的位置是否在某一区域中的判断。本发明应用于交通需求管理中,用以判断某一车辆所处的位置是否处于拥挤的区域或路段,为交通需求管理的实现,为有效解决城市交通拥挤提供技术支持。
文档编号G08G1/00GK101154316SQ200710059329
公开日2008年4月2日 申请日期2007年8月28日 优先权日2007年8月28日
发明者乔胜华, 琦 冯, 李广霞, 弘 陈 申请人:天津汽车检测中心;陈 弘
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1