Resize

Увеличение или усадка размеров изображений

Библиотека

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

visiongeotforms

  • Resize block

Описание

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

Этот блок поддерживает интенсивность и цветные изображения на своих портах. Когда вы вводите сигнал типа данных с плавающей точкой, блок выводит тот совпадающий тип данных.

Сужение изображения может ввести в изображение высокой частоты компоненты, и может произойти сглаживание. Если установлен флажок Perform antialiasing when resize factor is between 0 and 100, блок выполняет фильтрацию нижних частот на вход изображении перед его усадкой.

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

ПортВвод/выводПоддерживаемые типы данныхКомплексные числа

Изображение/Вход

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

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

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

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

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

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

Нет

ИНФОРМАЦИЯ ТОЛЬКО ДЛЯ ЧТЕНИЯ

Четырехэлементный вектор [x y width height], который задает информация только для чтения

  • Плавающая точка двойной точности (поддерживается, только если вход в Input port с плавающей точкой)

  • Плавающая точка с одной точностью (поддерживается только, если вход в Input port является плавающей точкой)

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

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

Нет

Выход

Изменение размера изображения

То же, что Input port

Нет

Флаг

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

Булев

Нет

Информация только для чтения

Чтобы изменить размер конкретной области каждого изображения, установите флажок Enable ROI processing. Чтобы включить эту опцию, выберите следующие значения параметров.

  • Specify = Number of output rows and columns

  • Interpolation method = Nearest neighbor, Bilinear, или Bicubic

  • Снимите флажок Perform antialiasing when resize factor is between 0 and 100.

Если установить флажок Enable ROI processing, на блоке появится порт ROI. Используйте этот порт, чтобы задать видимую область (ROI) в матрице входа, размер которой вы хотите изменить. Входной вход этого порта должен быть четырехэлементным вектором, [x y width height]. Первые два элемента определяют верхний левый угол информация только для чтения, а вторые два элемента определяют ширину и высоту информация только для чтения.

Если установить флажок Enable ROI processing, в диалоговом окне появится флажок Output flag indicating if any part of ROI is outside image bounds. Если установить этот флажок, на блоке появится порт Флаг. В следующих таблицах описываются выходы порта флага.

Выход порта флагаОписание
0Информация только для чтения полностью находится внутри входа изображения.
1Информация только для чтения полностью или частично находится вне входа изображения.

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

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

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

Параметры

Specify

Укажите, какие аспекты изображения необходимо изменить. Ваш выбор Output size as a percentage of input size, Number of output columns and preserve aspect ratio, Number of output rows and preserve aspect ratio, или Number of output rows and columns.

Когда вы выбираете Output size as a percentage of input sizeпараметр Resize factor in percentage появляется в диалоговом окне. Введите скалярное процентное значение, которое применяется как к строкам, так и к столбцам.

Когда вы выбираете Number of output columns and preserve aspect ratioпараметр Number of output columns появляется в диалоговом окне. Введите скалярное значение, которое представляет количество столбцов, которое должно иметь выходное изображение. Блок вычисляет количество выхода строк так, чтобы выходное изображение имело то же соотношение сторон, что и вход изображение.

Когда вы выбираете Number of output rows and preserve aspect ratioпараметр Number of output rows появляется в диалоговом окне. Введите скалярное значение, которое представляет количество строк, которые нужно иметь выходному изображению. Блок вычисляет количество выхода столбцов так, чтобы выходное изображение имело такое же соотношение сторон, как и вход изображение.

Когда вы выбираете Number of output rows and columnsпараметр Number of output rows and columns появляется в диалоговом окне. Введите двухэлементный вектор, где первый элемент является количеством строк в выходном изображении, а второй элемент - количеством столбцов. В этом случае соотношение сторон изображения может измениться.

Resize factor in percentage

Введите скалярное процентное значение, которое применяется как к строкам, так и к столбцам или двухэлементному вектору, где первый элемент является процентом, на который можно изменить размер строк, а второй элемент - процентом, на который можно изменить размер столбцов. Этот параметр видим, если для параметра Specify вы выбираете Output size as a percentage of input size.

Необходимо ввести скалярное значение, больше нуля. В таблице ниже описывается влияние значения коэффициента изменения размера:

Коэффициент изменения размера в процентахИзменение размера изображения
0 < коэффициент изменения размера < 100Блок сжимает изображение.
коэффициент изменения размера = 100Изображение без изменений.
коэффициент изменения размера > 100Блок увеличивает изображение.

Размерности выходной матрицы зависят от параметра Resize factor in percentage и задаются следующими уравнениями:

number_output_rows = round (number_input_rows*resize_factor/100);(1)
number_output_cols = round (number_input_cols*resize_factor/100);(2)
Number of output columns

Введите скалярное значение, которое представляет количество столбцов, которое должно иметь выходное изображение. Этот параметр видим, если для параметра Specify вы выбираете Number of output columns and preserve aspect ratio.

Number of output rows

Введите скалярное значение, которое представляет количество строк, которые нужно иметь выходному изображению. Этот параметр видим, если для параметра Specify вы выбираете Number of output rows and preserve aspect ratio.

Number of output rows and columns

Введите двухэлементный вектор, где первый элемент является количеством строк в выходном изображении, а второй элемент - количеством столбцов. Этот параметр видим, если для параметра Specify вы выбираете Number of output rows and columns.

Interpolation method

Укажите, какой метод интерполяции нужно изменить размер изображения.

Когда вы выбираете Nearest neighborблок использует один ближайший пиксель, чтобы интерполировать значение пикселя. Эта опция, хотя и самый эффективный, является наименее точным. Когда вы выбираете Bilinearблок использует четыре ближайших пикселя, чтобы интерполировать значение пикселя. Когда вы выбираете Bicubic или Lanczos2блок использует 16 ближайших пикселей, чтобы интерполировать значение пикселя. Когда вы выбираете Lanczos3блок использует 36 окружающих пикселей, чтобы интерполировать значение пикселя.

Блок Resize выполняет оптимально, когда вы устанавливаете этот параметр равным Nearest neighbor с одним из следующих условий:

  • Вы устанавливаете параметр Resize factor in percentage, кратный 100.

  • Деление 100 на Resize factor in percentage значение параметров приводит к целочисленному значению.

Perform antialiasing when resize factor is between 0 and 100

Если установить этот флажок, блок выполняет lowpass фильтрацию на вход изображении перед сужением, чтобы предотвратить сглаживание.

Enable ROI processing

Установите этот флажок, чтобы изменить размер определенной области каждого изображения. Этот параметр доступен, когда параметр Specify установлен в Number of output rows and columns, параметр Interpolation method установлен в Nearest neighbor, Bilinear, или Bicubic, и флажок Perform antialiasing when resize factor is between 0 and 100 не установлен.

Output flag indicating if any part of ROI is outside image bounds

Если установить этот флажок, на блоке появится порт Флаг. Блок выходы 1 в этом порте, если информация только для чтения полностью или частично вне входа изображения. В противном случае выводится значение 0.

Rounding mode

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

Overflow mode

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

Interpolation weights table

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

  • Когда вы выбираете Same as input, размер слова таблицы весов интерполяции значений совпадать с весами входа для блока.

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

  • Когда вы выбираете Slope and bias scaling, можно ввести размер слова значений таблицы весов интерполяции, в битах.

Product output

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

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

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

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

Accumulator

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

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

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

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

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

Output

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

  • Когда вы выбираете Same as 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® документация.

Ссылки

[1] Уорд, Джозеф и Дэвид Р. Кок. «Алгоритмы повторной дискретизации для изменения размера и вращения изображений», Proc. SPIE Digital Image Processing Applications, vol. 1075, pp. 260-269, 1989.

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

См. также

Rotate

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

Shear

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

Translate

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

imresize

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

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

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

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