[Talk-cz] RUIAN posun - konečné řešení?

=?UTF-8?Q?Petr_Mor=c3=a1vek_ =?UTF-8?Q?Petr_Mor=c3=a1vek_
Pondělí Prosinec 26 22:55:10 UTC 2016


Dne 24.12.2016 v 00:04 Ha Noj napsal(a):
>> 1) Dělám něco špatně já?
> *** GRID je spočítán mezi ETRS89 a JTSK, takže by tam mělo být ještě
> něco mezi ETRS89 a WGS84. Ale nepotěším tě, neboť to dělá jen cca 30 cm.
> 
> echo "18.845223 49.547998" | cs2cs +init=epsg:4326 +to +init=epsg:4258
> +towgs84="0.0473,0.0467,-0.0253,0.000891,0.00539,-0.008772,-0.00158" -f
> "%.6f" | cs2cs +init=epsg:4258 +to +init=epsg:5514
> +nadgrids=./jezek08_jtskcz.llb -f "%.3f"
> -432758.771    -1136759.330 -0.009

Uff, musím říct, že tvoje zmínka o ETRS89 (a rozdílnosti oproti WGS84)
pro mne otevřela nová dvířka, která si nejsem jistý, že jsem chtěl
otevřít :-))

Zajímalo by mne odkud pochází tvoje transformační parametry towgs84?
Vůbec se mi je nepodařilo nikde vygooglit a obecně jsem ve spoustě
zdrojů narážel na doporučení považovat oba systémy za "shodné". A když
se podívám na definici v /usr/share/proj/epsg tak tam je:

> # ETRS89
> <4258> +proj=longlat +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +no_defs  <>


Snažil jsem se dál empiricky dopátrat, jaké transformace provádí ČÚZK.
Jako dataset jsem použil adresní místa - pro každou obec (>6000) jsem
náhodně vybral jedno adresní místo (to by snad mělo zajistit
reprezentativní vzorek).
Z WFS jsem pak stáhl souřadnice v EPSG:4258 a EPSG:4326, na ně vyzkoušel
různé transformace a výsledek porovnával s původními souřadnicemi v
EPSG:5514 z WFS.
A mám pocit, že čím víc se v tom rýpu, tím větší zmatek v tom mám :/


1) EPSG:4258 -> EPSG:5514 pomocí gridu, např.
echo "16.914199 49.148716" | cs2cs +init=epsg:4258 +to +init=epsg:5514
+nadgrids=czech -f "%.3f"
-576504.892 -1168238.275 -0.000
Výsledná odchylka na souboru adresních bodů:
4 +/- 2 cm (max. 15 cm)
HURÁ! Zdá se, že grid skutečně funguje skvěle a souhlasí s tím, co
posílá ČÚZK.


2) EPSG:4258 -> EPSG:5514 pomocí sedmiprvkové transformace, např.
echo "16.914199 49.148716" | cs2cs +init=epsg:4258 +to +init=epsg:5514
+towgs84="570.8,85.7,462.8,4.998,1.587,5.261,3.56" -f "%.3f"
-576504.701 -1168238.186 -44.382
Výsledná odchylka na souboru adresních bodů:
16 +/- 11 cm (max. 82 cm)
Podle očekávání dává sedmiprvková transformace horší výsledky.


3) EPSG:4326 -> EPSG:5514 pomocí gridu, např.
echo "16.914193 49.148715" | cs2cs +init=epsg:4326 +to +init=epsg:5514
+nadgrids=czech -f "%.3f"
-576505.338 -1168238.341 0.000
Výsledná odchylka na souboru adresních bodů:
18 +/- 16 cm (max. 116 cm)
Tohle je to, co používám teď na import administrativních hranic (AFAIK
to samé je na poloha.net) a řeším, proč se ta čísla v některých
případech rozcházejí o více jak metr.


4) EPSG:4326 -> EPSG:4258 -> EPSG:5514 pomocí gridu, např.
echo "16.914193 49.148715" | cs2cs +init=epsg:4326 +to +init=epsg:4258
+towgs84="0.0473,0.0467,-0.0253,0.000891,0.00539,-0.008772,-0.00158" -f
"%.8f" | cs2cs +init=epsg:4258 +to +init=epsg:5514 +nadgrids=czech -f "%.3f"
-576505.114 -1168238.150 -0.009
Výsledná odchylka na souboru adresních bodů:
31 +/- 10 cm (max. 86 cm)
Nápad s přidáním transformace WGS84<->ETRS89 sice stáhnul maximální
chybu o těch 30 cm, na druhou stranu průměrná chyba šla nahoru, takže
tohle asi taky nebude správná cesta (?)


5) EPSG:4326 -> EPSG:5514 pomocí sedmiprvkové transformace, např.
echo "16.914193 49.148715" | cs2cs +init=epsg:4326 +to +init=epsg:5514
+towgs84="570.8,85.7,462.8,4.998,1.587,5.261,3.56" -f "%.3f"
-576505.148 -1168238.251 -44.382
Výsledná odchylka na souboru adresních bodů:
14 +/- 7 cm (max. 36 cm)
Tohle je další překvapení - tahle cesta nejlépe reprodukuje transformaci
ČÚZK přestože víme, že rozhodně není nejpřesnější.


6) EPSG:4326 -> EPSG:4258 -> EPSG:5514 pomocí sedmiprvkové transformace,
např.
echo "16.914193 49.148715" | cs2cs +init=epsg:4326 +to +init=epsg:4258
+towgs84="0.0473,0.0467,-0.0253,0.000891,0.00539,-0.008772,-0.00158" -f
"%.8f" | cs2cs +init=epsg:4258 +to +init=epsg:5514
+towgs84="570.8,85.7,462.8,4.998,1.587,5.261,3.56" -f "%.3f"
-576504.923 -1168238.061 -44.391
Výsledná odchylka na souboru adresních bodů:
24 +/- 9 cm (max. 49 cm)
Tohle už uvádím jen pro úplnost.



Abych pravdu řekl, tak vůbec netuším, jaký z toho všeho udělat závěr.
Vypadá to, že grid, co jsme používali doteď, stále "funguje" správně. A
naopak jsou to data ČÚZK v EPSG:4326, kterým se nedá moc věřit.

@Marián: Ty se snažíš vyřešit zarovnání dat, co posílá Petr z poloha.net
(hádám, že vznikají transformací ze zdrojového EPSG:5514 do latlon
pomocí gridu) s čím konkrétně? S WMS podklady? A ty teď taháš v jaké
projekci? EPSG:4326? Jestli jo, tak to zkus vyměnit za EPSG:4258.


S pozdravem,
Petr Morávek aka Xificurk




Další informace o konferenci talk-cz