Телефон: 8-800-350-22-65
WhatsApp: 8-800-350-22-65
Telegram: sibac
Прием заявок круглосуточно
График работы офиса: с 9.00 до 18.00 Нск (5.00 - 14.00 Мск)

Статья опубликована в рамках: XXXVIII Международной научно-практической конференции «Экспериментальные и теоретические исследования в современной науке» (Россия, г. Новосибирск, 24 апреля 2019 г.)

Наука: Информационные технологии

Скачать книгу(-и): Сборник статей конференции

Библиографическое описание:
Федцов А.В., Семичевская Н.П. МОДЕЛИРОВАНИЕ ВЫЧИСЛИТЕЛЬНЫХ ПРОЦЕССОВ ДЛЯ РЕШЕНИЯ ЗАДАЧ РАСПОЗНАВАНИЯ ПОЛОЖЕНИЯ ЗРАЧКА ГЛАЗА ЧЕЛОВЕКА НА ВИДЕОПОТОКЕ С ИСПОЛЬЗОВАНИЕМ ТЕХНОЛОГИИ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ // Экспериментальные и теоретические исследования в современной науке: сб. ст. по матер. XXXVIII междунар. науч.-практ. конф. № 8(34). – Новосибирск: СибАК, 2019. – С. 11-15.
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

МОДЕЛИРОВАНИЕ ВЫЧИСЛИТЕЛЬНЫХ ПРОЦЕССОВ ДЛЯ РЕШЕНИЯ ЗАДАЧ РАСПОЗНАВАНИЯ ПОЛОЖЕНИЯ ЗРАЧКА ГЛАЗА ЧЕЛОВЕКА НА ВИДЕОПОТОКЕ С ИСПОЛЬЗОВАНИЕМ ТЕХНОЛОГИИ ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ

Федцов Алексей Владимирович

студент Амурского государственного университета, магистрант,

РФ, г. Благовещенск

Семичевская Наталья Петровна

канд. техн. наук,  доц. Амурского государственного университета.

РФ, г. Благовещенск

АННОТАЦИЯ

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

 

Ключевые слова: видеопоток, распознавание образов, каскад хаара, параллельные вычисления.

 

Имеется система управления графическим интерфейсом ПК на основе распознавания движений зрачка глаза человека на видеопотоке.

Первоначально, алгоритм распознавания в системе имеет следующую последовательность действий:

  • Захват изображения с вебкамеры;
  • Нахождение расположения лица человека на изображении;
  • Нахождение расположения глаза на лице человека;
  • Стабилизация положения глаза на изображении, по сравнению с другими кадрами видеопотока;
  • Нахождение положения зрачка относительно глаза;

 

Рисунок 1. Диаграмма алгоритма при последовательной обработке данных

 

Наиболее ресурсоемкими являются шаги:

  • Нахождение расположения лица человека на изображении;
  • Нахождение расположения глаза на лице человека;

Для использования параллельных вычислений, предлагается следующее изменение работы алгоритма:

 

Рисунок 2. Диаграмма алгоритма при параллельной обработке данных

 

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

Пояснение к новому алгоритму:

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

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

Для восстановления последовательности кадров, каждому захвачен­ному с веб-камеры кадру будет присваиваться порядковый номер т. е. идентификатор. Функция восстановления кадров на основе идентифи­катора не будет пропускать на дальнейшую обработку кадр, если он обработался раньше предыдущий.

После разработки программного кода, произведено тестирование его производительности для различного количества потоков на разном оборудовании.

Для тестирования использовалось следующее оборудование:

  • ПК 1 на базе процессора Intel Atom Z3735, 4 ядра, 2 гигабайта ОЗУ, ОС Windows 10 32-разрядная.

Платформа Intel Atom используется в мобильных ПК с невысокой производительностью, но большим временем автономной работы. Например, планшеты на базе OC Windows. Их можно отнести к категории "Низкопроизводительные ПК";

  • ПК 2 на базе процессора AMD A6-6400K, 2 ядра, 4 гигабайта ОЗУ, ОС Windows 7 64-разрядная.

Данная конфигурация по производительности соответствует офисным и мультимедийным ПК. Ее можно отнести к категории "Среднепроизводительные ПК";

  • ПК 3 на базе процессора Intel core i7, 8 ядер, 12ГБ ОЗУ, ОС Windows 7 64-разрядная.

Данная конфигурация используется в высокопроизводительных рабочих станциях, а также в современных игровых ПК. Ее можно отнести к категории "Высокопроизводительные ПК";

В качестве показателя эффективности работы при тестировании используется количество обработанных кадров в секунду. Для достоверности результатов, тестирование проводилось в течение 10 секунд, и брался средний результат.

Так же, ОС на тестируемых ПК была предварительно пере­загружена, чтобы исключить возможную трату ресурсов на работу других приложений.

Тестирование производилось для 1, 2, 3, 4, 7 и 8 потоков. Результаты тестирования представлены в таблице:

Таблица 1.

Результаты вычислительного эксперимента

 

1 поток

2 потока

3 потока

4 потока

7 потоков

8 потоков

ПК 1

4 к/сек

6 к/сек

7 к/сек

6 к/сек

3 к/сек

1 к/сек

ПК 2

5 к/сек

9 к/сек

6 к/сек

3 к/сек

2 к/сек

1 к/сек

ПК 3

6 к/сек

8 к/сек

13 к/сек

16 к/сек

25 к/сек

19 к/сек

 

По результатам вычислительного эксперимента, можно сделать потоков, равное количеству ядер процессора минус 1. Это так же имеет логическое объяснение: основной поток, в котором происходит захват кадров и управление потоками, расходует 1 ядро процессора. Остается n-1 свободных ядер, где n - количество ядер процессора. Каждый последующий поток программы, в силу сложности произво­димых вычислений, расходует производительность свободного ядра процессора максимально.

В случае превышения количества потоков над количеством ядер процессора, происходит недостаток ресурсов и производительность падает.

 

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

  1. Компьютерное зрение: статья // Википедия: офиц. сайт. 20.05.2017. URL: https://ru.wikipedia.org/wiki/Компьютерное_зрение (Дата обращения 04.04.19).
  2. Веб-камера: статья // Википедия: офиц. сайт. 20.05.2017. Режим доступа: https://ru.wikipedia.org/wiki/Веб-камера (Дата обращения 04.04.19).
  3. Метод Виолы-Джонса: статья // Википедия: офиц. сайт. 20.05.2017. Режим доступа: https://ru.wikipedia.org/wiki/Метод_Виолы_—_Джонса (Дата обращения 04.04.19).
  4. Цифровое видео: статья // Википедия: офиц. сайт. 20.05.2017. Режим доступа: https://ru.wikipedia.org/wiki/Цифровое_видео (Дата обращения 04.06.17).
  5. Теория распознавания образов: статья // Википедия: офиц. сайт. 20.05.2017. Режим доступа: https://ru.wikipedia.org/wiki/ Теория_распознавания_образов (Дата обращения 04.04.19).
  6. Симакова Н.Н. Организация рабочих мест с персональными электронно-вычислительными машинами (ПЭВМ)/ Н.Н. Симакова – Новосибирск: Сибирский государственный университет телекоммуникаций и информатики, 2013. – [19 с.]
Проголосовать за статью
Дипломы участников
У данной статьи нет
дипломов

Оставить комментарий

Форма обратной связи о взаимодействии с сайтом
CAPTCHA
Этот вопрос задается для того, чтобы выяснить, являетесь ли Вы человеком или представляете из себя автоматическую спам-рассылку.