Оператор Айверсона, в дисциплине компьютерного зрения — оператор обнаружения границ в изображениях. Был разработан Ли Айверсоном[1] и Стивеном Цукером[2]. Описание метода было впервые опубликовано в журнале IEEE Transactions on Pattern Analysis and Machine Intelligence[3] в октябре 1995 года.

Данный метод был призван улучшить действие существующих линейных операторов для распознавания границ путём добавления логических проверок на существование границы. Это позволило уменьшить число ошибочно распознанных линий без потери чувствительности.

Преимущества алгоритма править

Основным преимуществом алгоритма является значительное уменьшение количества ошибочно положительных откликов (распознавания несуществующих границ) по сравнению с ранее существующими алгоритмами.

Кроме того, оператор Айверсона позволяет четко разделять между собой 3 вида границ:

  1. Края (англ. step-edges).
  2. Светлые линии (англ. positive contrast lines).
  3. Темные линии (англ. negative contrast lines).

Основы алгоритма править

В основе данного алгоритма лежит семейство так называемых логических/линейных операторов (англ. logical/linear operators), которые объединяют в себе теорию линейных операторов и алгебру логики. Условия проверки содержащиеся в данных операторах делятся на 2 различных класса:

  1. Нормальные условия или условия перпендикуляров (англ. normal conditions) — условия, призванные распознать и категоризовать найденную границу.
  2. Тангенциальные условия или условия касательных (англ. tangential conditions) — условия, гарантирующие непрерывность найденной границы.

Общий вид двумерного логического/линейного оператора таков:

 

Где   определено как локальная ортонормированная система координат. Данный оператор   является декартовым произведением двух одномерных логических/линейных операторов. Оператор   (тангенциальный оператор) выполняет проверку на непрерывность рассматриваемой границы, а оператор   (нормальный оператор) выполняет проверку на существование границы, где индекс   задает тип рассматриваемой границы:

  •   — для светлых линий
  •   — для темных линий
  •   — для краев светлых или темных областей

Оператор   является идентичным для всех трех типов границ.

Нормальные операторы править

Нормальный оператор для светлых линий   имеет следующий вид:

 

Для темных линий выражения в операторе принимают абсолютно противоположные значения:

 

Нормальный оператор для краев имеет вид:

 

Тангенциальные операторы править

Тангенциальный оператор  , проверяющий непрерывность границы имеет вид:

 

Линейные составляющие править

Линейными составляющими вышеописанных логических/линейных нормальных операторов являются выражения вида   использующие производные Гауссианы, где   указывает порядок соответствующей производной, а   указывает на производную слева, производную справа или производную в данной точке.

Линейные составляющие для   и   принимают следующие значения:

 
 
 
 

Линейные составляющие для  :

 
 
 
 
 

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

См. также править

Примечания править

  1. Lee Iverson. Дата обращения: 25 февраля 2012. Архивировано 14 декабря 2009 года.
  2. Steven W. Zucker. Дата обращения: 11 марта 2012. Архивировано 25 января 2012 года.
  3. L. A. Iverson, S. W. Zucker «Logical/Linear Operators for Image Curves», IEEE Trans. on PAMI, October 1995

Ссылки править

Литература править

  • L. A. Iverson, S. W. Zucker «Logical/Linear Operators for Image Curves», IEEE Trans. on PAMI, October 1995
  • M.D. Heath, S. Sarkar, T. Sanocki, K.W. Bowyer «A robust visual method for assessing the relative performance of edge-detection algorithms», IEEE Trans. on PAMI, December 1997