Отправьте статью сегодня! Журнал выйдет ..., печатный экземпляр отправим ...
Опубликовать статью

Молодой учёный

Эффективность хэш-метода при сравнении лиц на фотографиях c применением библиотеки компьютерного зрения OpenCV

Научный руководитель
4. Информатика
Препринт статьи
26.09.2025
2
Поделиться
Аннотация
В статье автор исследует эффективность хэш-метода при сравнении человеческих лиц на фотографиях с применением библиотеки OpenCV и языка программирования Python. Предложены критерии сравнения лиц хэш-методом и проанализированы ограничения его применимости.
Библиографическое описание
Винокуров, В. С. Эффективность хэш-метода при сравнении лиц на фотографиях c применением библиотеки компьютерного зрения OpenCV / В. С. Винокуров. — Текст : непосредственный // Исследования молодых ученых : материалы CVIII Междунар. науч. конф. (г. Казань, октябрь 2025 г.). — Казань : Молодой ученый, 2025. — URL: https://moluch.ru/conf/stud/archive/542/19105/.


В статье автор исследует эффективность хэш-метода при сравнении человеческих лиц на фотографиях с применением библиотеки OpenCV и языка программирования Python. Предложены критерии сравнения лиц хэш-методом и проанализированы ограничения его применимости.

Ключевые слова: лицо, сравнение, компьютерное зрение, каскад Хаара, хэш-метод, библиотека OpenCV

Технологии распознавания лиц на фотографиях широко применяются в различных сферах, включая безопасность, здравоохранение, торговлю и образование. На основе анализа лицевых характеристик данные технологии позволяют идентифицировать личность человека, используя алгоритмы машинного обучения [2].

Выбор максимально эффективного алгоритма распознавания лиц на фото и видео является актуальной проблемой. Одним из направлений ее решения выступает технология «компьютерного зрения», реализованная в наборе методов библиотеки OpenCV. Для обнаружения лиц на фото данная библиотека использует метод машинного обучения, получивший название «каскад Хаара» в честь венгерского математика Альфреда Хаара (1885–1933), исследователя геометрических структур, на которых построен данный алгоритм.

Целью данной работы являлось исследование эффективности хэш-метода при сравнении человеческих лиц на фотографиях с применением библиотеки OpenCV и языка программирования Python.

Функция Хаара равна средневзвешенной сумме яркостей пикселей разнотипных подобластей. Превышение этой суммой установленного порога указывает на присутствие объекта. Примитивы разных размеров и форм фиксируют его особенности: форму, контуры, расстояние до других объектов и т. д. При распознавании лиц фото «прогоняется» через многоуровневую систему фильтров, каждый из которых обучен искать определенную деталь (подбородок, глаза, брови, нос, рот и т. д.). В результате каскадной фильтрации все обнаруженные на фото объекты будут разделены на «лица» и «не лица» [5].

В 1999 г. компания Intel создала библиотеку OpenCV с открытым исходным кодом для работы с алгоритмами «компьютерного зрения», машинного обучения и обработки изображений. Файлы каскадов мы скачивали с сервиса GitHub [3]. Сравнивая работу фронтальных каскадов при распознавании лиц на фотографиях, мы установили, что максимальную эффективность показал каскад alt2 (97 %). Он и был выбран для распознавания лиц в данном исследовании.

Хэш изображения (перцептивный хэш) — это представление изображения в виде короткого битового числа фиксированной длины. Процесс вычисления хэша состоит из следующих этапов.

  1. Предварительная обработка изображения: загрузка, преобразование в оттенки серого, распознавание лица, определение его границ, вырезание по этим границам фрагмента прямоугольной формы, стандартизация его размера и бинаризация.
  2. Выполнение вычислений: подготовленное изображение сканируется по одному пикселю в направлении сверху вниз слева направо. Если пиксель белый (яркость 255), в хэш-вектор записывается цифра «1», если черный (яркость 0) — цифра «0». В итоге получается последовательность единиц и нулей длиной w x h символов, где w и h — размер изображения по горизонтали и вертикали соответственно [1].

Алгоритм сравнения лиц был реализован в виде программы «Hash» на языке Python [4]. С помощью программы мы провели сравнение лиц на 10-ти тестовых наборах фотографий, подобранных по различным принципам. Каждый тестовый набор включал в себя 3 фото, из которых 1-е фото попарно сравнивалось со 2-м и с 3-м. При этом по относительной разности хэшей вычислялся процент совпадения изображений.

На всех фотографиях наборов № № 1–2 — один и тот же человек. В набор № 1 включены фото актера Киану Ривза примерно в одном и том же возрасте. В наборе № 2 — фото актера Сергея Безрукова в юности, в детстве и в настоящее время.

Наборы № № 3–7 составлены по принципу: на фото № 1 и фото № 2 — один и тот же человек, на фото № 3 — человек похожей внешности. В наборах № № 3, 4, 7 — фото людей европеоидной внешности (актер Леонардо ди Каприо и сотрудник МЧС России Роман Бурцев, актрисы Кира Найтли и Натали Портман, актриса Милла Йовович и ее дочь Эвер Андерсон), в наборе № 5 — монголоидной (южнокорейские актеры Ким Мин Джэ и Ё Чжин Гу), в наборе № 6 — негроидной (актеры Дензел Вашингтон и Деннис Хейсберт). В наборах № № 3–6 — фото людей примерно одного возраста. В наборе № 10 на фото № 1 и фото № 2 — актриса Милла Йовович в детстве и в настоящее время, на фото № 3 — ее старшая дочь Эвер Андерсон в детстве.

На всех фотографиях наборов № № 8–10 — три разных человека. В наборе № 8 — фото близнецов-тройняшек Эльназ, Таназ и Гульназ Хаккак. В наборе № 9 — фото актрисы Мэрилин Монро и сыгравших ее в двух разных байопиках актрис Мишель Уильямс и Анны де Армас. В наборе № 10 — фото актрис Киры Найтли, Натали Портман и Вайноны Райдер.

Результаты тестирования приведены в таблице 1.

Таблица 1

Результаты тестирования хэш-метода сравнения лиц

Фото № 1

Сравнение № 1 / № 2

Сравнение № 1 / № 3

Фото № 2

Совпадение изображений

Фото № 3

Совпадение изображений

К. Ривз

К. Ривз

88,39 %

К. Ривз

81,01 %

С. Безруков (в юности)

С. Безруков (в детстве)

51,88 %

С. Безруков (сейчас)

63,45 %

Л. ди Каприо

Л. ди Каприо

79,38 %

Р. Бурцев

63,00 %

К. Найтли

К. Найтли

86,00 %

Н. Портман

79,08 %

Ким Мин Джэ

Ким Мин Джэ

73,70 %

Ё Чжин Гу

68,07 %

Д. Вашингтон

Д. Вашингтон

75,21 %

Д. Хейсберт

57,34 %

М. Йовович (в детстве)

М. Йовович (сейчас)

77,91 %

Э. Андерсон (в детстве)

82,74 %

Э. Хаккак

Т. Хаккак

90,21 %

Г. Хаккак

85,10 %

М. Монро

М. Уильямс

76,25 %

А. де Армас

74,51 %

К. Найтли

Н. Портман

57,75 %

В. Райдер

55,34 %

Анализ полученных данных позволяет сделать следующие выводы.

1. При сравнении лиц на фотографиях хэш-методом можно предложить следующие критерии:

  1. при совпадении хэшей более чем на 80 % высока вероятность того, что на сравниваемых фото — один и тот же человек;
  2. при совпадении хэшей менее чем на 60 % наиболее вероятно, что на фотографиях — разные люди;
  3. интервал 60–80 % можно отнести к спорным значениям, когда для окончательного вывода потребуется дополнительное исследование.

2. Применение хэш-метода в сравнении лиц имеет определенные ограничения:

— разный возраст людей, лица которых нужно сравнить;

— мелкие черты лица (узкие глаза, нос и губы);

— родственные отношения (генетическое сходство близнецов, наследственное сходство родителей и детей);

— макияж и грим (особенно профессиональный), заметно корректирующие черты лица.

Тем не менее, выбрав оптимальный каскад Хаара для распознавания лиц и соблюдая указанные выше ограничения, можно добиться высокой эффективности хэш-метода при сравнении лиц с применением библиотеки «компьютерного зрения» OpenCV.

Литература:

1. Валишин, А. А. Моделирование и сравнительный анализ эффективности перцептивных хэш-функций для поиска сегментированных изображений / А. А. Валишин, А. В. Запривода, С. С. Цухло. — Текст: непосредственный // Математическое моделирование и численные методы. — 2024. — № 2(42). — С. 46–67.

2. Джат, Ю. Как работает система распознавания лиц и где применяется технология / Ю. Джат. — Текст: электронный // Ростелеком: [сайт]. — URL: https://blog.rt.ru/b2c/kak-rabotaet-sistema-raspoznavaniya-lic-i-gde-primenyaetsya-tekhnologiya.htm (дата обращения: 24.09.2025).

3. Каскады Хаара на сервисе GitHub. — Текст: электронный // GitHub: [сайт]. — URL: https://github.com/austinjoyal/haar-cascade-files (дата обращения: 24.09.2025).

4. Компьютерное зрение OpenCV: где применяется и как работает в Python. — Текст: электронный // Skillbox Media: [сайт]. — URL: https://skillbox.ru/media/code/kompyuternoe-zrenie-opencv-gde-primenyaetsya-i-kak-rabotaet-v-python/ (дата обращения: 24.09.2025).

5. Работа каскада Хаара в OpenCV: теория и практика. — Текст: электронный // Система тематических электронных блогов «Хабр»: [сайт]. — URL: https://habr.com/ru/companies/recognitor/articles/228195/ (дата обращения: 24.09.2025).

Можно быстро и просто опубликовать свою научную статью в журнале «Молодой Ученый». Сразу предоставляем препринт и справку о публикации.
Опубликовать статью
Ключевые слова
лицо
сравнение
компьютерное зрение
каскад Хаара
хэш-метод
библиотека OpenCV

Молодой учёный