способ распознавания глаз на изображении и устройство для его реализации
Классы МПК: | G06K9/62 способы и устройства для распознавания с использованием электронных средств G06K9/78 комбинация получения изображения и операции распознавания G06T1/00 Обработка данных изображения общего применения |
Автор(ы): | Мирошниченко Сергей Юрьевич (RU), Титов Виталий Семенович (RU), Труфанов Максим Игоревич (RU), Акульшин Григорий Юрьевич (RU) |
Патентообладатель(и): | Государственное образовательное учреждение высшего профессионального образования Курский государственный технический университет (RU) |
Приоритеты: |
подача заявки:
2007-10-22 публикация патента:
27.05.2010 |
Изобретение относится к автоматике и вычислительной технике и может быть использовано в автоматизированных диагностирующих зрение комплексах, в цифровых фотоаппаратах для исключения портретных фотографий с закрытыми глазами, для решения других практических задач. Техническим результатом является повышение точности распознавания глаз человека на изображении и повышение универсальности способа за счет использования общего описания глаза. В способе распознавания глаз вычисляют значения признаков для распознавания глаз, инвариантных к сдвигу, повороту и изменению масштаба, определяют значения сокращенного набора признаков для предварительной классификации объектов, диапазон значений признаков для распознавания открытых и закрытых глаз, обнаруживают и распознают состояние глаза при помощи указанных наборов признаков. Устройство для распознавания глаз содержит блок распознавания контуров глаза, контроллер шины, микропроцессор, ОЗУ для хранения промежуточных результатов обработки изображения, блок определения состояния глаза, блок определения положения глаза. Устройство позволяет находить глаза человека или группы людей на цифровом изображении вне зависимости от положения человека в плоскости кадра (инвариантен к сдвигу, повороту изображения лица в плоскости кадра), а также оно нечувствительно к изменению расстояния до человека и, как следствие, к изменению масштаба глаз на изображении; обеспечивается достоверное распознавание при линейных размерах глаза в 40 и более точек. 2 н.п. ф-лы, 2 ил.
Формула изобретения
1. Способ распознавания глаз на изображении, отличающийся тем, что дополнительно введены определение значений сокращенного набора признаков, который снижает вычислительную сложность последующего расположения за счет исключения заведомо неинформативных контуров и включает отношение сторон описанного вокруг контура прямоугольника, относительные линейные размеры контура, относительное расстояние центра масс контура от центра описанного прямоугольника, распознавание глаз на основе вычисления значений признаков, инвариантных к сдвигу, повороту и изменению масштаба, и включающих среднее относительное расстояние от центра масс контура до каждой его точки, относительный горизонтальный и вертикальный моменты инерции, определение состояние глаза (открыт/закрыт), используя вычисление суммы частот верхней части гистограммы участка исходного изображения, определение позиции глаза (левый/правый), используя смешанный момент инерции.
2. Устройство для распознавания глаз на изображении, содержащее контроллер шины (КШ), ОЗУ, микропроцессор, блок распознавания контуров глаза, блок определения состояния глаза, блок определения положения глаза, причем первая группа входов-выходов КШ соединена с шиной для получения данных с ЭВМ, вторая группа входов-выходов КШ соединена с первой группой входов-выходов ОЗУ, третья группа входов-выходов КШ соединена со второй группой входов-выходов ОЗУ, первый выход КШ соединен с первым входом ОЗУ, второй выход КШ соединен с первым входом микропроцессора, первая группа входов-выходов микропроцессора соединена с первой группой входов-выходов ОЗУ, вторая группа входов-выходов микропроцессора соединена со второй группой входов-выходов ОЗУ, первый выход микропроцессора соединен с первым входом ОЗУ, второй выход микропроцессора соединен с первым входом блока распознавания контуров глаза, первая группа входов-выходов блока распознавания контуров глаза соединена с первой группой входов-выходов ОЗУ, вторая группа входов-выходов блока распознавания контуров глаза соединена со второй группой входов-выходов ОЗУ, первый выход блока распознавания контуров глаза соединен с первым входом ОЗУ, второй выход блока распознавания контуров глаза соединен с первым входом блока определения состояния глаза, первая группа входов-выходов блока определения состояния глаза соединена с первой группой входов-выходов ОЗУ, вторая группа входов-выходов блока определения состояния глаза соединена со второй группой входов-выходов ОЗУ, первый выход блока определения состояния глаза соединен с первым входом ОЗУ, второй выход блока определения состояния глаза соединен с первым входом блока определения положения глаза, первая группа входов-выходов блока определения положения глаза соединена с первой группой входов-выходов ОЗУ, вторая группа входов-выходов блока определения положения глаза соединена со второй группой входов-выходов ОЗУ, первый выход блока определения положения глаза соединен с первым входом ОЗУ, второй выход блока определения положения глаза соединен с первым входом КШ.
Описание изобретения к патенту
Изобретение относится к автоматике и вычислительной технике и может быть использовано для обнаружения и распознавания глаз на изображении в автоматизированных диагностирующих зрение комплексах, в системах идентификации, в цифровых фотоаппаратах, при решении других практических задач, связанных с анализом изображения лица, глаз и зрачков человека.
Известен способ распознавания объектов, например, лица человека (или глаз человека), базирующийся на выделении и анализе характерных черт лица - глаз, бровей, носа, рта и т.п. (патент США № 5710833 от 20.01.1998).
Недостатками способа являются большие временные и вычислительные затраты на распознавание глаз, высокая стоимость оборудования, необходимого для реализации способа, а также высокие требования к оптическому датчику, равномерности и монохромности освещения объекта распознавания.
Известен способ распознавания объектов (патент РФ № 2191431, опубл. 27.09.2001 г.), предусматривающий предварительное приведение изображения распознаваемого объекта к стандартному виду посредством изменения масштаба, поворота, центрирования, вписания изображения распознаваемого объекта в прямоугольник и последующего наложения на изображение распознаваемого объекта изображения шаблона, хранящегося в памяти компьютера.
Недостатком данного способа является недостаточно высокая точность распознавания, вызванная погрешностями при совмещении контурного изображения шаблона и распознаваемого изображения и потерей части информации вследствие преобразования изображений к контурному описанию.
Наиболее близким к предлагаемому является способ детекции глаз водителя (патент США 6130617 от 10.10.00), согласно которому бинаризуют изображение лица водителя, полученное с ПЗС-камеры, выделяют две области, предположительно содержащие изображения пары глаз на бинаризованном изображении, обнаруживают нос, находящийся между областями глаз, подтверждают обнаружение глаз путем определения наименьшего равнобедренного треугольника, вершинами которого являются нос и центры областей, предположительно содержащих изображения глаз.
Недостатком способа является обязательное присутствие обоих глаз и носа на изображении, что исключает применение способа для задач распознавания глаза по изображению небольшой части лица.
Известно устройство детектирования глаза в реальном времени при различном освещении (патент США 7206435 от 17.04.07), принцип работы которого заключается в освещении глаза различным светом и последующем анализе изображений.
Недостатком устройства является необходимость использования дополнительного оборудования, обеспечивающего освещение глаза, и невозможность распознавания глаза на ранее полученных изображениях при неизвестных параметрах освещения.
Наиболее близким является устройство обнаружения глаза (патент США 7130453 от 31.10.06), обеспечивающее распознавание глаза на изображении в близком инфракрасном диапазоне, содержащее блок коррекции яркости изображения, блок вычисления градиента яркости изображения и блок сопоставления шаблона глаза с градиентным изображением (блок распознавания контуров глаза).
Недостатком устройства является невозможность применения устройства для распознавания глаз на изображениях, полученных в видимом диапазоне длин волн, а также необходимость использования большого количества шаблонов глаз при распознавании, что снижает скорость распознавания.
Технической задачей изобретения является повышение точности распознавания глаз человека на изображении и повышение универсальности способа за счет использования общего описания глаза.
Задача решается тем, что в известный способ введены вычисление значений признаков для распознавания глаз, инвариантных к сдвигу, повороту и изменению масштаба, определение значений сокращенного набора признаков для предварительной классификации объектов, определение диапазона значений признаков для распознавания открытых и закрытых глаз, обнаружение и распознавание состояния глаза при помощи указанных наборов признаков.
Техническая задача решается тем, что в известное устройство, содержащее блок распознавания контуров глаза, были введены контроллер шины (КШ), микропроцессор (МП), ОЗУ для хранения промежуточных результатов обработки изображения, блок определения состояния глаза, блок определения положения глаза, причем первая группа входов-выходов котроллера шины соединена с шиной для получения данных с ЭВМ, вторая группа входов-выходов котроллера шины соединена с первой группой входов-выходов ОЗУ, третья группа входов-выходов котроллера шины соединена со второй группой входов-выходов ОЗУ, первый выход контроллера шины соединен с первым входом ОЗУ для управления режимом работы ОЗУ (чтение/запись), второй выход контроллера шины соединен с первым входом микропроцессора для передачи управляющего сигнала, первая группа входов-выходов микропроцессора соединена с первой группой входов-выходов ОЗУ для передачи и получения данных, вторая группа входов-выходов микропроцессора соединена со второй группой входов-выходов ОЗУ, первый выход микропроцессора соединен с первым входом ОЗУ для управления режимом работы ОЗУ, второй выход микропроцессора соединен с первым входом блока распознавания контуров глаза для передачи управляющего сигнала, первая группа входов-выходов блока распознавания контуров глаза соединена с первой группой входов-выходов ОЗУ для передачи и получения данных, вторая группа входов-выходов блока распознавания контуров глаза соединена со второй группой входов-выходов ОЗУ для получения и передачи адреса, первый выход блока распознавания контуров глаза соединен с первым входом ОЗУ для управления режимом работы ОЗУ, второй выход блока распознавания контуров глаза соединен с первым входом блока определения состояния глаза для передачи управляющего сигнала, первая группа входов-выходов блока определения состояния глаза соединена с первой группой входов-выходов ОЗУ для передачи и получения данных, вторая группа входов-выходов блока определения состояния глаза соединена со второй группой входов-выходов ОЗУ для получения и передачи адреса, первый выход блока определения состояния глаза соединен с первым входом ОЗУ для управления режимом работы ОЗУ, второй выход блока распознавания контуров глаза соединен с первым входом блока определения состояния глаза для передачи управляющего сигнала, первая группа входов-выходов блока определения состояния глаза соединена с первой группой входов-выходов ОЗУ для передачи и получения данных, вторая группа входов-выходов блока определения состояния глаза соединена со второй группой входов-выходов ОЗУ для получения и передачи адреса, первый выход блока определения состояния глаза соединен с первым входом ОЗУ для управления режимом работы ОЗУ, второй выход блока определения состояния глаза соединен с первым входом блока определения положения глаза для передачи управляющего сигнала, первая группа входов-выходов блока определения положения глаза соединена с первой группой входов-выходов ОЗУ для передачи и получения данных, вторая группа входов-выходов блока определения положения глаза соединена со второй группой входов-выходов ОЗУ для получения и передачи адреса, первый выход блока определения положения глаза соединен с первым входом ОЗУ для управления режимом работы ОЗУ, второй выход блока определения положения глаза соединен с первым входом контроллера шины для передачи сигнала окончания обработки изображения.
Изобретение может быть использовано для распознавания глаз на изображении в автоматизированных диагностирующих зрение комплексах, в цифровых фотоаппаратах и для решения других практических задач, связанных с анализом изображений глаза, и соответствует критерию «промышленная применимость».
Сущность способа распознавания глаз на цифровом изображении поясняется чертежами, где на фиг.1 показан обобщенный алгоритм распознавания глаз на цифровом изображении, на фиг.2 - структурная схема устройства распознавания глаз на изображении.
Устройство содержит (фиг.2) КШ 1, ОЗУ 2, микропроцессор 3, блок распознавания контуров глаза 4, блок определения состояния глаза 5, блок определения положения глаза 6, причем первая группа входов-выходов КШ 1 соединена с шиной для получения данных с ЭВМ, вторая группа входов-выходов КШ 1 соединена с первой группой входов-выходов ОЗУ 2, третья группа входов-выходов КШ 1 соединена со второй группой входов-выходов ОЗУ 2, первый выход КШ 1 соединен с первым входом ОЗУ 2, второй выход КШ 1 соединен с первым входом микропроцессора 3, первая группа входов-выходов микропроцессора 3 соединена с первой группой входов-выходов ОЗУ 2, вторая группа входов-выходов микропроцессора 3 соединена со второй группой входов-выходов ОЗУ 2, первый выход микропроцессора 3 соединен с первым входом ОЗУ 2, второй выход микропроцессора 3 соединен с первым входом блока распознавания контуров глаза 4, первая группа входов-выходов блока распознавания контуров глаза 4 соединена с первой группой входов-выходов ОЗУ 2, вторая группа входов-выходов блока распознавания контуров глаза 4 соединена со второй группой входов-выходов ОЗУ 2, первый выход блока распознавания контуров глаза 4 соединен с первым входом ОЗУ 2, второй выход блока распознавания контуров глаза 4 соединен с первым входом блока определения состояния глаза 5, первая группа входов-выходов блока определения состояния глаза 5 соединена с первой группой входов-выходов ОЗУ 2, вторая группа входов-выходов блока определения состояния глаза 5 соединена со второй группой входов-выходов ОЗУ 2, первый выход блока определения состояния глаза 5 соединен с первым входом ОЗУ 2, второй выход блока определения состояния глаза 5 соединен с первым входом блока определения положения глаза 6, первая группа входов-выходов блока определения положения глаза 6 соединена с первой группой входов-выходов ОЗУ 2, вторая группа входов-выходов блока определения положения глаза 6 соединена со второй группой входов-выходов ОЗУ 2, первый выход блока определения положения глаза 6 соединен с первым входом ОЗУ 2, второй выход блока определения положения глаза соединен с первым входом КШ 1.
КШ 1 предназначен для управления обменом данными между ЭВМ и устройством распознавания глаза на изображении.
ОЗУ 2 предназначено для хранения данных, используемых в микропроцессоре 3, блоке распознавания контуров глаза 4, блоке определения состояния глаза 5, блоке определения положения глаза 6 для обработки.
Микропроцессор 3 предназначен для выполнения процедуры построения векторного контурного описания изображения, а также предварительной классификации контуров объектов изображения.
Блок распознавания контуров глаза 4 предназначен для выполнения процедуры распознавания контуров глаз на изображении.
Блок определения состояния глаза 5 предназначен для выполнения процедуры определения состояния (открыты, закрыты) глаз на изображении.
Блок определения положения глаза 6 предназначен для выполнения процедуры определения положения (координат) глаз на изображении.
Способ распознавания глаза на изображении заключается в вычислении значений признаков для распознавания глаз, инвариантных к сдвигу, повороту и изменению масштаба, определении значений сокращенного набора признаков для предварительной классификации объектов, определении диапазона значений признаков для распознавания открытых и закрытых глаз, обнаружении и распознавании состояния глаза при помощи указанных наборов признаков.
На первом этапе получают контурное описание полутонового изображения
,
где FED(·) - функция формирования контурного описания изображения, затем, для снижения вычислительной сложности процедуры распознавания, происходит исключение из рассмотрения тех контуров, которые заведомо не являются информативными. Для предварительной классификации используется сокращенный набор признаков объектов, вычисление значений которых не требует существенных временных затрат.
Признаки, используемые для предварительной классификации, инвариантны к сдвигу, повороту и масштабированию распознаваемого объекта. Для предварительной классификации контуров сi множества С используются следующие признаки:
- отношение сторон wi описанного вокруг контура прямоугольника
где , - ширина и высота описанного прямоугольника;
- относительные линейные размеры si контура
где K×N - размеры исходного полутонового изображения;
- относительное расстояние mi центра масс контура от центра описанного прямоугольника
Для каждого из признаков wi, s, mi эмпирически определены диапазоны допустимых значений [ wmin, wmax], [ smin, smax], [ mmin, mmax] соответственно.
Из множества С исключают все контуры, для которых хотя бы одно из значений признаков (1-3) не попадает в допустимый диапазон
С=С{ci:( wi [ wmin, wmax]) ( si [ smin, smax]) ( mi [ mmin, mmax])}.
После исключения неинформативных контуров выполняется распознавание, основанное на использовании следующих признаков.
1. Среднее относительное расстояние от центра масс mi контура ci до каждой его точки
2. Относительный горизонтальный и вертикальный моменты инерции
где - смещенный момент инерции; , - горизонтальный и вертикальный моменты инерции соответственно.
3. Сумма частот верхней части гистограммы участка исходного изображения f(x, у), ограниченного прямоугольником
где Te - нижняя граница исследуемой области гистограммы , выбираемая эмпирически; fmax - максимальное значение яркости изображения f(x, у).
Описанные ранее признаки (5) и (6) позволяют выделить объекты, схожие по форме с закрытым и открытым глазом. Признак (7) используют для принятия решения о том, является ли глаз открытым или закрытым в случае частичного перекрытия диапазонов значений признаков (5) и (6).
Для каждого из признаков определяют диапазоны значений
соответствующие открытым и закрытым глазам.
По каждому из признаков формируются оценки
принадлежности диапазонам (8) и (9), соответственно.
Решающие правила для классификации контура ci записываются следующим образом
где Feo(ci) - функционал принадлежности контура сi к классу открытых глаз, Fec(ci) - к классу закрытых глаз.
С помощью формул (12, 13) формируется множество контуров, принадлежащих к классам открытых или закрытых глаз
где oi - состояние глаза, описываемого контуром ci (0 - открыт, 1 - закрыт), Teo, Tec - пороговые значения, выбираемые эмпирически.
Далее производится определение положения глаз на изображении. На данном этапе выполняется преобразование множества в итоговое множество Е. Для этого каждый элемент множества дополняется информацией о положении глаза на изображении и смещенным моментом инерции (13), который определяет позицию глаза (левый/правый)
Положение глаза pi, описываемого контуром ci, определяется как центр масс mi (13) данного контура.
Элементы ei, ej множества , имеющие наименьшее расстояние между центрами масс
и разные знаки смещенных моментов инерции , ,
объединяются в пару, которая соответствует положению лица одного человека
Контуры ci, которым не удалось найти пару с помощью критериев (15, 16), преобразуют следующим образом
В результате множество преобразуется в результирующее множество .
Устройство работает следующим образом.
Цифровое изображение с ЭВМ поступает на первую группу входов-выходов КШ 1, после чего на первом выходе КШ 1 формируется управляющий сигнал, поступающий на первый вход ОЗУ 2 и переводящий его в режим записи информации, на второй группе входов-выходов КШ 1 формируются данные для передачи на первую группу входов-выходов ОЗУ 2, на третьей группе входов-выходов КШ 1 формируется адрес данных, поступающий на вторую группу входов-выходов ОЗУ 2, на втором выходе КШ 1 формируется управляющий сигнал, поступая на первый вход микропроцессора 3, разрешающий его работу. В результате в ОЗУ 2 находится текущий кадр изображения.
Микропроцессор 3 на первом выходе формирует управляющий сигнал, поступающий на первый вход ОЗУ 2 и переводящий его в режим чтения. Блок фильтрации 3 на первую группу входов-выходов принимает данные, поступающие через первую группу входов-выходов ОЗУ 2, на вторую группу входов-выходов принимает адрес, поступающий через вторую группу входов-выходов ОЗУ 2. Микропроцессор 3 обрабатывает поступившие данные в соответствии с формулами (1), (2), (3), (4), в результате чего формируется векторное контурное описание изображения.
По окончании выполнения процедуры построения векторного контурного описания изображения на первом выходе микропроцессора 3 формируется управляющий сигнал, поступающий на первый вход ОЗУ 2 и переводящий его в режим записи, через первую группу входов-выходов микропроцессора 3 результаты поступают на первую группу входов-выходов ОЗУ 2, на второй группе входов-выходов микропроцессора формируется адрес, поступающий на вторую группу входов-выходов ОЗУ 2, на втором выходе микропроцессора 3 формируется управляющий сигнал, поступающий на первый вход блока распознавания контуров глаза 4 и разрешающий его работу.
Блок распознавания контуров глаза 4 через первый выход отправляет управляющий сигнал на первый вход ОЗУ 2, переводящий его в режим чтения. Блок распознавания контуров на первую группу входов-выходов принимает данные, поступающие через первую группу входов-выходов ОЗУ 2, на второй группе входов-выходов получает адрес, поступающий через вторую группу входов-выходов ОЗУ 2. Поступившие данные по формулам (5), (6), (7), обрабатываются для распознавания контуров глаз.
После этого на первом выходе блока распознавания контуров глаза 4 формируется управляющий сигнал, поступающий на первый вход ОЗУ 2 и переводящий его в режим записи, через первую группу входов-выходов блока распознавания контуров глаза 4 результаты поступают на первую группу входов-выходов ОЗУ 2, на второй группе входов-выходов блока распознавания контуров глаза 4 формируется адрес, поступающий на вторую группу входов-выходов ОЗУ 2, на втором выходе блока распознавания контуров глаза 4 формируется управляющий сигнал, поступающий на первый вход блока определения состояния глаза 5 и разрешающий его работу.
Блок определения состояния глаза 5 через первый выход отправляет управляющий сигнал на первый вход ОЗУ 2, переводящий его в режим чтения. Блок определения состояния глаза через первую группу входов-выходов получает данные, поступающие через группу входов-выходов ОЗУ 2, на второй группе входов-выходов получает адрес, поступающий через вторую группу входов-выходов ОЗУ 2. Поступившие данные по формулам (8)-(13), обрабатываются процедурой определения состояния глаз.
По окончанию работы блока определения состояния глаза 5 на его первом выходе формируется управляющий сигнал, поступающий на первый вход ОЗУ 2 и переводящий его в режим записи, через первую группу входов-выходов блока определения состояния глаза 5 результаты поступают на первую группу входов-выходов ОЗУ 2, на второй группе входов-выходов блока определения состояния глаза 5 формируется адрес, поступающий на вторую группу входов-выходов ОЗУ 2, на втором выходе блока определения состояния глаза 5 формируется управляющий сигнал, поступающий на первый вход блока определения положения глаза 6 и разрешающий его работу.
Блок определения положения глаза 6 через первый выход отправляет управляющий сигнал на первый вход ОЗУ 2, переводящий его в режим чтения. Блок определения положения глаза через первую группу входов-выходов получает данные, поступающие через группу входов-выходов ОЗУ 2, на второй группе входов-выходов получает адрес, поступающий через вторую группу входов-выходов ОЗУ 2. Поступившие данные по формулам (14)-(18), обрабатываются процедурой определения положения глаза.
По окончании обработки на первом выходе блока определения положения глаза 6 формируется управляющий сигнал, поступающий на первый вход ОЗУ 2 и переводящий его в режим записи, через первую группу входов-выходов блока определения положения глаза 6 результаты поступают на первую группу входов-выходов ОЗУ 2, на второй группе входов-выходов блока определения положения глаза 6 формируется адрес, поступающий на вторую группу входов-выходов ОЗУ 2, на втором выходе блока определения положения глаза 6 формируется управляющий сигнал, поступающий на первый вход КШ 1 и информирующий об окончании обработки изображения.
КШ 1 через первый выход отправляет управляющий сигнал на первый вход ОЗУ 2, переводящий его в режим чтения. КШ 1 на первую группу входов-выходов принимает данные, поступающие через первую группу входов-выходов КШ 1, на вторую группу входов-выходов принимает адрес, поступающий через вторую группу входов-выходов ОЗУ 2. Поступившие данные через первую группу входов-выходов КШ 1 поступают в ЭВМ.
Блок распознавания контуров глаза 4, блок определения состояния глаза 5, блок определения положения глаза 6 реализуют на программируемых интегральных схемах средней и большой степени интеграции серий Spartan или Virtex (производитель - Xilinx). В качестве микропроцессора 3 может быть использована микроЭВМ или цифровой сигнальный процессор, работающие на тактовой частоте не менее 600 МГц. Контроллер шины 1 реализуют на специализированных микросхемах, широко выпускаемых зарубежной промышленностью. ОЗУ 2 реализуют на микросхемах динамической памяти, удовлетворяющих требованиям по быстродействию и объему.
Изобретение позволяет повысить точность распознавания глаз на изображении за счет того, что устройство позволяет находить глаза человека (или группы людей) на цифровом изображении вне зависимости от положения человека в плоскости кадра (инвариантно к сдвигу, повороту изображения лица в плоскости кадра), а также нечувствительно к изменению расстояния до человека и, как следствие, к изменению масштаба глаз на изображении; обеспечивает достоверное распознавание при линейных размерах глаза в 40 и более точек.
Класс G06K9/62 способы и устройства для распознавания с использованием электронных средств
Класс G06K9/78 комбинация получения изображения и операции распознавания
Класс G06T1/00 Обработка данных изображения общего применения