Преобразование изображения интенсивности в двоичное изображение
Преобразования
visionconversions

Блок Autotheshold преобразует изображение интенсивности в двоичное изображение, используя пороговое значение, вычисленное методом Оцу.
Этот блок вычисляет это пороговое значение путем разделения гистограммы входного изображения таким образом, что дисперсия каждой группы пикселей минимизируется.
| Порт | Ввод/вывод | Поддерживаемые типы данных | Поддерживаемые комплексные значения |
|---|---|---|---|
Я | Вектор или матрица значений интенсивности |
| Нет |
BW | Скаляр, вектор или матрица, представляющая двоичное изображение | Булев | Нет |
Th | Пороговое значение | То же, что и порт I | Нет |
EMetric | Показатель эффективности | То же, что и порт I | Нет |
Используйте параметр оператора Thresholding, чтобы указать условие, которое блок размещает на входных значениях. При выборе > и входное значение больше порогового значения, блок выводит 1 в порту BW; в противном случае он выводит 0. При выборе <= и входное значение меньше или равно пороговому значению, блок выводит 1; в противном случае он выводит 0.
Установите флажок Output threshold для вывода вычисленных пороговых значений в Th-порту.
Установите флажок Метрика эффективности вывода, чтобы вывести значения, которые представляют эффективность порогов в порту EMetric. Эта метрика находится в диапазоне от 0 до 1. Если каждый пиксель имеет одинаковое значение, метрика эффективности равна 0. Если изображение имеет два значения пикселей или гистограмма пикселей изображения симметрична, метрика эффективности равна 1.
Если снять флажок Указать диапазон данных (Specify data range), блок предполагает, что входные значения с плавающей запятой находятся в диапазоне от 0 до 1. Чтобы указать другой диапазон данных, установите этот флажок. В диалоговом окне появятся Минимальное значение входных параметров (Minimum value of input) и Максимальное значение входных параметров (Maximum value of input parameters). Эти параметры используются для ввода минимального и максимального значений входного сигнала.
Параметр When data range is exceeded используется для указания поведения блока, когда входные значения выходят за пределы ожидаемого диапазона. Доступны следующие опции:
Ignore - Продолжите расчет и не выдавайте предупреждающее сообщение. При выборе этой опции блок выполняет наиболее эффективные вычисления. Однако если входные значения превышают ожидаемый диапазон, блок выдает неверные результаты.
Saturate - Измените любые входные значения за пределами диапазона на минимальное или максимальное значение диапазона и продолжите вычисление.
Warn and saturate - Отображение предупреждающего сообщения в окне команд MATLAB ®, насыщение значений и продолжение вычислений .
Error - Отображение диалогового окна ошибки и завершение моделирования.
Если снять флажок Масштабировать пороговое значение (Scale threshold), блок использует пороговое значение, вычисленное методом Otsu, для преобразования изображений интенсивности в двоичные изображения. Если установить флажок Масштабный порог (Scale threshold), в диалоговом окне появится Пороговый коэффициент масштабирования (Threshold scaling factor). Введите скалярное значение. Блок умножает это скалярное значение на пороговое значение, вычисленное методом Оцу, и использует результат в качестве нового порогового значения.
На следующей схеме показаны типы данных, используемые в блоке Autothreshold для сигналов с фиксированной точкой. Можно использовать параметры фиксированной точки по умолчанию, если длина слова меньше или равна 16.
На этой схеме DT означает тип данных. В маске блока можно задать типы данных продукта, накопителя, частного и метрики эффективности.

Укажите условие, которое блок помещает в значения входной матрицы. При выборе > или <=, выходы блока 0 или 1 в зависимости от того, находятся ли значения входной матрицы выше, ниже или равны пороговому значению.
Установите этот флажок для вывода вычисленных пороговых значений в Th-порту.
Установите этот флажок для вывода значений, представляющих эффективность пороговой обработки в порту EMetric.
Если этот флажок снят, блок предполагает, что входные значения с плавающей запятой находятся в диапазоне от 0 до 1. Чтобы указать другой диапазон данных, установите этот флажок.
Введите минимальное значение входных данных. Этот параметр отображается, если установлен флажок Указать диапазон данных.
Введите максимальное значение входных данных. Этот параметр отображается, если установлен флажок Указать диапазон данных.
Укажите поведение блока, когда входные значения выходят за пределы ожидаемого диапазона. Ваши варианты: Ignore, Saturate, Warn and saturate, или Error. Этот параметр отображается, если установлен флажок Указать диапазон данных.
Установите этот флажок для масштабирования порогового значения, вычисленного методом Otsu.
Введите скалярное значение. Блок умножает это скалярное значение на пороговое значение, вычисленное методом Оцу, и использует результат в качестве нового порогового значения. Этот параметр отображается при установке флажка Порог масштаба (Scale threshold).
Выберите режим округления для операций с фиксированной точкой. Этот параметр не применяется к шагу Cast to input DT, показанному в разделе Типы данных фиксированной точки. Для этого шага всегда устанавливается режим округления Nearest.
Выберите режим переполнения для операций с фиксированной точкой.

Как показано выше, выходной сигнал множителя помещается в тип выходных данных продукта и масштабирование. Используйте этот параметр, чтобы указать, как обозначать выходные слова продукта и длины дробей.
При выборе Specify word length, можно ввести длину слова значений продукта в битах. Блок задает длину дроби, чтобы обеспечить наилучшую точность.
При выборе Same as input, характеристики соответствуют характеристикам входа в блок. Этот вариант доступен только для параметра Product 4.
При выборе Binary point scaling, можно ввести длину слова и длину дроби результата в битах.
При выборе Slope and bias scaling, можно ввести длину слова в битах и наклон выхода продукта. Смещение всех сигналов в программном обеспечении Computer Vision Toolbox™ равно 0.

Как показано выше, входы в аккумулятор подаются на тип данных аккумулятора. Выходной сигнал сумматора остается в типе данных накопителя при добавлении к нему каждого элемента входного сигнала. Используйте этот параметр, чтобы указать, как обозначать длину слова и дроби накопителя.
При выборе Same as Product, эти характеристики соответствуют характеристикам продукта.
При выборе Specify word length, можно ввести длину слова значений накопителя в битах. Блок задает длину дроби, чтобы обеспечить наилучшую точность. Этот вариант недоступен для параметра Accumulator 4, поскольку он зависит от типа входных данных.
При выборе Binary point scaling, можно ввести длину слова и длину дроби накопителя в битах.
При выборе Slope and bias scaling, можно ввести длину слова в битах и наклон накопителя. Смещение всех сигналов в программном обеспечении Computer Vision Toolbox равно 0.
Параметр 3 аккумулятора отображается только в том случае, если на главной панели установлен флажок Метрика эффективности вывода.
Выберите способ указания длины слова и длины дроби типа данных «частное»:
При выборе Specify word length, можно ввести длину слова частных значений в битах. Блок задает длину дроби, чтобы обеспечить наилучшую точность.
При выборе Binary point scaling, можно ввести длину слова и длину дроби частного, в битах.
При выборе Slope and bias scaling, можно ввести длину слова в битах и наклон частного. Смещение всех сигналов в программном обеспечении Computer Vision Toolbox равно 0.
Выберите способ указания длины слова и длины дроби типа данных метрики эффективности. Этот параметр отображается только в том случае, если на вкладке Главная (Main) установлен флажок Метрика эффективности вывода (Output effectivity metric).
При выборе Specify word length, можно ввести длину слова значений метрики эффективности, в битах. Блок задает длину дроби, чтобы обеспечить наилучшую точность.
При выборе Binary point scaling, можно ввести длину слова и длину дроби метрики эффективности в битах.
При выборе Slope and bias scaling, можно ввести длину слова в битах и наклон метрики эффективности. Смещение всех сигналов в программном обеспечении Computer Vision Toolbox равно 0.
Выберите этот параметр, чтобы инструменты с фиксированной точкой не переопределяли типы данных, заданные в маске блока. Дополнительные сведения см. в разделе fxptdlg (Fixed-Point Designer) - справочная страница инструмента Fixed-Point Tool в документации Simulink ®.
Преобразование изображения интенсивности в двоичное изображение. Блок Autothreshold используется при изменении условий освещения и необходимости изменения порога для каждого видеокадра.
Можно открыть пример модели, введя
в командной строке MATLAB.
| Сравнить с константой (Simulink) | Simulink |
| Реляционный оператор (Simulink) | Simulink |
graythresh | Toolbox™ обработки изображений |