Измените размер изображения
возвращается отображают B = imresize(A,scale)B это - scale времена размер изображения A. Входное изображение A может быть шкала полутонов, RGB, двоичный файл или категориальное изображение.
Если A имеет больше чем две размерности, затем imresize только изменяет размер первых двух размерностей. Если scale между 0 и 1, затем B меньше, чем A. Если scale больше 1, затем B больше, чем A. По умолчанию, imresize бикубическая интерполяция использования.
возвращается отображают B = imresize(A,[numrows numcols])B это имеет количество строк и столбцов, заданных двухэлементным векторным [numrows numcols].
___ = imresize(___, возвращает измененное изображение, где аргументы name-value управляют различными аспектами операции изменения размеров. Задайте аргументы name-value после всех других входных параметров.Name,Value)
Загрузите изображение в рабочую область.
I = imread('ngc6543a.jpg');Уменьшите изображение на коэффициент два.
J = imresize(I, 0.5);
Отобразите оригинальное изображение и измененное изображение.
figure, imshow(I), figure, imshow(J)


Загрузите изображение в рабочую область.
I = imread('ngc6543a.jpg');Уменьшите изображение к 40% первоначального размера с помощью интерполяции ближайшего соседа. Это - самый быстрый метод, но он имеет самое низкое качество.
J = imresize(I,0.4,'nearest');Отобразите оригинальное изображение и измененное изображение.
imshow(I)
title('Original Image')
imshow(J)
title('Resized Image Using Nearest Neighbor Interpolation')
Считайте изображение RGB в рабочую область.
RGB = imread('peppers.png');Измените размер изображения RGB, чтобы иметь 64 строки. imresize вычисляет количество столбцов автоматически.
RGB2 = imresize(RGB,[64 NaN]);
Получите размер измененного изображения.
sz = size(RGB2)
sz = 1×3
64 86 3
Отобразите оригинальное изображение и измененное изображение.
imshow(RGB)
title("Original Image")
imshow(RGB2)
title("Resized Image with 64 Rows")
Считайте индексируемое изображение в рабочую область.
[X,map] = imread("corn.tif");Увеличьте размер индексируемого изображения на 50%.
[Y,newmap] = imresize(X,map,1.5);
Отобразите оригинальное изображение и измененное изображение.
imshow(X,map)
title("Original Indexed Image and Colormap")
imshow(Y,newmap)
title("Resized Image and Optimized Colormap")
A — Отобразите, чтобы быть измененнымиОтобразите, чтобы быть измененными в виде числового массива, логического массива или категориального массива любой размерности. Введите должно быть неразреженным, и числовой вход должен быть действительным.
Типы данных: single | double | int8 | int16 | int32 | uint8 | uint16 | uint32 | logical | categorical
scale — Измените размер фактораИзмените размер фактора в виде положительного числа. imresize применяет тот же масштабный коэффициент к размерностям строки и столбца. Чтобы применить различное изменяют размер фактора к каждой размерности, используют Scale аргумент значения имени.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
[numrows numcols] — Размерности строки и столбца выходного изображенияРазмерности строки и столбца выходного изображения в виде двухэлементного вектора из положительных чисел. Можно задать значение NaN для любого numrows или numcols. В этом случае, imresize вычисляет количество строк или столбцов для той размерности автоматически, сохраняя соотношение сторон изображения.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
X — Индексируемое изображение, которое будет измененоИндексируемое изображение, которое будет изменено в виде действительного, неразреженного числового массива положительных целых чисел.
Типы данных: double | uint8 | uint16
map — Палитра сопоставлена с индексируемым изображениемПалитра сопоставила с индексируемым изображением XВ виде c-by-3 числовая матрица со значениями в области значений [0, 1]. Каждой строкой является трехэлементный триплет RGB, который задает красные, зеленые, и синие компоненты одного цвета палитры.
Типы данных: double
method метод интерполяции"bicubic" (значение по умолчанию) | вектор символов | строковый скаляр | двухэлементный массив ячеекМетод интерполяции в виде вектора символов, строкового скаляра или двухэлементного массива ячеек.
Когда method вектор символов или строковый скаляр, это идентифицирует конкретный метод или названное ядро интерполяции, перечисленное в следующей таблице.
| Метод | Описание |
|---|---|
|
Интерполяция по ближайшему соседу; выходной пиксель присвоен значение пикселя, которого находится в пределах точка. Никакие другие пиксели не рассматриваются. |
|
Билинейная интерполяция; значение выходного пикселя является взвешенным средним пикселей в самом близком окружении 2 на 2 |
|
Бикубическая интерполяция; значение выходного пикселя является взвешенным средним пикселей в самом близком окружении 4 на 4 Примечание Бикубическая интерполяция может произвести пиксельные значения вне исходной области значений. |
| Ядро интерполяции | Описание |
"box" | Ядро, имеющее форму поля |
"triangle" | Треугольное ядро (эквивалентный "bilinear") |
"cubic" | Кубическое ядро (эквивалентный "bicubic") |
"lanczos2" | Ядро Lanczos-2 |
"lanczos3" | Ядро Lanczos-3 |
Когда method двухэлементный массив ячеек, он задает пользовательское ядро интерполяции. Массив ячеек имеет форму {f, w}, где f является указателем на функцию для пользовательского ядра интерполяции, и w является шириной пользовательского ядра. f (x) должен быть нулем вне интервала-w/2 <= x <w/2. Указатель на функцию f может быть вызван скаляром или векторным входом. Для заданных пользователями ядер интерполяции выходное изображение может иметь некоторые значения немного вне области значений пиксельных значений во входном изображении.
Типы данных: char | string | cell
Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.
'Antialiasing',false не выполняет сглаживание при уменьшении изображенияAntialiasing — Выполните сглаживание при уменьшении изображенияtrue | falseВыполните сглаживание при уменьшении изображения в виде разделенной запятой пары, состоящей из 'Antialiasing' и true или false.
Если интерполяция method "nearest", затем значение по умолчанию 'Antialiasing' false.
Если интерполяция method "box" и входное изображение является категориальным, затем значение по умолчанию 'Antialiasing' false.
Для всех других методов интерполяции значением по умолчанию является true.
Типы данных: логический
Colormap — Возвратите оптимизированную палитру"optimized" (значение по умолчанию) | "original"Возвратите оптимизированную или исходную палитру для индексируемого изображения в виде разделенной запятой пары, состоящей из 'Colormap' и одно из следующих значений.
| Значение | Описание |
|---|---|
"original" | Выходная палитра newmap совпадает с входной палитрой map. |
"optimized" | imresize возвращает новую оптимизированную палитру. |
'Colormap' аргумент допустим только, когда изменение размеров индексировало изображения.
Типы данных: char | string
Dither — Выполните цветное размываниеtrue (значение по умолчанию) | falseВыполните цвет, размывающийся в виде разделенной запятой пары, состоящей из 'Dither' и true или false. В размывании вы применяете форму шума к изображению, чтобы рандомизировать ошибку квантования и предотвратить крупномасштабные шаблоны.
'Dither' аргумент допустим только, когда изменение размеров индексировало изображения.
Типы данных: логический
Method метод интерполяции"bicubic" (значение по умолчанию) | вектор символов | массив ячеекМетод интерполяции в виде разделенной запятой пары, состоящей из 'Method' и вектор символов или двухэлементный массив ячеек. Для получения дополнительной информации смотрите method.
Типы данных: char | string | cell
OutputSize — Размер выходного изображенияРазмер выходного изображения в виде разделенной запятой пары, состоящей из 'OutputSize' и двухэлементный вектор из положительных чисел. Для получения дополнительной информации смотрите [numrows numcols].
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
Scale — Измените размер масштабного коэффициентаИзмените размер масштабного коэффициента в виде разделенной запятой пары, состоящей из 'Scale' и положительное число или двухэлементный вектор из положительных чисел. Если вы задаете скаляр, то imresize применяет тот же масштабный коэффициент к размерностям строки и столбца. Если вы задаете двухэлементный вектор, то imresize применяет различное значение шкалы к каждой размерности.
Типы данных: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64
B — Измененное изображениеИзмененное изображение, возвращенное как числовой, логический, или категориальный массив совпадающего типа данных как входное изображение, A.
Y — Измененное индексированное изображениеИзмененное индексированное изображение, возвращенное как числовой массив совпадающего типа данных как вход индексированное изображение, X.
newmap — Палитра измененного индексируемого изображенияПалитра измененного индексируемого изображения Y, возвращенный как m-by-3 числовая матрица. По умолчанию, imresize возвращает новую, оптимизированную палитру с измененным изображением. Чтобы возвратить палитру, которая совпадает с исходной палитрой, используйте 'Colormap' аргумент значения имени.
Если размер выходного изображения не является целым числом, то imresize не использует заданную шкалу. imresize использование ceil при вычислении размера выходного изображения.
Указания и ограничения по применению:
Синтаксисы, которые поддерживают индексируемые изображения, не поддерживаются, включая именованные параметры 'Colormap' и 'Dither'.
Пользовательские ядра интерполяции не поддерживаются.
Все пары значения параметров должны быть константами времени компиляции.
Указания и ограничения по применению:
'Colormap' и 'Dither' аргументы пары "имя-значение" не поддерживаются.
Индексируемые изображения не поддерживаются.
Пользовательские ядра интерполяции не поддерживаются.
Все пары "имя-значение" должны быть константами времени компиляции.
Для определенных ядер интерполяции может быть маленькое числовое несоответствие между результатами в MATLAB® и сгенерированный код.
backgroundPool или ускорьте код с Parallel Computing Toolbox™ ThreadPool.Эта функция полностью поддерживает основанные на потоке среды. Для получения дополнительной информации смотрите функции MATLAB Запуска в Основанной на потоке Среде.
Указания и ограничения по применению:
gpuArray введите с больше чем 227 элементы не поддерживаются.
gpuArray введите должно быть неразреженным.
gpuArray введите с базовым типом categorical не поддерживается.
Индексируемые изображения не поддерживаются на графическом процессоре.
Если вы используете бикубическую интерполяцию, выходное изображение может иметь некоторые значения немного вне области значений пиксельных значений во входном изображении.
Существует небольшое числовое различие между результатами imresize на центральном процессоре и графическом процессоре. Эти различия происходят справа и нижние границы изображения и едва примечательны невооруженным глазом.
Для получения дополнительной информации смотрите функции MATLAB Запуска на графическом процессоре (Parallel Computing Toolbox).
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.