УДК 004

Применение сверточных нейронных сетей для отслеживания взгляда

Навширванов Денис Артурович – магистрант, инженер-электроник Публичного акционерного общества «Нижнекамскнефтехим» (СИБУР)

Аннотация: Цель: заключается в исследовании и анализе эффективности применения сверточных нейронных сетей (CNN) в задаче отслеживания взгляда. Методология исследования включала в себя анализ эффективности сверточных нейронных сетей в задаче отслеживания взгляда. Для этого использовались два набора данных: MIT1003 и SALICON. Рассматривались различные архитектуры CNN, обучение и тестирование моделей, а также анализ результатов с использованием различных метрик. В результате исследования установлено, что модель, обученная на наборе данных MIT1003, демонстрирует более точное предсказание фокусировки взгляда с низким значением MSE (0.075) и высоким PCC (0.88). Модель также имеет высокий AUC-ROC (0.92), свидетельствуя о способности точно предсказывать салентные области. Эти результаты подтверждают эффективность сверточных нейронных сетей в задаче отслеживания взгляда. Выводы исследования подчеркивают значительную эффективность сверточных нейронных сетей в задаче отслеживания взгляда. Они демонстрируют, что CNN способны обеспечивать высокую точность в определении направления и фокуса взгляда, а также превосходят традиционные методы по скорости и адаптивности. Их устойчивость к изменяющимся условиям и способность работать в реальном времени делают их идеальными для применения в широком спектре приложений, включая интерактивные и иммерсивные технологии. Эти результаты указывают на значительный потенциал CNN в улучшении и развитии систем отслеживания взгляда.

Ключевые слова: отслеживание взгляда, сверточные нейронные сети (CNN), MSE, PCC, AUC-ROC, искусственный интеллект.

Введение

В современном мире информационных технологий и исследований в области искусственного интеллекта, задачи, связанные с отслеживанием взгляда, приобретают все большее значение. Отслеживание взгляда является ключевой компонентой в различных приложениях, начиная от улучшения интерфейсов и виртуальной реальности до биометрической аутентификации и медицинских исследований. Сверточные нейронные сети (CNN) стали мощным инструментом в области обработки изображений, и их применение к задачам отслеживания взгляда обещает значительные результаты. В данной статье мы представляем результаты нашего исследования, направленного на анализ эффективности CNN в задаче отслеживания взгляда. Мы начнем с обзора современных подходов и алгоритмов, используемых в сверточных нейронных сетях для отслеживания взгляда. Затем мы представим методологию, использованную в исследовании, включая наборы данных, архитектуры CNN и метрики производительности. После этого мы представим результаты, полученные в ходе исследования, и проведем их анализ.  Данная работа не только расширяет понимание применимости CNN в задаче отслеживания взгляда, но также предоставляет основу для дальнейших исследований в этой области. Улучшение точности и эффективности моделей отслеживания взгляда имеет потенциал повысить качество многих приложений и систем, которые зависят от анализа взгляда человека.

Сверточные нейронные сети

В последние годы было несколько попыток использовать нейронные сети для отслеживания взгляда. Общий подход заключался в кодировании изображений, содержащих глаза пользователя, в пространство признаков с использованием сверточной нейронной сети (CNN), как показано на рисунке 1. Векторы признаков передаются через серию полносвязных слоев, которые в конечном итоге выдают пару координат x, y, представляющих оценочное положение взгляда на экране относительно положения камеры.

image001

Рисунок 1. Визуализация системы слежения за глазами на основе CNN.

Данные истинности могут быть сгенерированы путем привлечения группы испытуемых, чтобы они следили за точкой стимула на экране своими глазами, одновременно записывая их лицо с помощью камеры. На каждом временном шаге t записывается изображение It, содержащее глаза испытуемого, вместе с соответствующим расположением точки стимула xt. Предполагая, что испытуемые всегда смотрят на точку стимула во время записи, это дает набор соответствий изображение-взгляд It ↔ xt, который может быть использован для обучения нейронной сети.

Первая попытка использования нейронных сетей для оценки взгляда была опубликована в  [1]. Они представили открытый набор данных под названием GazeCapture, который был собран через платформу краудсорсинга Amazon Mechanical Turk. Для сети оценки взгляда они используют три области интереса (ROI) в качестве входных данных: одну от каждого глаза и низкоразрешенную версию полного лица. ROI объединяются через три параллельные CNN, за которыми следует общий набор полносвязных слоев для получения выхода x, y. Они показывают, что полностью обученная сеть может быть уменьшена с помощью дистилляции и заставлена работать в реальном времени на современном смартфоне, сохраняя при этом производительность. Другая архитектура исследуется в [2], где они используют одну ROI, содержащую полное лицо, в качестве входных данных. Вместо вырезания ROI, содержащих черты лица, они используют изображение полного лица в качестве входных данных и вводят слой пространственного веса, который явно фильтрует важные области. Они оценивают свои алгоритмы на наборах данных MPIIGaze [3] и EYEDIAP [4].

Работа, описанная в [5], также была проведена в Tobii Stockholm, и они используют одну ROI, содержащую оба глаза, в качестве входных данных. Они исследуют использование специфической для субъекта калибровки путем настройки последних полносвязных слоев сети для специализации на одном субъекте. Они также исследуют подход к оценке взгляда как к задаче классификации, заменяя выход x, y-координат на вероятностное распределение по плоскости экрана. Для обучения [5] и [1] используют L2-расстояние между предсказанным местоположением взгляда и местоположением стимула истинности в качестве функции потерь, в то время как [2] использует L1-расстояние.

Глубокие искусственные нейронные сети являются сильно параметризованными моделями, которые достигли результатов на уровне лучших современных методов во многих ранее трудно решаемых задачах. Нейронная сеть реализует функцию f(x|θ), комбинируя несколько дифференцируемых и нелинейных функций, называемых слоями:

f(x|θ) = fL(fL−1(...f0(x|θ0)|θL−1)|θL) (1)

где слой fl параметризуется набором параметров θl. Если в сети больше одного слоя, она называется глубокой. Конфигурация слоев вместе с их параметризацией называется архитектурой сети.

Имея набор данных S, состоящий из точек данных s, эти параметры могут быть обучены для минимизации функции потерь с использованием стохастического градиентного спуска:

L(S) = 1/|S| ∑s∈S L(s) (2)

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

Методология

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

Обучение моделей

Обучение моделей в рамках исследования включало в себя ряд этапов, предназначенных для разработки и настройки сверточных нейронных сетей (CNN) для задачи отслеживания взгляда. В начале была выбрана функция потерь, наилучшим образом соответствующая задаче. Для задачи отслеживания взгляда была использована Mean Squared Error (MSE), так как она позволяет измерять расхождение между предсказанными координатами фокусировки и фактическими данными. Далее был выбран оптимизатор, и в данной работе использовался стохастический градиентный спуск (SGD) с регуляризацией для предотвращения переобучения моделей. Процесс обучения включал в себя несколько эпох, где каждая эпоха представляла собой полный проход через тренировочный набор данных с обновлением весов нейронной сети. Одним из важных этапов была настройка гиперпараметров моделей. Скорость обучения, количество эпох и другие параметры были тщательно настроены с использованием кросс-валидации, чтобы достичь оптимальной производительности. В результате этого процесса были обучены нейронные модели с разными архитектурами и настройками. Эти модели были готовы к последующему тестированию на различных наборах данных, чтобы оценить их производительность и способность точно отслеживать взгляд.

Оценка производительности

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

Mean Squared Error (MSE) измеряет среднеквадратичную ошибку между предсказанными и фактическими координатами фокусировки. Меньшее значение MSE свидетельствует о более точном определении местоположения взгляда.

Pearson Correlation Coefficient (PCC) используется для оценки линейной зависимости между предсказанными и фактическими данными. Высокое значение PCC ближе к 1 указывает на сильную линейную связь, что говорит о высокой точности модели.

Area Under the Receiver Operating Characteristic Curve (AUC-ROC) оценивает способность модели точно определять салентные области на изображениях. Значение AUC-ROC, близкое к 1, свидетельствует о более высокой способности модели.

Результаты оценки производительности моделей на тестовых данных представлены в виде численных значений метрик.

Набор данных

MSE

PCC

AUC-ROC

MIT1003

0.075

0.88

0.92

SALICON

0.089

0.86

0.91

 image002

Рисунок 2. Графики, иллюстрирующие производительность моделей.

Выводы

Графики изображенные на рисунке 2 указывают на успешное обучение сверточных нейронных сетей. Обе модели CNN, обученные на разных наборах данных, показывают хорошие результаты в задаче отслеживания взгляда.

Модель, обученная на MIT1003, обладает немного более высокой точностью, сильной линейной зависимостью и немного более высокой способностью предсказания салентных областей.

Однако разница в производительности между моделями не слишком велика, и обе модели могут быть успешно использованы в задачах отслеживания взгляда. Результаты также могут зависеть от специфики задачи и требований, поэтому выбор модели следует рассматривать в контексте конкретной задачи и доступных данных.

Заключение

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

Список литературы

  1. Kyle Krafka, Aditya Khosla, Petr Kellnhofer, Harini Kannan, Suchendra Bhandarkar, Wojciech Matusik, Antonio Torralba. Eye tracking for everyone. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2176–2184, 2016.
  2. Xucong Zhang, Yusuke Sugano, Mario Fritz, Andreas Bulling. It’s written all over your face: Full-face appearancebased gaze estimation. arXiv preprint arXiv:1611.08860, 2016.
  3. Xucong Zhang, Yusuke Sugano, Mario Fritz, Andreas Bulling. Appearance-based gaze estimation in the wild. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 4511–4520, 2015.
  4. Kenneth Alberto Funes Mora, Florent Monay, and Jean-Marc Odobez. Eyediap: A database for the development and evaluation of gaze estimation algorithms from rgb and rgb-d cameras. In Proceedings of the Symposium on Eye Tracking Research and Applications, страницы 255–258. ACM, 2014.
  5. David Masko. Calibration in eye tracking using transfer learning. KTH DiVA, 2017.

Интересная статья? Поделись ей с другими: