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] = readgeoraster('map_sample.tif');

Измените размер растра, используя mapresize. Удвоите длину и ширину растра, задав шкалу как 2. Используйте интерполяцию по ближайшему соседу путем определения метода интерполяции следующим 'nearest'.

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

Проверьте размер растра путем сравнения размера исходного растра с размером обновленного растра.

R.RasterSize
ans = 1×2

     2     2

R2.RasterSize
ans = 1×2

     4     4

Если растры маленькие, можно сравнить их непосредственно.

Z
Z = 2×2

     1     2
     3     4

Z2
Z2 = 4×4

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

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

[boston,R] = readgeoraster('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