Rotate

Поверните изображение на заданный угол

Библиотека

Геометрические преобразования

visiongeotforms

  • Rotate block

Описание

Используйте блок Вращать (Rotate), чтобы повернуть изображение на угол, заданный в радианах.

Примечание

Этот блок поддерживает интенсивность и цветные изображения на своих портах.

ПортОписание

Изображение

Матрица M-на-N значений интенсивности или цветовой видеосигнал M-на-N-на-P, где P - количество цветовых плоскостей

Угол

Угол поворота

Выход

Повернутая матрица

Блок Rotate использует 3-пасовый алгоритм вращения сдвига, чтобы вычислить его значения, который отличается от алгоритма, используемого imrotate функция в Image Processing Toolbox™.

Типы данных с фиксированной точкой

Следующая схема показывает типы данных, используемые в блоке Rotate для билинейной интерполяции сигналов с фиксированной точкой.

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

Блок Rotate требует дополнительных типов данных. Значение таблицы Sine имеет тот же размер слова что и тип данных угла, и длину дроби, которая равна его размеру слова минус единице. Следующая схема показывает, как эти типы данных используются внутри блока.

Примечание

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

Параметры

Output size

Задайте размер повернутой матрицы. Если вы выбираете Expanded to fit rotated input imageблок выводит матрицу, которая содержит все повернутые значения изображения. Если вы выбираете Same as input imageблок выводит матрицу, которая содержит среднюю часть повернутого изображения. В результате ребер повернутого изображения могут быть обрезаны. Используйте параметр Background fill value, чтобы задать пиксельные значения вне изображения.

Rotation angle source

Задайте, как ввести угол поворота. Если вы выбираете Specify via dialogпараметр Angle (radians) появляется в диалоговом окне.

Если вы выбираете Input portПорт Угол появляется на блоке. Блок использует вход к этому порту в каждом временном шаге как угол поворота. Значение входа к порту Угла должно быть совпадающий тип данных как значение входа к порту I.

Angle (radians)

Введите действительное, скалярное значение для вашего угла поворота. Этот параметр видим, если для параметра Rotation angle source вы выбираете Specify via dialog.

Когда угол поворота является произведением pi/2, блок использует более эффективный алгоритм. Если значение угла, которое вы вводите для параметра Angle (radians), находится в пределах 0,00001 радианов, кратных pi/2, блок округляет значение угла до кратного pi/2 перед выполнением вращения.

Maximum angle (enter pi radians to accommodate all positive and negative angles)

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

Этот параметр видим, если вы задаете параметр Output size, равный Expanded to fit rotated input image, и параметр Rotation angle source для Input port.

Display rotated image in

Задайте способ поворота изображения. Если вы выбираете Centerизображение поворачивается вокруг его центральной точки. Если вы выбираете Top-left cornerблок вращает изображение так, чтобы два угла повернутого входного изображения всегда находились в контакте с верхней и левой сторонами выходного изображения.

Этот параметр видим, если для параметра Output size вы выбираете Expanded to fit rotated input image, и, для параметра Rotation angle source, вы выбираете Input port.

Sine value computation method

Задайте метод расчета значения. Если вы выбираете Trigonometric functionблок вычисляет значения синуса и косинуса, необходимые для вычисления поворота вашего изображения во время симуляции. Если вы выбираете Table lookupблок вычисляет и хранит тригонометрические значения, необходимые для вычисления поворота вашего изображения перед началом симуляции. В этом случае блоку требуется дополнительная память.

Background fill value

Задайте значение для пикселей, которые находятся вне изображения.

Interpolation method

Укажите, какой метод интерполяции использует блок для перевода изображения. Если вы выбираете Nearest neighbor, блок использует значение одного ближайшего пикселя для нового значения пикселя. Если вы выбираете Bilinearновое значение пикселя является взвешенным средним значением четырех ближайших значений пикселя. Если вы выбираете Bicubicновое значение пикселя является взвешенным средним значением из шестнадцати ближайших значений пикселя.

Количество пикселей, которое блок рассматривает, влияет на сложность расчетов. Поэтому Nearest-neighbor интерполяция является наиболее в вычислительном отношении эффективной. Однако, поскольку точность метода пропорциональна количеству рассматриваемых пикселей, Bicubic метод является наиболее точным.

Rounding mode

Выберите режим округления для операций с фиксированной точкой.

Overflow mode

Выберите режим переполнения для операций с фиксированной точкой.

Angle values

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

  • Когда вы выбираете Same word length as input, размеры слова значений угла совпадают с углом входа к блоку. В этом режиме длина дроби значений угла автоматически устанавливается на шкалу только с двоичной точкой, которая обеспечивает вам лучшую точность, учитывая значение и размер слова значений угла.

  • Когда вы выбираете Specify word length, можно ввести размер слова значений угла, в битах. Блок автоматически устанавливает длину дроби, чтобы дать вам лучшую точность.

  • Когда вы выбираете Binary point scaling, можно ввести размер слова и длину дроби значений угла, в битах.

  • Когда вы выбираете Slope and bias scalingможно ввести длину размера слова в битах и наклон значений угла. Смещение всех сигналов в блоках Computer Vision Toolbox™ составляет 0.

Этот параметр видим, только если для параметра Rotation angle source вы выбираете Specify via dialog.

Product output

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

  • Когда вы выбираете Same as first inputэти характеристики совпадают с характеристиками входов блока.

  • Когда вы выбираете Binary point scaling, можно ввести размер слова и длину дроби выходного продукта, в битах.

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова, в битах, и наклон продукта выхода. Смещение всех сигналов в блоках Computer Vision Toolbox равно 0.

Accumulator

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

  • Когда вы выбираете Same as product output, эти характеристики совпадают с характеристиками выходных данных продукта.

  • Когда вы выбираете Same as first inputэти характеристики совпадают с характеристиками первого входа в блок.

  • Когда вы выбираете Binary point scaling, можно ввести размер слова и длину дроби аккумулятора, в битах.

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова, в битах, и наклон аккумулятора. Смещение всех сигналов в блоках Computer Vision Toolbox равно 0.

Output

Выберите, как задать размер слова и длину дроби выхода блока:

  • Когда вы выбираете Same as first inputэти характеристики совпадают с характеристиками первого входа в блок.

  • Когда вы выбираете Binary point scaling, можно ввести размер слова и длину дроби выхода, в битах.

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова, в битах, и наклон выхода. Смещение всех сигналов в блоках Computer Vision Toolbox равно 0.

Lock data type settings against change by the fixed-point tools

Выберите этот параметр, чтобы инструменты с фиксированной точкой не переопределяли типы данных, заданные в маске блока. Для получения дополнительной информации см. fxptdlg (Fixed-Point Designer), ссылочная страница на Fixed-Point Tool в Simulink® документация.

Поддерживаемые типы данных

ПортПоддерживаемые типы данных

Изображение

  • Плавающая точка двойной точности

  • Плавающая точка с одной точностью

  • Фиксированная точка

  • 8-, 16-, 32-битное целое число со знаком

  • 8-, 16-, 32-битное беззнаковое целое число

Угол

То же, что и порт Image

Выход

То же, что и порт Image

Если тип данных входного сигнала с плавающей точкой, выходной сигнал является совпадающим типом данных, как и входной сигнал.

Ссылки

[1] Вольберг, Джордж. Деформация цифрового изображения. Вашингтон: IEEE Computer Society Press, 1990.

См. также

Resize

Программное обеспечение Computer Vision Toolbox

Translate

Программное обеспечение Computer Vision Toolbox

Shear

Программное обеспечение Computer Vision Toolbox

imrotate

Программное обеспечение Image Processing Toolbox

Подробнее о

расширить все

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

Генерация кода C/C + +
Сгенерируйте код C и C++ с помощью Coder™ Simulink ®

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