地理信息系统的地图生成方法和系统的制作方法

文档序号:9453795阅读:716来源:国知局
地理信息系统的地图生成方法和系统的制作方法
【技术领域】
[0001] 本发明涉及地理信息系统领域,尤其涉及一种地理信息系统的地图生成方法和系 统。
【背景技术】
[0002] 近年来,随着地理信息系统及其图形技术的快速发展,作为地理信息系统中的重 要组成部分,道路及其附近的物体越来越多地被展示在图形界面上。然而,由于测量成本、 分次测量、测量遗漏等原因,地理信息系统中的道路测量点往往比较稀疏,而且道路周边物 体的坐标信息也经常出现不完整的现象,严重影响相关物体在地图上标注的准确性。而重 新组织大规模的重新测量不仅会显著升高地理信息系统的成本,还有可能对相关地点的交 通带来安全隐患。
[0003]目前在地理信息系统中采用较多的是直接使用测量点标注道路,对于道路附近的 其他物体,根据线性插值和坐标平移计算其坐标数据。该方法无法充分利用已知数据中蕴 含的信息,难以保证坐标计算的准确性,导致地理信息系统的数据记录和图形绘制出现较 大的误差。

【发明内容】

[0004] 基于此,有必要提供一种能够充分利用已知数据的信息精确计算坐标等信息的地 理信息系统的地图生成方法。
[0005] -种地理信息系统的地图生成方法,包括以下步骤:
[0006] 获取地理信息系统中道路的已知坐标点的信息和位于所述道路两侧的物体的信 息;所述道路两侧的物体的信息包括物体的类型;
[0007] 根据所获取的所述道路的已知坐标点的信息,采用贝塞尔曲线对所述道路进行插 值平滑处理,计算所述道路的贝塞尔插值点的信息;
[0008] 根据所获取的所述道路两侧的物体的信息及所述道路的已知坐标点的信息和贝 塞尔插值点的信息,计算所述道路两侧的物体的坐标;
[0009] 输出地图,所述地图中包括经过所述插值平滑处理的所述道路的信息、所述道路 两侧的物体的类型和计算出的所述道路两侧的物体的坐标;所述经过所述插值平滑处理的 所述道路的信息包括所述道路的已知坐标点的信息和贝塞尔插值点的信息。
[0010] 在其中一个实施例中,所述道路的已知坐标点的信息包括所述道路的已知坐标点 的坐标和里程数;
[0011] 所述位于所述道路两侧的物体的信息包括所述物体的每个已知坐标点的里程数 和所述物体的每个已知坐标点到对应的道路的距离和所述物体的类型;
[0012] 所述贝塞尔插值点的信息包括所述贝塞尔插值点的坐标和里程数。
[0013] 在其中一个实施例中,所述道路的已知坐标点的坐标为平面直角坐标或经炜度坐 标;
[0014] 所述贝塞尔插值点的坐标为平面直角坐标或经炜度坐标。
[0015] 在其中一个实施例中,所述根据所获取的所述道路的已知坐标点的信息,采用贝 塞尔曲线计算所述道路的贝塞尔插值点的信息,对所述道路进行插值平滑处理步骤包括:
[0016] 根据所获取的所述道路的已知坐标点的信息,计算所述道路的贝塞尔控制点的坐 标;
[0017] 根据计算出的所述贝塞尔控制点计算所述道路的贝塞尔插值点的坐标和里程数。
[0018] 在其中一个实施例中,所述根据所获取的所述道路的已知坐标点的信息,计算所 述道路的贝塞尔控制点的坐标步骤包括:
[0019] 通过公式:
[0020]
[0021]
[0022]
[0023] rfii;!;~1计算所述道路的任意三个相邻的已知坐标点的两个中点 的坐标;其中,(x[i-l],y[i-l])、(X[i],y[i])、(X[i+l],y[i+l])分别为所述道路中的一 个道路上第i-1个、第i个、第i+1个已知坐标点的坐标,(xmi(U[i],ymi(U[i])为第i-1个、 第i个已知坐标点的中点的坐标;( Xnid 2[i],ynid 2[i])为第i个和第i+1个已知坐标点的 中点的坐标;
[0024] 通过公式:
[0027] 计算在以所述两个中点为端点构成的第一线段上,按照所述任意三个相邻的已知 坐标点构成的两个第二线段的长度比例分割所述第一线段的分割点坐标;其中, Xnild[i]和 yMd[i]为所述分害U点的坐标;
[0028] 按照所述分割点到与所述分割点对应的所述已知坐标点的路径,将以所述第一线 段平移,并按照贝塞尔控制系数k_&al,以与所述分割点对应的所述已知坐标点为中心对所 述第一线段进行缩放,得到所述第一线段缩放后的端点坐标为:
[0029] xcontrall[i] = x[i] + (xnid_1[i]-xnid[i]) ? kcontral
[0030] ycontraU[i] = y[i] + (ynildj[i]-ynid[i]) * kcontral;
[0031] xcontral-2[i] = x[i] + (xnid-2[i]-xnid[i]) ? kcontral
[0032] ycontral-2[i] = y[i] + (ynid-2[i]_ynid[i]) ? kcontral
[0033] 其中,(xrantraU[i],yrantraU[i])和(xOTntral2[i],yrantral2[i])为位于所述任意三个 相邻的已知坐标点之间的所述贝塞尔控制点的坐标;
[0034] 计算出所述道路的所有所述贝塞尔控制点。
[0035] 在其中一个实施例中,位于所述道路的起点已知坐标点与所述起点已知坐标点相 邻的已知坐标点之间的所述贝塞尔插值点的坐标,及所述道路的终点已知坐标点与所述终 点已知坐标点相邻的已知坐标点之间的所述贝塞尔插值点的坐标为:
[0040] 其中,j= 1,......,nbf;ziCT-l,np为所述道路的已知坐标点的数量,nbf;ziCT为所述 道路的任意两个相邻的已知坐标点之间的所述贝塞尔插值点的数量;
[0041] 位于所述道路的其他已知坐标点之间的各个所述贝塞尔插值点的坐标为:
[0042]
[0043]
[0044] 其中,j=l,..... * ? -^-bezier^? -^bezier[i] [j]、ytezlCT[i] [j]为所述道路的第i个线 段的第j个所述贝塞尔插值点的坐标,且所述道路的任意两个相邻的已知坐标点之间的所 述道路为一个所述线段。
[0045] 在其中一个实施例中,所述道路的各个贝塞尔插值点的里程数为:
[0046]
[0047] 其中,ltezlCT[i] [j]为所述道路的第i个线段的第j个所述贝塞尔插值点的坐标, 且所述道路的任意两个相邻的已知坐标点之间的所述道路为一个所述线段,1 [i]为所述道 路的第i个已知坐标点的里程数,1 [i+1]为所述道路的第i+1个已知坐标点的里程数,坐标 为(xbezlCT[i] [j],ytezlCT[i] [j])的所述贝塞尔插值点位于各个所述道路上第i个已知坐标 点和第i+1个已知坐标点之间,sunii为所述道路的任意两个相邻已知坐标点的距离,sum^ 为所述道路的第i个已知坐标点到坐标为(xtezlCT[i] [j],ytezlCT[i] [j])的贝塞尔插值点之 间的距富总和,日
[0048]
[0049]
[0050] 11^_为所述道路的两个相邻的已知坐标点之间的所述贝塞尔插值点的数量,j= 1'......? ^bezier10
[0051] 在其中一个实施例中,若所述道路两侧的物体的类型为点状物体,所述根据所获 取的所述道路两侧的物体的信息及经过所述插值平滑处理后的所述道路的已知坐标点的 信息和贝塞尔插值点的信息,计算所述道路两侧的物体的坐标步骤包括:
[0052] 计算所述点状物体在经过所述插值平滑处理后的道路上的投影点的坐标;
[0053] 根据计算出的所述投影点的坐标计算所述点状物体的实际坐标。
[0054] 在其中一个实施例中,将所述点状物体的里程数与所述道路上的已知坐标点的里 程数和各个所述贝塞尔插值点的里程数对比:
[0055] 若所述点状物体的里程数与所述道路上的已知坐标点和各个所述贝塞尔插值点 中的一个已知点的里程数相等,则所述点状物体在经过所述插值平滑处理后的道路上的投 影点的坐标为所述已知点的坐标;
[0056] 否则,通过以下公式计算所述点状物体在经过所述插值平滑处理后的道路上的投 影点的坐标:
[0057]
[0058] 其中,/L为所述点状物体的里程数,G位于两个所述已知点的里程数Hi]和 r[i+l]之间,两个所述已知点的坐标分别为(X*[i],/[i])和(x*[i+l],/[i+l]),所述已 知点为所述道路上的已知坐标点或与所述道路对应的各个所述贝塞尔插值点。
[0059] 在其中一个实施例中,若所述点状物体的里程数等于经过所述插值平滑处理后的 所述道路的起点的里程数,则所述点状物体的实际坐标为:
[0060]
[0061] 若所述点状物体的里程数等于经过所述插值平滑处理后的所述道路的终点的里 程数,则所述点状物体的实际坐标为:
[0062]
[0063] 若所述点状物体的里程数等于除了所述道路的起点和终点外的一个所述已知点 的里程数,则所述点状物体的实际坐标为:
[0064]
[0065] 若所述点状物体的里程数位于两个相邻的所述已知点的里程
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1