以神經網路直接將 3D 空間坐標
轉換至 2D TM 平面坐標
Coordinate Transformation from 3D Spatial
Coordinates to 2D TM Plane Coordinates Using
Artificial Neural Network
林老生
1
Lao-Sheng Lin
摘 要
神經網路,是由一些簡單的神經元或節點,按一定的方式連結成的非線性網路,具 有大量平行計算及分散儲存與處理的工作能力,並能透過自動學習樣本之間的關係,以 其非線性映射能力和無模型估計的特徵,有效解決問題。利用神經網路的特性,本文提 出一種倒傳遞神經網路法,可以直接將三維的空間直角坐標轉換至二維的地圖投影縱、 橫線坐標。利用內政部於西元2000
年至2003
年間,在台灣中部地區測量的283
個一等 水準點之資料(含空間直角坐標、大地坐標與地圖投影坐標),驗證本文所提出的演算 法。有關演算方法細節與實驗結果將於文中介紹與討論。 關鍵詞:空間直角坐標、地圖投影坐標、神經網路ABSTRACT
Artificial neural networks (ANNs) are composed of simple elements operating in parallel.
As in nature, the network function is determined largely by the connections between elements.
The network is adjusted, based on a comparison of the output and the target, until the network
output matches the target. Typically, many such input/target pairs are used to train a network.
In this paper, algorithms of applying a back-propagation artificial neural network to transform
the 3D spatial coordinates to 2D TM plane coordinates are proposed. A data set from Taiwan
Journal of Surveying Engineering (Reviewed Articles)
Volume 50, Number 3&4, December 2008, pp. 29-42
region is used to test the proposed algorithms. The proposed algorithms and the detailed test
results are presented in this paper.
Key words: Spatial Coordinate, Plane Coordinate, Artificial Neural Network
一、前 言
衛星定位測量技術,如全球定位系統(
GPS
)所獲得的點位坐標,為地心地固(Earth
Centered Earth Fixed, ECEF
)空間直角坐標(X, Y, Z
),但是為了方便製圖與其他工程上應用,則必須將三維的空間直角坐標轉換至二維的地圖投影縱、橫線坐標(
N, E
)。傳 統作法上,無法直接由(X, Y, Z
)轉換至(N, E
);因此,有了坐標轉換的問題。通常 的作法為:先由(X, Y, Z
)轉換至大地緯度、經度與橢球高(φ, λ, h
);然後,再由大地 緯度、經度(φ, λ
)轉換為縱、橫線坐標(N, E
)。 根據大地測量學原理,如果已知大地緯度、經度與橢球高(φ, λ, h
),以及地球原子 (如地球橢球的長半徑、扁平率等),則可以按照公式直接計算對應之空間直角坐標(X,
Y, Z
)(Rapp, 1983
)。另一方面,如果點位之空間直角坐標(X, Y, Z
)已知,欲求得對應 之(φ, λ, h
),則有很多學者提出各種不同的解法。有提出漸進的解法的,如Bowring
(1976)
,Heiskanen and Moritz (Rapp, 1983)
,Fukushima (1999)
,Jones (2002)
,Seemkooei
(2002)
等;也有提出非漸進的解法的,如Vicenty (Rapp, 1983)
,Ozone (1985)
,Borkowski
(1989)
,You (2000)
等。至於,大地緯度、經度(φ, λ
)與縱、橫線坐標(N, E
)之轉換, 則為地圖投影的問題。地圖投影的種類很多,如台灣地區地籍測量所採用的橫麥卡托(TM)
投影,則屬於正形投影的一種(尹鐘奇,1975
;史天元,2000
)。神經網路(
Artificial Neural Network
,ANN
)是由一些簡單的神經元或節點,按一定的方式連結構成的非線性網路,具有大量平行計算及分散儲存與處理的工作能力,並 能透過自動學習樣本之間的關係,以其非線性映射能力和無模型估計的特徵,有效解決 問題。目前在國內、外,神經網路在許多不同領域已有相當程度的應用性,譬如海洋工 程、商業金融、醫學、工業設計、影像處理、分類、
TWD67
與TWD97
地籍坐標轉換 (林老生與王奕鈞,200
7)、GPS
高程轉換(Lin, 2007)等各方面。 為了有效利用神經網路的特性,以解決3D
空間直角坐標與2D
地圖投坐標的轉換, 必須經過兩階段計算才能完成的問題,本文提出一種神經網路法,只要一階段,就可以 直接將三維的空間直角坐標(X, Y, Z
)轉換至二維的地圖投影縱橫線坐標(N, E
)。利2000
2003
283
空間直角坐標、大地坐標與地圖投影坐標),以驗證本文所提出的演算法。 首先,於第二章介紹空間直角坐標與大地坐標轉換的關係;然後,於第三章介紹大 地坐標與地圖投影坐標轉換的關係;第四章介紹倒傳遞神經網路的基本概念。利用倒傳 遞神經網路直接將空間直角坐標轉換為地圖投影坐標,則在第五章介紹;有關實驗結果 與討論,將於第六章介紹。最後,第七章為結論。
二、空間直角坐摽與大地坐標轉換
如果地面上某一點的大地坐標(φ, λ, h
)已知,則其對應的地心地固的空間直角坐 標(X, Y, Z
)(所謂的正算問題),可以由下列方程式直接計算(Rapp, 1983
):λ
φ cos
cos
)
(
N
h
X
=
+
(1)
λ
φ sin
cos
)
(
N
h
Y
=
+
(2)
φ
sin
)
(
N
h
e
2N
Z
=
+
−
(3)
式中,φ
、λ
、h
分別代表大地緯度、大地經度與橢球高;X
、Y
、Z
則代表地心地固 的三軸坐標值;e
2及N
分別代表地球橢球體(參考橢球體)的第一偏心率與卯酉圈曲 率半徑,由下列方程式求得: 2 2 2 2(
)
a
b
a
e
=
−
(4)
2 / 1 2 2sin
)
1
(
N
φ
e
a
−
=
(5)
式中,a
、b
分別代表參考橢球體的長半徑與短半徑。 另一方面,如果地面上某一點的地心地固的空間直角坐標(X, Y, Z
)已知,欲求其 對應的大地坐標(φ, λ, h
)(所謂的反算問題),則較為複雜,無法像求解正算問題一般, 可以直接由簡單的公式計算之。因而,有許多學者提出不同的解法,有的提出漸進的解 法,如Bowring (1976)
,Heiskanen and Moritz (Rapp, 1983)
,Fukushima (1999)
,Jones
(2002)
,Seemkooei (2002)
等;也有提出非漸進的解法的,如Vicenty (Rapp, 1983)
,Ozone
(1985)
,Borkowski (1989)
,You (2000)
等。現在,以Heiskanen and Moritz (Rapp, 1983)
所提出的漸進解法為例,以說明反算問題的解法: 由方程式(1)
及(2)
以及下式求得大地經度:X
Y
=
λ
tan
(6)
經過整理後,大地緯度與空間直角坐標的關係如方程式
(7)
(Rapp, 1984
),從方程式(7)
,可見大地緯度同時出現在方程式的兩邊,因此,必須用漸進方法求解。]
sin
1
[
tan
2 2 2Z
N
e
Y
X
Z
φ
φ
+
+
=
(7)
首 先 , 假 設 點 位 剛 好 位 在 橢 球 面 上 , 亦 即 橢 球 高h=0
, 由 方 程 式(3)
求 得φ
sin
)
1
(
e
2N
Z
=
−
,方程式(7)
可以寫成為:]
1
1
[
tan
2 2 2 2 1e
e
Y
X
Z
−
+
+
=
φ
(8)
利用方程式(8)
求得大地緯度的近似值後,代入方程式(7)
,以漸進方法求得大地緯 度。 利用方程式(7)
求得的大地緯度以及方程式(1)
、(2)
,由下式求得橢球高h
:N
Y
X
h
=
+
−
φ
cos
2 2(9)
或是利用方程式(7)
求得的大地緯度以及方程式(3)
,由下式求得橢球高h
:N
e
N
Z
h
2sin
−
+
=
φ
(10)
三、大地坐標與地圖投影坐標轉換
由於大地坐摽是以參考橢球面為基礎的坐標系統,然而,參考橢球面為
一個不可展的曲面,為了應用方便,必須將大地坐摽透過地圖投影方式,轉
換為地圖投影坐標。所謂地圖投影:就是將椭球面各元素(包括坐標、方向
和長度)按一定的數學法則投影到平面上。
不同於大地坐標系,二度分帶TM
坐標系為一等形投影(Conformal Mapping)
。所 謂TM
,即為橫麥卡脫(Transverse Mercator)
之縮寫。此一投影,乃將球面直角坐標系統加以變化而成,為蘭勃氏
(Johann Heinrich Lambert)
於1772
年所首創。高斯(Gauss)
於1822
年完成解析推導及理論證明。於
1912
年,克魯格(L. Krueger)
提出較適合數值計算之公式,而這些公式便沿用迄今。自
1927
年起,德國便採用此一投影模式為其全國測量製卡脫投影之橫向投影相近,乃名之為橫麥卡脫投影(史天元,
2000
)。 橫麥卡脫投影,以所採用帶寬之不同,有6
度分帶,3
度分帶及2
度分帶等之劃分(
史 惠順,1977)
。目前,台灣全省三角網及基本圖之測製,均基於二度分帶之橫麥卡脫投 影,在本文中,稱為二度分帶TM
。 台灣本島地區二度分帶TM
之規定為: 中央經線 為東經121°
,中央經線尺度比率(K)
為0.9999
,坐標原點為中央子午線與赤道交點,橫 坐標西移250,000 m
(史天元,2000
)。 大地坐標與地圖投影坐標(二度分帶TM
坐標)轉換,也有所謂正算問題與反算問 題。所謂TM
投影正算問題:已知椭球面上某點的大地坐標(φ, λ
),可以用方程式(12)
、(19)
,求該點在TM
投影平面的直角坐標(x, y
)(尹鍾奇,1975;史天元,2000)。請注 意:為了避免與卯酉圈曲率半徑的符號N
相混,這裡用暫時用(x, y
)代替慣用的橫線 坐標E
、縱線坐標N
。(
2 4)
5 5 5 3 2 3 3tan
tan
18
5
cos
120
1
tan
cos
6
1
cos
λ
ϕ
ϕ
ϕ
ρ
λ
ϕ
ϕ
ρ
λ
ϕ
ρ
′′
Δ
+
−
+
′′
Δ
⎟
⎠
⎞
⎜
⎝
⎛
−
+
′′
Δ
=
N
M
N
N
N
x
(11)
250000
+
= K
x
x
(12)
(
2)
4 3 4 22
sin
cos
5
tan
24
1
cos
sin
2
1
ρ
ϕ
ϕ
Δ
λ
′′
+
ρ
ϕ
ϕ
−
ϕ
Δ
λ
′′
+
=
y
N
N
y
D(13)
)
)
6
sin
6
(sin
6
1
)
4
sin
4
(sin
4
1
)
2
sin
2
(sin
2
1
)
(
(
)
1
(
0 0 0 0 2ϕ
ϕ
ϕ
ϕ
ϕ
ϕ
ϕ
ϕ
−
−
−
+
−
−
−
−
=
D
C
B
A
e
a
y
D(14)
6 4 2256
175
64
45
4
3
1
+
ϕ
+
ϕ
+
ϕ
=
A
(15)
6 4 2512
525
16
15
4
3
ϕ
+
ϕ
+
ϕ
=
B
(16)
6 4256
106
64
15
ϕ +
ϕ
=
C
(17)
6512
35 ϕ
=
D
(18)
y
K
y =
(19) 式中,M 與 N 代表子午圈與卯酉圈的曲率半徑,ρ
=
1
/
sin
1
′′
=
206264
.
8062
,)
(
λ
λ
0λ
′′
=
−
Δ
,λ
0為中央經線,ϕ
0為赤道之緯度,K=0.9999。M 可由下式求得: 2 / 3 2 2 2)
sin
1
(
)
1
(
ϕ
e
e
a
M
−
−
=
(20) 所謂 TM 投影反算問題:已知在 TM 投影平面的直角坐標(x, y),可以用方程式(24)、 (25),求該點在椭球面上某點的大地坐標(φ, λ)(尹鍾奇,1975;史天元,2000)。首 先,需就橫坐標平移及尺度比轉換:K
x
x
=
( −
250000
)
/
(21)K
y
y
=
/
(22)9999
.
0
=
K
(23)(
2 1)
3 1 1 1 4 1 1 1 21
2
tan
ϕ
ρ
24
tan
ϕ
ρ
5
3
tan
ϕ
ϕ
ϕ
=
−
+
+
N
M
x
N
M
x
(24) 式中,ϕ
1為以y
除以子午線上相應於y
處之 1 秒的弧長所得,為緯度ϕ
之近似值。 1 1, N
M
分別為該點之子午線曲率半徑與卯酉圈曲率半徑。λ
λ
λ
=
0+
Δ
(25)(
2 1 4 1)
5 1 1 5 1 2 1 1 3 1 1 3 1 1tan
24
tan
28
5
120
sec
tan
2
6
sec
sec
ϕ
ϕ
ρ
ϕ
ϕ
ρ
ϕ
ρ
ϕ
λ
+
+
+
⎟⎟⎠
⎞
⎜⎜⎝
⎛
+
−
=
Δ
N
x
M
N
N
x
N
x
(26)四、神經網路
神經網路的架構可被想像成包含多個節點或神經元的多層次架構,其中假設神經元 為神經網路的基本處理單元,亦為組成隱藏層的主要元素。藉由隱藏層中的每一個神經 元,連結輸入資料與輸出資料。每一個神經元,可對應多個輸入與輸出資料,而同一隱 藏層間神經元不互相連結。圖 1 所示,為單一隱藏層的神經網路架構,包含一個輸入層、 一個隱藏層以及一個輸出層,其個別定義簡介如下(林老生與王奕鈞,2007): 1.輸入層(Input Layer): 「層」是由多個節點所組成,使網路內節點的連結可以簡化為層與層之間的連結。輸入層,在網路架構中為接受資料並輸入訊息之一方,通常以一層表示。其處理單元數 目,如圖 1 中之
X L
1X
Ni,視輸入內容而定,用以表現網路的輸入變數。 2.輸出層(Output Layer): 在網路架構中,為提供資料輸出之一方,通常以一層表示。其處理單元數目,如圖 1 中之Y L
1Y
N0,視輸出的內容而定,用以表現網路的輸出變數。 3.隱藏層(Hidden Layer): 介於輸入層與輸出層,其層內之神經元數目,如圖 1 中之H L
1H
NH,並無標準方法 可以決定。通常需以試驗方式,來決定其最佳數目。 圖 1 神經網路架構圖五、以神經網路直接將 3D 空間直角坐摽轉換至 2D TM 平
面坐標
根據前面所述,如果已知地面點位的空間直角坐標(X, Y, Z),要計算其對應之二 度分帶 TM 坐標(N, E)。首先,必須利用某種坐標反算法,如方程式(6)至(10)所述,求 得大地坐標(φ, λ, h);然後,再將大地坐標(φ, λ)以方程式(11)至(19),求得二度分帶 TM 坐標(N, E),其間所用的理論與方程式較為繁雜。所以,如果有辦法直接將空間直 角坐標轉換為二度分帶 TM 坐標,將可以簡化上述繁雜的手續。因此,本文提出一種方 法,利用神經網路,直接將空間直角坐標轉換為二度分帶 TM 坐標(以下簡稱 TM 坐標)。利用神經網路直接將空間直角坐標轉換為
TM
坐標的基本概念為:(1)
因為,空間直 角坐標與TM
坐標之間,具有某種函數關係(如第二章、第三章所列方程式)。(2)
神經 網路的特性之一,為其可以透過樣本(如已知具有直角坐標與TM
坐標等兩種坐標系統 的參考點)的訓練,將上述空間直角坐標與TM
坐標之間的函數關係建立起來。(3)
若神 經網路的學習結果,符合預期之精度要求,則輸入待轉換點之空間直角坐標,以利用已 訓練好的神經網路,求得該點相對應之TM
坐標(N, E
)。 利用神經網路直接將空間直角坐標轉換為TM
坐標的基本程序為:(
一)
若某一區域內,有n
個同時具有空間直角坐標(X, Y, Z
)與二度分帶TM
坐標(N,
E
)之已知共同點,要利用神經網路求出其間轉換關係,首先要將這些點位定義為 參考點,也就是所謂的訓練樣本,以其來訓練神經網路。因此,可以利用n
個已知 參考點之空間直角坐標(X, Y, Z
)與二度分帶TM
坐標(N, E
)集合,{
P
P
P
n}
P
=
1,
2,
L
,
,對神經網路進行訓練,其中:n
i
N
E
Z
Y
X
P
i=
(
i,
i,
i,
i,
i,
)
=
1
,
2
,...,
(27)
式中,n
代表已知參考點的數量;所採用的神經網路,為單一隱藏層的神經網 路架構(如圖1
所示);其中輸入層含3
個元素(
X
i,
Y
i,
Z
i)
,輸出層含2
個元素)
,
(
E
iN
i 。(
二)
當輸入層與輸出層之間的映射關係建立之後,可以用下式表示兩者間關係:(
)
(
X
Y
Z
)
G
N
Z
Y
X
F
E
,
,
,
,
=
=
(28)
F
、G
分別為(X, Y, Z
)與(N, E
)坐標間之映射函數,內存於神經網路中。(
三)
經過數個學習循環之後,若學習之結果符合我們預期之精度要求,則可以利用已訓 練好的神經網路,輸入待轉換點之空間直角坐標(X, Y, Z
),透過(28)
式,即可求得 該點相對應之二度分帶TM
坐標(N, E
)。六、實驗結果與討論
6.1 實驗區資料 內政部於西元2000
年至2003
年間,在台灣全島埋設2065
個一等水準點,並於各 水準點上實施水準、GPS
及重力等測量工作,建立台灣新的高程基準。這2065
個水準 點除了有正高與橢球高等高程資料外,也同時具有TWD97
(Taiwan Datum 1997
)大地 基準之空間直角坐標(X, Y, Z
)、大地坐標(φ, λ, h
)及二度分帶TM
坐標(N, E
)等三組坐標成果。 為了試驗本文所提出的方法,將內政部所提供的台灣本島中部地區(含台中縣市及 南投縣,涵蓋面積範圍,在縱線與橫線方向各佔約 103 公里與 116 公里)的 283 個一等 水準點之坐標資料(含空間直角坐標、大地坐標與地圖投影坐標),分成兩組,一組資 料共 142 點當作參考點,用來訓練神經網路;另一組資料共 141 點當作檢核點,用來評 估坐標轉換的精度。 6.2 實驗方法 本 研究 所使用 之神 經網路 軟體 ,為 Math Works 公 司開發 的科 技應用 軟 體 MATLAB7.0 中的神經網路工具箱所提供的函數功能,以其撰寫倒傳遞神經網路直接將 空間直角坐標(X, Y, Z)轉換為二度分帶 TM 坐標(N, E)之坐標轉換程式。所使用的 神經網路架構為三層次的架構;在進行神經網路參數設定時,以試誤法,逐一進行試驗。 在實驗資料方面,於台灣本島中部地區共有 283 共同點,其中區分 142 點為參考點, 141 點為檢核點。參考點的作用,在於訓練神經網路,以求得兩個不同坐標系(如空間 直角坐摽與二度分帶 TM 坐標)之間的函數映射關係。檢核點的作用,為評估坐標轉換 精度。 為了評估坐標轉換精度,有關參數如
Δ
N
、Δ
E
、Δ
P
、Δ
ϕ
、Δ
λ
、Δ
h
的定義如 下: estimated i known i i estimated i known i i estimated i known i i i i estimated i known i i estimated i known i ih
h
h
n
i
N
E
P
N
N
N
E
E
E
i−
=
Δ
−
=
Δ
=
−
=
Δ
Δ
+
Δ
=
Δ
−
=
Δ
−
=
Δ
λ
λ
λ
ϕ
ϕ
ϕ
,
1
,
2
,
,
2 2L
(29) 式中,(
N
iknown,
E
iknown)
,為 i 點已知的二度分帶 TM 坐標系之縱、橫線坐標。(
estimated)
i estimated iE
N
,
,為利用神經網路、或其他坐標轉換方法所估計之 i 點的二度分帶(
estimated)
i estimated i estimated i,λ
,
h
ϕ
為利用神經網路、或其他坐標轉換方法所估計之i
點的大地 坐標。σ
ΔN、σ
ΔE、σ
ΔP、σ
Δϕ、σ
Δλ、σ
Δh,則分別代表所有Δ
N
、Δ
E
、Δ
P
、Δ
ϕ
、λ
Δ
、Δ
h
的中誤差。 6.3 實驗結果與討論1.
神經網路應用於直接將3D
空間直角坐摽轉換至2D
地圖投影坐標轉換有關參數值設定 之實驗 利用神經網路方式進行坐標轉換時,事先需決定許多重要的參數,網路才能夠有效運 作及演算。其中,對於轉換結果影響最大的,為訓練函數以及隱藏層神經元數目。其 中有關訓練函數的選擇,根據林老生與王奕鈞(2007
)的實驗,以採用‘trainbr’ (Bayesian
regularization backpropagation)
(Demuth and Beale
,2002
)為訓練函數所得的精度最佳,所以本文所有神經網路實驗,皆採用
‘trainbr’
為訓練函數。因此,以下僅針對決定 隱藏層神經元數目部分進行相關實驗分析。 為了探討適合台灣中部地區,以神經網路執行空間直角坐標轉換二度分帶TM
投影坐 標的隱藏層神經元最佳數目為何?首先,改變隱藏層神經元數目為:5, 10, 15, 20, 2
5, 每次改變神經元數目後,皆以參考點之已知坐標值訓練神經網路,然後再以檢核點之 已知坐標值評估神經網路的坐標轉換精度,其結果如表1
與表2
所示。從表1
與表2
結果顯示,適合於台灣中部地區的最佳的隱藏層神經元數目為15
個,因為不管參考 點或是檢核點,其對應之σ
ΔE、σ
ΔN、σ
ΔP值皆為最小。為了進一步確定此實驗結果, 改變隱藏層神經元數目為:10,12,14, 15,16, 18, 2
0,其結果如表3
與表4
所示。從表3
與表4
結果顯示,再一次證實適合於台灣中部地區的最佳的隱藏層神經元數目為15
個。 表1
台灣中部地區,神經元數目由5
至25
時,參考點對應之σ
ΔE、σ
ΔN、σ
ΔP 隱藏層神經元數目σ
ΔE(mm
)σ
ΔN(mm
)σ
ΔP(mm)
5 43.86
10.54 25.98
10 4.95 3.32 3.50
15 0.46 0.39 0.2620 19.89
16.00 18.22
25 34.26
82.54 48.25
表
2
台灣中部地區,神經元數目由5
至25
時,檢核點對應之σ
ΔE、σ
ΔN、σ
ΔP 隱藏層神經元數目σ
ΔE(mm
)σ
ΔN(mm
)σ
ΔP(mm)
5 45.24
10.33 28.23
10 8.15 4.00 7.36
15 0.48 0.46 0.3020 19.89
16.00 18.22
25 37.29
82.61 49.44
表3
台灣中部地區,神經元數目由10
至20
時,參考點對應之σ
ΔE、σ
ΔN、σ
ΔP 隱藏層神經元數目σ
ΔE(mm
)σ
ΔN(mm
)σ
ΔP(mm)
10 4.95 3.32 3.50
12 0.77 0.93 0.64
14 0.48 0.46 0.31
15 0.46 0.39 0.2616 13.31 6.16 8.98
18 21.64
15.13 20.58
20 19.89
16.00 18.22
表4
台灣中部地區,神經元數目由10
至20
時,檢核點對應之σ
ΔE、σ
ΔN、σ
ΔP 隱藏層神經元數目σ
ΔE(mm
)σ
ΔN(mm
)σ
ΔP(mm)
10 8.15 4.00 7.36
12 1.72 1.10 1.64
14 0.48 0.54 0.35
15 0.48 0.46 0.3016 13.50 7.27 10.07
18 22.54
15.28 21.78
20 19.89
16.00 18.22
2.
神經網路應用於直接將3D
空間直角坐摽轉換至2D
地圖投影坐標轉換之精度分析(1)
應用神經網路直接將3D
空間直角坐標(X, Y, Z
)轉換至二度分帶TM
坐標(N, E
) 之精度分析 根據上述實驗結果顯示,適合於台灣中部地區的最佳的神經網路隱藏層神經元數目為