HISTORICKÉ MAPY V PROSTŘEDÍ MAPOVÉHO SERVERU Historické mapy v prostřed́ı mapového serveru Jǐŕı Cajthaml Department of Mapping and Cartography Faculty of Civil Engineering, CTU in Prague E-mail: jiri.cajthaml@fsv.cvut.cz Abstrakt Tento př́ıspěvek se zabývá možnostmi zobrazováńı historických map na internetu. Tyto mapy často lež́ı v archivech, kde jsou pro běžné uživatele těžko př́ıstupné. V souvislosti s rozvojem informačńıch technologíı docháźı nyńı k převodu map do digitálńı podoby a jejich archivaci na digitálńıch médíıch. Současná techniologie jde však ještě dál. Data mohou být publikována na internetu. Tam mohou být velice jednoduše k dispozici všem, jak odborńık̊um tak laik̊um. Kromě toho, že mohou být data na internetu prohĺı̌zena, s nástupem webových služeb je nyńı možné data distribuovat mezi r̊uznými aplikacemi. Webové mapové služby jsou budoucnost́ı webové kartografie. M̊uj konkrétńı ukázkový projekt souviśı s daty II. vojenského mapováńı Rakouska-Uherska (1819-1858). Tato data jsem publikoval pomoćı mapového serveru na in- ternetu. Data jsou volně př́ıstupná a to nejen pro prohĺı̌zeńı, ale jsou i distribuována pomoćı služby WMS. Zdroj digitálńıch dat - skenováńı map Analogové mapy je nutné převést do digitálńı formy skenováńım. Skenováńı je založeno na principu sńımáńı obrazových element̊u, zpravidla ve třech barevných složkách (systém barev RGB). Při skenováńı vystupuj́ı dvě velice d̊uležité konstanty – hustota skenováńı a barevná hloubka. V Laboratoři digitálńı kartografie na Stavebńı fakultě, ČVUT v Praze jsem provedl řadu pokusných skenováńı s r̊uznou hustotou i barevnou hloubkou. K dispozici zde máme bubnový velkoformátový skener Contex Chameleon Tx36. Hustota skenováńı je často udávána v jednotkách dpi (dot per inch, bod̊u na palec). Pro skenováńı map se jev́ı nejvhodněǰśı hodnota někde mezi 300dpi a 500dpi. Při vyšš́ı hustotě skenováńı již nedocháźı k výraznému vylepšeńı obrazu, pod 300dpi docháźı často k degradaci text̊u na mapách. Konkrétńı nejvhodněǰśı hustota ale vždy záviśı na konkrétńı mapě (velikost ṕısma, čitelnost mapy,...). Barevná hloubka velice významně ovlivňuje kvalitu digitálńıho obrazu. Pro skenováńı ba- revných map jsou nejpouž́ıvaněǰśı dvě metody: 8-bitové sńımáńı do barevné palety nebo 24- bitové sńımáńı pro složky RGB (tzv. “true color“). Méně často se použ́ıvá 16-bitové sńımáńı, kde zelené složce odpov́ıdá 6 bit̊u, modré a červené pak po 5 bitech. Skenováńı do 8-bitové palety znamená, že výsledný obraz bude složen pouze z 256 barev (28 bit̊u). Většinou toto skenováńı prob́ıhá dvoufázově. Skener otestuje mapu a zvoĺı 256 barev palety. Poté je každému sńımanému bodu přǐrazena nejbližš́ı hodnota z palety. Výhodou tohoto sńımáńı je úspora ve- likosti dat (třetinová velikost oproti “true color“). 24-bitové sńımáńı představuje kvalitněǰśı možnost, kde každému obrazovému elementu (pixelu) je možné přǐradit jednu z přibližně 16,7 Geinformatics FCE CTU 2006 95 HISTORICKÉ MAPY V PROSTŘEDÍ MAPOVÉHO SERVERU milónu barev (24 bit̊u). Skenováńı v této barevné hloubce se hod́ı zvláště tam, kde bude následně použita JPEG komprese dat. Ta totiž využ́ıvá právě “true color“. Pokud jde o mapy II. vojenského mapováńı, které jsem použ́ıval, ty byly neskenovány př́ımo ve v́ıdeňském státńım archivu pro Ministerstvo životńıho prostřed́ı ČR1. S těmito daty pak v ČR pracuje Laboratoř geoinformatiky UJEP v Mostě2. S t́ımto pracovǐstěm spolupracujeme na katedře mapováńı a kartografie. Mapy byly ve Vı́dni neskenovány s hloubkou 400dpi a v 8-bitové paletě. Sám jsem tedy nemohl ovlivnit parametry skenováńı. Sám bych raději navrhoval skenováńı v “true color“ a př́ıpadnou kompresi dat. Skenováńı v 8 bitech bylo provedeno patrně kv̊uli úspoře mı́sta na datových médíıch. Hustota skenováńı 400dpi je podle mě ideálńı. Komprese dat Po vlastńım neskenováńı je možné data zkomprimovat tak, aby se zmenšila celková velikost souboru. Rozlǐsujeme 2 základńı typy komprese – bezeztrátovou a ztrátovou. Při bezeztrátové kompresi můžeme zpětným postupem źıskat opět originálńı obraz, při ztrátové nikoliv. Teorii kompresńıch algoritmů zde patrně nemá smysl popisovat. Pro konkrétńı data II. vojenského mapováńı byla použita bezeztrátová komprese LZW. Zároveň byla na zkoušku data převedena do “true color“ obrazu s JPEG kompreśı. Touto ztrátovou kompreśı sice obraz degradujeme, nicméně ušetř́ıme velké množstv́ı mı́sta a dále zvýš́ıme rychlost aplikace, která bude s daty pracovat. Naskenovaná data by měla z̊ustat nedegradovaná v archivu, pro práci v aplikaci však doporučuji kompresi použ́ıt. Georeferencováńı Data historických vojenských mapováńı představuj́ı listy jednotlivých mapových sekćı. Každý mapový list obsahuje kromě mapového pole také mapový rám, nadpis a daľśı mimorámové údaje. Pokud chceme pracovat s bezešvou mapou na územı́ celé ČR, je nutné před samotným georeferencováńım rastry ořezat podle mapových rámů. Georeferencováńı představuje umı́stěńı rastrového obrazu do souřadnicového systému. Rastrový soubor může nést informaci o své poloze bud’ př́ımo v datech (zpravidla v hlavičce souboru) nebo v exterńım souboru. Prvńı skupinu nejčastěji reprezentuje formát GeoTiff, druhou sku- pinu pak tzv. “world files“. Formát GeoTiff je tvořen jediným souborem (TIF), který ob- sahuje v hlavičce zároveň informaci o poloze rastru. “World files“ jsou malé textové sou- bory, které doprovázej́ı daný rastr. Data jsou pak tvořena vždy dvojićı soubor̊u (TIF+TFW, JPEG+JGW,. . . ). Souřadnicové umı́stěńı je dáno 6 parametry (souřadnice x a y středu levého horńıho pixelu, velikost pixel̊u v osách x a y, stočeńı osy x a y). Tyto parametry vlastně představuj́ı afinńı transformaci rastru. Rotace v osách bývá zpravidla nulová, nebot’ práce s natočenými rastry je daleko náročněǰśı. Proto jsou data při georeferencováńı přeukládána do nového rastru s pixely ve směru souřadnicových os. V mém př́ıpadě byly vytvořeny 2 sady georeferencovaných dat II. vojenského mapováńı z územı́ Čech. Prvńı soubor vznikl ve spolupráci s Ing. Br̊unou (Laboratoř geoinformatiky 1 http://www.env.cz 2 http://www.geolab.cz Geinformatics FCE CTU 2006 96 http://www.env.cz http://www.geolab.cz http://www.geolab.cz http://www.geolab.cz http://www.geolab.cz http://www.geolab.cz HISTORICKÉ MAPY V PROSTŘEDÍ MAPOVÉHO SERVERU UJEP v Mostě3) a představuje rastry (TIF s LZW kompreśı) s hustotou 200dpi. Tato data byla georeferencována v software ArcGIS 9.0. Druhý soubor byl vytvořen ve spolupráci s Ing. Doubravou (GEPRO, a.s.4) a představuje rastry (JPEG komprimované) s hustotou 400dpi. Tato data bylo georeferencována v software Kokeš. V obou př́ıpadech byla použita metoda “world files“. Samotné georeferencováńı prob́ıhalo v obou př́ıpadech afinńı transformaćı na rohy mapových list̊u. Souřadnice roh̊u mapových list̊u byly ze systému Stabilńıho katastru (Gusterberg) převedeny do systému S-JTSK doc. Čadou (ZČU Plzeň5), který odvodil globálńı trans- formačńı kĺıč. Jak vyplývá z disertačńı práce Ing. Doubravy [5], přesněǰśı georeferencováńı u těchto map nemá smysl. Odchylky transformovaných bod̊u (globálńı kĺıč versus afinńı trans- formace na rohy mapových list̊u) dosahuj́ı v maximálńıch hodnotách pouze několika metr̊u. Mapový server V obecněǰśım pojet́ı lze mapový server chápat jako celou internetovou aplikaci, která slouž́ı k práci s prostorovými daty. V užš́ım pojet́ı mapovým serverem rozumı́me aplikaci, která umı́ zpracovat požadavky uživatele a je schopná vrátit určitý výřez zdrojových dat. Dále budu pracovat s pojmem mapový server v užš́ım vymezeńı. Existuje celá řada již naprogramovaných mapových server̊u. Některé jsou komerčńı, některé svobodné (volně šǐritelné). Každý odborńık si nav́ıc může naprogramovat vlastńı mapový server podle jeho představ. Já jsem využil již existuj́ıćı řešeńı, konkrétně UMN MapServer6, který patř́ı do kategorie svobodného software. UMN MapServer7 může pracovat v prostřed́ı internetu bud’ pomoćı rozhrańı CGI nebo využit́ım knihovny MapScript (lze ji použ́ıt v řadě programovaćıch jazyk̊u – PHP, Python, Perl). Já jsem se rozhodl pro použit́ı CGI MapServeru, ačkoliv bych rád v budoucnu vyzkoušel i možnosti MapScriptu. Mapový server ve výsledné aplikaci generuje obrázky map (hlavńı mapové okno, referenčńı mapka), obrázek grafického měř́ıtka, atd. Všechny tyto obrázky jsou generovány po odesláńı požadavku uživatele (klik- nut́ı na ikonu, zaškrtnut́ı poĺıčka, posun mapy, atd.). Mapový server je tedy jakýmsi jádrem aplikace, která umı́ pracovat se zdrojovými daty v souřadnicovém systému a umı́ genero- vat obrázky do internetové stránky. Vı́ce o teorii fungováńı mapových server̊u lze nalézt v mých publikaćıch na 16. Kartografické konferenci v Brně [1], GIS Ostrava 2006 [2], nebo na Juniorstavu 2006 [3]. Internetová aplikace Vlastńım uživatelským rozhrańım mapové aplikace je XHTML stránka. Existuje v́ıce možnost́ı jak je stránka vytvářena. Prvńı, jednodušš́ı možnost́ı je využ́ıt šablonový systém UMN Ma- pServeru8, který umožňuje do stránky př́ımo vkládat objekty vygenerované MapServerem. T́ımto zp̊usobem byla vytvořena jedna z ukázkových aplikaćı. Celá internetová stránka je 3 http://www.geolab.cz 4 http://www.gepro.cz 5 http://gis.zcu.cz 6 http://mapserver.gis.umn.edu 7 http://mapserver.gis.umn.edu 8 http://mapserver.gis.umn.edu Geinformatics FCE CTU 2006 97 http://www.geolab.cz http://www.geolab.cz http://www.gepro.cz http://gis.zcu.cz http://mapserver.gis.umn.edu http://mapserver.gis.umn.edu http://mapserver.gis.umn.edu http://mapserver.gis.umn.edu HISTORICKÉ MAPY V PROSTŘEDÍ MAPOVÉHO SERVERU pak HTML formulářem po jehož odesláńı dojde k novému vygenerováńı všech mapových obrázk̊u. Ovládáńı mapy je vyřešeno pomoćı tlač́ıtek a přeṕınaćıch poĺıček. Ukázka aplikace je na obrázku č.1. Obrázek č.1: CGI MapServer Druhá ukázková aplikace využ́ıvá nové možnosti JavaScriptu (programovaćı jazyk pracuj́ıćı v internetových prohĺıžeč́ıch). Je zde využita metoda AJAX (Asynchronous JavaScript And XML), konkrétně v použité knihovně mscross. Dı́ky této knihovně, která opět patř́ı do skupiny svobodného software, je možné mapu ovládat mnohem interaktivněji (změna výřezu mapy taženým obdélńıkem, posun mapy tažeńım). Některé ovládaćı prvky z̊ustávaj́ı stejné jako v předchoźım př́ıpadě. Některé daľśı doplňkové funkce jsem doprogramoval. Jde zejména o odeč́ıtáńı kartografických souřadnic při pohybu myši nad mapou a dále o vyhledáváńı obćı v rámci ČR. Odeč́ıtáńı souřadnic je řešeno JavaScriptovými funkcemi, bohužel odděleně pro r̊uzné internetové prohĺıžeče (Internet Explorer má nestandardńı chováńı). Vyhledáváńı obćı je pak založeno na spo- jeńı AJAX (výpis obćı po zadáváńı jednotlivých ṕısmen) a PHP (obsloužeńı databázového požadavku). Aplikace využ́ıvá databázi ÚIR-ZSJ, kterou je možné źıskat z webu Českého sta- tistického úřadu. Na serveru byla data migrována do volně šǐritelné databáze PostgreSQL9. Ukázka aplikace je na obrázku č.2. Webové mapové služby Pomoćı webových mapových služeb je možné poskytovat data jiným aplikaćım, př́ıpadně připojovat data z ostatńıch server̊u. UMN MapServer10 podporuje webové mapové služby velmi dobře a proto neńı problémem připojit data z jiných server̊u, př́ıpadně data publikovat 9 http://www.postgresql.org 10 http://mapserver.gis.umn.edu Geinformatics FCE CTU 2006 98 http://www.postgresql.org http://mapserver.gis.umn.edu HISTORICKÉ MAPY V PROSTŘEDÍ MAPOVÉHO SERVERU Obrázek č.2: CGI MapServer + AJAX pomoćı mapových služeb. Vzhledem k tomu, že historické mapy představuj́ı rastrová data, má smysl použ́ıt pouze službu WMS. V mých aplikaćıch jsou na ukázku připojena některá data z datového skladu ÚHÚL Brandýs nad Labem. Jedná se o vrstevnice a klad map SMO-5. Neńı problémem připojit libovolné daľśı vrstvy. Zároveň jsou pomoćı WMS služby distribuována data II. vojenského mapováńı. Podrobněji jsou webové mapové služby popsány např. v mé publikaci připravené na konferenci GICON 2006 ve Vı́dni [4]. Závěr Mysĺım, že tento standardně popsaný postup pro publikováńı historických map na internetu umožńı snadný převod dat v r̊uzných mapových archivech. Má práce podńıtila budoućı vy- baveńı Laboratoře digitálńı kartografie serverovým hardware (předpoklad v červnu 2006). Na tomto serveru pak budou aplikace veřejně př́ıstupné. Kromě samotných aplikaćı budou data poskytována pomoćı WMS a kdokoliv si tak bude moci připojit do své aplikace tato data. V souvislosti s mou praćı bude do výuky na naš́ı fakultě zaveden nový předmět Interaktivńı kartografie, jehož náplńı bude právě práce s mapovými servery. Samotné internetové aplikace lze samozřejmě vylepšovat. Rád bych aplikace doplnil přepočty souřadnic do hojně využ́ıvaného WGS-84. Daľśı možnost́ı je implementovat určováńı kladu mapových list̊u podle pohybu myši nad mapovým oknem. V oblasti zdrojových dat bude třeba georeferencovat i zbylé oblasti ČR (Morava, Slezsko). Velice zaj́ımavé bude spojeńı těchto souřadnicových soustav do bezešvé mapy. Stejným postupem jako II. vojenské mapováńı bude možné zpracovat III. vojenské mapováńı. Otázkou z̊ustává georeferencováńı I. vojenského mapováńı, kde neńı možné použ́ıt roh̊u mapových list̊u. Geinformatics FCE CTU 2006 99 HISTORICKÉ MAPY V PROSTŘEDÍ MAPOVÉHO SERVERU Reference 1. Cajthaml J.: Využit́ı webových mapových server̊u. Sborńık: 16. kartografická konference – Mapa v informačńı společnosti, 7.-9.9.2005. Ed.: Václav Talhofer, Lucie Friedmannová, Alois Hoffman. Univerzita obrany, Brno, ČR, 2005. 91 stran (abstrakta), plné texty na CD. ISBN 80-7231-015-1. 2. Cajthaml J.: Mapserver of the Old Maps. In: Proceedings of International Symposium GIS Ostrava, 23.-25.1. 2006. VSB - Technical University of Ostrava, ISSN 1213-2454. 3. Cajthaml J.: Jak publikovat staré mapy na internetu? In: Juniorstav 2006, sborńık konference, Dı́l 8, Geodézie a kartografie, Brno 25.1.2006. VUT v Brně, 2006, ISBN 80-214-3114-8. 4. Cajthaml J.: Old Maps Internet Presentation - Overview of Possibilities In: GICON 2006 - Geoinformation Connecting Societies, sborńık konference v tisku, Vienna 10.- 14.7.2006. University of Vienna, 2006. 5. Doubrava P.: Zpracováńı rastrových mapových podklad̊u pro využit́ı v oblasti aplikaćı GIS a katastru nemovitost́ı. Doktorská disertačńı práce, 156 stran. ČVUT v Praze, 2005. 6. oficiálńı webové stránky projektu UMN MapServer11 7. oficiálńı webové stránky projektu mscross12 8. oficiálńı webové stránky projektu PostgreSQL13 11 http://mapserver.gis.umn.edu 12 http://datacrossing.crs4.it/en Documentation mscross.html 13 http://www.postgresql.org Geinformatics FCE CTU 2006 100 http://mapserver.gis.umn.edu http://datacrossing.crs4.it/en_Documentation_mscross.html http://www.postgresql.org