RSS блога
Подписка
HLK-TX510 - платформа для распознавания лиц
- Цена: 33,5 $ + 4.8 $ доставка
- Перейти в магазин
Системами распознавания лиц в наше время никого не удивить, они используются в мобильных устройствах, для защиты от различных объектов от несанкционированного проникновения или поиска преступников в толпе людей. Алгоритмы распознавания прошли довольно долгий путь развития и совершенствования. Если в начале для реализации подобных функций требовались значительные вычислительные мощности, то в настоящее время с этим справится любой смартфон и более того даже микроконтроллеры. Я рассказывал о платформах машинного зрения таких как OpenMV или Maixduino, они способны реализовать различные функции распознавания и идентификации объектов, в том числе они могут выполнять операции по распознаванию лиц. Но работа с ними требует некоторых навыков программирования и обучения моделей нейронных сетей. В этом обзоре я хочу рассказать о платформе HLK-TX510 от компании Hi-Link для распознавания лиц, которая является практически готовым устройством для использования в конечном продукте и требует минимальных усилий по разработке для ее интеграции.
Алгоритмы распознавания построены на использовании специально обученных нейросетей. При этом распознавание лиц довольно трудоемкий процесс и включает в себя несколько последовательных операций.
Во-первых необходимо определить присутствует ли в кадре лицо человека и выделить область изображения, которая ему соответствует. Эту задачу можно решить с помощью нейросети или с использованием специальных алгоритмов обработки – каскада Хаара.
Если лицо найдено в кадре, необходимо выделить ключевые точки, которых может быть достаточно много. Эту задачу решают специально обученные нейроны сети.
На следующем этапе лицо должно быть выровнено.
Далее рассчитываются параметры, описывающие данное лицо и представляющие собой расстояния между ключевыми точками. Полученный набор значений формирует так называемый вектор.
Задача идентификации сводится к сравнению векторов лица в кадре и сохраненного в памяти устройства, если разница небольшая можно сделать вывод, что это одно и то же лицо.
Немного о самой платформе. Она построена на базе процессора TX510 от компании Tsingmicro,
который имеет архитектуру ядра RISC32 и который содержит основной контроллер CK804 и вспомогательный – CK805, производительность процессора составляет 1 Терафлопс или 10 в 12 степени операций с плавающей запятой в секунду. Процессор работает на частоте 400 МГц, он имеет встроенную оперативную память объемом 64 Мб и флеш-память объемом 16 Мб. Более подробной информации о контроллере мне найти не удалось.
Работает платформа под управлением операционной системы RTOS. В памяти платформы может храниться информация о 1000 лицах.
Благодаря бинокулярной камере систему не удастся обмануть с помощью фото или видео. Для работы в условиях низкой освещенности установлена ИК-подсветка и заполняющая вспышка. Напряжение питания составляет 5 в, максимальное потребление 1 А. На платформе выведены интерфейсы UART, USB, MIPI, I2C. Время старта составляет не более 1 секунды, среднее время распознавания не более 600 мс.
На задней стороне установлены 3 кнопки: сброса, добавления лица и распознавания.
Изображение с камеры выводится на дисплей диагональю 2,8 дюйма с разрешением 480*640 пикселей, расположенный на передней стороне платформы. Размер самой платы 96 на 64 мм.
На основной плате непосредственно установлен управляющий модуль, который можно приобрести отдельно для разработки собственных устройств. Модуль имеет размеры 31 на 31 мм, по его краю расположено 112 контактов с шагом 1 мм. Схемы распиновки модуля нет.
На плате установлено 2 USB-C разъема, один для питания и управления, второй, очевидно, только для питания. В качестве USB-UART используется CH340, скорость обмена данными по умолчанию составляет 115200 кбод/с.
На плате выведено несколько интерфейсов UART, и я не нашел в документации описания, какой из них отвечает за передачу команд и ответ от контроллера. С помощью логического анализатора, я установил, что это интерфейс, который обозначен как UART1.
Все команды подробно описаны в даташите. Есть возможность управлять хранилищем: а именно добавлять или удалять лица, управлять дисплеем и вспышкой, задавать параметры uart.
Чтобы добавить пользователя в базу необходимо нажать на кнопку 1. Чтобы идентифицировать пользователя – на кнопку 2, при этом в верхнем левом углу появится идентификатор пользователя или сообщении об ошибке на китайском языке. Записанные в базу лица сохраняются в энергонезависимой памяти.
Платформа уверенно идентифицирует пользователя в очках и без, но наличие головного убора затрудняет идентификацию или делает ее невозможной. Также системе не удается распознать лицо при значительном наклоне головы.При этом появляется сообщение об ошибке: «угол наклона головы слишком большой». Скорость распознавания изменяется от 250 до 600 миллисекунд и увеличивается при плохом освещении или удалении от камеры. Распознавание работает при нахождении от камеры на расстоянии в диапазоне примерно от 20 см до 1 м.
Попытки обмануть систему с помощью фото оказались безуспешными. Если верить описанию, её не удастся обмануть и при использовании маски, но проверить это нет возможности.
Если закрыть правую камеру, появляется сообщение об ошибке: распознавание не удалось, лицо не обнаружено. Но, если закрыть левую, изображение с которой выводится на дисплей, распознавание удается, но, как мне показалось, за чуть большее время.
Я подключил платформу к ардуино по следующей схеме, следует учитывать, что платформа имеет достаточно высокое энергопотребление и её необходимо питать от внешнего источника питания 5В.
Команда на распознавание состоит из 8 байт, ответ содержит 12 байт и включает заголовок, идентификатор команды и ответа, результат распознавания, идентификатор распознанного лица в случае успешного распознавания или код ошибки, а также контрольную сумму.
Для начала я набросал небольшой код, который с периодичность в 5 секунд отправляет на модуль команду на распознавание и выводит в ком-порт ответ от платформы. Убедившись в работоспособности платформы, я добавил в код срабатывание при нажатии на кнопку и управление электрозамком через мосфет при успешной идентификации. Схема подключения выглядит следующим образом.
Я пока не придумал, где мне использовать этот замок, поэтому корпуса нет. Замок можно модифицировать, добавив датчик присутствия, например, рассмотренный ранее HLK-LD2410, который будет включать дисплей при появлении человека на заданном расстоянии, а в остальное время дисплей будет выключен. Код проекта.
Наглядно работа платформы показана на видео
Итак, можно констатировать, что все заявленные характеристики платформы соответствуют действительности. Платформа работает без доступа к сети интернет, поэтому за сохранность своих биометрических данных можно не переживать. Без особых затрат её можно использовать в системах контроля доступа на объектах некритичной инфраструктуры.
Из минусов стоит отметить документацию, она в принципе достаточна для начала работы, хотя пришлось искать UART отвечающий за обмен данными, и очевидно, что некоторые возможности не описаны, так как на плате есть множество выводов, которые не задействованы.
Благодарю за внимание!
Алгоритмы распознавания построены на использовании специально обученных нейросетей. При этом распознавание лиц довольно трудоемкий процесс и включает в себя несколько последовательных операций.
Во-первых необходимо определить присутствует ли в кадре лицо человека и выделить область изображения, которая ему соответствует. Эту задачу можно решить с помощью нейросети или с использованием специальных алгоритмов обработки – каскада Хаара.
Если лицо найдено в кадре, необходимо выделить ключевые точки, которых может быть достаточно много. Эту задачу решают специально обученные нейроны сети.
На следующем этапе лицо должно быть выровнено.
Далее рассчитываются параметры, описывающие данное лицо и представляющие собой расстояния между ключевыми точками. Полученный набор значений формирует так называемый вектор.
Задача идентификации сводится к сравнению векторов лица в кадре и сохраненного в памяти устройства, если разница небольшая можно сделать вывод, что это одно и то же лицо.
Немного о самой платформе. Она построена на базе процессора TX510 от компании Tsingmicro,
который имеет архитектуру ядра RISC32 и который содержит основной контроллер CK804 и вспомогательный – CK805, производительность процессора составляет 1 Терафлопс или 10 в 12 степени операций с плавающей запятой в секунду. Процессор работает на частоте 400 МГц, он имеет встроенную оперативную память объемом 64 Мб и флеш-память объемом 16 Мб. Более подробной информации о контроллере мне найти не удалось.
Работает платформа под управлением операционной системы RTOS. В памяти платформы может храниться информация о 1000 лицах.
Благодаря бинокулярной камере систему не удастся обмануть с помощью фото или видео. Для работы в условиях низкой освещенности установлена ИК-подсветка и заполняющая вспышка. Напряжение питания составляет 5 в, максимальное потребление 1 А. На платформе выведены интерфейсы UART, USB, MIPI, I2C. Время старта составляет не более 1 секунды, среднее время распознавания не более 600 мс.
На задней стороне установлены 3 кнопки: сброса, добавления лица и распознавания.
Изображение с камеры выводится на дисплей диагональю 2,8 дюйма с разрешением 480*640 пикселей, расположенный на передней стороне платформы. Размер самой платы 96 на 64 мм.
На основной плате непосредственно установлен управляющий модуль, который можно приобрести отдельно для разработки собственных устройств. Модуль имеет размеры 31 на 31 мм, по его краю расположено 112 контактов с шагом 1 мм. Схемы распиновки модуля нет.
На плате установлено 2 USB-C разъема, один для питания и управления, второй, очевидно, только для питания. В качестве USB-UART используется CH340, скорость обмена данными по умолчанию составляет 115200 кбод/с.
На плате выведено несколько интерфейсов UART, и я не нашел в документации описания, какой из них отвечает за передачу команд и ответ от контроллера. С помощью логического анализатора, я установил, что это интерфейс, который обозначен как UART1.
Все команды подробно описаны в даташите. Есть возможность управлять хранилищем: а именно добавлять или удалять лица, управлять дисплеем и вспышкой, задавать параметры uart.
Чтобы добавить пользователя в базу необходимо нажать на кнопку 1. Чтобы идентифицировать пользователя – на кнопку 2, при этом в верхнем левом углу появится идентификатор пользователя или сообщении об ошибке на китайском языке. Записанные в базу лица сохраняются в энергонезависимой памяти.
Платформа уверенно идентифицирует пользователя в очках и без, но наличие головного убора затрудняет идентификацию или делает ее невозможной. Также системе не удается распознать лицо при значительном наклоне головы.При этом появляется сообщение об ошибке: «угол наклона головы слишком большой». Скорость распознавания изменяется от 250 до 600 миллисекунд и увеличивается при плохом освещении или удалении от камеры. Распознавание работает при нахождении от камеры на расстоянии в диапазоне примерно от 20 см до 1 м.
Попытки обмануть систему с помощью фото оказались безуспешными. Если верить описанию, её не удастся обмануть и при использовании маски, но проверить это нет возможности.
Если закрыть правую камеру, появляется сообщение об ошибке: распознавание не удалось, лицо не обнаружено. Но, если закрыть левую, изображение с которой выводится на дисплей, распознавание удается, но, как мне показалось, за чуть большее время.
Я подключил платформу к ардуино по следующей схеме, следует учитывать, что платформа имеет достаточно высокое энергопотребление и её необходимо питать от внешнего источника питания 5В.
Команда на распознавание состоит из 8 байт, ответ содержит 12 байт и включает заголовок, идентификатор команды и ответа, результат распознавания, идентификатор распознанного лица в случае успешного распознавания или код ошибки, а также контрольную сумму.
Для начала я набросал небольшой код, который с периодичность в 5 секунд отправляет на модуль команду на распознавание и выводит в ком-порт ответ от платформы. Убедившись в работоспособности платформы, я добавил в код срабатывание при нажатии на кнопку и управление электрозамком через мосфет при успешной идентификации. Схема подключения выглядит следующим образом.
Я пока не придумал, где мне использовать этот замок, поэтому корпуса нет. Замок можно модифицировать, добавив датчик присутствия, например, рассмотренный ранее HLK-LD2410, который будет включать дисплей при появлении человека на заданном расстоянии, а в остальное время дисплей будет выключен. Код проекта.
Наглядно работа платформы показана на видео
Итак, можно констатировать, что все заявленные характеристики платформы соответствуют действительности. Платформа работает без доступа к сети интернет, поэтому за сохранность своих биометрических данных можно не переживать. Без особых затрат её можно использовать в системах контроля доступа на объектах некритичной инфраструктуры.
Из минусов стоит отметить документацию, она в принципе достаточна для начала работы, хотя пришлось искать UART отвечающий за обмен данными, и очевидно, что некоторые возможности не описаны, так как на плате есть множество выводов, которые не задействованы.
Благодарю за внимание!
Самые обсуждаемые обзоры
+37 |
1191
41
|
+39 |
1818
50
|
+37 |
1200
27
|
проблемой были маски пару лет назад, но хорошие системы и этому обучили, с достаточным процентом распознавания.
Никакого режима ожидания нет?
1.5 секунды конечно не так и много, но все же…
Практически на всех дисплеях сейчас стоят стандартные диоды по 20 мА на один.
или мне показалось?
Когда начал читать, уже размечтался, что будет что-то стоящее. Почему не прилепить изернет, хотя бы флешку какую, чтоб оно работало и просто сохраняло любые лица в себя, а потом просто зайти по сети, создать аккаунты и привязать к ним захваченные лица? Какой-нибудь API, чтоб могло слать оповещения?
Не..., тут по ценности не выше того же ESP32CAM, хотя, очевидно, что распозновать будет лучше, работать быстрее, но какой в этом смысл, если это никуда не интегрировать?
Да как он посмел только! И куда мы катимся…
Я выразил своё мнение по поводу целесообразности покупки такого устройства. Тем более автор его не покупал. Я ссылался на конкретных лиц? Я автору или вам предъяву кинул, что вы купили ерунду?
Сходите к психологу. Возьмите отпуск. Выспитесь.
Есть же и управление командами «по сети».
«Registration and Identification of Users
Query the number of UserIDs
Delete a UserID
Clear all the registered faces
Query the TX510 version
Baud rate change
Reboot TX510»
Функции добавления по фото быть не может ввиду особенностей распознования по СТЕРЕОкамере. фото нужно тогда загружать сделаное аналогичной стереокамерой.
Иначе распознавать по загруженному «плоскому» фото будет и в модуле распознания ложно срабатывать на поднесение фото.
стоит ли оно того?
вот с чем я категорически согласен, что не хватает импорта-экспорта базы распознаного. тогда привязывать можно из кабинета в удаленные контроллеры «доступа» или прочих функций.
надеемся что найдут и эту функцию. или добавят в следующих модулях-прошивках
Не завершенная железка.
Это понятно, но каждое ковыряние, тем более вещи за немаленькие деньги, должно иметь практическое применение. А тут оно какое?
Люди уже пилят потихоньку: github.com/Chreece/FaceRec_ESPHome
У меня в доме имеется «умный домофон» — то есть поток видео с камеры. было бы прикольно его завернуть в подобное устройство (открывать домофон своим лицом, например)
В смысле, бекапировать и заливать.
Глупо будет с понтом сколхозить устройство, познакомить его со всеми лицами на объекте а потом обкакаться из-за того, что модуль сгорел по какой-нибудь глупости.
ссылка
цена 3 074,70 ₽
Платка там была по проще, с моно камерой.
Думаю, с фото кошки, собака заморачиваться не будет, просто возьмёт ее за шкирку, и предъявит кормушке. :)
если еда стоит на полу -игнорировала