exponenta event banner

Изменить размеры

Увеличение или уменьшение размеров изображения

Библиотека

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

visiongeotforms

  • Resize block

Описание

Блок «Изменить размер» увеличивает или сокращает изображение путем изменения размера изображения вдоль одного размера (строки или столбца). Затем он изменяет размер изображения вдоль другого размера (столбца или строки).

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

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

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

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

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

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

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

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

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

  • 8-, 16-, 32-разрядное целое число со знаком

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

Нет

ROI

Четырехэлементный вектор [x y width height], определяющий ROI

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

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

  • 8-, 16-, 32-разрядное целое число со знаком

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

Нет

Продукция

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

Совпадает с портом ввода

Нет

Флаг

Логическое значение, указывающее, находится ли ROI в пределах изображения

Булев

Нет

Обработка окупаемости инвестиций

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

  • Указать = Number of output rows and columns

  • Метод интерполяции = Nearest neighbor, Bilinear, или Bicubic

  • Снимите флажок Выполнить сглаживание, если коэффициент изменения размера находится в диапазоне от 0 до 100.

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

Если установлен флажок Включить обработку ROI (Enable ROI processing), в диалоговом окне появится флажок Output (Output), указывающий, находится ли какая-либо часть ROI вне границ изображения. Если этот флажок установлен, на блоке появится порт флага. В следующих таблицах описаны выходные данные порта Flag.

Флаг вывода портаОписание
0ROI полностью находится внутри входного изображения.
1ROI полностью или частично находится вне входного изображения.

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

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

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

Параметры

Определить

Укажите, какие аспекты изображения требуется изменить. Ваш выбор - 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, в диалоговом окне появится параметр Коэффициент изменения размера в процентах. Введите скалярное процентное значение, применяемое как к строкам, так и к столбцам.

При выборе 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.

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

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

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

number_output_rows = раунд (number_input_rows*resize_factor/100);(1)
number_output_cols = раунд (number_input_cols*resize_factor/100);(2)
Количество выходных столбцов

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

Количество выходных строк

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

Количество выходных строк и столбцов

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

Метод интерполяции

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

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

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

  • Для параметра Коэффициент изменения размера в процентах задается значение, кратное 100.

  • Деление 100 на коэффициент Resize в процентном значении параметра приводит к целому значению.

Сглаживание выполняется, если коэффициент изменения размера находится в диапазоне от 0 до 100

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

Включить обработку ROI

Установите этот флажок, чтобы изменить размер определенной области каждого изображения. Этот параметр доступен, если для параметра Specify установлено значение Number of output rows and columns, параметр метода интерполяции имеет значение Nearest neighbor, Bilinear, или Bicubicи флажок Выполнить сглаживание, если коэффициент изменения размера находится в диапазоне от 0 до 100, не установлен.

Флаг вывода, указывающий, находится ли какая-либо часть ROI вне границ изображения

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

Режим округления

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

Режим переполнения

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

Таблица интерполяционных весов

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

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

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

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

Выход продукта

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

  • При выборе Same as input, эти характеристики соответствуют характеристикам входа в блок.

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

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

Аккумулятор

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

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

  • При выборе Same as input, эти характеристики соответствуют характеристикам входа в блок.

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

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

Продукция

Выберите способ задания длины слова и длины дроби вывода блока:

  • При выборе Same as input, эти характеристики соответствуют характеристикам входа в блок.

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

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

Блокировка параметров типа данных от изменений с помощью инструментов с фиксированной точкой

Выберите этот параметр, чтобы инструменты с фиксированной точкой не переопределяли типы данных, заданные в маске блока. Дополнительные сведения см. в разделе 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.

См. также

Сменить друг друга

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

Постричь

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

Перевести

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

imresize

Программное обеспечение Toolbox™ обработки изображений

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

Создание кода C/C + +
Создайте код C и C++ с помощью Simulink ® Coder™

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