mapresize

Измените размер спроектированного растра

Описание

пример

[B,RB] = mapresize(A,RA,scale) возвращает растр B это - scale времена размер растра A. RA объект растровой привязки, который задает местоположение и степень данных в A. mapresize возвращает объект растровой привязки RB это сопоставлено с возвращенным растром B. По умолчанию, mapresize кубичная интерполяция использования.

[B,RB] = mapresize(___,method) возвращает измененный растр где method задает метод интерполяции.

[B,RB] = mapresize(___,'Antialiasing',TF) задает, выполнить ли сглаживание при уменьшении растра. Когда true, mapresize выполняет сглаживание. Значение по умолчанию зависит от типа заданной интерполяции. Для интерполяции ближайшего соседа значением по умолчанию является false. Для всех других методов интерполяции значением по умолчанию является true.

Примеры

свернуть все

Считайте простой спроектированный растр в рабочую область с ее связанным объектом растровой привязки карты.

[Z,R] = geotiffread('map_sample.tif')
Z = 2×2

     1     2
     3     4

R = 
  MapCellsReference with properties:

            XWorldLimits: [200000 300000]
            YWorldLimits: [200000 300000]
              RasterSize: [2 2]
    RasterInterpretation: 'cells'
        ColumnsStartFrom: 'north'
           RowsStartFrom: 'west'
      CellExtentInWorldX: 50000
      CellExtentInWorldY: 50000
    RasterExtentInWorldX: 100000
    RasterExtentInWorldY: 100000
        XIntrinsicLimits: [0.5 2.5]
        YIntrinsicLimits: [0.5 2.5]
      TransformationType: 'rectilinear'
    CoordinateSystemType: 'planar'


Измените размер растра с помощью mapresize функция. Как входные параметры, задайте входной растр, растровый объект привязки, сопоставленный с входным растром и желаемой шкалой выходного растра. Этот пример также задает самый близкий соседний метод интерполяции. Функция возвращает измененный растр и объект растровой привязки карты, сопоставленный с выходным растром.

[Z2,R2] = mapresize(Z,R,2,'nearest')
Z2 = 4×4

     1     1     2     2
     1     1     2     2
     3     3     4     4
     3     3     4     4

R2 = 
  MapCellsReference with properties:

            XWorldLimits: [200000 300000]
            YWorldLimits: [200000 300000]
              RasterSize: [4 4]
    RasterInterpretation: 'cells'
        ColumnsStartFrom: 'north'
           RowsStartFrom: 'west'
      CellExtentInWorldX: 25000
      CellExtentInWorldY: 25000
    RasterExtentInWorldX: 100000
    RasterExtentInWorldY: 100000
        XIntrinsicLimits: [0.5 4.5]
        YIntrinsicLimits: [0.5 4.5]
      TransformationType: 'rectilinear'
    CoordinateSystemType: 'planar'


В объекте растровой привязки, сопоставленном с выходным растром, RasterSize поле обновляется, чтобы показать новый размер, 4 на 4. Кроме того, CellExtentInWorldX и CellExtentInWorldY поля обновили значения также.

В этом примере показано, как изменить размер спроектированного растрового набора данных.

Считайте спроектированный растровый набор данных в рабочую область.

[boston,R] = geotiffread('boston.tif');

Отобразите растр с mapshow.

mapshow(boston,R)

Измените размер спроектированного растрового набора данных. В данном примере уменьшайте растр до одной шестнадцатой его первоначальный размер.

[resizedBoston,resizedR] = mapresize(boston,R,1/16);

Отобразите измененный растр. Обратите внимание на то, что mapshow сохраняет исходные пределы карты в отображении так, чтобы на первый взгляд измененный растр, казалось, был одного размера с оригиналом. Более внимательное рассмотрение показывает, что размер пикселей в измененном растре больше, чем пиксели в оригинале.

figure
mapshow(resizedBoston,resizedR)

Входные параметры

свернуть все

Растр, который будет изменен, заданный как числовой или логический массив. Если A имеет больше чем две размерности, mapresize только изменяет размер первых двух размерностей.

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | logical

Информация о местоположении и степени растра, заданного как объект растровой привязки карты. Чтобы преобразовать растровую матрицу в объект растровой привязки карты, используйте refmatToMapRasterReference функция.

Объем изменения размеров, заданного в виде числа. Если scale находится в области значений [0 1]B меньше, чем A. Если scale больше 1, B больше, чем A.

Пример: 0.5

Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

Метод интерполяции, заданный как одно из следующих значений.

ЗначениеОписание
'nearest'Самая близкая соседняя интерполяция
'bilinear'Билинейная интерполяция
'cubic'Кубичная интерполяция

Типы данных: char | string

Выходные аргументы

свернуть все

Измененный растр, возвращенный как числовой или логический массив.

Информация о местоположении и степени растра, возвращенного как объект растровой привязки карты.

Советы

  • Используйте mapresize с растровыми данными в x - и y - координаты. Чтобы работать с географическими растровыми данными в координатах широты и долготы, используйте georesize.

Смотрите также

| | |

Введенный в R2019a

Для просмотра документации необходимо авторизоваться на сайте