TRANSFORMACJA WSPÓŁRZĘDNYCH

I.  Metody transformacji:

Transformacja izometryczna - sztywne ruchy płaszczyzny, przez obrót i przesunięcie.

Transformacja Helmerta (liniowa transformacja konforemna przez podobieństwo)  -  (ang. similarity transformation) – realizuje obrót, przesunięcie i dodatkowo przeskalowuje współrzędne układu pierwotnego.

W algorytmie transformacji Helmerta występuje współczynnik skali   jeden dla całego rozpatrywanego obszaru.

Transformacja afiniczna  affine transformation.
Transformacje afiniczne  przekształcają proste i płaszczyzny na proste i płaszczyzny,  zachowując równoległość  prostych nie zachowują  kątów, zmieniają  skalę  osi współrzędnych X i Y.

Transformacja ta nie jest jednak konforemna i dlatego  długości i kąty w układzie współrzędnych przeliczonych mogą ulegać zmianom.

Transformacje wielomianowe afiniczne (ogólne) dają bardzo dobre wyniki przy kalibracji obrazów rastrowych.

Transformacja afiniczna zmienia geometrię sieci, na rzecz minimum odchyłek na punktach dostosowania.

 

II. Przeliczenie współrzędnych prostokątnych z jednego układu prostokątnego na drugi układ prostokątny.

1.       Przeliczenie współrzędnych przy 2 punktach dostosowania

XP

 
Stosuje się dla mniejszych obszarów, które można przyjąć za płaskie

X0W

 

Yw

 
 

 

 

 

 

 

 

 

 


xW = x0W + xP*cos(G) –yP*sin(G)

yW = y0W + yP*cos(G)+xP*sin(G)

G – gamma – kąt skrętu układu pierwotnego względem wtórnego

x0W, y0w – współrzędne początku układu pierwotnego w układzie wtórnym

Jeżeli występuje niezgodność długości to należy uwzględnić współczynnik redukcji r = dW/dP

xW = x0W + xP*r*cos(G) –yP*r*sin(G)   (1)

yW = y0W + yP*r*cos(G)+xP*r*sin(G)

oznaczając  r*cos(G)=v   oraz  r*sin(G)=u

xW = x0W + v*xP – u*yP   

yW = y0W + v*yP  + u*xP

 

Jeśli są przynajmniej 2 punkty o danych współrzędnych – punkty dostosowania to:

r=sqrt(dxw^2+dyw^2)/sqrt(dxp^2+dyp^2)

tg(G) = tg(Aw-Ap) = (tg(Aw)-tg(Ap))/(1+tg(Aw)*tg(AP)) = (dxp*dyw-dyp*dxw)/(dxp*dxw+dyp*dyw)

w formie rachunkowej

f  =         tg(G) = |dxp      dyp|                     tg(G) = f1/f2 = f0

                                |dxw     dyw|0  

Współrzędne wtórne początku układu pierwotnego można wyznaczyć po przekształceniu wzoru (1)

 x0W = xW  - xP*r*cos(G) + yP*r*sin(G)

 y0W  = yW + yP*r*cos(G) - xP*r*sin(G)

dxw = dxp*cos(G) - dyp*sin(G)

dyw = dyp*cos(G) + dxp*sin(G)

Uwzgledniając współczynnik r  oraz oznaczając  r*cos(G)=v   oraz  r*sin(G)=u

dxw = dxp*r*cos(G) - dyp*r*sin(G) = v*dxp – u*dyp

dyw = dyp*r*cos(G) + dxp*r*sin(G) = v*dyp + u*dxp

 

Wzory te można zapisać w postaci symboli rachunkowych prof. Hausbrandta:

F =          | dxp     dyp|                     dxw=F1               = v*dxpu*dyp

                |u           v     |                      dyw=F2 = u*dxp + v*dyp

 

Współczynniku u i v można obliczyć stosując formy Hausbrandta

F =  |dxp    dyp|                               u=f[1]

       |dxw  dyw|                                v=f[2]

 

2.  Transformacja współrzędnych przy więcej niż 2 punktach dostosowania – wzory Hausbrandta

 

Jeśli jest n>2 punktów dostosowania to tworzymy tzw. biegun przekształcenia,
którego współrzędne są średnimi arytmetycznymi wszystkich współrzędnych punktów dostosowania w obu układach.

Współrzędne bieguna:

x0P = [xP]/n   y0P=[yP/n

x0W = [xW]/n   y0W=[yW/n

 

Współczynniki przekształcenia u i v liczy się na podstawie współrzędnych bieguna i każdego
z punktów dostosowania:

 

F = | dx01P   dy01P  | dx02P dy01P    | … | dx0nP dy0nP |

      | dx01W dy01W  | dx02W dy01W   | … | dx0nP dy0nP |

u = F[1]                  v = F[2]   

Jest to transformacja Helmerta w ujęciu prof. Hausbrandta.

 

3.  Transformacja współrzędnych  płaskich metodą Helmerta
– współczynniki Xo, Yo, Z, T

Transformacja współrzędnych płaskich metodą Helmerta jest czę­sto stosowaną w praktyce,
m.in. ze względu na wygodny sposób ob­liczeń, w którym przy następnych masowych obliczeniach nie trze­ba już podawać punktów dostosowania a wykorzystuje się określone współczynniki.

W celu uzyskania wymaganej dokładności transformacji praktycz­ny jest iteracyjny sposób obliczeń współczynników z kolejnym od­rzuceniem punktów o największych odchyłkach liniowych aż do osiągnięcia zadanego błędu transformacji.

Na podstawie wyznaczonych w ten sposób współczynników transformacji:
skrętu T, 
zniekształ­cenia Z 
i współrzędnych Xo, Yo początku układu pierwotnego w układzie wtórnym,
można obliczyć kąt skrętu Fi  i współczynnik ska­li q  ze wzorów:

Fi= arc ctg (T/(1+Z)

q=sqrt((1+Z)^2 + T^2)  = (1+Z)/cos(Fi) = T/sin(Fi)

gdzie:

Fi=A-A – różnica azymutów w układzie wtórnym XY i pierwotnym X’Y

q=s/s’ – stosunek długości w układzie wtórnym s i pierwotnym s’

Współczynniki T, Z, Xo, Yo pozwalają wykonywać przeliczenia z układu pierwszego (pierwotnego) X’Y’ na układ drugi (wtórny) X,Y według wzorów:

X=Xo+(1+Z)*X’ – T*Y

Y=Yo+(1+Z)*Y’+T*X

Chcąc wykonać przeliczenia z układu drugiego XY na układ pier­wszy X'Y'
przy znajomości współczynników transformacji z układu pierwszego na drugi
można postąpić dwojako:

a)     zastosować zmienione wzory transformacji:

X’ = ( (1+Z)*(X-Xo) +T*(Y-Yo) ) / ( (1+Z)^2 + T^2 )

Y’ = ( (1+Z)*(Y-Yo) -T*(X-Xo) ) / ( (1+Z)^2 + T^2 )

b)     obliczyć odwrotne współczynniki transformacji i stosować zwykłe wzory:                                                                   

 

T ’ =  - T / (  (1+Z)^2 + T^2 )

Z ’ = ( 1+Z ) / ( (1+Z)^2 + T^2 ) – 1

X ’ = ( - 1 + Z ) * (XoT*Yo) ) / ( (1+Z)^2  + T^2 )

Y ’ = ( - 1 + Z ) * (Yo + T*Xo) ) / ( (1+Z)^2  + T^2 )

X ’ = Xo + (1+Z’)*X – T’*Y

Y ’ = Yo + (1+Z’)*Y +T’*X

Z obliczonych wartości T’, Z’, Xo’, Zo można obliczyć analogicznie Fi’ i q’

Fi’= arc ctg (T’/(1+Z’)

q’=sqrt((1+Z’)^2 + T’^2)  = (1+Z’)/cos(Fi’) = T’/sin(Fi’)

Współczynniki Fi’ i q’ związane są z Fi i  q następującymi zależnościami:

Fi’ = 400[grad] – Fi

q’ = 1/q

Jeśli nie są znane bezpośrednie współczynniki do przeliczenia współrzędnych
z układu I  na układ III, a znane są współczynniki pośrednie między układami I i II
oraz II i III
to można obliczyć współczynniki wypadkowe.
Współczynniki wypadkowe można obliczyć też dla większej ilości współczynników pośrednich.

 

4.  Transformacja afiniczna

Stanowi jedno z zastosowań przekształcenia afinicznego (kolinearnego) i polega na przeliczeniu współrzędnych punktów z układu pierwotnego na wtórny przy założeniu, że współrzędne C, Y w układzie wtórnym s a funkcjami liniowymi współrzędnych pierwotnych x, y.

X = a1*x + b1*y + c1

Y = a2*x + b2*y + c2

Podobne jak w metodzie Helmerta zakłada się niezmienność współrzędnych punktów dostosowania. Transformacja ta nie jest jednak konforemna i dlatego  długości i kąty w układzie współrzędnych przeliczonych mogą ulegać zmianom.

Wyznaczenie wartości 6 współczynników transformacji: a1, a2, a3, b1, b2, b3 wymaga 3 punktów dostosowania.

Transformacjami afinicznymi nazwano przekształcenia reprezentujące przesunięcie, obrót
i skalowanie.
Jest to jednoznaczne przekształcenie płaszczyzny lub przestrzeni na siebie, zachowujące współliniowość punktów.
Przykładami przekształceń afinicznych są izometria, podobieństwo i powinowactwo osiowe. Transformacja afiniczna jest przekształceniem wzajemnie jednoznacznym prostej w prostą, płaszczyzny w płaszczyznę i przestrzeni w przestrzeń.
Przekształcenie to zachowuje na płaszczyźnie stosunek długości boków odcinków a w przestrzeni stosunki pól figur leżących na płaszczyznach równoległych.
Znaczy to, iż linie równoległe i środki odcinków transformacja ta zachowuje, zmieniane są natomiast długości odcinków i wartości kątów.
Zapisano równanie transformacji afinicznej w notacji macierzowej

W równaniu a, b, c, d są odpowiedzialne za obrót, c i f natomiast to przesunięcie o wektor.

Transformacje afiniczne  przekształcają proste i płaszczyzny na proste i płaszczyzny,  zachowując równoległość  prostych nie zachowują  kątów, zmieniają  skalę  osi współrzędnych X i Y.

                        Xw = a1 Xp+b1 Yp +c1

                        Yw = a2 Xp+b2 Yp +c2

Xw , Yw - układ wtórny (np. mapy numerycznej)

Xp , Yp - układ pierwotny (np. mapy rastrowej)

 a1 , b1 , c1 , a2 ,b2 , c2 -  współczynniki transformacji

 a1 = kX cosγX , b1 = -kY sinγY ,

 a2 = kX sinγX , b2 = kY cosγY ,

X0 = c1 , Y0 = c2 .

kX = sqrt(b1*b1+b2*b2)    kY =sqrt(a1*a1+a2*a2)   - współczynniki skali

γX =arctan(b1/b2); γY =arctan(a2/a1)   – kąty obrotu

 

5.  Transformacje wielomianowe

Wielomianowe odwzorowania wiernokątne  (transformacje afiniczne wyższych rzędów)
stosowane są zazwyczaj do odwzorowania dużych obszarów o zmiennych skalach i skręceniach.

X = a0 + a1*x + a2*y + a3*x*y +a4 *x^2 + a5*y^2 + …

Y = b0 + b1*x + b2*y + b3*x*y +b4 *x^2 + b5*y^2 + …

 

III. Popularne programy komputerowe do obliczeń transformacji

Dokonanie obliczeń transformacji możliwe jest w większości komputerowych programów geodezyjnych, np.  C-Geo, Winkalk i Geonet_unitrans.

W programie C-Geo moduł Transformacja w współrzędnych umożliwia transformację Helmerta
i afiniczną. Wyboru dokonuje się przez wybór ikony H lub A.

W metodzie Helmerta potrzebne jest wprowadzenie minimum 2 punktów dostosowania a w metodzie afinicznej 3 punktów.

 

Program GEONET_unitrans autorstwa prof. R. Kadaja służy głównie do przeliczeń współrzędnych między układami na obszarze całej Polski, pozwala wyznaczać parametry transformacji dla układów lokalnych oraz przeliczać wysokości elipsoidalne na normalne.

Są też specjalne dodatki – 3 moduły: programy obliczeniowe sieci GPS, konwersja map numerycznych dla MicroStation, konwersja map numerycznych dwg dla AutoCAD.

Moduł UNITRANS umożliwia przeliczenie współrzędnych miedzy różnymi układami:
1965 – strefy 1, 2, 3, 4, 5. Strefy 1-4 dotyczą odwzorowania quasi stereograficznego, a strefa 5 – Gaussa-Krugera.

1942  - odwzorowania Gaussa-Krugera w pasach południkowych 3 lub 6 – stopniowych. Pasy 3-stopniowe obejmują 4 strefy z południkami środkowymi 150, 180, 210 i 240 a6-stopniowe 2 strefy
z południkami 150 i 210.

1992 – nowy jednostrefowy układ dla Polski – odwzorowanie Gaussa-Krugera elipsoidy GRS-80 z południkiem środkowym 19 stopni i skalą na tym południku m=0,9992

2000 – nowy 4-stopniowy układ odwzorowania elipsoidy GRS-80, utworzony analogicznie jak układ 1942 dla pasów 3-stopniowych.

BLh | GRS-80 – układ współrzędnych geograficznych – geodezyjnych na elipsoidzie GRS-80.

BLH | Krasowski - układ współrzędnych geograficznych – geodezyjnych na elipsoidzie Krasowskiego.

UTM – międzynarodowy (wojskowy, nawigacyjny) układ współrzędnych powstały poprzez odwzorowania Gaussa-Krugera, elipsoidy GRS-80 w pasach 6-stopniowych ze skalą na każdym południku środkowym m=0,9996.

GUGiK-80 – jednostrefowy dla Polski układ kartograficzny dla map przeglądowych 1:100000 lub mniejszych, powstały przez odwzorowania quasi stereograficzne elipsoidy Krasowskiego.

Układy lokalne, np. KRAKÓW, ŁÓDŹ.