Увеличение или уменьшение размеров изображения
Геометрические преобразования
visiongeotforms

Блок «Изменить размер» увеличивает или сокращает изображение путем изменения размера изображения вдоль одного размера (строки или столбца). Затем он изменяет размер изображения вдоль другого размера (столбца или строки).
Этот блок поддерживает изображения интенсивности и цвета на своих портах. При вводе сигнала типа данных с плавающей запятой блок выводит данные того же типа.
Уменьшение изображения может ввести в изображение высокочастотные компоненты, и может произойти наложение псевдонимов. Если установлен флажок Выполнить сглаживание, если коэффициент изменения размера находится в диапазоне от 0 до 100, блок выполняет фильтрацию нижних частот для входного изображения перед его сжатием.
| Порт | Ввод/вывод | Поддерживаемые типы данных | Поддерживаемые комплексные значения |
|---|---|---|---|
Изображение/ввод | Матрица M-за-N значений интенсивности или цветной видеосигнал M-за-N-за-P, где P - количество цветовых плоскостей |
| Нет |
ROI | Четырехэлементный вектор [x y width height], определяющий ROI |
| Нет |
Продукция | Изменение размера изображения | Совпадает с портом ввода | Нет |
Флаг | Логическое значение, указывающее, находится ли 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.
| Флаг вывода порта | Описание |
|---|---|
| 0 | ROI полностью находится внутри входного изображения. |
| 1 | ROI полностью или частично находится вне входного изображения. |
На следующей схеме показаны типы данных, используемые в блоке 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 в процентном значении параметра приводит к целому значению.
Если этот флажок установлен, блок выполняет фильтрацию нижних частот для входного изображения перед его сжатием для предотвращения наложения псевдонимов.
Установите этот флажок, чтобы изменить размер определенной области каждого изображения. Этот параметр доступен, если для параметра Specify установлено значение Number of output rows and columns, параметр метода интерполяции имеет значение Nearest neighbor, Bilinear, или Bicubicи флажок Выполнить сглаживание, если коэффициент изменения размера находится в диапазоне от 0 до 100, не установлен.
Если этот флажок установлен, на блоке появится порт флага. Блок выводит 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 | |
Программное обеспечение Toolbox™ обработки изображений |