5 Импорт данных - korshu.ru o_O
Главная
Поиск по ключевым словам:
страница 1
Похожие работы
Название работы Кол-во страниц Размер
Вшэ-гу 2010 Борис Григорьевич Миркин Профессор Кафедра анализа данных... 2 737.51kb.
Рекомендации по подготовке документов, регламентирующих обработку... 2 408.36kb.
В первую очередь Вам необходимо на sql сервере развернуть базу данных... 1 25.59kb.
Предметом курса являются системы управления базами данных (субд) 24 4019.98kb.
«Технология обработки числовых данных» На этом уроке мы начнем изучение... 1 59.61kb.
Дисковый массив d-link xStack Storage Area Network (san) dsn-2100-10... 1 74.99kb.
Анализ статистических данных о состоянии насилия в отношении женщин... 1 73.21kb.
Информационная система 11 1019.16kb.
«Создание рисунков и внедрение объектов. Анализ данных с помощью... 1 61.2kb.
В настоящее время идет процесс пополнения и корректировки банка Сводных... 99 4193.34kb.
В настоящее время идет процесс пополнения и корректировки банка Сводных... 12 3488.79kb.
Teacher учитель 1 31.14kb.
Инструкция по работе с сервисом «sms-платеж» 1 218.94kb.

5 Импорт данных - страница №1/1


5 Импорт данных


Прежде всего, перед началом импорта данных, необходимо вспомнить о структуре данных в GRASS GIS, терминология, используемая в этом разделе подробно объяснена в гл. 2.3.

Совместимость форматов является одним из важнейших условий работы с ГИС, например, при импорте «сырых» необработанных данных или данных, конвертированных из других программных продуктов. В GRASS существует большое количество модулей для импорта векторных и растровых данных, а также баз данных. Описание синтаксиса команд можно получить с помощью параметра -help или модуля g.manual.

v.in.ogr -help
g.manual v.in.ogr &
r.in.gdal -help

5.1 Импорт растровых форматов


ГИС GRASS поддерживает импорт множества различных растровых форматов. Рассмотрим три основных типа растровых форматов, которые используются чаще всего:

Формат изображений (image): растры всегда содержат положительные, целые значения и хранятся в известных форматах изображений, таких как PPM, PNG, JPEG и GIF.

Формат ASCII: растры в формате ASCII могут содержать как положительные, так и отрицательные значения, а также значения c плавающей точкой. Покрытие ASCII-GRID в Arcinfo представляет собой образец формата данного типа.

Двоичный формат (binary): в двоичном формате растра отдельные пикселы с положительными и отрицательными целыми значениями или значениями с плавающей точкой также можно хранить в различных каналах с разным разрешением. Примерами данных форматов являются форматы (Geo)TIFF или ERDAS/IMG.

Теперь пришло время упомянуть о важном свойстве ГИС GRASS, связанном с импортом растровых данных: при импорте растра всегда сохраняются его первоначальное разрешение и охват, тогда как при экспорте сохраняются разрешение и охват согласно свойствам данного фрагмента (смотри главу 7.1).

При импорте непривязанных растровых данных возможно два случая:



  1. Если область существует, ее разрешение определено, и отсканированный растр должен быть вписан в эту область, его разрешение будет приведено к разрешению области (GRID RESOLUTION).

  2. Если растр не должен поменять характеристики при импорте, параметры области куда он импортируется (особенно разрешение) должны быть заданы специальным образом.

В таблице 7 представлен список модулей, используемых для импорта растровых данных в различных форматах, т.е. форматах других геоинформационных систем, так же как и в специальных форматах, характерных для данных дистанционного зондирования.

Таблица 7: Модули GRASS для импорта растровых данных




GRASS

Импорт

Модуль

Растровый формат

r.in.ascii

GRASS ASCII

r.in.bin

BIL, GMT binary files, LANDSAT TM5

r.in.gdal

ARC/INFO ASCII/Binary GRID, BIL, ERDAS (LAN, IMG),

 

USGS DOQ, JPEG, SAR CEOS, EOSAT, GeoTIFF, PPM/PNM, SDTS DEM,

 

GIF, PNG

 

(смотри также http://www.gdal.org/formats_list.html)

Импорт файлов GeoTiff

При импорте растровых данных наиболее часто используется модуль r.in.gdal. Как показано в таблице 7, с его помощью можно прочитать и записать множество различных форматов (r.out.gdal). В качестве примера, импортируем географически привязанный растр в формате ERDAS IMG. Мы уже подготовили небольшой фрагмент ЦМР на базе данных ASTER с разрешением 30 м города Оснабрюк (Osnabrueck), которая доступна для загрузки с GDF Hannover  (http://www.gdf-hannover.de/download).

r.in.gdal in=asterdem30m.img out=asterdem30m

Projection of input dataset and current location appear to match.

Proceeding with import...

100%

CREATING SUPPORT FILES FOR asterdem30m



COPYING COLOR TABLE FOR asterdem30m

С помощью ключа -e командной строки можно определить необходимый географический охват результирующей области.

# Подгонка имеющейся области к импортируемому растру:

g.region rast=asterdem30m -p

Полученную карту можно отобразить, используя Display Manager d.m или с помощью команды d.rast. Для этого, с помощью d.mon x0 преварительно должен быть открыт монитор GRASS.

# Запуск Display Manager

d.m&
# Отображение карты на экране с помощью командной строки:

d.mon x0

d.rast asterdem30m

5.2 Импорт векторных данных


В последней версии GRASS 6.0 векторные библиотеки претерпели существенную реструктуризацию. Это было необходимо, поскольку GRASS 5.4 была в основном ориентирована на анализ растровых и точечных данных. В этом же руководстве описаны функции новой версии GRASS 6.0. Информацию об изменениях векторных форматов можно найти в главе 10.

При импорте векторных данных, приходится иметь дело с большим числом различных форматов. По сравнению с растровыми форматами, структура векторных данных более сложная, что делает процесс импорта векторных данных несколько более запутанным. В таблице 8 представлены форматы, которые поддерживаются ГИС GRASS, среди которых, возможно наиболее часто используемым является формат ESRI SHAPE.

После импорта векторный файл представлен в собственном векторном двоичном формате GRASS. Геометрия, топология и все атрибуты хранятся во внутренней базе данных GRASS. Топология создается для каждой карты в процессе импорта. Текущее состояние топологии можно отобразить с помощью команды v.info. Другие команды для работы с векторными данными, более подробно описаны в главе 10.


Таблица 8: Модули GRASS для импорта векторных данных




GRASS

Импорт

Модуль

Векторный формат

v.in.ogr

SHAPE, UK.NTF, SDTS, TIGER, S57, MapInfo

 

DGN, VRT, AVCBin, REC, Memory, GML, ODBC

 

(смотри также: http://www.gdal.org/ogr/ogr_formats.html)

v.in.ascii

GRASS ASCII

v.in.e00

ArcInfo-E00

v.in.db

Создание векторов из базы данных с координатами x|y|z

Импорт SHAPE файлов

Модуль для импорта SHAPE данных в GRASS называется v.in.ogr. Стоит отметить, что SHAPE формат не является топологическим форматом; в нем отсутствуют какие-либо связи между расположением или границами отдельных объектов. Например, линии границ между двумя площадными объектами (полигонами) сохраняются дважды. Это может привести к некоторым проблемам и, следовательно, должно быть скорректировано GRASS в процессе импорта.

Данные для следующего упражнения взяты из проекта FRIDA (17), который содержит большое количество подробных векторных данных города Оснабрюк (Osnabrueck), доступных для загрузки через Intevation GmbH (13).

v.in.ogr -o dsn=./frida-1.1-shp-joined/streets-joined.shp out=streets

12323 primitives registered

0 areas built

0 isles built

Number of nodes : 8937

Number of primitives: 12323

Number of points : 0

Number of lines : 12323

Number of boundaries: 0

Number of centroids : 0

Number of areas : 0

Number of isles : 0

Итак, в GRASS ($GISDBASE/$LOCATION/$MAPSET) в процессе импорта создана поддиректория с указанными улицами в папке vector. В этой директории сохранены топология (topo), информация в заголовках (head), пространственная информация (coor), история (hist), пространственный индекс (sidx) и индекс категорий (cidx), равно как и путь к соответствующим атрибутам (dbln).

Также в процессе импорта атрибутивные данные по умолчанию сохранятся в GRASS в директорию dbf в формате DBASE. Если необходимо, можно просмотреть содержание вновь импортированной атрибутивной таблицы (streets.dbf) в соответствующем редакторе. В операционной системе GNU/Linux это можно сделать с помощью OpenOffice, Gnumeric или Koffice.

Другие методы импорта векторных данных или создания векторов на основе таких баз данных, как PostgreSQL или PostGIS можно найти в главе 10.

Если векторные данные содержат свою собственную информацию о проекции, в процессе работы GRASS может быть создана новая область, основанная на этой информации. Необходимая информация, находящаяся в данных SHAPE файла, сохраняется в специальном файле с расширением .prj. Новая область с импортированными данными создается следующим образом:

v.in.ogr dsn=./frida-1.1-shp-joined/streets-joined.shp \

out=streets location=osnabrueck

5.3 Импорт точечных данных


В GRASS 6.0 точечные данные больше не хранятся отдельно в директории site_lists, а сохраняются как векторные точки и анализируются с помощью векторных модулей. Векторные точечные данные, которые доступны, например, в SHAPE формате, импортируются с помощью модуля v.in.ogr, как это показано на следующем примере:

v.in.ogr -o dsn=./frida-1.1-shp-joined/poi-joined.shp out=poi

268 primitives registered

0 areas built

0 isles built

Number of nodes : 268

Number of primitives: 268

Number of points : 268

Number of lines : 0

Number of boundaries: 0

Number of centroids : 0

Number of areas : 0

Number of isles : 0

Импорт долгот и широт (X|Y)

Простые ASCII таблицы, содержащие точки, представленные своими координатами (долгота и широта), можно импортировать в GRASS модулем v.in.ascii. В ASCII точки должны быть представлены тремя параметрами Широта, Долгота, Значение. Знак разделителя особой роли не играет. Например, можно импортировать файл (coord.txt), чьи столбцы отделяются вертикальной чертой:

1664619|5103481

1664473|5095782

1664273|5101919

cat coords.txt | v.in.ascii out=points

Пропущенные значения категорий (IDs) можно добавить впоследствии, используя модуль v.category. Т.е. можно назначить дополнительные атрибуты, которые будут храниться в базе данных:

v.category in=punkte out=points2 op=add
v.category points2 op=report

Затем точечные данные на данную область сохраняются в векторном формате GRASS в папке vector базы данных GRASS.

Импорт данных о высоте (X|Y|Z).

В том случае если третий столбец содержит данные о высоте точки, необходимо с помощью команды v.in.ascii добавить параметр -z:

1664619|5103481|101.2

1664473|5095782|102.2

1664273|5101919|101.7

cat coords3d.txt | v.in.ascii -z out=elevation


v.category in=elevation out=elevation2 op=add
v.category elevation2 op=report

Примеры того, как извлечь точки из существующих баз данных, даны в главе 10.