Eksport rastrowej warstwy GeoMedia Grid do ArcGIS


Tomasz Bartuś



OPROGRAMOWANIE:

GeoMedia Professional: 06.01.11.13, GeoMedia Grid: 06.01.00.18.

PROBLEM:

Brak możliwości bezpośredniego importu rastrowych warstw GeoMedia Grid do ArcGis.

SZCZEGÓŁY:

Natywnym formatem rastrowych plików GeoMedia GRID jest *.mfm. Ten binarny format nie posiada w ArcGIS konwertera i nie daje się do niego zaimportować. Jedyną możliwością jest export plików z GeoMedia Grid do jakiegoś innego formatu czytanego przez ArcGis.

GeoMedia Grid, udostępnia export rastrowych danych (Grid -> Layer -> Export to File) do kilku formatów: BMP, GIF, MFM (MFworks format), Raw Binary, Tab Delimited Grid (text), TIFF (z plikami tab), XYZ Point File, Geomedia Terrain ASCII. Nie jest jasne, który z tych formatów nadaje się do wyeksportowania siatki grid DEM/CMT aby móc go później zaimportować do ArcGis. Po kilku nieudanych próbach m.in. z formatem TIFF, postanowiłem opstawić na konwersję z zastosowaniem tekstowych plików ASCII. Docelowy format plików ASCII wykorzystywanych przez ArcGis do przechowywania danych rastrowych (np. CMT) i obsługiwanych do procedury ASCII to Raster (Conversion), jest format Esri grid (http://en.wikipedia.org/wiki/Esri_grid). Składa się on z nagłówka i następującej po nim macierzy danych. Ma on następujący format:

    NCOLS 480
    NROWS 450
    XLLCORNER 378922
    YLLCORNER 4072345
    CELLSIZE 30
    NODATA_VALUE -32768
    43 2 45 7 3 56 2 5 23 65 34 6 32 54 57 34
    35 45 65 34 2 6 78 4 2 6 89 3 2 7 45 23 5 ...
  

gdzie:
NCOLS - liczba kolumn (integer),
NROWS - liczba wierszy (integer),
XLLCORNER - współrzędna X lewgo dolnego narożnika (SW) lewej dolnej komórki (SW) (piksela) matrycy danych (liczba rzeczywista z ew. znakiem dziesiętnym),
YLLCORNER - współrzędna Y lewgo dolnego narożnika (SW) lewej dolnej komórki (SW) (piksela) matrycy danych (liczba rzeczywista z ew. znakiem dziesiętnym),
CELLSIZE - wielkość (jednego boku) kwadratowej komórki podstawowej (piksela) (liczba rzeczywista),
NODATA_VALUE - oznaczenie w matrycy komórek braków danych (np: -9999).

Darmowym programem umożliwiającym konwersję rastrowych plików GeoMedia Grid jest SemGrid (http://www.dpvta.uniud.it/~Danuso/docs/SemGrid/SemGrid.htm). Ten skądinąd bardzo ciekawy program, poza innymi funkcjami jest doskonałym konwerterem plików rastrowych umożliwiającym współpracę pomiędzy wieloma aplikacjami:

  • ArcGis .asc text
  • Surfer .grd text
  • Binary float grid (ArcInfo) .hdr/flt binary
  • Grass ascii grid .gag text
  • SEMoLa binary hypergrid .ary binary
  • Bitmap .bmp bitmap
  • Idrisi 32/Kilimanjaro .rdc/rst text
  • GeoMedia .asc text

Dla nas najistotniejsze jest to, że umożliwia import danych z plików ASCII GeoMedia Grid. Zgodnie z powyższym, aby z niego skorzystać, musimy natywny plik GeoMedia Grid zapisać najpierw w formacie ASCII, zaimportować go do SemGrid, a następnie zapisać do formatu Esri grid (ArcGis ASCII).

GeoMedia Grid umożliwia export do plików ASCII w trzech wersjach:

  • Tab Delimited Grid (text),
  • XYZ Point File,
  • Geomedia Terrain ASCII.

Według specyfikacji SemGrid, importowane z GeoMedia Grid pliki ASCII muszą posiadac rozszerzenie *.asc oraz tzw. format pliku "ASCII Z GRID" (GM: GeoMedia Terrain ASCII). Format Geomediów ASCII POINT GRID (GM: XYZ Point File) nie jest obsługiwany. GeoMedia Terrain ASCII występują w dwóch odmianach: zapisujące dane o wysokości komórek w formacie "XYZ" oraz "Z". W każdym z typów, przed matrycą danych, występuje opisujacy je nagłówek. Pomiędzy nagłówkiem i danymi nie powinno być pustej linii. Pierwszy format ASCII (XYZ) posiada następujący format:

    ASCII POINT GRID
    DELIM = ,
    VUOM = m
    VOID = n
    VERTICALDATUM = ???
    x1,y1,z1
    x1,y2,z2
    x1,y3,z3
    x2,y1,z4
    x2,y2,z5
    x2,y3,z6
    x3,y1,z7
    x3,y2,z8
    x3,y3,z9
  

gdzie:
ASCII POINT GRID - nazwa formatu pliku,
DELIM - opcjonalnya deklaracja znaku dziesiętnego (domyślnie przecinek),
VUOM - jednostka pomiaru wysokości (Vertical units of measure - "m", "ft"),
VOID - numeryczna wartość oznaczająca w matrycy komórek braków danych (np: -9999),
VERTICALDATUM - sposób zapisu danych rzędnej Z, może być: Mean Sea Level (MSL), National Geodetic Vertical Datum 1929 (NGDV29), or North American Vertical Datum 1988 (NAVD88).

Bardziej kompaktowym sposobem przechowywania danych CMT w plikach "ASCII Z GRID" (GM: GeoMedia Terrain ASCII), jest format, który zawiera bezpośrednie dane wyłącznie o rzędnej Z. Dane w tym formacie wymagają dłuższego nagłówka:

    ASCII Z GRID
    XORIGIN = xlocation
    YORIGIN = ylocation
    NUMROWS = number rows
    NUMCOLUMNS = number columns
    ROWSPACING = row spacing
    COLUMNSPACING = column spacing
    SCANORIGIN=??
    ORDER=row<
    VUOM=m
    VOID=-9999
    VERTICALDATUM = ??? / może być: "MSL", "NGVD29" lub "NAVD88"
    z1
    z2
    ...
    zn
  

gdzie:
ASCII Z GRID - nazwa formatu pliku,
XORIGIN - współrzędne X komórki wynikającej ze SCANORIGIN (?) w stopniach lub metrach,
YORIGIN - współrzędne Y komórki wynikającej ze SCANORIGIN (?) w stopniach lub metrach,
NUMROWS - liczba wierszy,
NUMCOLUMNS - liczba kolumn,
ROWSPACING - rozdzielczość komórki podstawowej w osi OY,
COLUMNSPACING - rozdzielczość komórki podstawowej w osi OX,
SCANORIGIN - może być: (TL,TR, BL, BR) (TL=TopLeft), program SemGrid umożliwia import danych TL (top-left) lub BL (bottom-left); TR (top-right) i BR (bottom-right) nie są obsługiwnane,
ORDER - porządek skanowania danych (row lub column). Porządek danych w programie SemGrid powinien być: TL/ROW, to jest także porządek wykorzystywany przy eksporcie plików do GeoMedia,
VUOM - jednostka pomiaru wysokości (Vertical units of measure - "m", "ft"),
VOID - numeryczna wartość oznaczająca w matrycy komórek braków danych (np: -9999),
VERTICALDATUM - sposób zapisu danych rzędnej Z, może być: Mean Sea Level (MSL), National Geodetic Vertical Datum 1929 (NGDV29), or North American Vertical Datum 1988 (NAVD88).

ROZWIĄZANIE:

Teraz wystarczy:

  1. W GeoMedia Grid wybrać: Grid -> Layer -> Export to File,
  2. Wybieramy warstwę grid którą chcemy wyeksportować i klikamy OK,
  3. Wybieramy format eksportowanyego pliku: Geomedia Terrain ASCII oraz nazwę i ścieżkę zapisu eksportowanego pliku, OK,
  4. W oknie dialogowym: Export to Geomedia Terrain ASCII grid, wybieramy format "Z" oraz VERTICALDATUM = MSL,
  5. Naciskamy OK potwierdzając export danych,
  6. Po utworzeniu pliku przechodzimy do programu SemGrid,
  7. po jego uruchomieniu, w menu File zmieniamy ścieżkę projektu: File -> Set Folder, wybieramy folder, w którym znajduje się wyeksportowany plik Geomedia Terrain ASCII grid,
  8. Klikamy: File -> Import,
  9. Z okna dialogowego: Import grids Wybieramy: Select format -> GeoMedia (asc),
  10. Po udanym imporcie, plik pojawia się w głównym okienku programu SemGrid i można go dowolnie dalej przetwarzać,
  11. W celu wyeksportowania pliku do formatu ASCII ArcGis, wybierzmy: File -> Export,
  12. Z okienka from grid file wybierzmy warstwę, którą chcemy wyeksportować,
  13. Z okienka Select Format wybierzmy ArcGis (txt) i kliknijmy OK.
  14. W domyślnej lokalizacji utworzyły się dwa pliki: *.txt i *.inf. Dla nas ważny jest plik o rozszerzeniu *.txt.
  15. Zamykamy SemGrid,
  16. Otwieramy ArcCatalog,
  17. Z ArcToolbox wybieramy: Convertion Tools -> To Raster -> ASCII to Raster,
  18. Z okna dialogowego ASCII to Raster, wybieramy Input ASCII raster file (plik wyeksportowany w SemGrid do formatu ArcGis (txt),
  19. nadajemy nazwę warstwy wyjściowej (Output raster),
  20. zmieniamy Output data type na Float i klikamy OK,
  21. we wskazanej lokalizacji utworzył się szereg plików i katalogów nowej warstwy ArcGis o nadanej wcześniej nazwie.

Cieszymy się zaimportowanym CMT.

 
 

Informacje wstępne

Dane

ArcGIS Desktop: 23MB (73MB)
ArcGIS Pro: 94MB (1,07GB)
 

1. Wstęp do GIS

Wykład 1: Wstęp do GIS
 
 
Ćwiczenie 1: Wycieczka po San Diego. Wstęp do ArcGIS
 
Wykład 2: Aplikacja ArcGIS
 
Ćwiczenie 2: Szacowanie szkód wywołanych przez tornado. Od metainformacji do wyników analizy
 
Wykład 3: Rozwiązywanie zadań przy użyciu GIS
 
Ćwiczenie 3: Wybór lokalizacji dla centrum młodzieżowego. Zapytania atrybutowe i przestrzenne
 

2. Symbolizacja map

Wykład 4: Symbole i adnotacje
 
Ćwiczenie 4: Lokalizacja ośrodka dziennego dla seniorów. Symbolizacja i etykietowanie obiektów na mapach
 
Wykład 5: Symbole bazujące na atrybutach
 
Ćwiczenie 5: Lokalizacja ośrodka dziennego dla seniorów. Symbole oparte na atrybutach
 
Wykład 6: Metody klasyfikacji danych
 
Ćwiczenie 6: Lokalizacja ośrodka dziennego dla seniorów. Klasyfikacja danych
 
Wykład 7: Mapy gęstości i proporcji
 
Ćwiczenie 7: Lokalizacja ośrodka dziennego dla seniorów. Mapy gęstości i normalizacja danych
 

3. Układy współrzędnych i odwzorowania kartograficzne

Wykład 8: Układy współrzędnych geograficznych
 
Ćwiczenie 8: Położenie kabla transatlantyckiego. Modyfikacje układów współrzędnych
 
Wykład 9: Odwzorowania kartograficzne
 
Ćwiczenie 9: Położenie kabla transatlantyckiego. Właściwości odwzorowań kartograficznych
 

4. Organizacja danych geograficznych

Wykład 10: Modele danych geograficznych
 
Ćwiczenie 10: Ocena zagrożenia powodziowego. Analiza danych geograficznych
 
Wykład 11: Geobazy
 
Ćwiczenie 11: Ocena zagrożenia powodziowego. Tworzenie przestrzennej bazy danych
 
Ćwiczenie 12: Salzburg. Geobaza wspierająca branżę turystyczną
 
 

5. Tworzenie i edycja danych

Wykład 12: Tworzenie i edycja danych GIS
 
Ćwiczenie 13: Centrum handlowe Galeria. Modyfikacja śladów budynków
 
Wykład 13: Topologia
 
Ćwiczenie 14: Centrum handlowe Galeria. Modyfikacja obiektów z zachowaniem topologii
 
Wykład 14: Edycja atrybutów obiektów
 
Ćwiczenie 15: Centrum handlowe Galeria. Modyfikacja atrybutów
 
Wykład 15: Tworzenie nowych obiektów
 
Ćwiczenie 16: Park miejski. Tworzenie nowych klas obiektów i ich atrybutów
 

6. Analizy GIS

Wykład 16: Procedura analiz GIS
 
Ćwiczenie 17: Poszukiwania nieruchomości spełniającej kryteria. Definiowanie problemu i wybór danych do analiz
 
Wykład 17: Zapytania atrybutowe i przestrzenne, łączenie tabel
 
Ćwiczenie 18: Poszukiwania nieruchomości spełniającej kryteria. Analiza GIS
 
Wykład 18: Prezentacja wyników analiz
 
Ćwiczenie 19: Poszukiwania nieruchomości spełniającej kryteria. Przygotowanie mapy prezentacyjnej
 
Ćwiczenie 20: Poszukiwania nieruchomości spełniającej kryteria. Tworzenie raportów
 

7. Geoprzetwarzanie i modelowanie

Wykład 19: Geoprzetwarzanie
 
Ćwiczenie 21: Ocena zniszczeń pożarowych. Geoprzetwarzanie
 
Wykład 20: Modele i modelowanie
 
Ćwiczenie 22: Ocena zniszczeń pożarowych. Tworzenie i obsługa prostych modeli
 
Ćwiczenie 23: Przetarg na zakup drewna. Praca z istniejącymi modelami
 

8. Tworzenie profesjonalnych map

Wykład 21: Elementy mapy, praca w widoku układu
 
Ćwiczenie 24: Przetarg na zakup drewna. Praca z układami
 
Wykład 22: Tworzenie profesjonalnych map
 
Ćwiczenie 25: Siedliska nietoperzy w południowo zachodniej części Ameryki Północnej. Tworzenie profesjonalnych map"