Способ, система и компьютерный носитель данных для детектирования лица
Иллюстрации
Показать всеИзобретение относится к области компьютерной техники, и, в частности, компьютерной техники для детектирования лица. Технический результат заключается в повышении точности алгоритма детектирования и распознавания лица. Технический результат достигается за счет того, что: предварительно обрабатывают изображение; выделяют углы из предварительно обработанного изображения; фильтруют и комбинируют углы для получения связной компоненты углов; выделяют центроид из связной компоненты углов; проверяют согласование центроидов с лицевым шаблоном; вычисляют вероятность согласования центроидов с лицевым шаблоном и идентифицируют область, образованную центроидами, вероятность согласования которых больше или равна предопределенному значению, в качестве вероятной лицевой области. 3 н. и 21 з.п. ф-лы, 12 ил.
Реферат
Область техники, к которой относится изобретение
Настоящее изобретение относится к технологии детектирования лица, в частности к способу и системе для детектирования лица и соответствующему компьютерному носителю данных.
Уровень техники
Детектирование лица широко используется в различных устройствах, функционирующих на основе распознавания лиц. Точность детектирования лица крайне важна для распознавания лица. С постоянным развитием коммуникационных технологий все больше портативных коммуникационных устройств также имеют функцию распознавания лица, например распознавание лица и захват улыбки в цифровых фотоаппаратах, разблокировка мобильных устройств путем распознавания лица владельца и тому подобное.
В существующих технологиях распознавания лица для детектирования лица требуется множество обучающих выборок, и детектирование лица требует большого количества вычислений, что делает такой алгоритм неэффективным, менее точным и неспособным отвечать требованиям обработки большого объема данных.
Раскрытие изобретения
В свете вышесказанного существует потребность в обеспечении способа детектирования лица, позволяющего повысить эффективность и точность детектирования.
Данный способ детектирования лица содержит этапы, на которых: предварительно обрабатывают изображение; выделяют углы из предварительно обработанного изображения, а также фильтруют и комбинируют данные углы для получения связной компоненты углов; выделяют центроиды из связной компоненты углов; проверяют согласование центроидов с лицевым шаблоном; вычисляют вероятность согласования центроидов с лицевым шаблоном и идентифицируют области, образованные центроидами, вероятность согласования которых больше или равна предопределенному значению, в качестве вероятных лицевых областей.
В одном из вариантов осуществления изобретения предварительная обработка содержит, по меньшей мере, одно из корректировки уровня изображения, автоматической балансировки белого, нормализации и создания мозаичного изображения.
В одном из вариантов осуществления изобретения выделение углов из предварительно обработанного изображения содержит этапы, на которых: вычисляют разности яркости между текущим пикселем и окружающими пикселями на основании предустановленного шаблона 3×3 и определяют пиксель, разность яркости которого больше или равна первому пороговому значению, в качестве угла; причем шаблон 3×3 представляет собой область с центром в текущем пикселе, включающую в себя пиксели слева, справа, сверху, снизу, слева вверху, справа вверху, слева внизу и справа внизу от текущего пикселя.
В одном из вариантов осуществления изобретения фильтрация углов содержит этапы, на которых: идентифицируют точки цвета кожи в предварительно обработанном изображении и отфильтровывают углы, не включающие в себя точку цвета кожи в предустановленном окружающем диапазоне; выделяют центр пересечения цветового пространства YcgCr и цветового пространства YcbCr в качестве центра цвета кожи, вычисляют значения компонентов Cb, Cg и Cr углов, вычисляют расстояния между центром цвета кожи и значениями компонентов Cb, Cg и Cr углов и отфильтровывают углы, расстояние от которых до центра цвета кожи превышает второе пороговое значение.
В одном из вариантов осуществления изобретения выделение центроидов из связной компоненты углов содержит этапы, на которых: выбирают связную компоненту, площадь которой больше или равна третьему пороговому значению и/или соотношение сторон которой находится в пределах предустановленного диапазона; выделяют центр выбранной связной компоненты в качестве центроида; вычисляют направление выделенного центроида и удаляют данный центроид, если перпендикулярность его направления находится в пределах заданного диапазона перпендикулярности.
В одном из вариантов осуществления изобретения лицевой шаблон представляет собой прямоугольный шаблон, включающий в себя верхнюю точку левого глаза, верхнюю точку правого глаза и, по меньшей мере, одну третью точку, расположенную на другой линии, параллельной линии, на которой расположены верхняя точка левого глаза и верхняя точка правого глаза.
В одном из вариантов осуществления изобретения проверка согласования центроидов с лицевым шаблоном, вычисление вероятности согласования центроидов с лицевым шаблоном и идентификация области, образованной центроидами, вероятность согласования которых больше или равна предопределенному значению, в качестве вероятной лицевой области, содержат этапы, на которых перебирают центроиды и для каждого из центроидов выполняют следующие этапы:
выполняют поиск второго центроида, расстояние от которого до верхней точки правого глаза меньше или равно четвертому пороговому значению, используя первый центроид в качестве верхней точки лицевого шаблона; выполняют поиск третьего центроида, расстояние от которого по вертикали до другой линии, параллельной линии, на которой расположены верхняя точка левого глаза и верхняя точка правого глаза, меньше или равно четвертому пороговому значению; вычисляют вероятность согласования на основании расстояния между вторым центроидом и верхней точкой правого глаза, расстояния по вертикали между третьим центроидом и упомянутой другой линией и кратчайшего расстояния между третьим центроидом и третьей точкой; определяют, является ли вероятность согласования большей или равной предопределенному значению, и идентифицируют область, образованную первым центроидом, вторым центроидом и третьим центроидом, в качестве вероятной лицевой области, если вероятность согласования больше или равна предопределенному значению.
В одном из вариантов осуществления изобретения данный способ дополнительно содержит этапы, на которых: после проверки согласования центроидов с лицевым шаблоном, вычисления вероятности согласования центроидов с лицевым шаблоном и идентификации области, образованной центроидами, вероятность согласования которых больше или равна предопределенному значению, в качестве вероятной лицевой области, разбивают вероятную лицевую область на заданное число ячеек и вычисляют пропорцию цвета кожи для каждой из данных ячеек; выбирают вероятную лицевую область, пропорция цвета кожи которой отвечает предустановленному пропорциональному распределению цвета кожи, в качестве окончательной лицевой области.
Дополнительно, существует необходимость обеспечить систему детектирования лица, позволяющую повысить эффективность и точность детектирования.
Система детектирования лица содержит: модуль предварительной обработки, выполненный с возможностью предварительной обработки изображения; модуль выделения углов, выполненный с возможностью выделения углов из предварительно обработанного изображения; модуль фильтрации и комбинирования углов, выполненный с возможностью фильтрации и комбинирования данных углов для получения связной компоненты для углов; модуль выделения центроида, выполненный с возможностью выделения центроида из связной компоненты углов; и модуль определения вероятной лицевой области, выполненный с возможностью проверки согласования центроидов с лицевым шаблоном, вычисления вероятности согласования центроидов с лицевым шаблоном и идентификации областей, образованных центроидами, вероятность согласования которых больше или равна предопределенному значению, в качестве вероятных лицевых областей.
В одном из вариантов осуществления изобретения предварительная обработка содержит, по меньшей мере, одно из корректировки уровня изображения, автоматической балансировки белого, нормализации и создания мозаичного изображения.
В одном из вариантов осуществления изобретения модуль выделения углов выполнен с возможностью вычисления разности яркости между текущим пикселем и окружающими пикселями на основании предопределенного шаблона 3×3 и определения пикселя, разность яркости которого больше или равна первому пороговому значению, в качестве угла; причем шаблон 3×3 представляет собой область с центром в текущем пикселе, включающую в себя пиксели слева, справа, сверху, снизу, слева вверху, справа вверху, слева внизу и справа внизу от текущего пикселя.
В одном из вариантов осуществления изобретения модуль фильтрации и комбинирования углов выполнен с возможностью идентификации точек цвета кожи в предварительно обработанном изображении и отфильтровывания углов, не включающих в себя точку цвета кожи в предустановленном окружающем диапазоне; и модуль фильтрации и комбинирования углов дополнительно выполнен с возможностью выделения центра пересечения цветового пространства YcgCr и цветового пространства YcbCr в качестве центра цвета кожи, вычисления значений компонентов Cb, Cg и Cr углов, вычисления расстояний между центром цвета кожи и значениями компонентов Cb, Cg и Cr углов и отфильтровывания углов, расстояние от которых до центра цвета кожи превышает второе пороговое значение.
В одном из вариантов осуществления изобретения модуль выделения центроида содержит: блок выбора связной компоненты, выполненный с возможностью выбора связной компоненты, площадь которой больше или равной третьему пороговому значению и/или имеющей соотношение сторон которой находится в пределах предустановленного диапазона; блок выделения центроида, выполненный с возможностью выделения центра выбранной связной компоненты в качестве центроида; блок удаления центроида, выполненный с возможностью вычисления направления выделенного центроида и удаления данного центроида, если направление имеет перпендикулярность, находящуюся в пределах заданного диапазона перпендикулярности.
В одном из вариантов осуществления изобретения лицевой шаблон представляет собой прямоугольный шаблон, включающий в себя верхнюю точку левого глаза, верхнюю точку правого глаза и, по меньшей мере, одну третью точку, расположенную на другой линии, параллельной линии, на которой расположены верхняя точка левого глаза и верхняя точка правого глаза.
В одном из вариантов осуществления изобретения модуль определения вероятной лицевой области содержит: блок поиска, выполненный с возможностью поиска, для каждого центроида, второго центроида, расстояние от которого до верхней точки правого глаза меньше или равно четвертому пороговому значению, используя первый центроид в качестве верхней точки лицевого шаблона, и поиска третьего центроида, расстояние от которого по вертикали до другой линии, параллельной линии верхней точки левого глаза и верхней точки правого глаза, меньше или равно четвертому пороговому значению; блок вычисления вероятности согласования, выполненный с возможностью вычисления вероятности согласования на основании расстояния между вторым центроидом и верхней точкой правого глаза, расстояния по вертикали между третьим центроидом и упомянутой другой линией и кратчайшего расстояния между третьим центроидом и третьей точкой; и блок локализации области, выполненный с возможностью определения того, является ли вероятность согласования большей или равной предопределенному значению, и локализации областей, образованных первым центроидом, вторым центроидом и третьим центроидом, в качестве вероятных лицевых областей, если вероятность согласования больше или равна предопределенному значению.
В одном из вариантов осуществления система дополнительно содержит: модуль выбора области, выполненный с возможностью разбивки вероятных лицевых областей на заданное число ячеек, вычисления пропорции цвета кожи для каждой из данных ячеек и выбора вероятной лицевой области, пропорция цвета кожи которой отвечает предустановленному пропорциональному распределению цвета кожи, в качестве окончательной лицевой области.
Дополнительно, существует необходимость обеспечить компьютерный носитель данных, позволяющий повысить эффективность и точность детектирования.
Данный компьютерный носитель данных содержит исполняемые компьютером команды для выполнения способа детектирования лица, причем данный способ содержит этапы, на которых: предварительно обрабатывают изображение; выделяют углы из предварительно обработанного изображения, фильтруют и комбинируют данные углы для получения связной компоненты углов; выделяют центроиды из связной компоненты углов; и проверяют согласование центроидов с лицевым шаблоном, вычисляют вероятность согласования центроидов с лицевым шаблоном и идентифицируют области, образованные центроидами, вероятность согласования которых больше или равна предопределенному значению, в качестве вероятных лицевых областей.
В способе и системе детектирования лица, а также в вышеописанном компьютерном носителе данных, вычисляют вероятность согласования центроида с лицевым шаблоном, и идентифицируют область, образованную центроидами, вероятность согласования которых больше или равна предопределенному значению, в качестве вероятной лицевой области. Вероятностная модель такого лицевого шаблона позволяет осуществлять масштабирование и поворот без сбоев, обеспечивает более точную проверку согласования лица, а также эффективность алгоритма. Таким образом, может быть повышена эффективность и точность детектирования лица.
Краткое описание чертежей
Фиг. 1 представляет собой блок-схему последовательности действий способа детектирования лица согласно одному из вариантов осуществления изобретения;
Фиг. 2 представляет собой гистограмму R канала изображения;
Фиг. 3 представляет собой схему шаблона 3×3 согласно одному из вариантов осуществления изобретения;
Фиг. 4 представляет собой блок-схему последовательности действий выделения центроида из связной компоненты углов согласно одному из вариантов осуществления изобретения;
Фиг. 5 представляет собой схему лицевого шаблона согласно одному из вариантов осуществления изобретения;
Фиг. 6 представляет собой блок-схему последовательности действий локализации вероятной лицевой области согласно одному из вариантов осуществления изобретения;
Фиг. 7 представляет собой схему проверки согласования центроида с лицевым шаблоном согласно одному из вариантов осуществления изобретения;
Фиг. 8 представляет собой схему пропорциональной модели цвета кожи согласно одному из вариантов осуществления изобретения;
Фиг. 9 представляет собой структурную схему системы детектирования лица согласно одному из вариантов осуществления изобретения;
Фиг. 10 представляет собой структурную схему модуля выделения центроида согласно одному из вариантов осуществления изобретения;
Фиг. 11 представляет собой структурную схему модуля определения вероятной области лица согласно одному из вариантов осуществления изобретения; и
Фиг. 12 представляет собой структурную схему системы детектирования лица согласно другому варианту осуществления изобретения.
Осуществление изобретения
Как показано на Фиг. 1, в одном из вариантов осуществления изобретения способ детектирования лица включает в себя следующие этапы.
Этап S102: Предварительно обрабатывают изображение.
В частности, в одном из вариантов осуществления изобретения предварительная обработка изображения включает в себя, по меньшей мере, один из следующих видов обработки изображения: корректировку уровня изображения, автоматическую балансировку белого, нормализацию и создание мозаичного изображения. После предварительной обработки на изображении может быть существенно сокращена последующая вычислительная нагрузка и соответственно повышена эффективность идентификации.
Этап S104: Выделяют углы из предварительно обработанного изображения и затем фильтруют и комбинируют данные углы. Таким образом, получают связную компоненту углов.
В одном из примеров угол относится к точке изображения, вокруг которой резко изменяется яркость. Изображение, образованное выделенными углами, можно может рассматриваться как диаграмма профиля. Однако не все углы, выделенные из предварительно обработанного изображения, представляют собой нужные углы черт лица. Поэтому углы могут быть подвергнуты фильтрации, и те из них, которые не имеют отношения к определяющим позициям черт лица, удаляются. Ввиду того, что отфильтрованные углы, например углы глаз и рта, могут быть сосредоточены локально, эти локально сосредоточенные углы можно могут быть скомбинированы для получения связной компоненты углов.
Этап S106: Выделяют центроид из связной компоненты углов.
Центроид представляет собой центр связной компоненты углов, который может объективно характеризовать основные характерные части лица, в том числе глаза, нос, рот и т.д. После выделения центроида данный центроид может быть использован для последующей проверки согласования лицевого шаблона.
Этап S108: Проверяют согласование центроида с лицевым шаблоном, вычисляют вероятность согласования центроида с лицевым шаблоном и определяют область, образованную центроидами, вероятность согласования которых больше или равна предопределенному значению, в качестве вероятной лицевой области.
В данном варианте осуществления изобретения вероятностная модель такого лицевого шаблона позволяет осуществлять масштабирование и поворот без сбоев, обеспечивает более точную проверку согласования лица, а также эффективность алгоритма. Таким образом, может быть повышена эффективность и точность детектирования лица.
В предпочтительном варианте осуществления изобретения предварительная обработка включает в себя корректировку уровня изображения, автоматическую балансировку белого, нормализацию и создание мозаичного изображения.
Корректировка уровня изображения относится к операции корректировки уровня изображения. Уровень представляет собой измерительный эталон, выражающий интенсивность освещенности изображения. От данного уровня зависят наполненность и точность цвета изображения. Посредством корректировки уровня изображения, может быть скорректирован уровень интенсивности теней, полутонов и подсвеченных участков изображения, тем самым до определенной степени улучшая визуальный эффект изображения.
В одном из вариантов осуществления изобретения могут быть скорректированы уровни трех каналов изображения (т.е., каналов RGB) соответственно. Фиг. 2 представляет собой гистограмму R канала определенного изображения. Затененные и подсвеченные области, включающие в себя незначительный объем данных, могут быть удалены, и левую и правую границы корректируют таким образом, чтобы они находились в пределах интервала [левый, правый]. Затем значения на R канале проецируются обратно на интервал [0, 255]. Интервал [левый, правый] представляет собой информацию о сохранившемся уровне после удаления затененных и подсвеченных областей.
В частности, может быть вычислено новое значение R/G/B согласно следующей формуле:
Разность=правый-левый
newRGB=(oldRGB-левый)×255/Разность.
В этой формуле под newRGB понимается новое значение R/G/B, под oldRGB понимается значение R/G/B до корректировки уровня.
В этом варианте осуществления изобретения корректировка уровня позволяет улучшить контрастность изображения и четкость границ, что благоприятствует последующему распознаванию цвета кожи, фильтрации углов и т.д.
Автоматическая балансировка белого используется для решения проблемы искажения цвета. При реальном фотографировании ограничения, накладываемые окружающей обстановкой на используемые устройства, например мобильный терминал, а также ограничения самих устройств, например фотоаппарата, могут приводить к некорректной экспозиции, что, в свою очередь, приводит к значительному искажению цвета или серьезной потере части цветов. Искажение цвета или серьезная потеря части цветов влияют на последующее выделение области цвета кожи, поэтому существует необходимость выполнения автоматической балансировки белого.
В одном из вариантов осуществления изобретения автоматическая балансировка белого может быть выполнена согласно следующей формуле:
где R′, G′ и В′ представляют собой значения трех компонентов изображения после выполнения автоматической балансировки белого, a R, G и В представляют собой значения трех компонентов исходного изображения. Кроме того, Rave, Gave и Bave представляют собой усредненные значения компонентов изображения R, G и В соответственно.
Поскольку изображения, имеющие различные размеры, могут иметь различные параметры при последующем выделении углов, выделении точек, комбинировании и фильтрации углов или других этапов обработки, размер изображений может быть нормализован. То есть, для унификации параметров, используемых в последующих процессах обработки, на изображениях реализуют масштабирование.
В одном из вариантов осуществления изобретения изображение может быть масштабировано с исходной пропорцией или с пропорцией, отличной от исходной. Предпочтительно, изображение масштабируется с исходной пропорцией. Например, изображение высотой более 400 рх может быть уменьшено до изображения высотой 400 рх с исходным соотношением сторон, а изображение высотой менее 400 рх остается неизменным без увеличения.
Поскольку некоторые изображения имеют широкую границу более одного пикселя, то при выделении углов непосредственно на уровне пикселя большое количество необходимых углов может быть потеряно. В предпочтительном варианте осуществления изобретения после нормализации может быть выполнена мозаичная обработка для преобразования изображения в мозаичное изображение, обеспечивающее более точное выделение углов. Кроме того, выделение углов на мозаичном изображении также может значительно повысить скорость обработки. Например, в масштабе 400 рх в качестве шага мозаики может быть выбран шаг 2×2 рх, при этом новое значение пикселя представляет собой усредненное значение этих четырех пикселей.
В одном из вариантов осуществления изобретения характерный процесс выделения углов из предварительно обработанного изображения на этапе S104 состоит в следующем: вычисляют разность яркости между текущим пикселем и окружающими пикселями на основании предустановленного шаблона 3×3 и выделяют пиксель, разность яркости которого больше или равна первому пороговому значению, в качестве угла.
При этом шаблон 3×3 представляет собой область с центром в текущем пикселе, а также образованную пикселями слева, справа, сверху, снизу, слева вверху, справа вверху, слева внизу и справа внизу от текущего пикселя.
Как показано на Фиг. 3, текущий пиксель представляет собой С, а пиксели слева, справа, сверху, снизу, слева вверху, справа вверху, слева внизу и справа внизу от текущего пикселя представляют собой A1, A, B, B1, A3, B2, B3 и A2 соответственно. Область, образованная этими девятью пикселями, представляет собой предустановленный шаблон 3×3. В частности, в одном из вариантов осуществления изобретения для каждого пикселя (т.е., текущего пикселя) предварительно обработанного изображения рассчитывают разность яркости между текущим пикселем и окружающими его пикселями по следующей формуле.
Определение:
rA1=w1×(fA-fC)2+w1×(fA1-fC)2
rB1=w2×(fB-fC)2+w2×(fB1-fC)2
R1=min(rA1, rB1)
rA2=w3×(fA2-fC)2+w3×(fA3-fC)2
rB2=w4×(fB2-fC)2+w4×(fB3-fC)2
R2=min(rA2, rB2)
В данной формуле f обозначает яркостный компонент (0~255) пикселя. Например, fA обозначает яркость пикселя А справа от точки С.w1, w2, w3 и w4 представляют собой веса, которые могут иметь следующие значения: wi=w2=1 и w3=w4=1. Если и R1 и R2 меньше заданного порогового значения Т1 (например, Т1=200), то точка (т.е., текущий пиксель) не является углом. В противном случае выполняют вычисление согласно следующей формуле:
B1=w5×(fB-fA)×(fA-fC)+w5×(fB1-fA1)×(fA1-fC)
B2=w6×(fB-fA1)×(fA1-fC)+w6×(fB1-fA)×(fA-fC)
B3=w7×(fB2-fA2)×(fA2-fC)+w7×(fB3-fA3)× (fA3-fC)
B4=w8×(fB2-fA3)×(fA3-fC)+w8×(fB3-fA2)×(fA2-fC)
mB1=min(B1, B2)
mB2=min(B3, B4)
A1=rB1-rA1-2×mB1
A2=rB2-rA2-2×mB2
R1=rA1-mB12/A1, где mB1<0 и A1+mB1>0
R2=rA2-mB22/A2, где mB2<0 и A2+mB2>0
В данной формуле W5, W6, W7 и W8 представляют собой веса, которые могут принимать значения W5=W6=1 и W7=W8=1. Вычисленные в результате R1 и R2 представляют собой разности яркости между текущим пикселем и окружающими пикселями. Если и R1, и R2 меньше заданного порогового значения 12 (например, Т2=700), то точка (т.е., текущий пиксель) не является углом. В противном случае это означает, что вокруг точки существует резкое изменение яркости изображения, и данная точка является углом.
В одном из вариантов осуществления изобретения на этапе S104 процедуры фильтрации углов заключаются в следующем: идентификация точек цвета кожи в предварительно обработанном изображении; отфильтровывание углов, не включающих в себя точки точки цвета кожи в предустановленном окружающем диапазоне; выделение центра пересечения цветового пространства YcgCr и цветового пространства YcbCr в качестве центра цвета кожи, вычисление значений компонентов Cb, Cg и Cr углов, вычисление расстояний между центром цвета кожи и значениями, компонентов Cb, Cg и Cr углов; отфильтровывание углов, расстояние от которых до центра цвета кожи превышает второе пороговое значение. Таким образом, в данном варианте осуществления изобретения сохраняют угол, вокруг которого существует точка цвета кожи, и удаляют угол, более удаленный от точки цвета кожи.
Для детектирования кожи существует множество пригодных для этого цветовых пространств, в том числе RGB, HSV, YCbCr, YUV, YcgCr и т.д. В предпочтительном варианте осуществления изобретения может быть выполнено одновременное выделение цвета кожи из пространств YCbCr и YcgCr, что повышает точность выделения. В цветовом пространстве YCgCr существует следующий диапазон цвета кожи: Cg∈[85, 135], Cr∈[-Cg+260, -Cg+280]. В цветовом пространстве YCbCr существует следующий диапазон цвета кожи: Cb∈[77, 127], Cr∈[133, 173]. При этом в данных цветовых пространствах Y∈[16, 235].
В частности, компоненты Y, Cb, Cr и Cg могут быть вычислены на основании значений RGB пикселей в предварительно обработанном изображении согласно следующей формуле:
Если вычисленные компоненты Y, Cb, Cr и Cg удовлетворяют двум описанным выше диапазонам цвета кожи, то пиксель представляет собой пиксель цвета кожи (т.е., точку цвета кожи). Если в предустановленном диапазоне вокруг выделенного угла нет точки цвета кожи, то угол отфильтровывают.
В данном варианте осуществления изобретения центр (Per, Peg, Pcb) пересечения двух описанных выше цифровых пространств изображения выбирают в качестве центра цвета кожи. Для каждого из пикселей в предварительно обработанном изображении вычисляют компоненты Cb, Cr и Cg пикселя, затем вычисляют Эвклидово расстояние между пикселем и центром цвета кожи. Если Эвклидово расстояние между цветом пикселя и центром цвета кожи превышает второе пороговое значение, то принимают, что пиксель маловероятно является точкой цвета кожи, и данный угол отфильтровывают.
В одном из вариантов осуществления изобретения после отфильтровывания углов может быть получено бинарное изображение углов. Однако степень подчинения, связанного с выделением, слишком велика, и выполнение проверки согласования лицевого шаблона непосредственно на основании бинарного изображения углов будет приводить к большому объему вычислений. Ввиду локального сосредоточения многих углов смежные углы могут быть скомбинированы для сокращения последующей вычислительной нагрузки.
В частности, может быть предопределена функция расстояния. Если расстояние между смежными углами удовлетворяет предустановленному условию, то углы комбинируют. Для комбинирования смежных углов могут быть использованы обычный алгоритм маркировки пикселей, алгоритм последовательного кодирования взаимосвязи и алгоритм наращивания области, подробное описание которых здесь будет опущено. После комбинирования углов получают связную компоненту группы углов.
Как показано на Фиг. 4, в одном из вариантов осуществления изобретения характерный процесс этапа S106 состоит в следующем.
Этап S116: Отбирают связную компоненту, площадь которой больше или равна третьему пороговому значению и/или соотношение сторон которой находится в пределах предустановленного диапазона.
Поскольку некоторые из полученных в результате связных компонент углов могут быть не согласованы с характеристиками лица, связные компоненты углов необходимо фильтровать. В частности, связные компоненты с площадью меньше третьего порогового значения и/или соотношением сторон, лежащим вне предустановленного диапазона, могут быть удалены. Например, если третье пороговое значение установлено равным 450, то отбирают связную компоненту с площадью большей или равной 450. Предустановленный диапазон может быть таким, что соотношение сторон должно быть больше 0,5 и меньше 5. Здесь третье пороговое значение может быть установлено на основании масштаба лицевого шаблона для упрощения последующей проверки согласования лицевого шаблона.
Этап S126: Выделяют центр отобранной связной компоненты в качестве центроида.
Этап S136: Вычисляют направление выделенного центроида и удаляют центроиды в направлении, перпендикулярность которого находится в пределах заданного диапазона перпендикулярности.
В частности, центроид представляет собой вектор, направление которого связано с его позицией в изображении. Направление центроида отражает актуальную информацию о границе области, в которой расположен центроид. Затем для вычисления направления центроида может быть использован традиционный оператор Собеля (т.е., оператор выделения границы), и центроид в направлении, перпендикулярность которого лежит в пределах заданного диапазона перпендикулярности, удаляют. Таким образом, удаляют центроид в близком к вертикальному направлении, являющийся центроидом, выделенным из вертикальной границы.
После выполнения этапа S136 полученный центроид может быть использован для проверки согласования лицевого шаблона. В частности, каждый из центроидов может быть представлен в качестве (P, R, D), где P - это центр скомбинированной связной компоненты, R - это радиус связной компоненты, a D - плотность связной компоненты.
В одном из вариантов осуществления изобретения лицевой шаблон представляет собой прямоугольный шаблон, включающий в себя верхнюю точку левого глаза, верхнюю точку правого глаза и, по меньшей мере, одну третью точку, расположенную на другой линии, параллельной линии, на которой расположены верхняя точка левого глаза и верхняя точка правого глаза.
Как показано на Фиг. 5, лицевой шаблон представляет собой прямоугольный шаблон, включающий в себя, по меньшей мере, три точки, причем каждая из точек представлена как (P, w, h). Здесь P - это двумерная координата точки, W - максимально допустимая поперечная протяженность вокруг точки, a h - максимально допустимая продольная протяженность вокруг точки. Как показано на Фиг. 5, верхняя точка левого глаза - это p0, верхняя точка правого глаза - это p1, а p2 - это третья точка. На Фиг. 5 точки, изображенные пунктирными линиями, обозначают возможные положения точки p2, когда p0 и p1 определены.
Как показано на Фиг. 6, в одном из вариантов осуществления изобретения характерный процесс этапа S108 состоит в следующем: перебирают центроиды и выполняют следующие этапы для каждого из центроидов.
Этап S118: Выполняют поиск второго центроида, расстояние от которого до верхней точки правого глаза меньше или равно четвертому пороговому значению, используя первый центроид в качестве верхней точки лицевого шаблона.
В частности, если второй центроид не может быть достигнут, это указывает на то, что лицевой шаблон не согласован. Если второй центроид может быть найден, то выполняют Этап S128. "Ширина" и "высота", показанные на Фиг. 7, это ширина и высота лицевого шаблона соответственно, а найденный второй центроид - это c1.
Этап S128: Выполняют поиск третьего центроида, расстояние от которого по вертикали до другой линии, параллельной линии, на которой расположены верхняя точка левого глаза и верхняя точка правого глаза, меньше или равно четвертому пороговому значению.
В частности, если третий центроид не может быть найден, это означает, что лицевой шаблон не согласован. Если третий центроид может быть найден, то выполняют Этап S138. Как показано на Фиг. 7, найденный третий центроид - это c2.
Этап S138: Вычисляют вероятность согласования на основании расстояния между вторым центроидом и верхней точкой правого глаза, расстояния по вертикали между третьим центроидом и упомянутой другой линией и кратчайшего расстояния между третьим центроидом и несколькими третьими точками.
В частности, в одном из вариантов осуществления изобретения первая вероятность может быть вычислена на основании расстояния между вторым центроидом и верхней точкой правого глаза после поиска второго центроида. Согласно Фиг. 7, первая вероятность может быть вычислена согласно следующей формуле:
s1=1-d1/пороговое значение.
В данной формуле s1 - это первая вероятность, d1 - это расстояние между вторым центроидом c1 и верхней точкой правого глаза, а "пороговое значение" - это четвертое пороговое значение.
После нахождения третьего центроида может быть вычислена вторая вероятность на основании расстояния по вертикали между третьим центроидом и упомянутой другой линией. Согласно Фиг. 7, вторая вероятность может быть вычислена согласно следующей формуле:
s2=1-d2/пороговое значение.
В данной формуле s2 - это вторая вероятность, d2 - это расстояние по вертикали между третьим центроидом c2 и упомянутой другой линией, называемой "линия 1", а "пороговое значение" - это четвертое пороговое значение.
После нахождения третьего центроида c2 могут быть вычислены расстояния между третьим центроидом c2 и всеми третьими точками лицевого шаблона с целью получения кратчайшего расстояния. Как показано ни Фиг. 7, кратчайшее расстояние - это расстояние d3 между третьим центроидом c2 и третьей точкой p4. Если d3 больше, чем соотношение ширина/5, это означает несовпадение лицевого шаблона. В противном случае, далее вычисляют третью вероятность на основании кратчайшего расстояния между третьим центроидом и третьими точками. В частности, для вычисления третьей вероятности может быть применена следующая формула:
s3=1-d3/(ширина/5).
В данной формуле s3 - это третья вероятность, d3 - это кратчайшее расстояние, а "ширина" - это ширина лицевого шаблона.
Далее вычисляют вероятность согласования на основании трех вычисленных вероятностей. В одном из вариантов осуществления изобретения вероятность согласования может быть вычислена согласно следующей формуле: p=3×s1+s2+s3.
Этап S148: Определяют, является ли вероятность согласования большей или равной предопределенному значению. Если да, то переходят к Этапу S158. В противном случае процесс завершают.
Например, для лицевого шаблона 250 рх×250 рх четвертое пороговое значение может быть установлено величиной 50 рх, а предопределенное значение равно 0,8.
Этап S158: Определяют область, образованную первым центроидом, вторым центроидом и третьим центроидом, в качестве вероятной лицевой области.
Как показано на Фиг. 7, область, образованная первым центроидом c0, найденным вторым центроидом c1 и найденным третьим центроидом c2, локализована в качестве вероятной лицевой области.
Следует отметить, что для поиска центроида могут быть использованы различные методики поиска. Например, может быть выполнен полный поиск. Это подразумевает выполнение вычисления с использованием каждого центроида в качестве верхней точки лицевого шаблона. Для повышения эффективности поиска также может быть использован частичный поиск, при котором пренебрегают некоторыми центроидами, не отвечающими условиям в процессе во время поиска, что ускоряет процесс поиска в целом. Например, очевидно, что центроид, окруженный темной областью большой площади, не является исходной позицией левого глаза; центроиды слишком большого размера в вертикальном или горизонтальном положении не могут существовать в области, смежной с центроидами пяти органов чувств; центроидами в области, близкой к границам лицевого шаблона, пренебрегают; центроидами, имеющими размер,