CN103106281A - 一种电子海图位置点数据简化方法和系统 - Google Patents
一种电子海图位置点数据简化方法和系统 Download PDFInfo
- Publication number
- CN103106281A CN103106281A CN2013100576596A CN201310057659A CN103106281A CN 103106281 A CN103106281 A CN 103106281A CN 2013100576596 A CN2013100576596 A CN 2013100576596A CN 201310057659 A CN201310057659 A CN 201310057659A CN 103106281 A CN103106281 A CN 103106281A
- Authority
- CN
- China
- Prior art keywords
- longitude
- latitude
- value
- reference point
- point
- 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.)
- Pending
Links
Images
Landscapes
- Navigation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种电子海图位置点数据简化方法和系统,包括以下步骤或模块:在源海图文件中寻找位置点经纬度的最大和最小值;设定参考点,包括设定海图左下角为参考点或者设定海图中心点为参考点;对源海图文件中所有位置点数据求得相对参考点的相对值,包括投影坐标相对值和经纬度相对值,将相对值记入系统海图文件SENC。本发明减少了表示位置点数据的字节数,可以既不降低数据精度又减少系统海图文件的位置点数据量。并且,在形成系统海图文件的同时,完成所有位置点的投影计算,使显示电子海图时省却投影计算,有助于提高电子海图的显示速度。
Description
技术领域
本发明涉及一种电子海图位置点数据表示方法,尤其涉及一种电子海图位置点数据简化的表示方法和系统,属于信息处理技术领域。
背景技术
电子海图系统(ECS)和电子海图显示与信息系统(ECDIS)的功能之一是显示电子海图,其数据来源于电子航海图(ENC)文件。位置点数据是电子航海图文件中空间记录里表达经纬度的数据。电子海图显示系统通常将电子航海图(ENC)作为源海图文件读入,并处理形成系统海图文件(SENC)存入系统硬盘,以后就应用该系统海图文件来显示电子海图。由于电子航海图中位置点数据一般以4个字节表示,通常形成的系统海图文件中位置点数据也以相同字节数表示,而位置点数量众多,因此大量的数据读盘和计算操作导致切换显示电子海图的速度不快。
授权公告号为CN101726292B的中国专利《一种提高电子海图客户端上船舶运动轨迹显示速度的方法》公开的是,将电子海图显示比例尺划分为不同层次并分别预设数据压缩阈值,利用矢量数据压缩方法,对船舶运动轨迹中每个位置点进行显示比例尺层次标记:比例尺越大,对应的船舶运动轨迹点越多;客户端仅从服务端下载位于客户端海图显示地理范围或适当放大范围内且与客户端海图显示比例尺相对应的船舶运动轨迹点数据,并进行显示,以此减少客户端船舶轨迹数据的下载进而提高显示速度。该专利没有涉及服务端和客户端的电子海图本身的数据处理和显示,其与电子海图显示比例尺相关的减少客户端船舶轨迹数据的下载进而提高客户端显示速度的方法,也无法应用于提高服务端和客户端电子海图本身的显示速度。
发明内容
本发明的一个目的是提供一种电子海图位置点数据简化方法,另一个目的是提供一种电子海图位置点数据简化的系统,通过减少系统海图文件的位置点数据量和显示时的计算量,提高电子海图的显示速度。
为了达到上述目的,本发明的一个技术方案是提供了一种电子海图位置点数据简化方法,其特征在于,包括以下步骤:
步骤1、寻找位置点经纬度的最大和最小值:从源海图图幅范围得知其最大值和最小值,或者从源海图文件中找出位置点经纬度的最大值和最小值,分别记为经度最大值Lmax、经度最小值Lmin、纬度最大值Bmax和纬度最小值Bmin;
步骤2、设定参考点,包括:
步骤2.1、求取参考点的经度值Lc及纬度值Bc:
以海图的经度最小值Lmin和纬度最小值Bmin为参考点,即:
Lc=Lmin;
Bc=Bmin;
或者,以海图的中心点为参考点,即:
Lc=(Lmax+Lmin)/2;
Bc=(Bmax+Bmin)/2;
步骤2.2、对参考点的经度值Lc及纬度值Bc使用公式:
Xc=x(Lc,Bc);
Yc=y(Lc,Bc):
式中:函数x和函数y是用经度值及纬度值求投影坐标的投影算法,Xc和Yc是参考点的经度值Lc及纬度值Bc在该投影算法下的横坐标及纵坐标;将Xc和Yc记入投影坐标相对参考点表示的系统海图文件;
步骤3、求位置点坐标相对值,包括:对源海图文件中所有位置点,使用公式:
Xxi=x(Li,Bi)-Xc;
Yxi=y(Li,Bi)-Yc;
式中:函数x和函数y是与步骤2.2中相同的用经纬度值求投影坐标的投影算法,Li及Bi分别为第i个位置点的经度值及纬度值,x(Li,Bi)和y(Li,Bi)是第i个位置点在该投影算法下的横坐标和纵坐标,Xxi和Yxi为第i个位置点相对于参考点的横坐标相对值及纵坐标相对值;分别将Xxi和Yxi记入投影坐标相对参考点表示的系统海图文件。
优选地,在所述步骤2中,还包括:将参考点的经度值Lc及纬度值Bc记入经纬度相对参考点表示的系统海图文件;
在所述步骤3中,还包括求位置点经纬度相对值操作:对源海图文件中所有位置点使用公式:
Lxi=Li-Lc;
Bxi=Bi-Bc;
式中:Li和Bi为第i个位置点的经度值和纬度值,Lxi和Bxi为第i个位置点相对于参考点的经度相对值和纬度相对值;分别将Lxi和Bxi记入经纬度相对参考点表示的系统海图文件。
本发明的另一个技术方案是提供了一种电子海图位置点数据简化系统,其特征在于:包括以下模块并依次串连:
寻找位置点经纬度最大和最小值模块:从源海图图幅范围得知其最大值和最小值,或者从源海图文件中找出位置点经纬度的最大值和最小值,分别记为经度最大值Lmax、经度最小值Lmin、纬度最大值Bmax和纬度最小值Bmin;
设定参考点模块,功能包括:以海图的经度最小值Lmin和纬度最小值Bmin为参考点,即:
参考点的经度Lc=Lmin;
参考点的纬度Bc=Bmin;
或者,以海图的中心点为参考点,即:
参考点的经度Lc=(Lmax+Lmin)/2;
参考点的纬度Bc=(Bmax+Bmin)/2;
对参考点经纬度值实施:
Xc=x(Lc,Bc);
Yc=y(Lc,Bc);
式中:函数x和函数y是用经纬度值求投影坐标的投影算法,Xc和Yc是参考点的经度Lc及纬度Bc在该投影算法下的横坐标及纵坐标;将Xc和Yc记入投影坐标相对参考点表示的系统海图文件;
求位置点坐标相对值模块,功能包括:对源海图文件中所有位置点,实施:
Xxi=x(Li,Bi)-Xc;
Yxi=y(Li,Bi)-Yc;
式中:Li及Bi分别为第i个位置点的经度值及纬度值,x(Li,Bi)和y(Li,Bi)是第i个位置点在投影算法下的横坐标及纵坐标,Xxi和Yxi为第i个位置点相对于参考点的横坐标相对值及纵坐标相对值;分别将Xxi和Yxi记入投影坐标相对参考点表示的系统海图文件。
优选地,所述求位置点坐标相对值模块还连接有求位置点经纬度相对值模块,功能包括:将参考点的经度Lc及纬度Bc记入经纬度相对参考点表示的系统海图文件;
对源海图文件中所有位置点实施:
Lxi=Li-Lc;
Bxi=Bi-Bc;
式中:Li和Bi为第i个位置点的经度值和纬度值,Lxi和Bxi为第i个位置点相对于参考点的经度相对值和纬度相对值;分别将Lxi和Bxi记入经纬度相对参考点表示的系统海图文件。
本发明对比现有技术有如下的有益效果:本发明通过对电子海图位置点数据求相对于参考点的相对值的算法,减少了表示位置点数据的字节数,可以既不降低数据精度又减少系统海图文件的位置点数据量。并且,在形成系统海图文件SENC的同时,完成所有位置点的投影计算,使显示电子海图时省却投影计算。这些都有助于提高电子海图的显示速度。
附图说明
图1示出了本发明的电子海图位置点数据简化方法的实施例的流程图;
图2示出了本发明的电子海图位置点数据简化系统的实施例的结构图。
具体实施方式
为使本发明更明显易懂,兹以优选实施例,并配合附图作详细说明如下。应注意,以下实施例是提供给本领域普通技术人员来实现和使用本发明的,但并非用以限定本发明,任何不脱离本发明的精神和范围所作的修改,仍包括在本发明的专利保护范围内。本发明的保护范围以权利要求书所界定的创新性特征的最大范围为准。
电子海图位置点数据简化方法的实施例
目前电子航海图(ENC)通常是由权威机构发布的数据文件,包含众多位置点的表达经度和纬度的数据,每个经度或纬度数据都由4个字节表示。如表1所示,是从电子航海图文件(ENC)之一CN540477(上海港黄浦江杨树浦锚地及附近区域,图号40477,1∶4000,更新日期2008-2-27,上海海事局发布)中选出的6个位置点数据,表中LA和LO是ENC文件中的原值,而纬度B和经度L是LA和LO分别除以单位值得到的。
表1:CN540477电子航海图文件中的6个位置点数据(单位:1.1008517)
序号 | LA | LO | 纬度B | 经度L | 备注 |
1 | 343979461 | 1337736638 | 312466666 | 1215183333 | 最小纬度、经度 |
2 | 344205748 | 1338015114 | 312672222 | 1215436297 | 最大纬度 |
3 | 344112581 | 1338128052 | 312587591 | 1215538888 | 最大经度 |
4 | 344060991 | 1337924480 | 312540727 | 1215353966 | |
5 | 344145589 | 1337874101 | 312617575 | 1215308202 | |
6 | 343998503 | 1338056254 | 312483964 | 1215473668 |
电子海图显示系统通常将电子航海图(ENC)作为源海图文件读入,并处理形成系统海图文件(SENC)存入系统硬盘,以后就应用该系统海图文件来显示电子海图。如图1所示,为本发明的电子海图位置点数据简化方法的实施例的流程图。其实现方法之一是使用计算机加编写计算机程序,在读入电子航海图(ENC)处理形成系统海图文件(SENC)时实现。请参见图1,本实施例的方法的各个步骤详述如下。
步骤S10:寻找位置点经纬度的最大和最小值:从海图目录中公布的该海图的图幅范围得知其最大值和最小值,或者对ENC文件中所有位置点的经度和纬度值进行比较,找出它们的最大和最小值,也可以从ENC文件中M_COVR类元物标所涉及的位置点的经度和纬度值中找出它们的最大和最小值,分别记为Lmax、Lmin、Bmax和Bmin。
若对CN540477实施,就得到Bmin=312466666,Lmin=1215183333,Bmax=312672222,Lmax=1215538888,参见表1。
步骤S20:设定参考点,一种是以海图的Lmin和Bmin为左下角参考点,即使用公式:
Lc=Lmin;
Bc=Bmin;
求得参考点经度值Lc和纬度值Bc。
若对CN540477实施,即:Lc=1215183333,Bc=312466666。
或者,以海图的中心点为参考点,即使用公式:
Lc=(Lmax+Lmin)/2;
Bc=(Bmax+Bmin)/2;
求得参考点经度值Lc和纬度值Bc。
若对CN540477实施,即:Lc=1215361110,Bc=312569444。
当然也可以用其他方法设定参考点,其效果基本相同。
可在输出的系统海图文件(SENC)中设立标志,例如:1表示设定海图左下角为参考点,2表示设定海图中心点为参考点。并且将参考点经度值Lc和纬度值Bc记入SENC文件,以便系统以后根据Lc、Bc和各位置点相对值恢复各位置点的经纬度值。
步骤S30:求位置点经纬度相对值,即对ENC文件中所有位置点,使用公式:
Lxi=Li-Lc;
Bxi=Bi-Bc;
式中:Li和Bi为第i个位置点的经度值和纬度值,Lc和Bc为参考点经纬度值,Lxi和Bxi为第i个位置点相对于参考点的经度相对值和纬度相对值。分别将Lxi和Bxi记入经纬度相对参考点表示的SENC文件。
若对表1的位置点数据实施,就得到以左下角为参考点的经纬度相对值(参见表2)和以中心点为参考点的经纬度相对值(参见表3)。
表2:以左下角(Bc=312466666,Lc=1215183333)为参考点的经纬度相对值
序号 | 纬度B | 经度L | Bxi | Lxi | 备注 |
1 | 312466666 | 1215183333 | 0 | 0 | 最小纬度、经度 |
2 | 312672222 | 1215436297 | 205556 | 252964 | 最大纬度 |
3 | 312587591 | 1215538888 | 120924 | 355555 | 最大经度 |
4 | 312540727 | 1215353966 | 74060 | 170633 |
5 | 312617575 | 1215308202 | 150908 | 124869 | |
6 | 312483964 | 1215473668 | 17297 | 290335 |
表3:以中心点(Bc=312569444,Lc=1215361110)为参考点的经纬度相对值
序号 | 纬度B | 经度L | Bxi | Lxi | 备注 |
1 | 312466666 | 1215183333 | -102778 | -177777 | 最小纬度、经度 |
2 | 312672222 | 1215436297 | 102778 | 75186 | 最大纬度 |
3 | 312587591 | 1215538888 | 18146 | 177777 | 最大经度 |
4 | 312540727 | 1215353966 | -28717 | -7144 | |
5 | 312617575 | 1215308202 | 48130 | -52908 | |
6 | 312483964 | 1215473668 | -85480 | 112557 |
表2的Lxi和Bxi可以记入经纬度相对左下角表示的SENC文件,表3的Lxi和Bxi可以记入经纬度相对中心点表示的SENC文件,一般二者选其一即可。
以上步骤都是用经纬度值计算,当然也可以用表1中的LA和LO值计算,其效果与用经纬度值等同。而系统通常需要经纬度进行后继计算,所以应以经纬度值记入SENC文件,以减少后继计算量。
从表2和表3可以发现,其Lxi和Bxi用3个字节就可以表示,比ENC文件的LA和LO值或经纬度值都分别少一个字节,有效减少了SENC文件的数据量。
由于ENC文件覆盖的区域有大有小,其位置点经纬度对参考点的相对值也有大有小,系统采用以下方法可以得到表示Lxi和Bxi的字节数:
使用公式
SL=1,如果Lmax-Lmin<28
=2,如果Lmax-Lmin>=28且Lmax-Lmin<216
=3,如果Lmax-Lmin>=216且Lmax-Lmin<224
=4,如果Lmax-Lmin>=224
SB=1,如果Bmax-Bmin<28
=2,如果Bmax-Bmin>=28且Bmax-Bmin<216
=3,如果Bmax-Bmin>=216且Bmax-Bmin<224
=4,如果Bmax-Bmin>=224
取SL和SB之较大者为表示经度和纬度相对值所需的字节数S。这样程序可以自行确定SENC文件中表示相对值的字节数。若对CN540477实施:
Lmax-Lmin=1215538888-1215183333=355555,即SL=3;
Bmax-Bmin=312672222-312466666=205556,即SB=3;
因此取S=3。在步骤S30中,分别将S、S字节数的Lxi和Bxi记入经纬度相对参考点表示的SENC文件。
系统在后继计算时,采用以下方法可以从经纬度相对参考点表示的SENC文件中恢复位置点经纬度值:
使用公式:
Li=Lxi+Lc;
Bi=Bxi+Bc;
式中:Li和Bi为第i个位置点的经度值和纬度值,Lc和Bc为参考点经纬度值,Lxi和Bxi为SENC文件中第i个位置点相对于参考点的经度相对值和纬度相对值。若要使这些操作保持源海图文件的精度,在将Lc和Bc记入SENC文件时,应保留比ENC文件单位值更高的精度。
由于系统在显示海图时通常使用投影算法将位置点经纬度换算成XY坐标值,因此索性在读入ENC文件处理时就完成换算,形成某种投影算法的SENC文件,系统在显示海图时,只要对SENC文件的XY坐标值按不同比例尺要求乘个比例系数就完成了投影计算,可以进一步减少显示海图时的计算时间。
于是,步骤S40:求参考点坐标值,即对步骤S20中求得的参考点经度值Lc和纬度值Bc,进一步使用公式:
Xc=x(Lc,Bc);
Yc=y(Lc,Bc);
式中:函数x和y是用经纬度值求投影坐标的投影算法,Xc和Yc是参考点经纬度(Lc,Bc)在该投影算法下的横纵坐标。将Xc和Yc记入SENC文件,以便系统以后根据Xc、Yc和各位置点相对值恢复各位置点的横纵坐标值。
若函数x和y采用通用横轴墨卡托投影即UTM投影算法(原点纬度0,中央经度L0=123°,坐标纵轴西移500000米,坐标单位0.1米),并对CN540477实施,则左下角参考点的坐标为Xc=3589092,Yc=34578858;中心点参考点的坐标为Xc=3606174,yc=34590024。
在步骤S40中,还包括:求位置点坐标相对值,即对源海图文件中所有位置点使用公式:
Xxi=x(Li,Bi)-Xc;
Yxi=y(Li,Bi)-Yc;
式中:函数x和y是与求参考点坐标相同的用经纬度值求投影坐标的投影算法,x(Li,Bi)和y(Li,Bi)是第i个位置点在该投影算法下的横纵坐标,Xc和Yc为参考点横纵坐标值,Xxi和Yxi为第i个位置点相对于参考点的横纵坐标相对值;分别将Xxi和Yxi记入投影坐标相对参考点表示的系统海图文件。
若对表1的位置点数据实施,就得到以左下角为参考点的坐标相对值(参见表4)和以中心点为参考点的坐标相对值(参见表5)。
表4:以左下角(Xc=3589092,Yc=34578858)为参考点的坐标相对值
表5:以中心点(Xc=3606174,Yc=34590024)为参考点的坐标相对值
表4的Xxi和Yxi可以记入坐标相对左下角表示的SENC文件,表5的Xxi和Yxi可以记入坐标相对中心点表示的SENC文件,一般二者选其一即可。
投影算法也可以选择其他投影算法,例如:高斯-克吕格(Gauss-Kruger)投影、墨卡托投影等,其效果等同。
通常在用投影算法计算位置点坐标时尽量保持较高的精度。选择精度与显示比例尺及显示屏像素密度有关,过高的精度其实也没必要。从表4和表5可以发现,若选择坐标精度即坐标单位为0.1米,其Xxi和Yxi用2个字节就可以表示,比ENC文件的LA和LO值及经纬度值都分别少2个字节,有效减少了SENC文件的数据量。
由于ENC文件覆盖的区域有大有小,其位置点坐标对参考点的相对值也有大有小,系统选定坐标单位运行投影算法后,采用以下方法可以得到表示Xxi和Yxi的字节数:
使用公式
Xmax=x(Lmax,Bmax)
Ymax=y(Lmax,Bmax)
Xmin=x(Lmin,Bmin)
Ymin=y(Lmin,Bmin)
SX=1,如果Xmax-Xmin<28
=2,如果Xmax-Xmin>=28且Xmax-Xmin<216
=3,如果Xmax-Xmin>=216且Xmax-Xmin<224
=4,如果Xmax-Xmin>=224
SY=1,如果Ymax-Ymin<28
=2,如果Ymax-Ymin>=28且Ymax-Ymin<216
=3,如果Ymax-Ymin>=216且Ymax-Ymin<224
=4,如果Ymax-Ymin>=224
取SX和SY之较大者为表示经度和纬度相对值所需的字节数S。这样程序可以自行确定SENC文件中表示相对值的字节数。若对CN540477实施:
Xmax=x(1215538888,312672222)=3623251
Ymax=y1215538888,312672222)=34601194
Xmin=x(1215183333,312466666)=3589092
Ymin=y(1215183333,312466666)=34578858
Xmax-Xmin=3623251-3589092=34159,即SX=2
Ymax-Ymin=34601194-34578858=22336,即SY=2
因此取S=2。在步骤S40中,分别将坐标单位、S、S字节数的Xxi和Yxi记入坐标相对参考点表示的SENC文件。
本实施例的步骤S30和S40先后次序不重要,可以互相交换。
系统在后继计算时,采用以下方法可以从坐标相对参考点表示的SENC文件中恢复位置点坐标值:
使用公式:
Xi=Xxi+Xc
Yi=Yxi+Yc
式中:Xi和Yi为第i个位置点的横纵坐标值,Xc和Yc为参考点横纵坐标值,Xxi和Yxi为SENC文件中第i个位置点相对于参考点的横纵坐标相对值。
这样,电子海图显示系统在读入ENC文件后,通过本实施例,可以在系统中形成多种SENC文件,包括经纬度相对参考点表示的SENC文件和不同投影算法以及不同坐标单位的坐标相对参考点表示的SENC文件,供系统显示海图时选择使用,以尽量减少数据读取量和计算量,达到快速显示海图的效果。系统同时刷新显示多幅电子海图时效果尤其显著。
电子海图位置点数据简化系统的实施例
目前电子航海图(ENC)通常是由权威机构发布的数据文件,包含众多位置点的表达经度和纬度的数据,每个经度或纬度数据都由4个字节表示。如表1所示,是从电子航海图文件(ENC)之一CN540477(上海港黄浦江杨树浦锚地及附近区域,图号40477,1:4000,更新日期2008-2-27,上海海事局发布)中选出的6个位置点数据,表中LA和LO是ENC文件中的原值,而纬度B和经度L是LA和LO分别除以单位值得到的。
电子海图显示系统通常将电子航海图(ENC)作为源海图文件读入,并处理形成系统海图文件(SENC)存入系统硬盘,以后就应用该系统海图文件来显示电子海图。如图2所示,为本发明的电子海图位置点数据简化系统的实施例的结构图。其实现方法包括使用计算机加编写计算机程序,或者包含可编程逻辑器件的电路、专用集成电路等,在读入电子航海图(ENC)处理形成系统海图文件(SENC)时实现。请参见图2,本实施例的系统的各个模块详述如下。
模块10:寻找位置点经纬度的最大和最小值,从海图目录中公布的该海图的图幅范围得知其最大值和最小值,或者对ENC文件中所有位置点的经度和纬度值进行比较,找出它们的最大和最小值,也可以从ENC文件中M_COVR类元物标所涉及的位置点的经度和纬度值中找出它们的最大和最小值,分别记为Lmax、Lmin、Bmax和Bmin。
若对CN540477实施,就得到Bmin=312466666,Lmin=1215183333,Bmax=312672222,Lmax=1215538888,参见表1。
模块20:设定参考点,一种是以海图的Lmin和Bmin为左下角参考点,即实现功能:
Lc=Lmin;
Bc=Bmin;
求得参考点经度值Lc和纬度值Bc。
若对CN540477实施,即:Lc=1215183333,Bc=312466666。
或者,以海图的中心点为参考点,即实现功能:
Lc=(Lmax+Lmin)/2;
Bc=(Bmax+Bmin)/2;
求得参考点经度值Lc和纬度值Bc。
若对CN540477实施,即:Lc=1215361110,Bc=312569444。
当然也可以用其他方法设定参考点,其效果基本相同。
可在输出的系统海图文件(SENC)中设立标志,例如:1表示设定海图左下角为参考点,2表示设定海图中心点为参考点。并且将参考点经度值Lc和纬度值Bc记入SENC文件,以便系统以后根据Lc、Bc和各位置点相对值恢复各位置点的经纬度值。
模块30:求位置点经纬度相对值,即对ENC文件中所有位置点,实现功能:
Lxi=Li-Lc;
Bxi=Bi-Bc;
式中:Li和Bi为第i个位置点的经度值和纬度值,Lc和Bc为参考点经纬度值,Lxi和Bxi为第i个位置点相对于参考点的经度相对值和纬度相对值。分别将Lxi和Bxi记入经纬度相对参考点表示的SENC文件。
若对表1的位置点数据实施,就得到以左下角为参考点的经纬度相对值(参见表2)和以中心点为参考点的经纬度相对值(参见表3)。
表2的Lxi和Bxi可以记入经纬度相对左下角表示的SENC文件,表3的Lxi和Bxi可以记入经纬度相对中心点表示的SENC文件,一般二者选其一即可。
以上模块中都是用经纬度值计算,当然也可以用表1中的LA和LO值计算,其效果与用经纬度值等同。而系统通常需要经纬度进行后继计算,所以应以经纬度值记入SENC文件,以减少后继计算量。
从表2和表3可以发现,其Lxi和Bxi用3个字节就可以表示,比ENC文件的LA和LO值或经纬度值都分别少一个字节,有效减少了SENC文件的数据量。
由于ENC文件覆盖的区域有大有小,其位置点经纬度对参考点的相对值也有大有小,系统采用以下功能模块可以得到表示Lxi和Bxi的字节数:
SL=1,如果Lmax-Lmin<28
=2,如果Lmax-Lmin>=28且Lmax-Lmin<216
=3,如果Lmax-Lmin>=216且Lmax-Lmin<224
=4,如果Lmax-Lmin>=224
SB=1,如果Bmax-Bmin<28
=2,如果Bmax-Bmin>=28且Bmax-Bmin<216
=3,如果Bmax-Bmin>=216且Bmax-Bmin<224
=4,如果Bmax-Bmin>=224
取SL和SB之较大者为表示经度和纬度相对值所需的字节数S。这样系统可以自行确定SENC文件中表示相对值的字节数。若对CN540477实施:
Lmax-Lmin=1215538888-1215183333=355555,即SL=3
Bmax-Bmin=312672222-312466666=205556,即SB=3
因此取S=3。在模块30中,分别将S、S字节数的Lxi和Bxi记入经纬度相对参考点表示的SENC文件。
系统在后继计算时,采用以下功能模块可以从经纬度相对参考点表示的SENC文件中恢复位置点经纬度值:
Li=Lxi+Lc;
Bi=Bxi+Bc;
式中:Li和Bi为第i个位置点的经度值和纬度值,Lc和Bc为参考点经纬度值,Lxi和Bxi为SENC文件中第i个位置点相对于参考点的经度相对值和纬度相对值。若要使这些操作保持源海图文件的精度,在将Lc和Bc记入SENC文件时,应保留比ENC文件单位值更高的精度。
由于系统在显示海图时通常使用投影算法将位置点经纬度换算成XY坐标值,因此索性在读入ENC文件处理时就完成换算,形成某种投影算法的SENC文件,系统在显示海图时,只要对SENC文件的XY坐标值按不同比例尺要求乘个比例系数就完成了投影计算,可以进一步减少显示海图时的计算时间。
于是,模块40:求参考点坐标值,即对模块20中求得的参考点经度值Lc和纬度值Bc,还进一步实现功能:
Xc=x(Lc,Bc);
Yc=y(Lc,Bc);
式中:函数x和y是用经纬度值求投影坐标的投影算法,Xc和Yc是参考点经纬度(Lc,Bc)在该投影算法下的横纵坐标。将Xc和Yc记入SENC文件,以便系统以后根据Xc、Yc和各位置点相对值恢复各位置点的横纵坐标值。
若函数x和y采用通用横轴墨卡托投影即UTM投影算法(原点纬度0,中央经度L0=123°,坐标纵轴西移500000米,坐标单位0.1米),并对CN540477实施,则左下角参考点的坐标为Xc=3589092,Yc=34578858;中心点参考点的坐标为Xc=3606174,yc=34590024。
在模块40中,还包括:求位置点坐标相对值,即对源海图文件中所有位置点实现功能:
Xxi=x(Li,Bi)-Xc;
Yxi=y(Li,Bi)-Yc;
式中:函数x和y是与求参考点坐标相同的用经纬度值求投影坐标的投影算法,x(Li,Bi)和y(Li,Bi)是第i个位置点在该投影算法下的横纵坐标,Xc和Yc为参考点横纵坐标值,Xxi和Yxi为第i个位置点相对于参考点的横纵坐标相对值;分别将Xxi和Yxi记入投影坐标相对参考点表示的系统海图文件。
若对表1的位置点数据实施,就得到以左下角为参考点的坐标相对值(参见表4)和以中心点为参考点的坐标相对值(参见表5)。
表4的Xxi和Yxi可以记入坐标相对左下角表示的SENC文件,表5的Xxi和Yxi可以记入坐标相对中心点表示的SENC文件,一般二者选其一即可。
投影算法也可以选择其他投影算法,例如:高斯-克吕格(Gauss-Kruger)投影、墨卡托投影等,其效果等同。
通常在用投影算法计算位置点坐标时尽量保持较高的精度。选择精度与显示比例尺及显示屏像素密度有关,过高的精度其实也没必要。从表4和表5可以发现,若选择坐标精度即坐标单位为0.1米,其Xxi和Yxi用2个字节就可以表示,比ENC文件的LA和LO值及经纬度值都分别少2个字节,有效减少了SENC文件的数据量。
由于ENC文件覆盖的区域有大有小,其位置点坐标对参考点的相对值也有大有小,系统选定坐标单位运行投影算法后,采用以下功能模块可以得到表示Xxi和Yxi的字节数:
Xmax=x(Lmax,Bmax)
Ymax=y(Lmax,Bmax)
Xmin=x(Lmin,Bmin)
Ymin=y(Lmin,Bmin)
SX=1,如果Xmax-Xmin<28
=2,如果Xmax-Xmin>=28且Xmax-Xmin<216
=3,如果Xmax-Xmin>=216且Xmax-Xmin<224
=4,如果Xmax-Xmin>=224
SY=1,如果Ymax-Ymin<28
=2,如果Ymax-Ymin>=28且Ymax-Ymin<216
=3,如果Ymax-Ymin>=216且Ymax-Ymin<224
=4,如果Ymax-Ymin>=224
取SX和SY之较大者为表示经度和纬度相对值所需的字节数S。这样系统可以自行确定SENC文件中表示相对值的字节数。若对CN540477实施:
Xmax=x(1215538888,312672222)=3623251
Ymax=y1215538888,312672222)=34601194
Xmin=x(1215183333,312466666)=3589092
Ymin=y(1215183333,312466666)=34578858
Xmax-Xmin=3623251-3589092=34159,即SX=2
Ymax-Ymin=34601194-34578858=22336,即SY=2
因此取S=2。在模块40中,分别将坐标单位、S、按字节数的Xxi和Yxi记入坐标相对参考点表示的SENC文件。
本实施例的模块30和模块40先后次序不重要,可以互相交换。
系统在后继计算时,采用以下功能模块可以从坐标相对参考点表示的SENC文件中恢复位置点坐标值:
Xi=Xxi+Xc;
Yi=Yxi+Yc;
式中:Xi和Yi为第i个位置点的横纵坐标值,Xc和Yc为参考点横纵坐标值,Xxi和Yxi为SENC文件中第i个位置点相对于参考点的横纵坐标相对值。
这样,电子海图显示系统在读入ENC文件后,通过本实施例,可以在系统中形成多种SENC文件,包括经纬度相对参考点表示的SENC文件和不同投影算法以及不同坐标单位的坐标相对参考点表示的SENC文件,供系统显示海图时选择使用,以尽量减少数据读取量和计算量,达到快速显示海图的效果。系统同时刷新显示多幅电子海图时效果尤其显著。
Claims (4)
1.一种电子海图位置点数据简化方法,其特征在于,包括以下步骤:
步骤1、寻找位置点经纬度的最大和最小值:从源海图图幅范围得知其最大值和最小值,或者从源海图文件中找出位置点经纬度的最大值和最小值,分别记为经度最大值Lmax、经度最小值Lmin、纬度最大值Bmax和纬度最小值Bmin;
步骤2、设定参考点,包括:
步骤2.1、求取参考点的经度值Lc及纬度值Bc.
以海图的经度最小值Lmin和纬度最小值Bmin为参考点,即:
Lc=Lmin;
Bc=Bmin;
或者,以海图的中心点为参考点,即:
Lc=(Lmax+Lmin)/2;
Bc=(Bmax+Bmin)/2;
步骤2.2、对参考点的经度值Lc及纬度值Bc使用公式:
Xc=x(Lc,Bc);
Yc=y(Lc,Bc):
式中:函数x和函数y是用经度值及纬度值求投影坐标的投影算法,Xc和Yc是参考点的经度值Lc及纬度值Bc在该投影算法下的横坐标及纵坐标;将Xc和Yc记入投影坐标相对参考点表示的系统海图文件;
步骤3、求位置点坐标相对值,包括:对源海图文件中所有位置点,使用公式:
Xxi=x(Li,Bi)-Xc;
Yxi=y(Li,Bi)-Yc;
式中:函数x和函数y是与步骤2.2中相同的用经纬度值求投影坐标的投影算法,Li及Bi分别为第i个位置点的经度值及纬度值,x(Li,Bi)和y(Li,Bi)是第i个位置点在该投影算法下的横坐标和纵坐标,Xxi和Yxi为第i个位置点相对于参考点的横坐标相对值及纵坐标相对值;分别将Xxi和Yxi记入投影坐标相对参考点表示的系统海图文件。
2.如权利要求1所述的一种电子海图位置点数据简化方法,其特征在于:
在所述步骤2中,还包括:将参考点的经度值Lc及纬度值Bc记入经纬度相对参考点表示的系统海图文件;
在所述步骤3中,还包括求位置点经纬度相对值操作:对源海图文件中所有位置点使用公式:
Lxi=Li-Lc;
Bxi=Bi-Bc;
式中:Li和Bi为第i个位置点的经度值和纬度值,Lxi和Bxi为第i个位置点相对于参考点的经度相对值和纬度相对值;分别将Lxi和Bxi记入经纬度相对参考点表示的系统海图文件。
3.一种电子海图位置点数据简化系统,其特征在于:包括以下模块并依次串连:
寻找位置点经纬度最大和最小值模块:从源海图图幅范围得知其最大值和最小值,或者从源海图文件中找出位置点经纬度的最大值和最小值,分别记为经度最大值Lmax、经度最小值Lmin、纬度最大值Bmax和纬度最小值Bmin;
设定参考点模块,功能包括:以海图的经度最小值Lmin和纬度最小值Bmin为参考点,即:
参考点的经度Lc=Lmin;
参考点的纬度Bc=Bmin;
或者,以海图的中心点为参考点,即:
参考点的经度Lc=(Lmax+Lmin)/2;
参考点的纬度Bc=(Bmax+Bmin)/2;
对参考点经纬度值实施:
Xc=x(Lc,Bc);
Yc=y(Lc,Bc);
式中:函数x和函数y是用经纬度值求投影坐标的投影算法,Xc和Yc是参考点的经度Lc及纬度Bc在该投影算法下的横坐标及纵坐标;将Xc和Yc记入投影坐标相对参考点表示的系统海图文件;
求位置点坐标相对值模块,功能包括:对源海图文件中所有位置点,实施:
Xxi=x(Li,Bi)-Xc;
Yxi=y(Li,Bi)-Yc;
式中:Li及Bi分别为第i个位置点的经度值及纬度值,x(Li,Bi)和y(Li,Bi)是第i个位置点在投影算法下的横坐标及纵坐标,Xxi和Yxi为第i个位置点相对于参考点的横坐标相对值及纵坐标相对值;分别将Xxi和Yxi记入投影坐标相对参考点表示的系统海图文件。
4.如权利要求3所述的一种电子海图位置点数据简化系统,其特征在于:
所述求位置点坐标相对值模块还连接有求位置点经纬度相对值模块,功能包括:将参考点的经度Lc及纬度Bc记入经纬度相对参考点表示的系统海图文件;
对源海图文件中所有位置点实施:
Lxi=Li-Lc;
Bxi=Bi-Bc;
式中:Li和Bi为第i个位置点的经度值和纬度值,Lxi和Bxi为第i个位置点相对于参考点的经度相对值和纬度相对值;分别将Lxi和Bxi记入经纬度相对参考点表示的系统海图文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013100576596A CN103106281A (zh) | 2013-02-22 | 2013-02-22 | 一种电子海图位置点数据简化方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2013100576596A CN103106281A (zh) | 2013-02-22 | 2013-02-22 | 一种电子海图位置点数据简化方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103106281A true CN103106281A (zh) | 2013-05-15 |
Family
ID=48314136
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2013100576596A Pending CN103106281A (zh) | 2013-02-22 | 2013-02-22 | 一种电子海图位置点数据简化方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103106281A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107764175A (zh) * | 2017-08-25 | 2018-03-06 | 中国船舶重工集团公司第七0七研究所 | 基于数字化定位技术的纸海图自动校准方法 |
CN109299311A (zh) * | 2018-09-18 | 2019-02-01 | 甘肃启远智能科技有限责任公司 | 光伏组件经纬度数据配置方法及装置 |
CN110990502A (zh) * | 2019-11-12 | 2020-04-10 | 哈尔滨工程大学 | 一种电子海图位置点数据简化方法 |
CN111028471A (zh) * | 2019-12-16 | 2020-04-17 | 山东恒云信息科技有限公司 | 一种使用神经网络技术防范游客接近高风险区域的方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5745867A (en) * | 1996-10-09 | 1998-04-28 | Motorola, Inc. | Method and apparatus for reducing message length within a communication system |
JP2003130680A (ja) * | 2001-10-29 | 2003-05-08 | Kddi Corp | 地図表示端末、地図表示装置ならびにその無線端末および地図サーバ |
EP1939837A2 (en) * | 2006-12-20 | 2008-07-02 | AT&T Corp. | Lossless real-time compression of geographic data |
CN101726292A (zh) * | 2008-10-20 | 2010-06-09 | 上海海事大学 | 一种提高电子海图客户端上船舶运动轨迹显示速度的方法 |
CN102168983A (zh) * | 2010-02-12 | 2011-08-31 | 三星电子株式会社 | 用于发送和接收地图数据的方法和装置 |
CN102252685A (zh) * | 2010-05-21 | 2011-11-23 | 科菱航睿空间信息技术有限公司 | 导航电子地图数据处理方法及基于该处理方法的存储方法 |
-
2013
- 2013-02-22 CN CN2013100576596A patent/CN103106281A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5745867A (en) * | 1996-10-09 | 1998-04-28 | Motorola, Inc. | Method and apparatus for reducing message length within a communication system |
JP2003130680A (ja) * | 2001-10-29 | 2003-05-08 | Kddi Corp | 地図表示端末、地図表示装置ならびにその無線端末および地図サーバ |
EP1939837A2 (en) * | 2006-12-20 | 2008-07-02 | AT&T Corp. | Lossless real-time compression of geographic data |
CN101726292A (zh) * | 2008-10-20 | 2010-06-09 | 上海海事大学 | 一种提高电子海图客户端上船舶运动轨迹显示速度的方法 |
CN102168983A (zh) * | 2010-02-12 | 2011-08-31 | 三星电子株式会社 | 用于发送和接收地图数据的方法和装置 |
CN102252685A (zh) * | 2010-05-21 | 2011-11-23 | 科菱航睿空间信息技术有限公司 | 导航电子地图数据处理方法及基于该处理方法的存储方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107764175A (zh) * | 2017-08-25 | 2018-03-06 | 中国船舶重工集团公司第七0七研究所 | 基于数字化定位技术的纸海图自动校准方法 |
CN109299311A (zh) * | 2018-09-18 | 2019-02-01 | 甘肃启远智能科技有限责任公司 | 光伏组件经纬度数据配置方法及装置 |
CN110990502A (zh) * | 2019-11-12 | 2020-04-10 | 哈尔滨工程大学 | 一种电子海图位置点数据简化方法 |
CN110990502B (zh) * | 2019-11-12 | 2023-01-03 | 哈尔滨工程大学 | 一种电子海图位置点数据简化方法 |
CN111028471A (zh) * | 2019-12-16 | 2020-04-17 | 山东恒云信息科技有限公司 | 一种使用神经网络技术防范游客接近高风险区域的方法 |
CN111028471B (zh) * | 2019-12-16 | 2021-04-06 | 山东恒云信息科技有限公司 | 一种使用神经网络技术防范游客接近高风险区域的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108229740B (zh) | 一种商圈边界的确定方法、装置、服务器及存储介质 | |
CN108267154B (zh) | 一种地图显示方法及装置 | |
AU2010257305B2 (en) | Techniques for density mapping | |
CN105448184B (zh) | 地图道路的绘制方法及装置 | |
CN103970835A (zh) | 一种矢量地图数据存储方法及系统 | |
CN103106281A (zh) | 一种电子海图位置点数据简化方法和系统 | |
CN104123743A (zh) | 图像阴影添加方法及装置 | |
CN108958462A (zh) | 一种虚拟对象的展示方法及装置 | |
CN106383828A (zh) | 一种绘图方法及电子设备 | |
CN107741964A (zh) | 一种兴趣点显示方法、装置、设备和介质 | |
TW201341758A (zh) | 用於實景導航之定位方法、定位系統及電腦可讀取儲存媒體 | |
CN111104076B (zh) | 地图显示方法、装置及存储介质 | |
CN110096993A (zh) | 双目立体视觉的目标检测设备及方法 | |
CN104949673A (zh) | 一种基于非视觉感知信息的目标定位方法及装置 | |
CN108197596B (zh) | 一种手势识别方法和装置 | |
CN111368668B (zh) | 三维手部识别方法、装置、电子设备及存储介质 | |
CN111127603B (zh) | 动画生成方法、装置、电子设备及计算机可读存储介质 | |
CN105608714A (zh) | 一种基于cad和gis协同的分幅影像生成方法及系统 | |
CN114445269A (zh) | 一种图像特效处理方法、装置、设备及介质 | |
US20230298324A1 (en) | Image acquisition model training method and apparatus, image detection method and apparatus, and device | |
CN111400537A (zh) | 一种道路元素信息获取方法、装置和电子设备 | |
CN107783982B (zh) | 数据处理方法及数据处理装置 | |
CN115272523A (zh) | 空气质量分布图的绘制方法、装置、电子设备和存储介质 | |
CN115423919A (zh) | 图像的渲染方法、装置、设备以及存储介质 | |
CN108717724A (zh) | 一种测量方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130515 |