文档库 最新最全的文档下载
当前位置:文档库 › 重投影误差

重投影误差

重投影误差
重投影误差

在计算机视觉中经常会使用到重投影误差(Reprojection error)。比如在计算平面单应矩阵和投影矩阵的时候,往往会使用重投影误差来构造代价函数,然后最小化这个代价函数,以优化单应矩阵或者投影矩阵。之所以使用重投影误差,是因为它不光考虑了单应矩阵的计算误差,也考虑了图像点的测量误差,所以其精度比单边或者对称变换误差高。

以平面单应矩阵的计算为例,假设两幅图像中的对应点满足:

其中,H是平面单应矩阵,x和x'是图像中的对应点,则重投影误差的形式如下:

subject to:

其中,x^是x的估计值,H^是H的估计。最小化重投影误差就是优化H^和x^。从重投影误差公式可以看出,模型认为测量点并非绝对精确,而是存在一定的测量误差,因此需要重新估计图像点的坐标,而估计得到的新的图像点之间完美的满足单应关系。下图就是重投影误差的几何表述,d与d'的和即为重投影误差:

上面都是在假设图像点有测量误差的情况下讨论的,如果x和x'都是图像上的点,那么确实是满足上面的模型的。但是有一种特殊情形,那就是摄像机定位时通常都会遇见的,x不是图像点,而是平面标志点在世界坐标系下的坐标,只有x'是图像点。在这种情况下,由于标志点通常都是很标准的,都是严格按尺寸制定,所以我们可以认为x是绝对准确的,那么此时只有x'存在测量误差。如下图:

此时,x的估计x^就是它本身,即x=x^,所以有:

那么重投影误差在强约束条件x=x^下就退化为:

上式即为单边变换误差(Transfor error)。

也就是说,如果给重投影误差加上约束条件x=x^,重投影误差就退化为单边变换误差,并且极大地简化了优化算法。同时,从上面的推导也可以的出结论:在使用已知标志点给摄像机定位时,重投影误差并非最好的选择,因为重投影误差模型会认为标志点存在误差,从而重新估计标志点的坐标,引入多余的误差;而此时,事实上重投影误差已经退化为单边几何变换误差,所以在这种情况下,单边几何变换误差才是最好的代价函数。

高斯投影正反算公式 新

高斯投影坐标正反算 一、相关概念 大地坐标系由大地基准面和地图投影确定,由地图投影到特定椭圆柱面后在南北两极剪开展开而成,是对地球表面的逼近,各国或地区有各自的大地基准面,我国目前主要采用的基准面为:基准面,为GPS基准面,17届国际大地测量协会上推荐,椭圆柱长半轴a=6378137m,短半轴b=; 2.西安80坐标系,1975年国际大地测量协会上推荐,椭圆柱长半轴a=6378140m,短半轴b=; 3.北京54坐标系,参照前苏联克拉索夫斯基椭球体建立,椭圆柱长半轴a=6378245m, 短半轴b=; 通常所说的高斯投影有三种,即投影后: a)角度不变(正角投影),投影后经线和纬线仍然垂直; b)长度不变; c)面积不变; 大地坐标一般采用高斯正角投影,即在地球球心放一点光源,地图投影到过与中央经线相切的椭圆柱面上而成;可分带投影,按中央经线经度值分带,有每6度一带或每3度一带两种(起始带中央经线经度为均为3度,即:6度带1带位置0-6度,3度带1带位置度),即所谓的高斯-克吕格投影。

图表11高斯投影和分带 地球某点经度(L)为过该点和地球自转轴的半圆与子午线所在半圆夹角,东半球为东经,西半球为西经;地球某点纬度(B)为所在水平面法线与赤道圆面的线面角。 正算是已知大地坐标(L,B),求解高斯平面坐标(X,Y),为确保Y值为正,Y增加500公里;反算则是由高斯平面坐标(X,Y)求解大地坐标(L,B)。 二、计算模型: 地球椭球面由椭圆绕地球自转轴旋转180度而成。 图表 1 椭圆 椭圆长半轴a,椭圆短半轴b, 椭圆方程:

(1) 图表2椭球面 椭球面方程: y2 a2+ x2 b2 + z2 a2 =1 /*************************************** 与网上充斥的将函数关系先展开为泰勒级数,再依据投影规则确定各参数不同,本文直接依据空间立体三角函数关系得出结果。 *****/ (一)正算 由图表1,

高斯投影坐标正反算VB程序

高斯投影坐标正反算 V B程序 文件编码(GHTU-UITID-GGBKT-POIU-WUUI-8968)

高斯投影坐标正反算 学院: 班级: 学号: 姓名: 课程名称: 指导老师:

实验目的: 1.了解高斯投影坐标正反算的基本思想; 2.学会编写高斯正反算程序,加深了解。 实验原理: 高斯投影正算公式中应满足的三个条件: 1. 中央子午线投影后为直线; 2. 中央子午线投影后长度不变; 3. 投影具有正形性质,即正形投影条件。 高斯投影反算公式中应满足的三个条件: 1. x坐标轴投影成中央子午线,是投影的对称轴; 2. x轴上的长度投影保持不变; 3. 正形投影条件,即高斯面上的角度投影到椭球面上后角度没有 变形,仍然相等。 操作工具: 计算机中的 代码: Dim a As Double, b As Double, x As Double, y As Double, y_#

Dim l_ As Double, b_ As Double, a0#, a2#, a4#, a6#, a8#, m2#, m4#, m6#, m8#, m0#, l0#, e#, e1# Dim deg1 As Double, min1 As Double, sec1 As Double, deg2 As Double, min2 As Double, sec2 As Double Private Sub Command1_Click() Dim x_ As Double, t#, eta#, N#, W#, k1#, k2#, ik1%, ik2%, dh% deg1 = Val min1 = Val sec1 = Val deg2 = Val min2 = Val sec2 = Val l_ = (deg1 * 3600 + min1 * 60 + sec1) / 206265 b_ = (deg2 * 3600 + min2 * 60 + sec2) / 206265 dh = Val k1 = ((l_ * 180 / + 3) / 6) k2 = (l_ * 180 / / 3) ik1 = Round(k1, 0) ik2 = Round(k2, 0) If dh = 6 Then l0 = 6 * ik1 - 3 Else

高斯投影正反算编程(可编辑修改word版)

高斯投影正反算编程一.高斯投影正反算基本公式(1)高斯正算基本公式 (2)高斯反算基本公式

以上主要通过大地测量学基础课程得到,这不进行详细的推导,只是列出基本公式指导编程的进行。 二.编程的基本方法和流程图 (1)编程的基本方法 高斯投影正反算基本上运用了所有的编程基本语句,本文中是利用C++语言进行基本的设计。高斯正算中对椭球参数和带宽的选择主要运用了选择语句。而高斯反算中除了选择语句的应用,在利用迭代算法求底点纬度还应用了循环语句。编程中还应特别注意相关的度分秒和弧度之间的相互转换,这是极其重要的。 (2)相关流程图 1)正算

选择带宽 3/6 度带 计算带号 输入大地坐标 B ,L 和经差 L0 6 度带 3 度带 选择椭球参数 计算带号 计算弧长 计算平面坐标 x,y 打印 x,y 开始 计算平面坐标 x,y 计算弧长 打印 x,y

开始 输入自然值坐标x,y 和经差L0 选择椭球参数 利用迭代算法 求解底点纬度 利用公式计算B 和L 打印B 和L 2)反算

三.编程的相关代码(1)正算 # include "stdio.h" # include "stdlib.h" # include "math.h" # include "assert.h" #define pi (4*atan(1.0)) int i; struct jin { double B; double L; double L0; }; struct jin g[100]; main(int argc, double *argv[]) { FILE *r=fopen("a.txt","r"); assert(r!=NULL); FILE *w=fopen("b.txt","w"); assert(r!=NULL); int i=0;

重投影误差

在计算机视觉中经常会使用到重投影误差(Reprojection error)。比如在计算平面单应矩阵和投影矩阵的时候,往往会使用重投影误差来构造代价函数,然后最小化这个代价函数,以优化单应矩阵或者投影矩阵。之所以使用重投影误差,是因为它不光考虑了单应矩阵的计算误差,也考虑了图像点的测量误差,所以其精度比单边或者对称变换误差高。 以平面单应矩阵的计算为例,假设两幅图像中的对应点满足: 其中,H是平面单应矩阵,x和x'是图像中的对应点,则重投影误差的形式如下: subject to: 其中,x^是x的估计值,H^是H的估计。最小化重投影误差就是优化H^和x^。从重投影误差公式可以看出,模型认为测量点并非绝对精确,而是存在一定的测量误差,因此需要重新估计图像点的坐标,而估计得到的新的图像点之间完美的满足单应关系。下图就是重投影误差的几何表述,d与d'的和即为重投影误差: 上面都是在假设图像点有测量误差的情况下讨论的,如果x和x'都是图像上的点,那么确实是满足上面的模型的。但是有一种特殊情形,那就是摄像机定位时通常都会遇见的,x不是图像点,而是平面标志点在世界坐标系下的坐标,只有x'是图像点。在这种情况下,由于标志点通常都是很标准的,都是严格按尺寸制定,所以我们可以认为x是绝对准确的,那么此时只有x'存在测量误差。如下图: 此时,x的估计x^就是它本身,即x=x^,所以有:

那么重投影误差在强约束条件x=x^下就退化为: 上式即为单边变换误差(Transfor error)。 也就是说,如果给重投影误差加上约束条件x=x^,重投影误差就退化为单边变换误差,并且极大地简化了优化算法。同时,从上面的推导也可以的出结论:在使用已知标志点给摄像机定位时,重投影误差并非最好的选择,因为重投影误差模型会认为标志点存在误差,从而重新估计标志点的坐标,引入多余的误差;而此时,事实上重投影误差已经退化为单边几何变换误差,所以在这种情况下,单边几何变换误差才是最好的代价函数。

3度6度带高斯投影详解.

3度6度带高斯投影 选择投影的目的在于使所选投影的性质、特点适合于地图的用途,同时考虑地图在图廓范围内变形较小而且变形分布均匀。海域使用的地图多采用保角投影,因其能保持方位角度的正确。 我国的基本比例尺地形图(1:5千,1:1万,1:2.5万,1:5万,1:10万,1:25万,1:50万,1:100万)中,大于等于50万的均采用高斯-克吕格投影(Gauss-Kruger),这是一个等角横切椭圆柱投影,又叫横轴墨卡托投影(Transverse Mercator);小于50万的地形图采用等角正轴割园锥投影,又叫兰勃特投影(Lambert Conformal Conic);海上小于50万的地形图多用等角正轴圆柱投影,又叫墨卡托投影(Mercator)。一般应该采用与我国基本比例尺地形图系列一致的地图投影系统。 地图坐标系由大地基准面和地图投影确定,大地基准面是利用特定椭球体对特定地区地球表面的逼近,因此每个国家或地区均有各自的大地基准面,我们通常称谓的北京54坐标系、西安80坐标系实际上指的是我国的两个大地基准面。我国参照前苏联从1953年起采用克拉索夫斯基(Krassovsky)椭球体建立了我国的北京54坐标系,1978年采用国际大地测量协会推荐的IAG 75地球椭球体建立了我国新的大地坐标系--西安80坐标系,目前GPS定位所得出的结果都属于WGS84坐标系统,WGS84基准面采用WGS84椭球体,它是一地心坐标系,即以地心作为椭球体中心的坐标系。因此相对同一地理位置,不同的大地基准面,它们的经纬度坐标是有差异的。 采用的3个椭球体参数如下(源自“全球定位系统测量规范 GB/T 8314-2001”): 椭球体与大地基准面之间的关系是一对多的关系,也就是基准面是在椭球体基础上建立的,但椭球体不能代表基准面,同样的椭球体能定义不同的基准面,如前苏联的Pulkovo 1942、非洲索马里的Afgooye基准面都采用了Krassovsky

高斯投影坐标正算公式

高斯投影坐标正算公式 高斯投影坐标正反算公式 2.2.2. 1高斯投影坐标正算公式: B, x,y 高斯投影必须满足以下三个条件: ⑴中央子午线投影后为直线;⑵中央子午线投影后长度不变;⑶投影具有正形性质,即正形投影条件。 由第一条件知中央子午线东西两侧的投影必然对称于中央子午线,即 式中,x为的偶函数,y为的奇函数;,即, 如展开为的级数,收敛。 (2-10) 式中是待定系数,它们都是纬度B的函数。 由第三个条件知: 分别对和q求偏导数并代入上式 (2-11) 上两式两边相等,其必要充分条件是同次幂前的系数应相等,即

(2-12) (2-12)是一种递推公式,只要确定了就可依次确定其余各系数。 由第二条件知:位于中央子午线上的点,投影后的纵坐标x应等于投影前从赤道量至该点的子午线弧长X,即(2-10)式第一式中,当时有: (2-13) 顾及(对于中央子午线) 得: (2-14,15) (2-16) 依次求得并代入(2-10)式,得到高斯投影正算公式

(2-17) 2.2.2. 2高斯投影坐标反算公式 x,y B, 投影方程: (2-18) 高斯投影坐标反算公式推导要复杂些。 ⑴由x求底点纬度(垂足纬度),对应的有底点处的等量纬度,求x,y与 的关系式,仿照式有, 由于y和椭球半径相比较小(1/16.37),可将展开为y的幂级数;又由于是对称投影,q必是y的偶函数,必是y的奇函数。 (2-19) 是待定系数,它们都是x的函数. 由第三条件知: ,

, (2-20) (2-19)式分别对x和y求偏导数并代入上式 上式相等必要充分条件,是同次幂y前的系数相等, 第二条件,当y=0时,点在中央子午线上,即x=X,对应的点称为底点,其纬度为底点纬度,也就是x=X时的子午线弧长所对应的纬度,设所对应的等量纬度为。也就是在底点展开为y的幂级数。 由(2-19)1式 依次求得其它各系数 (2-21) (2-21)1 ………… 将代入(2-19)1式得

高斯投影坐标正反算VB程序

高斯投影坐标正反算 学院: 班级: 学号: 姓名: 课程名称: 指导老师:

实验目的: 1.了解高斯投影坐标正反算的基本思想; 2.学会编写高斯正反算程序,加深了解。 实验原理: 高斯投影正算公式中应满足的三个条件: 1. 中央子午线投影后为直线; 2. 中央子午线投影后长度不变; 3. 投影具有正形性质,即正形投影条件。 高斯投影反算公式中应满足的三个条件: 1. x坐标轴投影成中央子午线,是投影的对称轴; 2. x轴上的长度投影保持不变; 3. 正形投影条件,即高斯面上的角度投影到椭球面上后角度没 有变形,仍然相等。 操作工具: 计算机中的VB6.0 代码: Dim a As Double, b As Double, x As Double, y As Double, y_# Dim l_ As Double, b_ As Double, a0#, a2#, a4#, a6#, a8#, m2#,

m4#, m6#, m8#, m0#, l0#, e#, e1# Dim deg1 As Double, min1 As Double, sec1 As Double, deg2 As Double, min2 As Double, sec2 As Double Private Sub Command1_Click() Dim x_ As Double, t#, eta#, N#, W#, k1#, k2#, ik1%, ik2%, dh% deg1 = Val(Text1.Text) min1 = Val(Text2.Text) sec1 = Val(Text3.Text) deg2 = Val(Text4.Text) min2 = Val(Text5.Text) sec2 = Val(Text6.Text) l_ = (deg1 * 3600 + min1 * 60 + sec1) / 206265 b_ = (deg2 * 3600 + min2 * 60 + sec2) / 206265 dh = Val(Text9.Text) k1 = ((l_ * 180 / 3.14159 + 3) / 6) k2 = (l_ * 180 / 3.14159 / 3) ik1 = Round(k1, 0) ik2 = Round(k2, 0) If dh = 6 Then l0 = 6 * ik1 - 3 Else If dh = 3 Then

高斯投影计算的实用公式

§8.4高斯投影计算的实用公式 1子午线弧长计算公式 改写并扩充(7-65)(7-64)两式 )8sin()6sin()4sin()2sin(86420B a B a B a B a B a X ++++= )16384 17640512525646043)(1(21864222e e e e e a a +++--= )16384 88205122106415)(1(4186424e e e e a a ++-= )16384 252051235)(1(618626e e e a a +--= )16384 315)(1(81828e e a a -= 2正算公式(8-67)(8-81) 00/cos ρBl p = 2/)12/)30/))58(61())49(5((1(22222222p p p t t t Nt X x -++++-++=ηηp p p t t t N y )6/)20/)14)5818(5()1((1(22222222ηηη+--+++-+= )3/)5/)2())23(1((1(sin 22222 00p p t Bl r -++++=ηη 式中: B t tan = 22)cos (B e '=η 221η+=V V c N /= 0000L L l -= 21a/e c -= 3 底点纬度公式 00Xq B = (单位:弧度) ))) sin (sin (sin )(2sin(028*********B q q B q B q B B B f ++++=(单位:弧度) 式中: )16384110255123506445431)(1(864220e e e e e a a ++++-=

高斯投影正算

高斯投影正、反算代码 //高斯投影正、反算 //////6度带宽 54年北京坐标系 //高斯投影由经纬度(Unit:DD)反算大地坐标(含带号,Unit:Metres) void GaussProjCal(double longitude, double latitude, double *X, double *Y) { int ProjNo=0; int ZoneWide; ////带宽 double longitude1,latitude1, longitude0,latitude0, X0,Y0, xval,yval; double a,f, e2,ee, NN, T,C,A, M, iPI; iPI = 0.0174532925199433; ////3.1415926535898/180.0; ZoneWide = 6; ////6度带宽 a=6378245.0; f=1.0/298.3; //54年北京坐标系参数 ////a=6378140.0; f=1/298.257; //80年西安坐标系参数 ProjNo = (int)(longitude / ZoneWide) ; longitude0 = ProjNo * ZoneWide + ZoneWide / 2; longitude0 = longitude0 * iPI ; latitude0=0; longitude1 = longitude * iPI ; //经度转换为弧度 latitude1 = latitude * iPI ; //纬度转换为弧度 e2=2*f-f*f; ee=e2*(1.0-e2); NN=a/sqrt(1.0-e2*sin(latitude1)*sin(latitude1)); T=tan(latitude1)*tan(latitude1); C=ee*cos(latitude1)*cos(latitude1); A=(longitude1-longitude0)*cos(latitude1); M=a*((1-e2/4-3*e2*e2/64-5*e2*e2*e2/256)*latitude1-(3*e2/8+3*e2*e2 /32+45*e2*e2 *e2/1024)*sin(2*latitude1)

测量员复习题(原题答案)

一、判断题 1.建立平面控制网的精典方法导线测量、三角测量和三四等水准测量。(×) 2.比例符号和半比例符号的使用界限是相对的。……………………………(√) 3.投影差的大小与地面点对基准面的高差成正比,高差越大投影误差越大。(√) 4.全站仪在使用过程中,测距离耗电最省。……………………………………(×) 5.用坚固的木桩制作永久水准点,打入地面,以永久保存。…………………(×) 6.房屋、道路、河流、河谷、湖泊等均属于地物。……………………………(×) 7.竖直度盘固定在竖轴一端,可随望远镜在竖直面内转动。…………………(×) 8.交会法测量主要用于补充控制点。……………………………………………(√) 9.碎部测量就是测定碎部点的平面位置和高程。………………………………(√) 10.所有的地形图都是按照矩形分幅和编号的。………………………………(×) 11.正影投影的基本条件是长度不变,角度变小。……………………………(×) 12.视准轴是目镜光心与物镜光心的连线。……………………………………(×) 13.用经纬仪测角时,望远镜应尽量瞄准目标的顶部,以减小误差。…………(×) 14.水准测量中,i角的误差与仪器到立尺点的距离无关。………………………(× 15.系统误差影响观测值的准确度,偶然误差影响观测值的精密度。…………(√) 16.同一幅图中,等高线之间存在一定高差,故它们不会相交。………………(×) 17.在一定的观测条件下,偶然误差的绝对值有一定的限值。…………………(√) 18.图根水准测量用于测定测区首级平面控制点和图根点高程,其精度低于四等水准测量。(√) 19.经纬仪方向观测水平角用指标差来控制盘左盘右误差。………………………(×) 20.碎部测量就是测定碎部点的平面位置和高程。…………………………………(√) 21.全站仪在雨天或阳光下使用一定要撑伞。………………………………………(√) 22.乡村地块的划分、水系、道路属于地籍要素。…………………………………(×) 23.等高线与山脊线、山谷线重合或相交。…………………………………………(×) 24.算术平均值的中误差与观测次数的平方根成反比,故增加观测次数可以提高它的精度。(√) 25.竖轴倾斜误差是由于水准管轴不垂直于竖轴,可采用正倒镜取平均消除误差。(×) 26.投影差的大小与地面点对基准面T0的高差成正比,高差越大投影误差越大。(√) 27.处处与重力方向垂直的连续曲面称为水平面。……………………………………(×) 28.主轴线应尽量位于场地中心,并与主要建筑物轴线平行,主轴线的定位点应不少于2个。…………(×) 29.钢尺尺长检定误差小于0.1mm。……………………………………………………(×) 30.观测值的中误差愈小,其值愈可靠,权就愈大。……………………………………(√) 31.施工图只需进行技术设计,是为施工服务的。………………………………………(×) 32.地形图是普通地图的一种,只有线划图一种。………………………………………(×) 33.放样工作是根据施工控制网将建筑物的主要轴线测设到地面上,然后再根据已定出的主要轴线测设出建筑物各个部分的位置。……………………………………………………(√) 34.竖向投测只可用经纬仪进行投测。…………………………………………………(×) 35.房屋标高只可用皮数杆进行传递。…………………………………………………(×) 36.对每根柱子,在框架结构吊装中,随着工序的进展,荷重变化需要重复多次校正和观测垂直偏移值。……………………………………………………………………………………(√) 37.桩面弹线包括弹柱子中心线以及柱子标高下平线弹线,安装平线的弹线。…………(√) 38.管道工程测量不可采用视距测量长度和测量高程。……………………………………(×) 39.圆曲线的详细测设只可用切线支距法(直角坐标法)进行。…………………………(×) 40.道路施工中的延长线法是在道路转折处至曲线中点的延长线上打下施工控制桩。…(×) 二、单项选择题 1.控制测量中,一般取 C 倍中误差作为限差。

高斯投影正反算

高斯投影正、反算及换带 程序执行条件 ※数组投影选择 T、换算点个数“Z=0 F≠0”、=0正算0、≠0反算 ※坐标系选择 “54 ≠54”、=54换算为1954年北京坐标系输入54、≠54换算为1988年西安坐标系 M、中央子午线经度(°′″) 输入 ※大地坐标 I、序列号 B、L:大地纬度和经度(地理坐标)(°′″) ※高斯平面坐标轴子午线 I、序列号 X、Y:高斯平面坐标(m) Z、轴子午线(°) 输出 ※大地坐标子午收敛角 N、序列号 B、L:大地纬度和经度(地理坐标)(°′″) R、子午收敛角(°′″) ※高斯平面坐标子午收敛角 N、序列号 X、Y:高斯平面坐标(m) R、子午收敛角(°′″) 注: 1、程序执行前必须进行数组定位。如:Defm 10 T×2=5×2=10 2、Y坐标值要去掉带号及避免出现负值的500公里; 4、本程序运算时,各已知数据、观测变量不会随之变化,可非常方便地进行各数据的核对; 5、本程序在进行换带计算时采用的是间接换带计算法。 Prog GSXY Defm 10:TA“Z=0 F≠0”G“54 ≠54”Z:Fixm:I=0:「b」0:I=I+1◢ J=2I-1:M=Z[J:L=Z[J+1:A=0=>Prog“3”:B=M:M=L+Z:Prog“3”:L=M:{BL}:M=B:Prog“2”: B=M:M=L:Prog“2”:L=M-Z:≠>X=M:Y=L:{XY}:B=X:L=Y⊿Z[J]=B:Z[J+1]=L:IGoto 0⊿G=54=>C=6399698.90178271:E=.006738525414684:≠>C=6399596.65198801:E=.006 739501819473⊿I=0:「b」0:I“N”=I+1◢ J=2I-1:B=Z[J:L=Z[J+1:A≠0=>X=B:Y=L:Goto 2⊿S=sin B:G=54=>F=111134.8611B-(32 005.7799S+133.9238S∧3+.6973S∧5+.0039S∧7)cos B:≠>F=111133.0047B-(32009.857 S+133.9602S∧3+.6976S∧5+.0039S∧7)cos B⊿U=√Ecos B:V=√(1+U2:N=C÷V:W=tan B: M=cos B(Lπ÷180:X=F+NW(.5M2+1┛24(5-W2+9U2+4U∧4)M∧4+1┛720(61-58W2+W∧4)M∧6◢

电子表格进行高斯投影换算GPS坐标的方法

利用EXCEL电子表格进行高斯投影换算GPS坐标的方法 2009-06-13 10:05 [摘要] 对利用EXCEL电子表格进行高斯投影换算的方法进行了较详细的介绍,对如何进行GPS坐标系转换进行了分析,提出了一种简单实用的坐标改正转换方法,介绍了用EXCEL完成转换的思路。 [关键字] 电子表格;GPS;坐标转换 作为尖端技术GPS,能方便快捷性地测定出点位坐标,无论是操作上还是精度上,比全站仪等其他常规测量设备有明显的优越性。随着我国各地GPS差分台站的不断建立以及美国SA政策的取消,使得单机定位的精度大大提高,有的已经达到了亚米级精度,能够满足国土资源调查、土地利用更新、遥感监测、海域使用权清查等工作的应用。在一般情况下,我们使用的是1954年北京坐标系或1980年西安坐标系(以下分别简称54系和80系),而GPS测定的坐标是WGS-84坐标系坐标,需要进行坐标系转换。对于非测量专业的工作人员来说,虽然GPS定位操作非常容易,但坐标转换则难以掌握,EXCEL是比较普及的电子表格软件,能够处理较复杂的数学运算,用它来进行GPS坐标转换、面积计算会非常轻松自如。要进行坐标系转换,离不开高斯投影换算,下面分别介绍用EXCEL进行换算的方法和GPS坐标转换方法。 一、用EXCEL进行高斯投影换算 从经纬度BL换算到高斯平面直角坐标XY(高斯投影正算),或从XY换算成BL(高斯投影反算),一般需要专用计算机软件完成,在目前流行的换算软件中,存在一个共同的不足之处,就是灵活性较差,大都需要一个点一个点地进行,不能成批量地完成,给实际工作带来许多不便。笔者发现,用EXCEL可以很直观、方便地完成坐标换算工作,不需要编制任何软件,只需要在EXCEL的相应单元格中输入相应的公式即可。下面以54系为例,介绍具体的计算方法。 完成经纬度BL到平面直角坐标XY的换算,在EXCEL中大约需要占用21列,当然读者可以通过简化计算公式或考虑直观性,适当增加或减少所占列数。在EXCEL中,输入公式的起始单元格不同,则反映出来的公式不同,以公式从第2行第1列(A2格)为起始单元格为例,各单元格的公式如下: 单元格 单元格内容 说明 A2 输入中央子午线,以度.分秒形式输入,如115度30分则输入115.30 起算数据L0 B2 =INT(A2)+(INT(A2*100)-INT(A2)*100)/60+(A2*10000-INT(A2*100)*100)/3600 把L0化成度 C2

摄影测量学教案(第07讲像点坐标的系统误差及其改正)

第7 次课首页

教案正文

变形的规律。 格网法:在航摄软片曝光时,标准方格网同时构像在软片上,通过检查 航摄像片上格网点的移位来检查像片的变形情况。 4、改正航摄像片系统变形的方法 A、当框标位于四角时 适用于检测均匀伸缩,仿射变形和扭曲变形。 均匀伸缩改正方法 仿射变形改正方法 y b x b b y y a x a a x 2 1 2 1 + + =' + + =' 双线性变换公式 xy b y b x b b y xy a y a x a a x 4 3 2 1 4 3 2 1 + + + =' + + + =' 线性正形变换公式 y a x a a y y a x a a x 2 3 4 3 2 1 + + =' - + =' y b x b b y y a x a a x 2 1 2 1 + + =' + + =' 投影变换公式 物点三者共线。 基准面的选取是 否一致,不一致带 来的误差满足什 么规律。 量测系统有没有 系统误差存在。 这些问题最终体 现为像点的系统 误差。 强调! 启发: 如何利用标准改

1 1 2 1 3 2 1 2 1 3 2 1 + + + + =' + + + + =' y c x c b y b x b y y c x c a y a x a x 投影变换线性化公式 xy a y a y a x a a y x a xy a y a x a a x 5 2 4 2 7 6 2 5 4 3 2 1 + + + + =' + + + + =' B、当框标位于四边中央时 适用于均匀伸缩,不均匀伸缩和仿射变形 仿射变形改正方法 y b x b b y y a x a a x 2 1 2 1 + + =' + + =' 均匀伸缩或不均匀伸缩改正方法 利用框标改正像点坐标过程: ●量测框标样片上框标坐标) (y x' ',; 框标和格网分别 讨论。 注意: 介绍思路为主。

20.3度6度带高斯投影详解

3度6度带高斯投影详解 选择投影的目的在于使所选投影的性质、特点适合于地图的用途,同时考虑地图在图廓范围内变形较小而且变形分布均匀。海域使用的地图多采用保角投影,因其能保持方位角度的正确。 我国的基本比例尺地形图(1:5千,1:1万,1:2.5万,1:5万,1:10万,1:25万,1:50万,1:100万)中,大于等于50万的均采用高斯-克吕格投影(Gauss-Kruger),这是一个等角横切椭圆柱投影,又叫横轴墨卡托投影(Transverse Mercator);小于50万的地形图采用等角正轴割园锥投影,又叫兰勃特投影(Lambert Conformal Conic);海上小于50万的地形图多用等角正轴圆柱投影,又叫墨卡托投影(Mercator)。一般应该采用与我国基本比例尺地形图系列一致的地图投影系统。 地图坐标系由大地基准面和地图投影确定,大地基准面是利用特定椭球体对特定地区地球表面的逼近,因此每个国家或地区均有各自的大地基准面,我们通常称谓的北京54坐标系、西安80坐标系实际上指的是我国的两个大地基准面。我国参照前苏联从1953年起采用克拉索夫斯基(Krassovsky)椭球体建立了我国的北京54坐标系,1978年采用国际大地测量协会推荐的IAG 75地球椭球体建立了我国新的大地坐标系--西安80坐标系,目前GPS定位所得出的结果都属于WGS84坐标系统,WGS84基准面采用WGS84椭球体,它是一地心坐标系,即以地心作为椭球体中心的坐标系。因此相对同一地理位置,不同的大地基准面,它们的经纬度坐标是有差异的。 采用的3个椭球体参数如下(源自“全球定位系统测量规范GB/T 8314-2001”): 椭球体与大地基准面之间的关系是一对多的关系,也就是基准面是在椭球体基础上建立的,但椭球体不能代表基准面,同样的椭球体能定义不同的基准面,如前苏联的Pulkovo 1942、非洲索马里的Afgooye基准面都采用了Krassovsky椭球体,但它们的大地基准面显然是不同的。在目前的GIS 商用软件中,大地基准面都通过当地基准面向WGS84的转换7参数来定义,

MATLAB高斯投影正反算-白衣卿相

MATLAB高斯投影正反算-白衣卿相 正算.m文件代码*************************************************************** function GaoSiTouYingZS %UNTITLED Summary of this function goes here % Detailed explanation goes here %******* 6度带投影正算****** DB1=[17,33,55.7339]; DL1=[119,15,52.1159]; L0 = 117; B=DB1(1)+DB1(2)/60+DB1(3)/3600;%把B,l矩阵度分秒转换成度的小数形式 B=B/(180/3.141592654); %角度转弧度 L=DL1(1)+DL1(2)/60+DL1(3)/3600; l=L-L0; %克拉索夫斯基椭球参数 a=6378245.0; %长半轴 b=6356863.0187730473; %短半轴 c=6399698.901782711; %极点处曲率半径 ro=206264.806247096355; %角度转弧度常数 E1=(a^2-b^2)/a^2; %E2=e^2 E2=(a^2-b^2)/b^2; %E2=(e')^2 t=tan(B); YeTa2=E2*cos(B)*cos(B); v=sqrt(1+E2*cos(B)*cos(B)); m0=a*(1-E1); m2=3/2*E1*m0; m4=5/4*E1*m2; m6=7/6*E1*m4; m8=9/8*E1*m6; a0=m0+m2/2+3/8*m4+5/16*m6+35/128*m8; a2=m2/2+m4/2+15/32*m6+7/16*m8; a4=m4/8+3/16*m6+7/32*m8; a6=m6/32+m8/16; a8=m8/128; X=a0*B-a2*sin(2*B)/2+a4*sin(4*B)/4-a6*sin(6*B)+a8*sin(8*B)/8; N=c/v; x=X+N*sin(B)*cos(B)*(l*3600)^2/(2*ro^2)+N*sin(B)*cos(B)^3*(5-t^2+9*YeTa2+4*YeTa2^2)*(l*36 00)^4/(24*ro^4)+N*sin(B)*cos(B)^5*(61-58*t^2+t^4)*(l*3600)^6/(720*ro^6); y=N*cos(B)*l*3600/ro+N*cos(B)^3*(1-t^2+YeTa2)*(l*3600)^3/(6*ro^3)+N*cos(B)^5*(5-18*t^2+t

大地测量-高斯投影正反算

大地测量高斯投影正反算程序代码 课程:大地测量学基础 姓名:林江伟 学号:2008301610045 班级: 0804

界面如下: 输入数据计算:

using System; using System.Collections.Generic; using https://www.wendangku.net/doc/1a15311951.html,ponentModel; using System.Data; using System.Drawing; using System.Text; using System.Windows.Forms; namespace大地 { public partial class Form1 : Form { double B, L; double x, y; double X, Y; int N; double L0, l1; double p=206264.80625; public Form1() {

InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { //自动化控件显示初始值 radioButton2.Checked=true; radioButton3.Checked = true; textBox1.Focus(); textBox1.Text = textBox2.Text = textBox3.Text = textBox4.Text = textBox5.Text = textBox6.Text = "0"; this.richTextBox2.Text = "说明:输入的坐标需为按6°带投影且采用克氏椭球参数所得的国家统一坐标"; } private void button1_Click(object sender, EventArgs e) { //获取输入数据 double bb1=Convert.ToDouble(this.textBox1.Text); double bb2=Convert.ToDouble(this.textBox2.Text); double bb3=Convert.ToDouble(this.textBox3.Text); double ll1=Convert.ToDouble(this.textBox4.Text); double ll2=Convert.ToDouble(this.textBox5.Text); double ll3=Convert.ToDouble(this.textBox6.Text); //检查输入格式的正确性 if (bb1 >= 0 && bb1 <90 && bb2 >= 0 && bb2 < 60 && bb3 >= 0 && bb3 < 60) { B = bb1 * 3600 + bb2 * 60 + bb3; } else { MessageBox.Show("纬度输入格式不正确!", "警告"); return; } if (ll1 >= 0 && ll1<360 && ll2 >= 0 && ll2 < 60 && ll3 >= 0 && ll3 < 60) { L = ll1 * 3600 + ll2 * 60 + ll3; } else { MessageBox.Show("经度输入格式不正确!", "警告"); return; }

高斯投影正反算——包括3度和6度带的选择

// guass coordinateDlg.cpp : implementation file // #include "stdafx.h" #include "guass coordinate.h" #include "guass coordinateDlg.h" #include "math.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // CAboutDlg dialog used for App About class CAboutDlg : public CDialog { public: CAboutDlg(); // Dialog Data //{{AFX_DATA(CAboutDlg) enum { IDD = IDD_ABOUTBOX }; //}}AFX_DATA // ClassWizard generated virtual function overrides //{{AFX_VIRTUAL(CAboutDlg) protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support //}}AFX_VIRTUAL // Implementation protected: //{{AFX_MSG(CAboutDlg) //}}AFX_MSG DECLARE_MESSAGE_MAP() }; CAboutDlg::CAboutDlg() : CDialog(CAboutDlg::IDD) { //{{AFX_DATA_INIT(CAboutDlg) //}}AFX_DATA_INIT }

高斯投影正反算公式83

§8.3高斯投影坐标正反算公式 任何一种投影①坐标对应关系是最主要的;②如果是正形投影,除了满足正形投影的条件外(C-R 偏微分方程),还有它本身的特殊条件。 8.3.1高斯投影坐标正算公式: B,l ? x,y 高斯投影必须满足以下三个条件: ①中央子午线投影后为直线;②中央子午线投影后长度不变;③投影具有正形性质,即正形投影条件。 由第一条件知中央子午线东西两侧的投影必然对称于中央子午线,即(8-10)式中,x 为l 的偶函数,y 为l 的奇函数;0330'≤l ,即20/1/≈''''ρl ,如展开为l 的级数,收敛。 +++=++++=553316644220l m l m l m y l m l m l m m x (8-33) 式中 ,,10m m 是待定系数,它们都是纬度B 的函数。 由第三个条件知: q y l x l y q x ??-=????=??, (8-33)式分别对l 和q 求偏导数并代入上式 ----=++++++=+++553315 63424 42204 52 3164253l dq dm l dq dm l dq dm l m l m l m l dq dm l dq dm dq dm l m l m m (8-34) 上两式两边相等,其必要充分条件是同次幂l 前的系数应相等,即

dq dm m dq dm m dq dm m 231 20 13121? =? -== (8-35) (8-35)是一种递推公式,只要确定了 0m 就可依次确定其余各系数。 由第二条件知:位于中央子午线上的点,投影后的纵坐标x 应等于投影前从赤道量至该点的子午线弧长X ,即(8-33)式第一式中,当0=l 时有: 0m X x == (8-36) 顾及(对于中央子午线) B V M r M B N dq dB M dB dX cos cos 2 ==== 得: B V c B N r dq dB dB dX dq dX dq dm m cos cos 01===?===(8-37,38) B B N dq dB dB dm dq dm m cos sin 2 2121112=?-=?-= (8-39) 依次求得6543,,,m m m m 并代入(8-33)式,得到高斯投影正算公式

基于python的高斯投影计算

袁钱梅 (贵州省第二测绘院,贵州贵阳550000) 摘要: 本文基于python脚本语言编制了测量厂用的高斯投影正、反计算工具。有效的解决了在python及ARCGIS环境中高斯投影计算工作;并具有一定的灵活性。工具以在全国第一次地理国情普查数据生产中进行了批量性验证。 关键词:Python;高斯投影 1、Python语言概述 Python是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。Python吸收了Perl,TCL等脚本语言的优点,使得Python具备Tcl的扩展性,同时又具备Perl的文本解析和匹配能力。 2、高斯投影 高斯-克吕格投影是一种等角横轴切椭圆柱投影。它是假设一个椭圆柱面与地球椭球体面横切于某一条经线上,按照等角条件将中央经线东、西各3°或1.5°经线范围内的经纬线投影到椭圆柱面上,然后将椭圆柱面展开成平面而成的。 这种投影,将中央经线投影为直线,其长度没有变形,与球面实际长度相等,其余经线为向极点收敛的弧线,距中央经线愈远,变形愈大。赤道线投影后是直线,但有长度变形。除赤道外的其余纬线,投影后为凸向赤道的曲线,并以赤道为对称轴。经线和纬线投影后仍然保持正交。所有长度变形的线段,其长度变形比均大于1,随远离中央经线,面积变形也愈大。若采用分带投影的方法,可使

投影边缘的变形不致过大。我国各种大、中比例尺地形图采用了不同的高斯-克吕格投影带。其中大于1:1万的地形图采用3°带;1:2.5万至1:50万的地形图采用6°带。 3、Python模块 P博闻新闻ython是中许多功能是由一系列的模块组成的,每个模块可以是一个py为后缀的文件。模块也可以理解为lib库,如果需要使用某个模块中的函数或对象,则要导入这个模块才可以使用;除了系统默认的模块(内置函数)不需要导入。在实际使用中高斯投影计https://www.wendangku.net/doc/1a15311951.html,算是使用在实际工作中的各个部分的,为方便调用,采用Python的模块方式对高斯计算进行封装,可高效利用模块在不同的应用中进行计算。 4、高斯投影计算 高斯投影计算分正算和反算,正算为经纬度坐标计算到投影坐标;反算为投影坐标计算到经纬度坐标。高斯投影正算需要确定投影后的中央经度,及投影椭球参数信息;如采用CGCS2000坐标系及1980西安坐标系其采用椭球参数不同,经过正算的投影坐标即不同。 由于Python为脚本语言,其在进行科学计算时小数位取位是无法保证计算精度的,在Python中实现高斯投影计算单纯的使用其提供的基本计算函数是无法满足计算精度需求的,因此需要借助Python提供的模块进行提高精度计算。Python提供了decimal模块用于十进制数学计算,它具有以下特点: 1.提供十进制数据类型,并且存储为十进制数序列; 2.有界精度:用于存储数字的位数是固定的,可以通过decimal.getcontext ().prec=x 来设定,不同的数字可以有不同的精度;

相关文档
相关文档 最新文档