Autothreshold

Преобразуйте изображение интенсивности в бинарное изображение

Библиотека

Преобразования

visionconversions

  • Autothreshold block

Описание

Блок Autothreshold преобразует изображение интенсивности в бинарное изображение с помощью порогового значения, вычисленного с использованием метода Otsu.

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

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

Я

Вектор или матрица значений интенсивности

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

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

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

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

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

Нет

BW

Скаляр, вектор или матрица, которая представляет бинарное изображение

Булев

Нет

Th

Пороговое значение

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

Нет

EMetric

Метрика эффективности

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

Нет

Используйте параметр Thresholding operator, чтобы задать условие размещения блоков на вход значениях. Если вы выбираете > и значение входа больше, чем значение порога, блок выходов 1 в порту BW; в противном случае он выводит 0. Если вы выбираете <= и значение входа меньше или равно порогу значению, блок выходов 1; в противном случае он выводит 0.

Установите флажок Output threshold, чтобы вывести вычисленные пороговые значения в порте Th.

Установите флажок Output effectiveness metric, чтобы вывести значения, которые представляют эффективность порогового значения в порте EMetric. Эта метрика находится в областях значений от 0 до 1. Если каждый пиксель имеет одно и то же значение, метрика эффективности равна 0. Если изображение имеет два значения пикселей или гистограмма пикселей изображения симметричная, метрика эффективности равна 1.

Если снять флажок Specify data range, блок принимает, что входные значения с плавающей точкой варьируются от 0 до 1. Чтобы задать другую область значений данных, установите этот флажок. Параметры Minimum value of input и Maximum value of input появятся в диалоговом окне. Используйте эти параметры, чтобы ввести минимальное и максимальное значения вашего входного сигнала.

Используйте параметр When data range is exceeded, чтобы задать поведение блока, когда входные значения находятся вне ожидаемой области значений. Доступны следующие опции:

  • Ignore - Продолжить расчет и не выдавать предупреждающее сообщение. Если вы выбираете эту опцию, блок выполняет наиболее эффективнейший расчет. Однако, если входные значения превышают ожидаемую область значений, блок приводит к неправильным результатам.

  • Saturate - Измените любые входные значения вне области значений на минимальное или максимальное значение области значений и продолжите расчет.

  • Warn and saturate - отображение предупреждающего сообщения в MATLAB® Командное окно, насыщение значений и продолжение расчетов.

  • Error - Отобразите диалоговое окно ошибки и завершите симуляцию.

Если вы снимаете флажок Scale threshold, блок использует пороговое значение, вычисленное методом Otsu, чтобы преобразовать изображения интенсивности в бинарные изображения. Если установить флажок Scale threshold, Threshold scaling factor появится в диалоговом окне. Введите скалярное значение. Блок умножает это скалярное значение на пороговое значение, вычисленное методом Otsu, и использует результат в качестве нового порогового значения.

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

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

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

Параметры

Thresholding operator

Задайте условие размещения блоков на входных значениях матрицы. Если вы выбираете > или <=блок выводит 0 или 1 в зависимости от того, выше ли, ниже или равно вход значению значений порога матрицы.

Output threshold

Установите этот флажок, чтобы вывести вычисленные пороговые значения в порте Th.

Output effectiveness metric

Установите этот флажок, чтобы вывести значения, которые представляют эффективность порогового значения в порте EMetric.

Specify data range

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

Minimum value of input

Введите минимальное значение ваших входных данных. Этот параметр видим, если установить флажок Specify data range.

Maximum value of input

Введите максимальное значение ваших входных данных. Этот параметр видим, если установить флажок Specify data range.

When data range is exceeded

Задайте поведение блока, когда входные значения находятся вне ожидаемой области значений. Ваши опции Ignore, Saturate, Warn and saturate, или Error. Этот параметр видим, если установить флажок Specify data range.

Scale threshold

Установите этот флажок, чтобы масштабировать пороговое значение, вычисленное методом Otsu.

Threshold scaling factor

Введите скалярное значение. Блок умножает это скалярное значение на пороговое значение, вычисленное методом Otsu, и использует результат в качестве нового порогового значения. Этот параметр видим, если установить флажок Scale threshold.

Rounding mode

Выберите режим округления для операций с фиксированной точкой. Этот параметр не применяется к шагу Cast to input DT, показанному в типах данных с фиксированной точкой. Для этого шага Rounding mode всегда задано значение Nearest.

Overflow mode

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

Product 1, 2, 3, 4

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

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

  • Когда вы выбираете Same as inputхарактеристики совпадают с характеристиками входов блока. Этот выбор доступен только для параметра Product 4.

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

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

Accumulator 1, 2, 3, 4

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

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

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

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

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

Параметр Accumulator 3 видим только в том случае, если на панели Main установлен флажок Output effectiveness metric.

Quotient

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

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

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

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

Eff Metric

Выберите, как задать размер слова и длину дроби для типа метрических данных эффективности. Этот параметр видим только в том случае, если на вкладке Main установлен флажок Output effectiveness metric.

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

  • Когда вы выбираете 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. Пороговые растровые изображения с использованием автопорога

Преобразуйте изображение интенсивности в бинарное изображение. Используйте блок Autothreshold, когда условия освещения варьируются и порог должен измениться для каждого видеокадра.

Можно открыть пример модели путем набора

в командной строке MATLAB.

См. также

Compare To Constant (Simulink)

Simulink

Relational Operator (Simulink)

Simulink

graythresh

Image Processing Toolbox™

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

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

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