Поставщики геопространственных растровых данных обычно упаковывают данные как смежные плитки. Для примера данные SRTM Void Filed повышения упаковываются в плитки 1 степени -by-1 степени. Чтобы анализировать данные, распределенные по нескольким плиткам, например, при вычислении видимости линии видимости, необходимо мозаичить плитки в один растр.
Процессы объединения растров камер и растров точек проводки различаются. Для получения информации о дифференциации растров, состоящих из камер и точек проводки, смотрите Пространственно Ссылка Импортированные растры.
Прежде чем мозаичить плитки, необходимо убедиться, что плитки смежны и что плитка контуров выровнена. В противном случае элементы мозаичного растра могут быть пространственно ссыланы на неправильные местоположения.
В этом примере показано, как импортировать два смежных файла растровых данных, сделанных из камер, мозаичными данными в один растр и отобразить мозаичный растр на карте.
Файлы, используемые в этом примере, concord_ortho_e.tif
и concord_ortho_w.tif
, содержат соседние изображения восток-запад с concord_ortho_e.tif
к востоку от concord_ortho_w.tif
. Границы камер и мировые пределы y изображений идентичны.
Импортируйте изображения с помощью readgeoraster
функция. Выходные выходы eastA
и westA
являются массивами, которые содержат данные изображения и выходы westR
и eastR
являются MapCellsReference
объекты, которые содержат пространственную ссылочную информацию.
[eastA,eastR] = readgeoraster('concord_ortho_e.tif'); [westA,westR] = readgeoraster('concord_ortho_w.tif');
Создайте мозаичный растр путем объединения массивов. Изображения смежны и состоят из камер, поэтому восточный контур westA
выравнивается по западному контуру eastA
.
mosaicA = [westA eastA];
Пространственно ссылаться на мозаичный растр путем создания объекта растровой привязки. Можно создать ссылку объекта для проективного растра камер с помощью maprefcells
функция.
Задайте мировые пределы x и y растра. Пределы X растра с мозаикой являются минимальным пределом X западного растра и максимальным пределом X восточного растра. Мировые пределы y растра с мозаикой те же, что и пределы y импортированных растров. Создайте ссылку на объект.
xlimits = [westR.XWorldLimits(1) eastR.XWorldLimits(2)]; ylimits = westR.YWorldLimits; mosaicR = maprefcells(xlimits,ylimits,size(mosaicA));
Столбцы массивов, импортированных с помощью readgeoraster
функция начинается с севера. Поэтому установите ColumnsStartFrom
свойство ссылки на 'north'
.
mosaicR.ColumnsStartFrom = 'north';
Отобразите мозаичное изображение на карте при помощи mapshow
функция.
mapshow(mosaicA,mosaicR,'DisplayType','image')
В этом примере показано, как импортировать два смежных файла растровых данных, сделанных из точек проводки, мозаичными данными в один растр и отобразить мозаичный растр на карте.
Файлы, используемые в этом примере, n39_w106_3arc_v2.dt1
и n40_w106_3arc_v2.dt1
, содержат смежные с севером-югом повышения сетки с n39_w106_3arc_v2.dt1
к югу от n40_w106_3arc_v2.dt1
. Предел северной широты сетки в n39_w106_3arc_v2.dt1
совпадает с пределом южной широты сетки в n40_w106_3arc_v2.dt1
. Интервалы между точками проводки и пределы долготы сеток идентичны.
Импортируйте сетки с помощью readgeoraster
функция. Выходные выходы southZ
и northZ
являются массивами типа double
которые содержат данные о повышении и выходы southR
и northR
являются GeographicPostingsReference
объекты, которые содержат пространственную ссылочную информацию.
[southZ,southR] = readgeoraster('n39_w106_3arc_v2.dt1','OutputType','double'); [northZ,northR] = readgeoraster('n40_w106_3arc_v2.dt1','OutputType','double');
Создайте мозаичный растр путем объединения массивов. Контуры растров точек проводки состоят из крайних точек проводки, и столбцов массивов, импортированных с помощью readgeoraster
функция начинается с севера. Поэтому самая южная строка northZ
и самая северная строка southZ
те же самые. Чтобы избежать повторяющейся строки в мозаичном растре, удалите самую южную строку northZ
перед объединением массивов.
northZ(end,:) = []; mosaicZ = [northZ; southZ];
Пространственно ссылаться на мозаичный растр путем создания объекта растровой привязки. Можно создать объект ссылки для географического растра точек проводки с помощью georefpostings
функция.
Задайте пределы широты и долготы растра. Пределы широты являются минимальной широтой южного растра и максимальной широтой северного растра. Пределы долготы мозаичного растра те же, что и пределы долготы импортных растров. Создайте ссылку на объект.
latlim = [southR.LatitudeLimits(1) northR.LatitudeLimits(2)]; lonlim = southR.LongitudeLimits; mosaicR = georefpostings(latlim,lonlim,size(mosaicZ));
Установите ColumnsStartFrom
и GeographicCRS
свойства объекта ссылки так, чтобы они совпадали со свойствами импортированных объектов ссылки.
mosaicR.ColumnsStartFrom = southR.ColumnsStartFrom; mosaicR.GeographicCRS = southR.GeographicCRS;
Отобразите мозаичный растр на карте. Создайте оси карты путем определения пределов широты и долготы данных. Затем отобразите данные как поверхность при помощи geoshow
функция. Применить палитру, подходящую для данных о повышении, можно с помощью demcmap
функция.
usamap(mosaicR.LatitudeLimits,mosaicR.LongitudeLimits) geoshow(mosaicZ,mosaicR,'DisplayType','surface') demcmap(mosaicZ)
Данные по повышению, используемые в этом примере, получены из Геологической службы США.