Отслеживание и распознавание лиц с помощью Ардуино |
||
МЕНЮ Искусственный интеллект Поиск Регистрация на сайте Помощь проекту ТЕМЫ Новости ИИ Искусственный интеллект Разработка ИИГолосовой помощник Городские сумасшедшие ИИ в медицине ИИ проекты Искусственные нейросети Слежка за людьми Угроза ИИ ИИ теория Внедрение ИИКомпьютерные науки Машинное обуч. (Ошибки) Машинное обучение Машинный перевод Реализация ИИ Реализация нейросетей Создание беспилотных авто Трезво про ИИ Философия ИИ Big data Работа разума и сознаниеМодель мозгаРобототехника, БПЛАТрансгуманизмОбработка текстаТеория эволюцииДополненная реальностьЖелезоКиберугрозыНаучный мирИТ индустрияРазработка ПОТеория информацииМатематикаЦифровая экономика
Генетические алгоритмы Капсульные нейросети Основы нейронных сетей Распознавание лиц Распознавание образов Распознавание речи Техническое зрение Чат-боты Авторизация |
2018-10-19 00:52 Проект на основе платы Ардуино Микро по итогам которого мы получим устройство способное отслеживать и распознавать лица. Вступление Разработка и продвижение камер с высоким разрешением в последние годы побуждают инженеров и студентов к исследованию и созданию приложений, основанных на «автоматизированных» алгоритмах компьютерного зрения, частую задачу, используемую для отслеживания движения и положения объекта, а также его собственные характеристики, такие как: форма объекта, цвет объекта и т.д. В данном случае проект основан на отслеживании и распознавании лиц. Если он обнаруживает лицо, он фокусирует на нем красную рамку. Если он распознает лицо с низкой процентной вероятностью, фокус будет находится в желтой рамке, а если процент высокий или очень высокий, устройство фокусирует лицо в зеленой рамке. Как это работает Функциональность проекта, довольно проста, но требует небольшого изучения. Arduino Micro получает информацию об объекте через WiFi-модуль, в этом случае SparkFun Breakout Board CC3000 от TI. Связь осуществляется через клиентский сервер сокетов UDP: приложение в мобильном телефоне отправляет необходимые данные (размер кадра и положение для горизонтального и вертикального серво) в микроконтроллер, чтобы она могла выполнять вычисления с переданной информацией и передавать изменения на сервоприводы, в данном случае только горизонтальные. Итого нашего проекта по распознаванию и отслеживанию лиц с помощью Ардуино вы сможете увидеть в видео на последнем шаге. Комплектующие Набор компонентов для проекта по распознаванию лиц не велик. Главную роль здесь играет правильное приложение. Аппаратная часть
Приложения и программы
Схема соединения При сборке устройства сверяйтесь со схемой, представленной на рисунке ниже. Нажмите для увеличения изображения. Код Скачать или скопировать код проекта вы можете ниже. #include <avr/delay.h> /* servo libs - Библиотека серво-привода */ #include "_Servo.h" /* WiFi libs - Библиотека WiFi */ #include "CC3000.h" #include "CC3000_Client.h" #include "common.h" Servo servo_x; Servo servo_y; void setup() { /* код настройки */ ConnectionInfo connection_info; // Инициализация CC3000 (конфигурируем SPI соединение) #ifdef CC3000_DEBUG Serial.begin(115200); #endif // Инициализация CC3000 (конфигурируем SPI соединение) if(!wifi.init(9)) { #ifdef CC3000_DEBUG DEBUGPRINTLN(PSTR("Initialize CC3000 FAIL! ОШИБКА!")); #endif return; } else { //FreeRam(); #ifdef CC3000_DEBUG DEBUGPRINTLN(PSTR("Initialize CC3000 OK!")); #endif } if(!wifi.connect(ap_ssid, ap_security, ap_password, timeout)) { #ifdef CC3000_DEBUG DEBUGPRINTLN(PSTR("Error: Could not connect to AP!")); #endif } // Собираем сведения о соединении и печатаем IP-адрес if(!wifi.getConnectionInfo(connection_info) ) { #ifdef CC3000_DEBUG DEBUGPRINTLN(PSTR("Error: Could not obtain connection details")); #endif return; } else { #ifdef CC3000_DEBUG DEBUGPRINT(PSTR("IP Address: ")); printIPAddr(connection_info.ip_address); #endif } pin_mode(SERVO_PIN_X, OUTPUT); // declare the LED's pin as output pin_mode(SERVO_PIN_Y, OUTPUT); // declare the LED's pin as output servo_x.attach(SERVO_PIN_X); servo_y.attach(SERVO_PIN_Y); // center servos servo_x.write(SERVO_CENTER_X); servo_y.write(SERVO_CENTER_Y); _delay_ms(200); } void loop() { } Итоговый результат Вариант реализации устройства по отслеживанию и распознаванию лиц на Ардуино смотрите в видео ниже.
На этом всё. Хороших вам изобретений. Источник: arduinoplus.ru Комментарии: |
|