CN106682084A - 对电子地图路段进行定向拓宽的方法及装置 - Google Patents
对电子地图路段进行定向拓宽的方法及装置 Download PDFInfo
- Publication number
- CN106682084A CN106682084A CN201611056687.6A CN201611056687A CN106682084A CN 106682084 A CN106682084 A CN 106682084A CN 201611056687 A CN201611056687 A CN 201611056687A CN 106682084 A CN106682084 A CN 106682084A
- Authority
- CN
- China
- Prior art keywords
- section
- interior
- point
- collection
- sequence
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/29—Geographical information databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T11/00—2D [Two Dimensional] image generation
- G06T11/20—Drawing from basic elements, e.g. lines or circles
- G06T11/203—Drawing of straight lines or curves
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09B—EDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
- G09B29/00—Maps; Plans; Charts; Diagrams, e.g. route diagram
- G09B29/003—Maps
- G09B29/006—Representation of non-cartographic information on maps, e.g. population distribution, wind direction, radiation levels, air and sea routes
- G09B29/007—Representation of non-cartographic information on maps, e.g. population distribution, wind direction, radiation levels, air and sea routes using computer methods
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Ecology (AREA)
- Mathematical Physics (AREA)
- Business, Economics & Management (AREA)
- Educational Administration (AREA)
- Educational Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computer Hardware Design (AREA)
- Remote Sensing (AREA)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明提供对电子地图路段进行定向拓宽的方法及装置,方法包括:获取目标路网的所有路段集,每个路段集ψ包括拓扑相连的多个路段;提取每个ψ的内点序集Pψ,并根据其对每个ψ的路段曲线进行上行方向定向拓宽,获得每个路段曲线的平行曲线的内点序集EPψ,d;根据EPψ,d判断每个路段曲线的平行曲线是否存在自相交情况,若存在则检测其自相交区域并删除该EPψ,d中自相交区域内的所有内点;根据平行曲线与其对应路段曲线的分段对应关系,对删除内点后产生的缺失的路段进行还原。可对电子地图路段定向拓宽,生成路段指定宽度的平行曲线,保留平行曲线与原始路段的分段对应关系,精准显示路况信息,满足对自相交区域处理的实际需要,降低计算复杂度,提高计算效率。
Description
技术领域
本发明涉及智能交通技术领域,尤其涉及一种对电子地图路段进行定向拓宽的方法及装置。
背景技术
在智能交通领域,实时动态交通信息服务能为公众出行、交通运输等提供高效可行的交通诱导和出行规划信息,达到节省时间、降低成本和低碳环保等目的。通过互联网网站和智能终端在电子地图上叠加显示交通路况信息,是大众获取交通信息的最基本方式。但该方式面临如下问题:由于交通流是存在方向的,所以在路况信息的表达过程中,必须将实体道路按照一定的宽度进行双向拓宽,进而区分出上下行方向,并叠加到地图上进行路况展示。对于不同的地图比例尺,拓展的宽度是不同的。对于一些等级比较高的道路(例如高速公路和城市快速路),其实体道路已经区分了上下行,则只需要对实体道路进行单向拓宽。
在几何抽象上,对道路实体进行单向或双向拓宽,等价于对线对象(因为道路在电子地图中以线对象表达)进行设定宽度的单向或双向缓冲区Buffer操作。但该Buffer操作与地理信息系统GIS的Buffer操作目的不同,并非为了建立道路一定宽度的多边形区域,而是利用Buffer操作产生的多边形的边作为路况上下行表达的几何依据,如图1所示。
Buffer操作是GIS的基本空间操作功能之一。在几何意义上,Buffer操作是指以点、线、面实体为基础,自动建立其周围一定宽度范围内的缓冲区多边形图层,然后建立该图层与目标图层的叠加,进行分析而得到所需结果。它是用来解决邻近度问题的空间分析工具之一。邻近度描述了地理空间中两个地物距离相近的程度。图2(a)-图2(c)是对点线面实体进行缓冲区分析的示意图。
在现有的传统Buffer操作中,建立线缓冲区就是生成缓冲区多边形。只需在线的两边按一定的距离(缓冲距)绘平行线,并在线的端点处绘半圆,就可连成缓冲区多边形。对一条线所建的缓冲区有可能重叠,如图3(a)-图3(c)所示。这时需把重叠的部分去除。基本思路是对缓冲区边界求交,并判断每个交点是出点还是入点,以决定交点之间的线段保留或删除,这样就可得到岛状的缓冲区。
但是,将上述传统Buffer操作直接应用于电子地图道路拓宽存在如下问题:一、传统Buffer操作目的在于形成缓冲区;而道路拓宽的目标是提取缓冲区外围的曲线,并且要形成外围曲线与电子地图道路曲线的分段对应关系,以方便表达路况信息;但传统Buffer操作在形成缓冲区结果时已经难以提取这种对应关系;二、当出现缓冲区重叠时,传统Buffer方法允许如图3(c)中矩形框所示部分存在,但在道路拓宽操作中,矩形框所示的区域外围边缘曲线已经不能作为路段,因为其与其他边缘曲线不连通,需要被放弃;三、传统Buffer操作在缓冲区重叠区域存在大量的线段交点计算操作,计算复杂度高,效率低下,不能使用于城市和城际范围内十万、百万级路段规模的计算场景。
鉴于此,如何解决现有对电子地图路段进行拓宽的过程中缺失分段对应关系、不满足对自相交区域的检测及处理的实际需要、计算复杂度高和计算效率低的问题成为目前需要解决的技术问题。
发明内容
为解决上述的技术问题,本发明提供一种对电子地图路段进行定向拓宽的方法及装置,可以解决现有对电子地图路段进行拓宽的过程中缺失分段对应关系、不满足对自相交区域的检测及处理的实际需要、计算复杂度高和计算效率低的问题。
第一方面,本发明提供一种对电子地图路段进行定向拓宽的方法,包括:
获取目标路网的所有路段集,其中每个路段集包括:拓扑相连的多个路段,每个路段集的形态为一条路段曲线;
提取每个路段集的内点序集;
根据每个路段集的内点序集,对每个路段集的路段曲线进行上行方向定向拓宽,获得每个路段曲线的平行曲线的内点序集;
根据每个路段曲线的平行曲线的内点序集,判断每个路段曲线的平行曲线是否存在自相交情况,若存在,则检测该平行曲线的自相交区域,并删除该平行曲线的内点序集中位于所述自相交区域内的所有内点;
根据平行曲线与其对应的路段曲线的分段对应关系,对删除自相交区域内的所有内点后产生的缺失的路段进行还原。
可选地,所述提取每个路段集的内点序集,包括:
对于每个路段集ψ,按照路段集中路段的拓扑顺序,将各路段的所有内点按照预设顺序添加到该路段集的内点序集中,并删除所述内点序集中重复的内点,得到每个路段集的内点序集Pψ;
Pψ={pk|pk=<k,l,(pk.cx,pk.cy)>,l∈ψ,},
其中,(pk.cx,pk.cy)为内点序集Pψ中内点pk的经纬度坐标,pk.cx为内点pk的经度坐标,pk.cy为内点pk的纬度坐标,k为内点pk在内点序集Pψ中的序号,k=1,…,n,n为内点序集Pψ中内点的数量,l为内点pk所属路段。
可选地,所述根据每个路段集的内点序集,对每个路段集的路段曲线进行上行方向定向拓宽,获得每个路段曲线的平行曲线的内点序集,包括:
对于每个路段集的内点序集Pψ中的任意一个内点pk,通过第一公式计算得到该内点pk与该内点对应的扩展点pk'的经纬度坐标;
根据每个路段集的内点序集中所有内点对应的扩展点的经纬度坐标,获取每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度;
根据每个路段集所有扩展点的经纬度坐标、每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度,获取每个路段曲线的平行曲线的内点序集EPψ,d;
EPψ,d={pk'|pk'=<k,l,(pk'.cx,pk'.cy),pk'.θx,pk'.θy>,p∈Pψ}
其中,k为扩展点pk'继承内点pk的序号,l为扩展点pk'继承内点pk的所属路段,(pk'.cx,pk'.cy)为扩展点pk'的经纬度坐标,pk'.cx为扩展点pk'的经度坐标,pk'.cy为扩展点pk'的纬度坐标,pk'.θx为扩展点pk'相对于内点pk随路段方向变化而累计的顺时针角度,pk'.θy为扩展点pk'相对于内点pk随路段方向变化而累计的逆时针角度,d为预设的扩展点pk'到向量和的距离;
其中,所述第一公式为:
其中,为内点pk与扩展点pk'的向量角,该向量角是内点pk到扩展点pk'的向量与正北方向的顺时针夹角,是通过第二公式计算得到,len(pk,pk')是通过第三公式计算得到,所述第二公式为:
其中,为内点pk到其相邻内点pk+1的向量与正北方向的顺时针夹角,φ为向量和之间的夹角;在k=0或n时,φ=180度;
所述第三公式为:
len(pk,pk')=d/sin(φ/2)。
可选地,所述检测该平行曲线的自相交区域,并删除该平行曲线的内点序集中位于所述自相交区域内的所有内点,包括:
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,r为pr'在EPψ,d中的序号,s为ps'在EPψ,d中的序号,如果||pr'.θx-ps'.θx||>360或者||pr'.θy-ps'.θy||>360,则通过相交运算判断向量和是否相交;如果相交,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pr'.θx为pr'相对于Pψ中的内点pr随路段方向变化而累计的顺时针角度,pr'.θy为pr'相对于Pψ中的内点pr随路段方向变化而累计的逆时针角度,ps'.θx为ps'相对于Pψ中的内点ps随路段方向变化而累计的顺时针角度,ps'.θy为ps'相对于Pψ中的内点ps随路段方向变化而累计的逆时针角度;
或者,
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,如果||pr'.θx-ps'.θx||>360或者||pr'.θy-ps'.θy||>360,则按照预设距离间隔分别在向量和中插入多个虚拟内点;
对于在向量中插入的任意一个虚拟内点pri”和在向量中插入任意一个虚拟内点psj”,i=1,…,a,j=1,…,b a为在向量中插入的虚拟内点的数量,b为在向量中插入的虚拟内点的数量,如果||pri”.θx-psj”.θx||>360或者||pri”.θy-psj”.θy||>360,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pri”.θx=pr'.θx,pri”.θy=pr'.θy,psj”.θx=ps'.θx,psj”.θy=ps'.θy。
可选地,所述根据平行曲线与其对应的路段曲线的分段对应关系,对删除自相交区域内的所有内点后产生的缺失的路段进行还原,包括:
将中的内点基于其所属路段进行划分,建立平行曲线与其对应的路段曲线的分段对应关系,其中,中的内点继承其在Pψ中对应的内点的所属路段;
对中的内点pr'到ps+1'的向量进行内插值,按照平行曲线与其对应的路段曲线的分段对应关系对进行划分,划分后的每一个分段表达删除自相交区域内的所有内点后产生的缺失的路段中的一条路段。
第二方面,本发明提供一种对电子地图路段进行定向拓宽的装置,包括:
获取模块,用于获取目标路网的所有路段集,其中每个路段集包括:拓扑相连的多个路段,每个路段集的形态为一条路段曲线;
提取模块,用于提取每个路段集的内点序集;
定向拓宽模块,用于根据每个路段集的内点序集,对每个路段集的路段曲线进行上行方向定向拓宽,获得每个路段曲线的平行曲线的内点序集;
自相交处理模块,用于根据每个路段曲线的平行曲线的内点序集,判断每个路段曲线的平行曲线是否存在自相交情况,若存在,则检测该平行曲线的自相交区域,并删除该平行曲线的内点序集中位于所述自相交区域内的所有内点;
还原模块,用于根据平行曲线与其对应的路段曲线的分段对应关系,对删除自相交区域内的所有内点后产生的缺失的路段进行还原。
可选地,所述提取模块,具体用于
对于每个路段集ψ,按照路段集中路段的拓扑顺序,将各路段的所有内点按照预设顺序添加到该路段集的内点序集中,并删除所述内点序集中重复的内点,得到每个路段集的内点序集Pψ;
Pψ={pk|pk=<k,l,(pk.cx,pk.cy)>,l∈ψ,},
其中,(pk.cx,pk.cy)为内点序集Pψ中内点pk的经纬度坐标,pk.cx为内点pk的经度坐标,pk.cy为内点pk的纬度坐标,k为内点pk在内点序集Pψ中的序号,k=1,…,n,n为内点序集Pψ中内点的数量,l为内点pk所属路段。
可选地,所述定向拓宽模块,具体用于
对于每个路段集的内点序集Pψ中的任意一个内点pk,通过第一公式计算得到该内点pk与该内点对应的扩展点pk'的经纬度坐标;
根据每个路段集的内点序集中所有内点对应的扩展点的经纬度坐标,获取每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度;
根据每个路段集所有扩展点的经纬度坐标、每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度,获取每个路段曲线的平行曲线的内点序集EPψ,d;
EPψ,d={pk'|pk'=<k,l,(pk'.cx,pk'.cy),pk'.θx,pk'.θy>,p∈Pψ}
其中,k为扩展点pk'继承内点pk的序号,l为扩展点pk'继承内点pk的所属路段,(pk'.cx,pk'.cy)为扩展点pk'的经纬度坐标,pk'.cx为扩展点pk'的经度坐标,pk'.cy为扩展点pk'的纬度坐标,pk'.θx为扩展点pk'相对于内点pk随路段方向变化而累计的顺时针角度,pk'.θy为扩展点pk'相对于内点pk随路段方向变化而累计的逆时针角度,d为预设的扩展点pk'到向量和的距离;
其中,所述第一公式为:
其中,为内点pk与扩展点pk'的向量角,该向量角是内点pk到扩展点pk'的向量与正北方向的顺时针夹角,是通过第二公式计算得到,len(pk,pk')是通过第三公式计算得到,所述第二公式为:
其中,为内点pk到其相邻内点pk+1的向量与正北方向的顺时针夹角,φ为向量和之间的夹角;在k=0或n时,φ=180度;
所述第三公式为:
len(pk,pk')=d/sin(φ/2)。
可选地,所述自相交处理模块,具体用于
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,r为pr'在EPψ,d中的序号,s为ps'在EPψ,d中的序号,如果||pr'.θx-ps'.θx||>360或者||pr'.θy-ps'.θy||>360,则通过相交运算判断向量和是否相交;如果相交,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pr'.θx为pr'相对于Pψ中的内点pr随路段方向变化而累计的顺时针角度,pr'.θy为pr'相对于Pψ中的内点pr随路段方向变化而累计的逆时针角度,ps'.θx为ps'相对于Pψ中的内点ps随路段方向变化而累计的顺时针角度,ps'.θy为ps'相对于Pψ中的内点ps随路段方向变化而累计的逆时针角度;
或者,
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,如果||pr'.θx-ps'.θx||>360或者||pr'.θy-ps'.θy||>360,则按照预设距离间隔分别在向量和中插入多个虚拟内点;
对于在向量中插入的任意一个虚拟内点pri”和在向量中插入任意一个虚拟内点psj”,i=1,…,a,j=1,…,b a为在向量中插入的虚拟内点的数量,b为在向量中插入的虚拟内点的数量,如果||pri”.θx-psj”.θx||>360或者||pri”.θy-psj”.θy||>360,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pri”.θx=pr'.θx,pri”.θy=pr'.θy,psj”.θx=ps'.θx,psj”.θy=ps'.θy。
可选地,所述还原模块,具体用于
将中的内点基于其所属路段进行划分,建立平行曲线与其对应的路段曲线的分段对应关系,其中,中的内点继承其在Pψ中对应的内点的所属路段;
对中的内点pr'到ps+1'的向量进行内插值,按照平行曲线与其对应的路段曲线的分段对应关系对进行划分,划分后的每一个分段表达删除自相交区域内的所有内点后产生的缺失的路段中的一条路段。
由上述技术方案可知,本发明的对电子地图路段进行定向拓宽的方法及装置,通过获取目标路网的所有路段集,每个路段集包括拓扑相连的多个路段,提取每个路段集的内点序集,并根据其对每个路段集的路段曲线进行上行方向定向拓宽,获得每个路段曲线的平行曲线的内点序集,根据每个路段曲线的平行曲线的内点序集,判断每个路段曲线的平行曲线是否存在自相交情况,若存在则检测其自相交区域并删除该平行曲线的内点序集中自相交区域内的所有内点,根据平行曲线与其对应路段曲线的分段对应关系,对删除内点后产生的缺失的路段进行还原,由此,可以解决现有对电子地图路段进行拓宽的过程中缺失分段对应关系、不满足对自相交区域的检测及处理的实际需要、计算复杂度高和效率低下的问题,能够实现对电子地图路段的定向拓宽,生成了路段指定宽度的平行曲线,该平行曲线保留了与原始路段的分段对应关系,可以精准显示路况信息,满足了对自相交区域的检测及处理的实际需要,降低了计算复杂度,提高了计算效率。
附图说明
图1为现有技术中利用Buffer操作产生上下行路段的示意图,其中,图1(a)为对一实体路段进行Buffer操作产生多边形的示意图,图1(b)为利用图1(a)产生的多边形的边作为上下行路段的示意图;
图2为现有技术中的点线面的缓冲区的示意图,其中,图2(a)为点的缓冲区的示意图,图2(b)为线的缓冲区的示意图,图2(c)为面的缓冲区的示意图;
图3为现有技术中的单条线的缓冲区生成示意图,其中,图3(a)为输入的单条线的示意图,图3(b)为对图3(a)所示单条线进行缓冲区操作的示意图,图3(c)为如果图3(b)生成的缓冲区重叠后进行处理后的缓冲区的示意图;
图4为本发明一实施例提供的对电子地图路段进行定向拓宽的方法的流程示意图;
图5为由路段l1、l2和l3构成的路网示意图,其中,图5(a)为路网示意图,5(b)为图5(a)所示路网中的一个路段集的示意图,图5(c)为图5(a)所示路网中的另一个路段集的示意图;
图6为本发明实施例对内点序集Pψ中的任意一个内点pk进行定向拓宽的示意图;
图7为本发明实施例的一种自相交区域的示意图,其中,图7(a)为一个路段集的内点序集的示意图,图7(b)为图7(a)中的内点序集进行定向拓宽后的平行曲线的内点序集是示意图;
图8为对图7(b)中的自相交部分的扣除示意图;
图9为以图7为例计算平行曲线各内点p'的顺时针旋转角度的示意图;
图10为以线性插值方法对图7的例子进行自相交区域检测并删除自相交区域中所有内点的结果示意图;
图11为本发明一实施例提供的对电子地图路段进行定向拓宽的装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他的实施例,都属于本发明保护的范围。
图4示出了本发明一实施例提供的对电子地图路段进行定向拓宽的方法的流程示意图,如图4所示,本实施例的对电子地图路段进行定向拓宽的方法如下所述。
401、获取目标路网的所有路段集,其中每个路段集包括:拓扑相连的多个路段,每个路段集的形态为一条路段曲线。
在具体应用中,所述步骤401可以根据目标路网R<N,L>(其中,N代表目标路网中的节点集合,L代表目标路网中的路段集合),形成一系列的路段集,每个路段集Ψ={ψ|ψ=<l1,l2,…,lm>,l1,…,lm∈L}中包含拓扑相连的若干路段,其形态是一条曲线,其中,m为L中路段的数量。
举例来说,图5是由路段l1、l2和l3构成的简单路网示意,其中l1是双向通行的道路,l2和l3是单向通行的道路,可以简单地将该路网分解为5(b)和5(c)所示的两个路段集ψ1和ψ2,从而将问题简化为求路段集上行方向的平行拓宽曲线问题。
可以理解的是,本实施例采用路段集而非路段作为定向拓宽的基本单元,是因为这样能够更多地保留路段间的几何关系,从而使得定向拓宽后的曲线更为平滑和美观,也便于检测和处理自相交等异常情况。
402、提取每个路段集的内点序集。
在具体应用中,所述步骤402可以包括:
对于每个路段集ψ,按照路段集中路段的拓扑顺序,将各路段的所有内点按照预设顺序添加到该路段集的内点序集中,并删除所述内点序集中重复的内点,得到每个路段集的内点序集Pψ;
Pψ={pk|pk=<k,l,(pk.cx,pk.cy)>,l∈ψ,} (1)
其中,(pk.cx,pk.cy)为内点序集Pψ中内点pk的经纬度坐标,pk.cx为内点pk的经度坐标,pk.cy为内点pk的纬度坐标,k为内点pk在内点序集Pψ中的序号,k=1,…,n,n为内点序集Pψ中内点的数量,l为内点pk所属路段。
403、根据每个路段集的内点序集,对每个路段集的路段曲线进行上行方向定向拓宽,获得每个路段曲线的平行曲线的内点序集。
在具体应用中,所述步骤403可以包括图中未示出的步骤403a-403c:
403a、对于每个路段集的内点序集Pψ中的任意一个内点pk(可参考图6),通过第一公式计算得到该内点pk与该内点对应的扩展点pk'的经纬度坐标;
其中,所述第一公式为:
其中,为内点pk与扩展点pk'的向量角,该向量角是内点pk到扩展点pk'的向量与正北方向的顺时针夹角,是通过第二公式计算得到,len(pk,pk')是通过第三公式计算得到,所述第二公式为:
其中,为内点pk到其相邻内点pk+1的向量与正北方向的顺时针夹角,φ为向量和之间的夹角;在k=0或n时,φ=180度;
所述第三公式为:
len(pk,pk')=d/sin(φ/2) (4)。
具体地,可以根据每个路段集的内点序集,先计算内点pk与其相邻内点pk+1和pk-1的向量角和0度≤θ<360度;然后计算向量和之间的夹角φ,由于内点pk的扩展点pk'应该在φ的角平分线上,因此可以得到上述公式(3),即顺时针旋转φ/2度;为了保证pk'到向量和的距离为d,则得到上述公式(4),从而可以通过上述公式(2)得到pk'的经纬度坐标;同理可以得到从p0'到pn'的所有点的经纬度坐标(特殊的,因为p0和pn只有1个相邻点,无法计算φ,可设φ=180度)。
应说明的是,本实施例中的一个点与另一个点的向量角是指时说一个点到所述另一个点的向量与正北方向的顺时针夹角。
403b、根据每个路段集的内点序集中所有内点对应的扩展点的经纬度坐标,获取每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度。
在具体应用中,对于每个路段集的内点序集Pψ中的任意一个内点pk的经纬度坐标(pk.cx,pk.cy),可以根据其扩展点pk'的经纬度坐标(pk'.cx,pk'.cy),得到pk'相对于pk随路段方向变化而累计的顺时针角度pk'.θx和pk'相对于pk随路段方向变化而累计的逆时针角度pk'.θy。
403c、根据每个路段集所有扩展点的经纬度坐标、每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度,获取每个路段曲线的平行曲线的内点序集EPψ,d;
EPψ,d={pk'|pk'=<k,l,(pk'.cx,pk'.cy),pk'.θx,pk'.θy>,p∈Pψ} (5)
其中,k为扩展点pk'继承内点pk的序号,l为扩展点pk'继承内点pk的所属路段,(pk'.cx,pk'.cy)为扩展点pk'的经纬度坐标,pk'.cx为扩展点pk'的经度坐标,pk'.cy为扩展点pk'的纬度坐标,pk'.θx为扩展点pk'相对于内点pk随路段方向变化而累计的顺时针角度,pk'.θy为扩展点pk'相对于内点pk随路段方向变化而累计的逆时针角度,d为预设的扩展点pk'到向量和的距离(即对每个路段集的路段曲线进行上行方向定向拓宽的预设宽带)。
404、根据每个路段曲线的平行曲线的内点序集,判断每个路段曲线的平行曲线是否存在自相交情况,若存在,则检测该平行曲线的自相交区域,并删除该平行曲线的内点序集中位于所述自相交区域内的所有内点。
在一具体应用中,所述步骤404可以包括:
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,r为pr'在EPψ,d中的序号,s为ps'在EPψ,d中的序号,如果||pr'.θx-ps'.θx||>360或者||pr'.θy-ps'.θy||>360,则通过相交运算判断向量和是否相交;如果相交,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pr'.θx为pr'相对于Pψ中的内点pr随路段方向变化而累计的顺时针角度,pr'.θy为pr'相对于Pψ中的内点pr随路段方向变化而累计的逆时针角度,ps'.θx为ps'相对于Pψ中的内点ps随路段方向变化而累计的顺时针角度,ps'.θy为ps'相对于Pψ中的内点ps随路段方向变化而累计的逆时针角度。
可以理解的是,一条曲线如果要实现自相交,必须在顺时针方向或逆时针方向形成1个或多个环状区域,在相交点附近,曲线自相交的两条边的内点会在顺时针方向或逆时针方向形成超过360度的角度差,这将有利于快速检索相交点所在的区域。
以图6为例,已知向量角和计算向量角的差为:
如果则用更新值;
如果说明向量发生顺时针旋转,则pk'.θy=pk-1'.θy;
如果说明向量发生了逆时针旋转,则pk'.θx=pk-1'.θx。
以图7所示的自相交情况为例,当原始路段内点集出现大曲率的内凹(图7(a)所示)时,其形成的平行内点集会不可避免形成自交叉的现象(图7(b)所示),自交叉于T点和O点。按照路网拓宽形制的要求,要最大程度上扣除自相交的部分。在图8中,矩形框1为根据相交点T扣除的内点部分,矩形框2为根据相交点O扣除的内点部分。图9标记出了基于上述方法计算平行曲线各内点p'的顺时针旋转角度θx值,可以很明显地看出在图8中T点和O点附近内点集的顺时针角度差为378度。因此,可以通过将EPψ,d中的内点p'通过网格(Grid)操作映射到矩形网格中,同一个网格或相邻网格(意味着距离较近)的任意两个内点pr'和ps',如果||pr'.θx-ps'.θx||>360或者||pr'.θy-ps'.θy||>360,则通过相交运算判断向量和是否相交;如果相交,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
由于传统判断自相交的方法需要对内点序中的任意2个向量和(0≤r<n,0≤s<n,r≠s)进行复杂的线段相交性判断运算,具有O(N2)的计算复杂度,因此本方法大大降低了向量相交的计算量。
进一步地,为了避免对向量进行复杂的求交运算,在另一具体应用中,本实施例提出一种插值的方法,所述步骤404可以包括:
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,如果||pr'.θx-ps'.θx||>360或者||pr'.θy-ps'.θy||>360,则按照预设距离间隔对向量和进行线性插值,即按照预设距离间隔分别在向量和中插入多个虚拟内点;
(同样,可以将所述虚拟内点通过Grid操作映射到所述预设距离间隔的网格中)对于在向量中插入的任意一个虚拟内点pri”和在向量中插入任意一个虚拟内点psj”(即同一个网格或者相邻网格中的任意两个虚拟内点pri”和psj”),i=1,…,a,j=1,…,b a为在向量中插入的虚拟内点的数量,b为在向量中插入的虚拟内点的数量,如果||pri”.θx-psj”.θx||>360或者||pri”.θy-psj”.θy||>360,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pri”.θx=pr'.θx,pri”.θy=pr'.θy,psj”.θx=ps'.θx,psj”.θy=ps'.θy。
其中,所述预设距离间隔可以根据实际情况进行设置,本实施例并不对其进行限制,例如可以将所述预设距离间隔设置为1米。
本方法可以进一步将自相交运算的计算复杂度降为O(N),本方法以图7为例的计算结果如图10所示。
405、根据平行曲线与其对应的路段曲线的分段对应关系,对删除自相交区域内的所有内点后产生的缺失的路段进行还原。
在具体应用中,所述步骤405可以包括:
将中的内点基于其所属路段进行划分,建立平行曲线与其对应的路段曲线的分段对应关系,其中,中的内点继承其在Pψ中对应的内点的所属路段;
由于上述步骤404删除的内点包含了若干路段,对中的内点pr'到ps+1'的向量进行内插值,按照平行曲线与其对应的路段曲线的分段对应关系(即删除的内点所包含的路段的长度比例)对进行划分,划分后的每一个分段表达删除自相交区域内的所有内点后产生的缺失的路段中的一条路段。
本实施例的对电子地图路段进行定向拓宽的方法,通过获取目标路网的所有路段集,每个路段集包括拓扑相连的多个路段,提取每个路段集的内点序集,并根据其对每个路段集的路段曲线进行上行方向定向拓宽,获得每个路段曲线的平行曲线的内点序集,根据每个路段曲线的平行曲线的内点序集,判断每个路段曲线的平行曲线是否存在自相交情况,若存在则检测其自相交区域并删除该平行曲线的内点序集中自相交区域内的所有内点,根据平行曲线与其对应路段曲线的分段对应关系,对删除内点后产生的缺失的路段进行还原,由此,可以解决现有对电子地图路段进行拓宽的过程中缺失分段对应关系、不满足对自相交区域的检测及处理的实际需要、计算复杂度高和效率低下的问题,能够实现对电子地图路段的定向拓宽,生成了路段指定宽度的平行曲线,该平行曲线保留了与原始路段的分段对应关系,可以精准显示路况信息,满足了对自相交区域的检测及处理的实际需要,将计算复杂度由O(N2)降到O(N),降低了计算复杂度,提高了计算效率。本实施例所述方法可用于Buffer操作。
图11示出了本发明一实施例提供的对电子地图路段进行定向拓宽的装置的结构示意图,如图11所示,本实施例的对电子地图路段进行定向拓宽的装置,包括:获取模块111、提取模块112、定向拓宽模块113、自相交处理模块114和还原模块115;其中:
获取模块111,用于获取目标路网的所有路段集,其中每个路段集包括:拓扑相连的多个路段,每个路段集的形态为一条路段曲线;
提取模块112,用于提取每个路段集的内点序集;
定向拓宽模块113,用于根据每个路段集的内点序集,对每个路段集的路段曲线进行上行方向定向拓宽,获得每个路段曲线的平行曲线的内点序集;
自相交处理模块114,用于根据每个路段曲线的平行曲线的内点序集,判断每个路段曲线的平行曲线是否存在自相交情况,若存在,则检测该平行曲线的自相交区域,并删除该平行曲线的内点序集中位于所述自相交区域内的所有内点;
还原模块115,用于根据平行曲线与其对应的路段曲线的分段对应关系,对删除自相交区域内的所有内点后产生的缺失的路段进行还原。
在具体应用中,所述获取模块111可以根据目标路网R<N,L>(其中,N代表目标路网中的节点集合,L代表目标路网中的路段集合),形成一系列的路段集,每个路段集Ψ={ψ|ψ=<l1,l2,…,lm>,l1,…,lm∈L}中包含拓扑相连的若干路段,其形态是一条曲线,其中,m为L中路段的数量。
举例来说,图5是由路段l1、l2和l3构成的简单路网示意,其中l1是双向通行的道路,l2和l3是单向通行的道路,所述获取模块111可以简单地将该路网分解为5(b)和5(c)所示的两个路段集ψ1和ψ2,从而将问题简化为求路段集上行方向的平行拓宽曲线问题。
可以理解的是,本实施例采用路段集而非路段作为定向拓宽的基本单元,是因为这样能够更多地保留路段间的几何关系,从而使得定向拓宽后的曲线更为平滑和美观,也便于检测和处理自相交等异常情况。
在具体应用中,所述提取模块112,可具体用于
对于每个路段集ψ,按照路段集中路段的拓扑顺序,将各路段的所有内点按照预设顺序添加到该路段集的内点序集中,并删除所述内点序集中重复的内点,得到每个路段集的内点序集Pψ;
Pψ={pk|pk=<k,l,(pk.cx,pk.cy)>,l∈ψ,} (1)
其中,(pk.cx,pk.cy)为内点序集Pψ中内点pk的经纬度坐标,pk.cx为内点pk的经度坐标,pk.cy为内点pk的纬度坐标,k为内点pk在内点序集Pψ中的序号,k=1,…,n,n为内点序集Pψ中内点的数量,l为内点pk所属路段。
在具体应用中,所述定向拓宽模块113,可具体用于
对于每个路段集的内点序集Pψ中的任意一个内点pk(可参考图6),通过第一公式计算得到该内点pk与该内点对应的扩展点pk'的经纬度坐标;
根据每个路段集的内点序集中所有内点对应的扩展点的经纬度坐标,获取每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度;
根据每个路段集所有扩展点的经纬度坐标、每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度,获取每个路段曲线的平行曲线的内点序集EPψ,d;
EPψ,d={pk'|pk'=<k,l,(pk'.cx,pk'.cy),pk'.θx,pk'.θy>,p∈Pψ} (5)
其中,k为扩展点pk'继承内点pk的序号,l为扩展点pk'继承内点pk的所属路段,(pk'.cx,pk'.cy)为扩展点pk'的经纬度坐标,pk'.cx为扩展点pk'的经度坐标,pk'.cy为扩展点pk'的纬度坐标,pk'.θx为扩展点pk'相对于内点pk随路段方向变化而累计的顺时针角度,pk'.θy为扩展点pk'相对于内点pk随路段方向变化而累计的逆时针角度,d为预设的扩展点pk'到向量和的距离;
其中,所述第一公式为:
其中,为内点pk与扩展点pk'的向量角,该向量角是内点pk到扩展点pk'的向量与正北方向的顺时针夹角,是通过第二公式计算得到,len(pk,pk')是通过第三公式计算得到,所述第二公式为:
其中,为内点pk到其相邻内点pk+1的向量与正北方向的顺时针夹角,φ为向量和之间的夹角;在k=0或n时,φ=180度;
所述第三公式为:
len(pk,pk')=d/sin(φ/2) (4)。
在一具体应用中,所述自相交处理模块114,可具体用于
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,r为pr'在EPψ,d中的序号,s为ps'在EPψ,d中的序号,如果||pr'.θx-ps'.θx||>360或者||pr'.θy-ps'.θy||>360,则通过相交运算判断向量和是否相交;如果相交,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pr'.θx为pr'相对于Pψ中的内点pr随路段方向变化而累计的顺时针角度,pr'.θy为pr'相对于Pψ中的内点pr随路段方向变化而累计的逆时针角度,ps'.θx为ps'相对于Pψ中的内点ps随路段方向变化而累计的顺时针角度,ps'.θy为ps'相对于Pψ中的内点ps随路段方向变化而累计的逆时针角度。
以图6为例,已知向量角和计算向量角的差为:
如果则用更新值;
如果说明向量发生顺时针旋转,则pk'.θy=pk-1'.θy;
如果说明向量发生了逆时针旋转,则pk'.θx=pk-1'.θx。
以图7所示的自相交情况为例,当原始路段内点集出现大曲率的内凹(图7(a)所示)时,其形成的平行内点集会不可避免形成自交叉的现象(图7(b)所示),自交叉于T点和O点。按照路网拓宽形制的要求,要最大程度上扣除自相交的部分。在图8中,矩形框1为根据相交点T扣除的内点部分,矩形框2为根据相交点O扣除的内点部分。图9标记出了基于上述方法计算平行曲线各内点p'的顺时针旋转角度θx值,可以很明显地看出在图8中T点和O点附近内点集的顺时针角度差为378度。因此,所述自相交处理模块114可以通过将EPψ,d中的内点p'通过网格(Grid)操作映射到矩形网格中,同一个网格或相邻网格(意味着距离较近)的任意两个内点pr'和ps',如果||pr'.θx-ps'.θx||>360或者||pr'.θy-ps'.θy||>360,则通过相交运算判断向量和是否相交;如果相交,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
由于传统判断自相交的方法需要对内点序中的任意2个向量和(0≤r<n,0≤s<n,r≠s)进行复杂的线段相交性判断运算,具有O(N2)的计算复杂度,因此本模块大大降低了向量相交的计算量。
进一步地,为了避免对向量进行复杂的求交运算,在另一具体应用中,所述自相交处理模块114,可具体用于
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,如果||pr'.θx-ps'.θx||>360或者||pr'.θy-ps'.θy||>360,则按照预设距离间隔分别在向量和中插入多个虚拟内点;
(同样,可以将所述虚拟内点通过Grid操作映射到所述预设距离间隔的网格中)对于在向量中插入的任意一个虚拟内点pri”和在向量中插入任意一个虚拟内点psj”(即同一个网格或者相邻网格中的任意两个虚拟内点pri”和psj”),i=1,…,a,j=1,…,b a为在向量中插入的虚拟内点的数量,b为在向量中插入的虚拟内点的数量,如果||pri”.θx-psj”.θx||>360或者||pri”.θy-psj”.θy||>360,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pri”.θx=pr'.θx,pri”.θy=pr'.θy,psj”.θx=ps'.θx,psj”.θy=ps'.θy。
其中,所述预设距离间隔可以根据实际情况进行设置,本实施例并不对其进行限制,例如可以将所述预设距离间隔设置为1米。
本方法可以进一步将自相交运算的计算复杂度降为O(N),本模块以图7为例的计算结果如图10所示。
在具体应用中,所述还原模块115,可具体用于
将中的内点基于其所属路段进行划分,建立平行曲线与其对应的路段曲线的分段对应关系,其中,中的内点继承其在Pψ中对应的内点的所属路段;
由于上述自相交处理模块114删除的内点包含了若干路段,对中的内点pr'到ps+1'的向量进行内插值,按照平行曲线与其对应的路段曲线的分段对应关系(即删除的内点所包含的路段的长度比例)对进行划分,划分后的每一个分段表达删除自相交区域内的所有内点后产生的缺失的路段中的一条路段。
本实施例的对电子地图路段进行定向拓宽的装置,可以解决现有对电子地图路段进行拓宽的过程中缺失分段对应关系、不满足对自相交区域的检测及处理的实际需要、计算复杂度高和效率低下的问题,能够实现对电子地图路段的定向拓宽,生成了路段指定宽度的平行曲线,该平行曲线保留了与原始路段的分段对应关系,可以精准显示路况信息,满足了对自相交区域的检测及处理的实际需要,将计算复杂度由O(N2)降到O(N),降低了计算复杂度,提高了计算效率。本实施例所述方法可用于Buffer操作。
本实施例的对电子地图路段进行定向拓宽的装置,可以用于执行前述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。术语“上”、“下”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明中的具体含义。
本发明的说明书中,说明了大量具体细节。然而能够理解的是,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。类似地,应当理解,为了精简本发明公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释呈反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。本发明并不局限于任何单一的方面,也不局限于任何单一的实施例,也不局限于这些方面和/或实施例的任意组合和/或置换。而且,可以单独使用本发明的每个方面和/或实施例或者与一个或更多其他方面和/或其实施例结合使用。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。
Claims (10)
1.一种对电子地图路段进行定向拓宽的方法,其特征在于,包括:
获取目标路网的所有路段集,其中每个路段集包括:拓扑相连的多个路段,每个路段集的形态为一条路段曲线;
提取每个路段集的内点序集;
根据每个路段集的内点序集,对每个路段集的路段曲线进行上行方向定向拓宽,获得每个路段曲线的平行曲线的内点序集;
根据每个路段曲线的平行曲线的内点序集,判断每个路段曲线的平行曲线是否存在自相交情况,若存在,则检测该平行曲线的自相交区域,并删除该平行曲线的内点序集中位于所述自相交区域内的所有内点;
根据平行曲线与其对应的路段曲线的分段对应关系,对删除自相交区域内的所有内点后产生的缺失的路段进行还原。
2.根据权利要求1所述的方法,其特征在于,所述提取每个路段集的内点序集,包括:
对于每个路段集ψ,按照路段集中路段的拓扑顺序,将各路段的所有内点按照预设顺序添加到该路段集的内点序集中,并删除所述内点序集中重复的内点,得到每个路段集的内点序集Pψ;
Pψ={pk|pk=<k,l,(pk·cx,pk·cy)>,l∈ψ,},
其中,(pk·cx,pk·cy)为内点序集Pψ中内点pk的经纬度坐标,pk·cx为内点pk的经度坐标,pk·cy为内点pk的纬度坐标,k为内点pk在内点序集Pψ中的序号,k=1,…,n,n为内点序集Pψ中内点的数量,l为内点pk所属路段。
3.根据权利要求2所述的方法,其特征在于,所述根据每个路段集的内点序集,对每个路段集的路段曲线进行上行方向定向拓宽,获得每个路段曲线的平行曲线的内点序集,包括:
对于每个路段集的内点序集Pψ中的任意一个内点pk,通过第一公式计算得到该内点pk与该内点对应的扩展点pk'的经纬度坐标;
根据每个路段集的内点序集中所有内点对应的扩展点的经纬度坐标,获取每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度;
根据每个路段集所有扩展点的经纬度坐标、每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度,获取每个路段曲线的平行曲线的内点序集EPψ,d;
EPψ,d={pk'|pk'=<k,l,(pk'·cx,pk'·cy),pk'·θx,pk'·θy>,p∈Pψ}
其中,k为扩展点pk'继承内点pk的序号,l为扩展点pk'继承内点pk的所属路段,(pk'·cx,pk'·cy)为扩展点pk'的经纬度坐标,pk'·cx为扩展点pk'的经度坐标,pk'·cy为扩展点pk'的纬度坐标,pk'·θx为扩展点pk'相对于内点pk随路段方向变化而累计的顺时针角度,pk'·θy为扩展点pk'相对于内点pk随路段方向变化而累计的逆时针角度,d为预设的扩展点pk'到向量和的距离;
其中,所述第一公式为:
其中,为内点pk与扩展点pk'的向量角,该向量角是内点pk到扩展点pk'的向量与正北方向的顺时针夹角,是通过第二公式计算得到,len(pk,pk')是通过第三公式计算得到,所述第二公式为:
其中,为内点pk到其相邻内点pk+1的向量与正北方向的顺时针夹角,φ为向量和之间的夹角;在k=0或n时,φ=180度;
所述第三公式为:
len(pk,pk')=d/sin(φ/2)。
4.根据权利要求3所述的方法,其特征在于,所述检测该平行曲线的自相交区域,并删除该平行曲线的内点序集中位于所述自相交区域内的所有内点,包括:
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,r为pr'在EPψ,d中的序号,s为ps'在EPψ,d中的序号,如果||pr'·θx-ps'·θx||>360或者||pr'·θy-ps'·θy||>360,则通过相交运算判断向量和是否相交;如果相交,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pr'·θx为pr'相对于Pψ中的内点pr随路段方向变化而累计的顺时针角度,pr'·θy为pr'相对于Pψ中的内点pr随路段方向变化而累计的逆时针角度,ps'·θx为ps'相对于Pψ中的内点ps随路段方向变化而累计的顺时针角度,ps'·θy为ps'相对于Pψ中的内点ps随路段方向变化而累计的逆时针角度;
或者,
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,如果||pr'·θx-ps'·θx||>360或者||pr'·θy-ps'·θy||>360,则按照预设距离间隔分别在向量和中插入多个虚拟内点;
对于在向量中插入的任意一个虚拟内点pri”和在向量中插入任意一个虚拟内点psj”,i=1,…,a,j=1,…,b,a为在向量中插入的虚拟内点的数量,b为在向量中插入的虚拟内点的数量,如果||pri”·θx-psj”·θx||>360或者||pri”·θy-psj”·θy||>360,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pri”·θx=pr'·θx,pri”·θy=pr'·θy,psj”·θx=ps'·θx,psj”·θy=ps'·θy。
5.根据权利要求4所述的方法,其特征在于,所述根据平行曲线与其对应的路段曲线的分段对应关系,对删除自相交区域内的所有内点后产生的缺失的路段进行还原,包括:
将中的内点基于其所属路段进行划分,建立平行曲线与其对应的路段曲线的分段对应关系,其中,中的内点继承其在Pψ中对应的内点的所属路段;
对中的内点pr'到ps+1'的向量进行内插值,按照平行曲线与其对应的路段曲线的分段对应关系对进行划分,划分后的每一个分段表达删除自相交区域内的所有内点后产生的缺失的路段中的一条路段。
6.一种对电子地图路段进行定向拓宽的装置,其特征在于,包括:
获取模块,用于获取目标路网的所有路段集,其中每个路段集包括:拓扑相连的多个路段,每个路段集的形态为一条路段曲线;
提取模块,用于提取每个路段集的内点序集;
定向拓宽模块,用于根据每个路段集的内点序集,对每个路段集的路段曲线进行上行方向定向拓宽,获得每个路段曲线的平行曲线的内点序集;
自相交处理模块,用于根据每个路段曲线的平行曲线的内点序集,判断每个路段曲线的平行曲线是否存在自相交情况,若存在,则检测该平行曲线的自相交区域,并删除该平行曲线的内点序集中位于所述自相交区域内的所有内点;
还原模块,用于根据平行曲线与其对应的路段曲线的分段对应关系,对删除自相交区域内的所有内点后产生的缺失的路段进行还原。
7.根据权利要求6所述的装置,其特征在于,所述提取模块,具体用于
对于每个路段集ψ,按照路段集中路段的拓扑顺序,将各路段的所有内点按照预设顺序添加到该路段集的内点序集中,并删除所述内点序集中重复的内点,得到每个路段集的内点序集Pψ;
Pψ={pk|pk=<k,l,(pk·cx,pk·cy)>,l∈ψ,},
其中,(pk·cx,pk·cy)为内点序集Pψ中内点pk的经纬度坐标,pk·cx为内点pk的经度坐标,pk·cy为内点pk的纬度坐标,k为内点pk在内点序集Pψ中的序号,k=1,…,n,n为内点序集Pψ中内点的数量,l为内点pk所属路段。
8.根据权利要求7所述的装置,其特征在于,所述定向拓宽模块,具体用于
对于每个路段集的内点序集Pψ中的任意一个内点pk,通过第一公式计算得到该内点pk与该内点对应的扩展点pk'的经纬度坐标;
根据每个路段集的内点序集中所有内点对应的扩展点的经纬度坐标,获取每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度;
根据每个路段集所有扩展点的经纬度坐标、每个路段集所有扩展点相对于其对应的内点随路段方向变化而累计的顺时针角度和逆时针角度,获取每个路段曲线的平行曲线的内点序集EPψ,d;
EPψ,d={pk'|pk'=<k,l,(pk'·cx,pk'·cy),pk'·θx,pk'·θy>,p∈Pψ}
其中,k为扩展点pk'继承内点pk的序号,l为扩展点pk'继承内点pk的所属路段,(pk'·cx,pk'·cy)为扩展点pk'的经纬度坐标,pk'·cx为扩展点pk'的经度坐标,pk'·cy为扩展点pk'的纬度坐标,pk'·θx为扩展点pk'相对于内点pk随路段方向变化而累计的顺时针角度,pk'·θy为扩展点pk'相对于内点pk随路段方向变化而累计的逆时针角度,d为预设的扩展点pk'到向量和的距离;
其中,所述第一公式为:
其中,为内点pk与扩展点pk'的向量角,该向量角是内点pk到扩展点pk'的向量与正北方向的顺时针夹角,是通过第二公式计算得到,len(pk,pk')是通过第三公式计算得到,所述第二公式为:
其中,为内点pk到其相邻内点pk+1的向量与正北方向的顺时针夹角,φ为向量和之间的夹角;在k=0或n时,φ=180度;
所述第三公式为:
len(pk,pk')=d/sin(φ/2)。
9.根据权利要求8所述的装置,其特征在于,所述自相交处理模块,具体用于
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,r为pr'在EPψ,d中的序号,s为ps'在EPψ,d中的序号,如果||pr'·θx-ps'·θx||>360或者||pr'·θy-ps'·θy||>360,则通过相交运算判断向量和是否相交;如果相交,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pr'·θx为pr'相对于Pψ中的内点pr随路段方向变化而累计的顺时针角度,pr'·θy为pr'相对于Pψ中的内点pr随路段方向变化而累计的逆时针角度,ps'·θx为ps'相对于Pψ中的内点ps随路段方向变化而累计的顺时针角度,ps'·θy为ps'相对于Pψ中的内点ps随路段方向变化而累计的逆时针角度;
或者,
对于每个路段曲线的平行曲线的内点序集EPψ,d中的任意两个内点pr'和ps',0≤r<n,0≤s<n,r≠s,如果||pr'·θx-ps'·θx||>360或者||pr'·θy-ps'·θy||>360,则按照预设距离间隔分别在向量和中插入多个虚拟内点;
对于在向量中插入的任意一个虚拟内点pri”和在向量中插入任意一个虚拟内点psj”,i=1,…,a,j=1,…,b,a为在向量中插入的虚拟内点的数量,b为在向量中插入的虚拟内点的数量,如果||pri”·θx-psj”·θx||>360或者||pri”·θy-psj”·θy||>360,则将EPψ,d中的序号从r+1到s的所有内点删除,得到内点序集
其中,pri”·θx=pr'·θx,pri”·θy=pr'·θy,psj”·θx=ps'·θx,psj”·θy=ps'·θy。
10.根据权利要求9所述的装置,其特征在于,所述还原模块,具体用于
将中的内点基于其所属路段进行划分,建立平行曲线与其对应的路段曲线的分段对应关系,其中,中的内点继承其在Pψ中对应的内点的所属路段;
对中的内点pr'到ps+1'的向量进行内插值,按照平行曲线与其对应的路段曲线的分段对应关系对进行划分,划分后的每一个分段表达删除自相交区域内的所有内点后产生的缺失的路段中的一条路段。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611056687.6A CN106682084B (zh) | 2016-11-25 | 2016-11-25 | 对电子地图路段进行定向拓宽的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611056687.6A CN106682084B (zh) | 2016-11-25 | 2016-11-25 | 对电子地图路段进行定向拓宽的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106682084A true CN106682084A (zh) | 2017-05-17 |
CN106682084B CN106682084B (zh) | 2019-10-11 |
Family
ID=58867240
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611056687.6A Active CN106682084B (zh) | 2016-11-25 | 2016-11-25 | 对电子地图路段进行定向拓宽的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106682084B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108053679A (zh) * | 2017-12-05 | 2018-05-18 | 北京千方城市信息科技有限公司 | 一种基于众包数据的停车位引导方法及系统 |
CN108981734A (zh) * | 2018-05-17 | 2018-12-11 | 北京三快在线科技有限公司 | 电子地图道路拓展方法、装置、电子设备及存储介质 |
CN113375674A (zh) * | 2021-06-16 | 2021-09-10 | 上海联适导航技术股份有限公司 | 一种曲线路径生成方法、装置、设备及可读存储介质 |
CN113554044A (zh) * | 2020-04-23 | 2021-10-26 | 百度在线网络技术(北京)有限公司 | 步行道路宽度的获取方法、装置、设备以及存储介质 |
CN114677843A (zh) * | 2022-02-17 | 2022-06-28 | 阿里云计算有限公司 | 路况信息的处理方法、装置、系统及电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101162154A (zh) * | 2007-11-06 | 2008-04-16 | 北京航空航天大学 | 一种基于虚拟节点的道路网络模型 |
CN103177034A (zh) * | 2011-12-23 | 2013-06-26 | 上海优途信息科技有限公司 | 一种路网中平行线的生成方法及装置 |
CN103512581A (zh) * | 2012-06-28 | 2014-01-15 | 北京搜狗科技发展有限公司 | 一种路径规划方法和装置 |
CN103823951A (zh) * | 2014-03-21 | 2014-05-28 | 武汉大学 | 一种量化路网特征及其土地利用效应的方法 |
-
2016
- 2016-11-25 CN CN201611056687.6A patent/CN106682084B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101162154A (zh) * | 2007-11-06 | 2008-04-16 | 北京航空航天大学 | 一种基于虚拟节点的道路网络模型 |
CN103177034A (zh) * | 2011-12-23 | 2013-06-26 | 上海优途信息科技有限公司 | 一种路网中平行线的生成方法及装置 |
CN103512581A (zh) * | 2012-06-28 | 2014-01-15 | 北京搜狗科技发展有限公司 | 一种路径规划方法和装置 |
CN103823951A (zh) * | 2014-03-21 | 2014-05-28 | 武汉大学 | 一种量化路网特征及其土地利用效应的方法 |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108053679A (zh) * | 2017-12-05 | 2018-05-18 | 北京千方城市信息科技有限公司 | 一种基于众包数据的停车位引导方法及系统 |
CN108981734A (zh) * | 2018-05-17 | 2018-12-11 | 北京三快在线科技有限公司 | 电子地图道路拓展方法、装置、电子设备及存储介质 |
CN113554044A (zh) * | 2020-04-23 | 2021-10-26 | 百度在线网络技术(北京)有限公司 | 步行道路宽度的获取方法、装置、设备以及存储介质 |
CN113554044B (zh) * | 2020-04-23 | 2023-08-08 | 百度在线网络技术(北京)有限公司 | 步行道路宽度的获取方法、装置、设备以及存储介质 |
CN113375674A (zh) * | 2021-06-16 | 2021-09-10 | 上海联适导航技术股份有限公司 | 一种曲线路径生成方法、装置、设备及可读存储介质 |
CN113375674B (zh) * | 2021-06-16 | 2024-02-27 | 上海联适导航技术股份有限公司 | 一种曲线路径生成方法、装置、设备及可读存储介质 |
CN114677843A (zh) * | 2022-02-17 | 2022-06-28 | 阿里云计算有限公司 | 路况信息的处理方法、装置、系统及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN106682084B (zh) | 2019-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106682084A (zh) | 对电子地图路段进行定向拓宽的方法及装置 | |
KR102106359B1 (ko) | 전자 지도 중의 교차로를 인식하기 위한 방법 및 장치 | |
CN110220521B (zh) | 一种高精地图的生成方法和装置 | |
JP5661782B2 (ja) | Gps軌跡を用いた付加的マップ生成、改良および拡張 | |
US9489754B2 (en) | Annotation of map geometry vertices | |
WO2017020466A1 (zh) | 基于激光点云的城市道路识别方法、装置、存储介质及设备 | |
CN105222793B (zh) | 一种基于矢量地图数据模型的城市层次化区域划分方法 | |
CN110111574B (zh) | 一种基于流量树分析的城市交通不平衡评价方法 | |
CN104866670B (zh) | 基于gps时空轨迹的路网拓扑变化自动检测方法及系统 | |
CN103699654B (zh) | 一种跨比例尺矢量地图水网数据同名目标匹配方法 | |
CN107679498A (zh) | 一种机载激光点云城区道路识别方法 | |
CN106409129B (zh) | 路况绘制方法及装置 | |
CN104406590B (zh) | 一种基于道路等级的最短路径规划方法 | |
CN111062958A (zh) | 一种城市道路要素提取方法 | |
CN103500278B (zh) | 基于最短路径算法的路径相似台风分析方法 | |
Andreev et al. | Towards realistic pedestrian route planning | |
CN107071721A (zh) | 基于手机定位数据的停留点提取方法 | |
Li et al. | Exploring multiple crowdsourced data to learn deep convolutional neural networks for road extraction | |
CN101776457A (zh) | 一种导航方法和装置 | |
CN106910218B (zh) | 基于大区域栅格数字高程模型的地表表面面积计算方法 | |
Zhu et al. | Extraction of city roads through shadow path reconstruction using laser data | |
CN101526366A (zh) | 地图数据处理方法及导航设备 | |
CN113742437A (zh) | 地图更新方法、装置、电子设备和存储介质 | |
CN109741451A (zh) | 一种基于地形图构建三维地表bim模型的系统 | |
CN108898862A (zh) | 红绿灯路口的确定方法、装置及电子设备 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |