exponenta event banner

imrotate

Повернуть изображение

Описание

пример

J = imrotate(I,angle) поворачивает изображение I около angle градусов в направлении против часовой стрелки вокруг центральной точки. Чтобы повернуть изображение по часовой стрелке, задайте отрицательное значение для angle. imrotate создает выходное изображение J достаточно большой, чтобы содержать все повернутое изображение. По умолчанию imrotate использует интерполяцию ближайшего соседа, устанавливая значения пикселов в J которые находятся вне повернутого изображения 0.

пример

J = imrotate(I,angle,method) поворачивает изображение I используя метод интерполяции, указанный method.

пример

J = imrotate(I,angle,method,bbox) также использует bbox для определения размера выходного изображения. Можно обрезать выходные данные до размера входного изображения или вернуть все повернутое изображение.

Примеры

свернуть все

Считывание изображения в рабочую область и преобразование его в изображение в оттенках серого.

I = fitsread('solarspectra.fts');
I = rescale(I);

Отображение исходного изображения.

figure
imshow(I)
title('Original Image')

Figure contains an axes. The axes with title Original Image contains an object of type image.

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

J = imrotate(I,-1,'bilinear','crop');

Отображение повернутого изображения.

figure
imshow(J)
title('Rotated Image')

Figure contains an axes. The axes with title Rotated Image contains an object of type image.

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

свернуть все

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

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

Величина поворота в градусах, заданная как числовой скаляр.

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

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

Стоимость

Описание

'nearest'

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

Интерполяция ближайшего соседа - единственный метод, поддерживаемый для категориальных изображений.

'bilinear'

Билинейная интерполяция. Значение выходного пикселя представляет собой средневзвешенное значение пикселей в ближайшей окрестности 2 на 2.

'bicubic'

Бикубическая интерполяция. Значение выходного пикселя представляет собой средневзвешенное значение пикселей в ближайшей окрестности 4 на 4.

Примечание

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

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

Ограничительная рамка, определяющая размер выходного изображения, определяемого в виде одного из следующих значений:

Стоимость

Описание

'crop'

Создание выходного изображения J того же размера, что и входное изображение Iобрезка повернутого изображения по размеру.

'loose'

Создание выходного изображения J достаточно большой, чтобы содержать все повернутое изображение. J больше, чем I.

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

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

свернуть все

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

Совет

  • Эта функция изменилась в версии 9.3 (R2015b). В предыдущих версиях Toolbox™ обработки изображений используются различные пространственные условные обозначения. При необходимости получения тех же результатов, что и при предыдущей реализации, используйте функцию. imrotate_old.

  • В некоторых случаях эта функция использует преимущества аппаратной оптимизации для типов данных uint8, uint16, single, и double чтобы работать быстрее.

Расширенные возможности

..
Представлен до R2006a