Witam,
Ostatnio zgłębiałem temat w poszukiwaniu jakiś narzędzi pomocnych przy sklejaniu i kalibracji rastrów Binga ze śladami GPS.
Może komuś się przydadzą te informacje
GiMeSpace Desktop Extender
Świetny do tworzenia dużych wirtualnych pulpitów i rozszerzania okien przeglądarek do niestandardowych wymiarów typu 32000 x 32000 pikseli.
Mozilla Firefox + wtyczka ScreenGrab
do zrzucania dużych porcji ekranowych z wewnętrznego okna przeglądarki do pliku PNG lub JPG (przewertowałem kilka i screengrab jest niemal perfekcyjny) malutka wtyczka i robi to co trzeba. Firefox w wersji oficjalnej jest tylko 32-bitowy więc jesteśmy ograniczeni do obrazów o pojemności ok. 2 GB, Nie próbowałem nieoficjalnej 64-bit istnieje takowa ale nie wiem skąd wtedy do niej taką wtyczkę 64-bitową do robienia zrzutów ekranowych.
Przetestowałem IE, Opera, Chrome i chyba tylko Firefox daje radę być może za mało jeszcze przetestowałem.
Tak czy owak kombinacja GiMeSpace + Firefox + ScreenGrab działa całkiem całkiem.
Wskazany Win7, pod WinXP prawdopodobnie zabraknie nam zasobów systemowych
niestety nie sprawdzałem w praktyce jak działa to pod WinXP.
PTGui
Rewelacyjny do sklejania obrazów w całość i tworzenia panoram.
Chyba najlepszy w swojej kategorii. Mnogość opcji i konwersja odwzorowań.
Przed rozpoczęciem pracy polecam w ustawieniach zwiększyć ilość punktów kontrolnych do 100 a podczas ładowania obrazów wybrać długość ogniskowych Normal i 50 mm. Przy sklejaniu prostokątnych obrazów wybieramy podstawową projekcję prostokątną rectangle, przy sklejaniu rastrów z odwzorowań Merkartora Transverse Mercator. Również nawet przede wszystkim może służyć do sklejania obrazów zrobionych aparatem cyfrowym a program automatycznie dostraja użyte ogniskowe na zdjęciach i łączy obrazy w całość itd. itd.
Oczywiście ważne aby obrazy były nakładane na siebie z odpowiednio dużą zakładką.
Quantum GIS i wbudowane narzędzie Georeferencer - oprogramowanie bezpłatne
Super do kalibracji i dopasowywania obrazów rastrowych do siatki odwzorowań, śladów GPS i tworzenia GeoTIFF-ów.
Spory kombajn gis-owy a za pomocą zaszytych narzędzi gdal_translate i gdalwarp uzyskujemy bardzo wysoką jakość przekształceń jak w komercyjnych narzędziach. Narzędzia Georeferencer z biblioteką GDAL pozwalają na bardzo dokładne zestrojenie obrazu rastrowego ze śladem GPS w zadanym odwzorowaniu.
W Quantum GIS polecam taki sposób pracy:
- na początek we właściwościach projektu wybieramy układ współrzędnych na jakim będziemy pracować czyli EPSG:3857 (Merkator podstawowe odwzorowanie stosowane przez OpenStreetMap i JOSM) i zaznaczamy opcje “Reprojekcja w locie” aby pobierane współrzędne z obszaru mapy były w tym samym odwzorowaniu w jakim nastąpi kalibracja naszego rastra czyli EPSG:3857 - WGS84 Pseudo Mercator
- wczytujemy za pomocą narzędzi Raster → GPS ślady gps danego obszaru pobrane z JOSM i wcześniej wyeksportowane do pliku GPX,
- uruchamiamy narzędzie do kalibracji Georeferencer i wczytujemy raster najlepiej w formacie TIFF (działa najszybciej i chyba najpewniej z BMP są jakieś problemy ze współrzędnymi obrazu)
- ustawiamy okna tak aby widzieć np. podkład rastrowy po lewej i mapę ze śladami gps w głównym oknie po prawej
- dodajemy punkty kontrolne identyfikując je na rastrze i z obszaru mapy. W praktyce dobrze jest wybierać punkty wynikające z przecięcia dokładnych śladów gps lub na prostych gdzie pozycja jest najdokładniejsza, w żadnym wypadku po ostrym łuku, zakrzywieniach, w lesie, wąwozie wszędzie tam gdzie spada dokładność albo powstają odchylenia podczas rejestracji śladów.
- uruchamiamy kalibrację podając parametry transformacji
Rodzaj transformacji - Funkcja sklejana TPS
Metoda resamplingu - Sześcienna
Zaznaczamy “Wczytaj po zakończeniu” jeżeli chcemy aby obraz był automatycznie podpięty jaka warstwa w Quantum GIS, uwaga wynikowa warstwa dodawana jest jako pierwsza i zasłoni ślady gps aby zobaczyć na niej ślady gps wystarczy zamienić kolejność warstw.
Wstępnie możemy podać min. czyli 3 punkty do transformacji aby obraz był wpasowany i umiejscowiony zgrubnie do śladów po czym mając już widok rastra i nałożone na nim ślady gps w widoku bardzo dokładnie zestrajać punkty. Jednoczesny widok warstw rastra i na nim śladów gps ułatwia wtedy pracę.
Na koniec otrzymany raster GeoTIFF konwertujemy do bitmapy BMP i importujemy za pomocą wtyczki PicLayer w JOSM, po czym ręczne osadzamy raster na mapie. Niestety JOSM nie obsługuje bezpośrednio GeoTIFF-ów, wtyczka importimage wg. mnie nie działa jak powinna i na dodatek powoduje zawieszanie się i problemy ze stabilnym działaniem aplikacji JOSM.
GeoServer
wirtualny serwer mapowy do składowania podkładów rastrowych i generowania w locie kafelków WMS np. lokalnie w komputerze pozwalający zaoszczędzić nieco pamięć RAM w aplikacji JOSM.
GPSBabel
do przeróbki śladów GPS, polecam z użyciem wiersza poleceń są tam niektóre opcje zupełnie niedostępne z poziomu samej aplikacji.
Przykładem może być naprawa “uszkodzonych” śladów GPS bez znaczników czasu, z którymi mogą mieć problem aplikacje gis-owe.
gpsbabel -w -r -t -i gpx -f “ślad.gpx” -x track,faketime=f20100705200000+2 -x track,pack,sdistance=0.5k -o gpx -F “ślad_popr.gpx”
Takie polecenie spowoduje, że ślad zostanie podzielony na fragmenty w przypadku wykrycia 500m przerw w rejestracji śladów, oraz zostanie zanimizowany czasowo, (brak informacji o prędkości i czasie). Tak utworzone ślady nie spowodują wyświetlania niepotrzebnych prostych linii, łączących poprzedni ślad gps z następnym w jednym ciągu rejestracji lub w wyniku przerwanej rejestracji bądź utraty sygnału gps. Innymi słowy dzieli ślad na odcinki.
Do pracy GPSBabel z wiersza poleceń wystarczy przenieść 2 pliki libexpat.dll i gpsbabel.exe i utworzyć sobie dodatkowy plik wsadowy naprawa.bat najlepiej w tym samym katalogu co ślady gpx.
Gdy trzeba przerobić tysiące śladów gps wystarczy odpowiednia konstrukcja pliku wsadowego np. konwersja.bat
ECHO OFF
CLS
FOR %%F IN (“*.gpx”) DO (
gpsbabel -w -r -t -i gpx -f “%%F” -x track,faketime=f20100705200000+2 -x track,pack,sdistance=0.5k -o gpx -F “%%~nF_popr.gpx”
)
PAUSE
Powyższa pętla FOR wyszukuje wszystkie plik z rozszerzeniem gpx po czym poddaje każdy obróbce poleceniem gpsbabel z parametrami anonimizacji czasu i dzielenia śladów na odcinki.
Na koniec:
No i po co te wszystkie narzędzia
A na przykład dla tych co nie lubią ciągle przesuwać obrazów rastrowych Binga by dopasowywać się do śladów GPS, a 3-punktowa przybliżona afiniczna kalibracja rastrów za pomocą PicLayer w JOSM nie uwzględnia konwersji pomiędzy odwzorowaniami jak również brak jest prawdziwego wsparcia dla GeoTIFF-ów w JOSM.
Mały hint dla aplikacji JOSM, w przypadku komunikatu “out of memory … 256MB” polecam przydzielić więcej pamięci dla aplikacji Java wystarczy dodać do skrótu wywołania aplikacji parametr (…) javaws.exe -J-Xmx1500M (…) i mamy przydzielone ~1.5 GB pamięci RAM.
Pozdrawiam,
Włodek