Распознавание лиц (off-line). Демонстрационная база.

17.07.18

Разработка - Разработка внешних компонент

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

Скачать файлы

Наименование Файл Версия Размер
Распознавание лиц (off-line). Демонстрационная база.
.dt 103,55Mb
87
.dt 103,55Mb 87 Скачать

Что это?

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

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

В настоящее время, технологиями компьютерного зрения пользуются крупные компании, и службы безопасности. Чем это им помогает? Все довольно просто, например: Крупные сетевые магазины использует распознавание лиц для предотвращения краж. Как? Один раз совершено правонарушение - ну да, с этим ничего не поделать. Не уследили. Но что мы можем сделать что бы предотвратить? Системе покажем фотографию лица с камеры наблюдения и система следующий раз нам сообщит о нахождении в торговом зале похожего лица.

А если не воруют? Можно узнавать постоянных клиентов, информировать сотрудников в зале, например, присылать им сообщение в мессенджер "В зале постоянный клиент: Мария, последний раз был 18 мая, совершил покупку на сумму 7900, предпочитает зеленый цвет, размер одежды 42, обуви 37". Конечно, если выдать эту информацию клиенту сразу на входе - клиент, скорее всего, испугается. Но, это огромное поле для творчества сотрудников в зале.

Компьютерное зрение помогает сетям анализировать планограмму (размещение товаров на полке), анализировать рекламные конструкции на улицах города, распознавать номер автомобилей и многое другое - то, что сделать "вручную" дорого/сложно/долго и т. д. Например, в некоторых кинотеатрах находятся системы распознавания эмоций, и заказчик услуг по анализу получает данные о том, какие эмоции испытывал человек во время просмотра фильма. Звучит жутковато, за нами следят..., но в современном мире происходит много вещей, о которых мы даже не догадываемся.

Как это?

Нейросети. Сейчас этот раздел машинного обучения справляется с задачами подобного рода лучше всего. Нейросети в 1С ? Да, уже были на Инфостарте примеры реализации сетей внутри 1С, использования внешних сервисов распознавания лиц. При большом объеме запросов внешние сервисы - это не очень дешево, нет возможности дополнительной обработки или расчетов с использованием других алгоритмов.

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

Этапы:

  • Инициализация

В данном случае, библиотека dlib выступает как инструмент. Ей нужны входные данные для обработки. Входные данные - это математические модели, обученные на большом количестве изображений и изображение для анализа. В базе модели находятся в общих макетах, извлекаются при первом использовании, поэтому первый запуск может быть долгим. Математические модели взяты обученные командой dlib. Но, если у вас есть множество примеров для обучения, то можно обучить сеть работать именно с Вашими данными, что позволит повысить точность. 

  • Определение местоположения лица

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

  • Извлечение данных лица

На данном этапе происходит практически магия. Упрощенно: каждый пиксель кодируется позицией x,y и цветом r, g, b, Из набора этих данных вычисляется представление (вектор, эмбединг) из 128 чисел с плавающей точкой в диапазоне -1...1. Эти данные можем сохранить и в дальнейшем использовать. Нам понадобиться математика...

  • Поиск в базе данных

Сохраняем в базе данных набор вычисленных данных для нашей коллекции известных фотографий и лиц. Вычисляем вектор для исследуемого изображения. 

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

Для вычисления прекрасно подходит СКД, в которой реализованы функции возведения в степень и квадратного корня, отборы на группировки и сортировки. 

Вычисление расстояния между векторами представления реализовано в представленной базе в общем макете.

Попробовать

  1. Скачиваем и разворачиваем базу. Инструкции в документации к платформе)
  2. Регистрируем лица в базе документом регистрации лиц. Векторы лиц рассчитываются при проведении.
  3. На рабочем столе демонстрационного пример выбираем изображение для анализа
  4. Получаем результат. Дистанция - это то, на сколько отличаются лицо на анализируемом изображении от тех, что зарегистрированы в базе.

0 - один и тот же человек, 1 - разные люди. 

В описании к используемым моделям фигурирует цифра 0.6. При указании такого порога сеть распознает с 98% точностью.

Заключение

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

Конечно, сама библиотека dlib имеет множество настроек и параметров, в том числе поддержку GPU, поэтому, оптимизация алгоритмов происходит под конкретную задачу. Например, можно указать параметр - сколько раз "покрутить" изображение, для расчета данных лица, что улучшит точность распознавания. Допустим, мы зарегистрировали в базе фотографию человека анфас. Но, у нас на входе в помещение стоит камера сбоку, мы не может поставить ее в середине прохода, поэтому фотографии лиц получаются немного сбоку. Если на лице выделить 3 точки: 2 глаза и кончик носа и посчитать расстояние между ними в фотографии, зарегистрированной в базе. Примерно равное расстояние. А если фото сбоку - пропорции расстояния изменяются. Поэтому, если выполнить 2D вращение влево и вправо и посчитать среднее значения расстояния, то оно будет более близкое к значению расстояния на исходной фотографии, чем расстояние, посчитанное с одной фотографии сбоку. А если точек не 3 а 70? погрешность уменьшается и качество распознавания увеличивается.

В конфигурации установлен режим совместимости с 8.3.5, можно развернуть на этой платформе и более поздних. Код конфигурации полностью открыт. 

распознавание лиц face recognition

См. также

SALE! 30%

Распознавание и загрузка сканов в 1С "одним нажатием": УПД, ТОРГ-12, накладные, счета, номенклатура, заказы и т.д.

Загрузка и выгрузка в Excel Документооборот и делопроизводство (СЭД) Учет документов Распознавание документов и образов Управляемые формы 1С:Комплексная автоматизация 1.х 1С:Бухгалтерия 2.0 1С:Управление торговлей 10 1С:Розница 2 1С:Управление производственным предприятием 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Управление холдингом 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 Бухгалтерский учет Управленческий учет Платные (руб)

Универсальная программа для распознавания ЛЮБЫХ СКАНОВ ИЛИ ФОТО ТОВАРНЫХ ДОКУМЕНТОВ в 1С. Не требует указания параметров и предварительной настройки. Просто выбираете файл (PDF, JPG, DOC, XLS, HTML и т.д.) выбираете документ 1С и нажимаете кнопку "Распознать и загрузить".

6000 5520 руб.

04.06.2019    101363    296    173    

312

Распознавание номеров автомашин с ip - камер, видео, фото

Распознавание документов и образов Периферийные устройства Автомобили, автосервисы Россия Платные (руб)

Программа считывает кадры с ip-камер (http - запрос к камере), видео, фото (источники кадров (нет ограничения на их количество) настраивается в конфигурационном файле), находит и распознает номера автомашин и сохраняет в базу db, с сохранением фото номера и автомашины, а также времени детекции.

20400 руб.

31.05.2023    3800    2    1    

3

Медиадисплей. Рекламный информационный монитор для покупателя.

Разработка внешних компонент POS терминал Рабочее место Розничная торговля Платформа 1С v8.3 1С:Комплексная автоматизация 1.х 1С:Управление торговлей 10 1С:Розница 2 1С:Управление нашей фирмой 1.6 1С:ERP Управление предприятием 2 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Розничная и сетевая торговля (FMCG) Рестораны, кафе и фаст-фуд Реклама, PR и маркетинг Управленческий учет Платные (руб)

Монитор покупателя может отображать текущую покупку на кассовом месте, показывать видеорекламу, баннеры, во время простоя разворачивать рекламу на весь экран. Можно использовать в качестве графического меню-борда в кафе и видеовывески. Управление выводом на телевизор через hdmi-приставку на базе Windows или Android. В качестве устройства отображения можно использовать Android-планшеты, фоторамки с Android, монитор любого Windows-компьютера, доступного по сети. Настраивается ЛЮБОЙ ДИЗАЙН экрана!

16800 руб.

30.05.2017    52098    34    69    

43

Внешняя компонента для сканирования (замена TWAIN-компоненты БСП) (Native Win 32/64)

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Внешняя компонента позволяет работать c TWAIN-совместимым оборудованием (сканерами, камерами) . Полностью совместима со стандартной TWAIN-компонентой из БСП и может применяться как ее замена без изменения вызовов, при этом может работать с 64-разрядной платформой, а так же имеет расширенную функциональность, например, сохранение результата непосредственно в PDF без использования сторонних утилит. Прекрасно работает на сервере, тонком клиенте и веб-клиенте (проверена работа в браузерах Google Chrome, Mozilla Firefox и Microsoft Internet Explorer).

2400 руб.

12.05.2020    26242    131    99    

83

Внешняя компонента для подключения 1С к телефонии Asterisk

Разработка внешних компонент Телефония, SIP Платформа 1С v8.3 Конфигурации 1cv8 Россия Платные (руб)

Внешняя компонента выполнена по технологии Native API для 1С 8.х, обеспечивает доступ к программным АТС Asterisk (FreePBX, Elastix) через AMI интерфейс. Через него можно управлять многими функциями Asterisk (определение номеров, перевод звонков, набор телефона и т. д.)

2400 руб.

04.05.2018    44974    117    64    

60

Внешняя компонента печати PDF (Native Win 32/64)

Разработка внешних компонент Платформа 1С v8.3 Конфигурации 1cv8 Платные (руб)

Внешняя компонента позволяет печатать PDF файлы непосредственно из 1С, не используя при этом сторонних программ. Прекрасно работает на сервере, тонком клиенте и веб-клиенте. Основана на проекте PDFium из состава проекта Chromium/Chrome

1500 руб.

17.09.2018    35075    104    123    

111

SALE! 30%

Когда много сканов: Автоматическое прикрепление сканированных документов

Учет документов Распознавание документов и образов Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Платные (руб)

Обработка экономит время, распознавая и прикрепляя сканированные оригиналы документов к документам в 1С. Поддерживаются штрихкоды, QR-коды, отсканированные PDF документы без штрихкодов, полученные в результате потокового сканирования PDF документы, сформированные в ЭДО PDF документы.

6480 4536 руб.

23.12.2021    12082    7    24    

7

Мастер создания внешних компонент 1С (технология COM) для DELPHI 6/7/8/2005/2006/2007/2008/2010/XE/XE2/XE3

Разработка внешних компонент Платформа 1С v8.3 Платные (руб)

Средство для сверхбыстрой разработки внешних компонент 1С:Предприятия 7.7 и 8 по технологии COM на всех версиях DELPHI, начиная с 6.

2000 руб.

28.03.2013    53997    35    14    

68
Отзывы
1. olegtymko 889 18.07.18 07:32 Сейчас в теме
Однозначно плюс! Появился интерес покопаться на досуге)
wowik; igormiro; Hamsik; TreeDogNight; CSiER; pbabincev; DrAku1a; Plotks2017; Vanch90; +9 Ответить
Остальные комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. olegtymko 889 18.07.18 07:32 Сейчас в теме
Однозначно плюс! Появился интерес покопаться на досуге)
wowik; igormiro; Hamsik; TreeDogNight; CSiER; pbabincev; DrAku1a; Plotks2017; Vanch90; +9 Ответить
2. RustIG 1351 18.07.18 08:43 Сейчас в теме
(0) видео приложить можете? интересно посмотреть.
7. nomadon 367 18.07.18 09:25 Сейчас в теме
(2) видео чего? нажимания кнопки? результат на скринах видно, регистрация и поиск в базе, для остальных экспериментов и анализа кода лучше скачать и развернуть у себя
9. RustIG 1351 18.07.18 09:30 Сейчас в теме
(7) ладно-ладно) привычка нашего времени - просмотреть "побырому" ютуб-версию.
вопросы:
1) с какой скоростью распознается ваша фотография в примере?
2) в каком формате (размерах) надо загружать фотки?
3) подключение к интернету обязательно?
maksa2005; +1 Ответить
10. nomadon 367 18.07.18 09:37 Сейчас в теме
(9) 1. все сильно зависит от железа.в в примере файловая база в месте в процедурой инициализации, на полу ssd, без GPU - несколько секунд. Вообще на практике удавалось достичь скорости распознавания 500 изображений в минуту без GPU (но это отдельная история - где взять столько лиц)))
2. Библиотека dlib работает с поддержкой JPG PNG, конечно чем лучше фотка тем лучше результат, минимум 40Х40 пикселей область с лицом.
3. В заголовке указано offline, т.е. полностью автономно может работать, есть еще варианты других решений, где скорость и точно повыше, можно встраивать в железки, видеокамеры, RaspberryPi и т.д.. Как говориться, все что угодно за ваши деньги)
Hexed; RustIG; +2 Ответить
11. RustIG 1351 18.07.18 09:49 Сейчас в теме
(10) спасибо за публикацию!
12. nomadon 367 18.07.18 09:51 Сейчас в теме
3. agent00mouse 253 18.07.18 08:59 Сейчас в теме
Конфигурацию попилить это конечно хорошо. но дайте лучше исходники ВК. А мы уж под 64 бита и под себя оптимизируем. За реализацию идеи +1.
maksa2005; izidakg; talych; autobuh; pbabincev; Ziggurat; Infactum; +7 Ответить
4. RustIG 1351 18.07.18 09:06 Сейчас в теме
(0)
Инструкции в документации к платформе

это как понять?
5. nomadon 367 18.07.18 09:14 Сейчас в теме
(4) порядок выгрузки и загрузки баз данных в dt
6. RustIG 1351 18.07.18 09:17 Сейчас в теме
(5) так это все знают на ИС.
8. nomadon 367 18.07.18 09:27 Сейчас в теме
(6) не все. здесь не только технари, еще есть поисковые системы, которыми тоже не только технари пользуются
15. echo77 1868 18.07.18 10:25 Сейчас в теме
13. Vanch90 18.07.18 10:24 Сейчас в теме
Какие ограничения по системе?)
17. nomadon 367 18.07.18 11:15 Сейчас в теме
(13) Это демонстрационная версия, ограничения в ней только по производительности и разрядности. Обычно внедряемое решение более оптимизировано и тесно интегрировано с существующей системой, ведь главное не распознать, а корректно использовать информацию в дальнейшем.
Например, если розница, можно дополнить счетчики подсчета посетителей, и считать насколько часто клиент возвращается, или если он целый день заходит в магазин - наверное, что-то хочет купить, но никак не решается.
14. chuvak9999 18.07.18 10:24 Сейчас в теме
А как программа узнает что именно этот покупатель купил какие-то товары или своровал? ))
18. nomadon 367 18.07.18 11:17 Сейчас в теме
(14) При выдаче дисконтных карт или прочей регистрации клиентов можно привязать клиента к изображению, а по воровству - запись с камер обрабатывает служба безопасности, ну и предопределенный клиент с капсом "ВНИМАНИЕ ОПАСНОСТЬ" )
maksa2005; autobuh; +2 Ответить
16. chuvak9999 18.07.18 10:26 Сейчас в теме
Если покупатель бороду отрастил или одел капюшон - это не помеха для системы?
19. nomadon 367 18.07.18 11:19 Сейчас в теме
(16) это не рентген :) через одежду не видит. Если человек прячется от камер умышленно - это работа СБ) но если засветился пусть даже на скрытую камеру - маячок. Нужно активнее отработать.
20. nomadon 367 18.07.18 11:21 Сейчас в теме
(16) по бороде и видоизменению - отдельная тема. Смотря как обучать систему, она ведь не самостоятельный интеллект, а компьютер с заложенным алгоритмом.
21. chuvak9999 18.07.18 11:29 Сейчас в теме
(20) Где то прочитал что соотношение глаз и кончика носа это идеальный УИД для любого человека. Или система для каждого ракурса вырабатывает свой УИД?
23. nomadon 367 18.07.18 11:34 Сейчас в теме
(21) если замерять с микрометром на стенде (стапеле) лицо - то возможно, но на фото это расстояние посчитать сложновато, поэтому системами используются множество контрольных точек, в библиотеках можно получать доступ к этим точкам и отдельно отрисовать области глаз, губ и т. д.
22. nomadon 367 18.07.18 11:31 Сейчас в теме
Можно еще использовать как аналог FaceID для 1с. Для тех кто любит отходить от рабочего места не блокируя компьютер или 1с, если это имеет значение в конкретном случает. Отправлять на сервер снимки с встроенной камеры ноутбука или монитора, и, если нет идентификации какой-то промежуток времени - блокировать / закрывать / уведомлять
24. protexprotex 113 18.07.18 12:26 Сейчас в теме
Добрый день. Система устойчива к поворотам головы в горизонтальной / вертикальной плоскости? - насколько падает вероятность распознавания при повороте более чем на 30 градусов. Также детекция лица на фото - с использованием виола - джонса? - если так, то при повороте головы более 30 градусов вероятность детекции лица падает очень сильно. Также с измененим освещенности как влияет?
25. nomadon 367 18.07.18 12:40 Сейчас в теме
(24) в заключении немного упомянул об этом, параметр про jitter, позволяет использовать встроенные средства трансформации изображения, но можно и самостоятельно поработать. Нет одного конкретного решения на все случаи жизни, да, действительно, при повороте головы, конечно, падает точность, но какую задачу Вы решаете? Распознаете повернутые головы? Если анализировать видеопоток - то этот параметр будет иметь меньшее значение, потому что, рано или поздно, голова повернется (или ей помогут повернуться вспышкой света или звуком).
В любом случае, отталкиваться нужно от решаемых задач, есть примеры разработок нейросетей, который до 50% поворота головы прекрасно справляются с задачей.
Если показать нейросети фото, повернутое на 90% градусов, она скорее всего, его не узнает. Для этого ее нужно обучить смотреть так же повернутые фото, но зачем увеличивать объемы и производительность в несколько раз, обучая разворотам в 4 стороны? Может быть стоит повернуть камеру? Или изображение предварительно повернуть, что менее затратно по ресурсам? Или воспользоваться менее ресурсоемкими алгоритмами машинного обучения для определения факта повернутости входного изображения?
Автомобильные регистрационные знаки тоже можно вертикально ставить, однако этого обычно не происходит, и системы работают с допустимыми углами поворота, если, вдруг, это "жесткая" система, например, валидация доступа, тогда вообще нужно запретить не точное узнавание, "Встаньте, пожалуйста, как в паспорте" )
С освещенностью чуть получше, логичнее всего работать не с цветными фото, что бы летний загар не сказался на проходной, библиотека это учитывает и преобразовывает). По яркости - результат, конечно, будет отличаться, но не значительно, ведь считаются значения пикселей друг относительно друга, что касается засветов - да, это плохо. Из темной фотки можно сделать нормальную, из засвеченной - проблематично.
28. protexprotex 113 18.07.18 16:34 Сейчас в теме
(25) Нет, это был чисто академический вопрос чтобы понять какие методы использовались - т.к. сам работаю в этом направлении достаточно плотно. Например, тут:
https://infostart.ru/video/w630732/
или тут:
https://infostart.ru/video/w267692/
или тут:
https://infostart.ru/video/w299356/
и полно еще разработок.
Причем не использую внешние компоненты. Пишу все сам с нуля.
Так что тема очень близка.
26. alexander-pro 18.07.18 13:39 Сейчас в теме
Спасибо за публикацию, но ошибки в тексте лучше исправить. Такие перлы, как "бизнес стремиться за событиями" и "что-бы попробовать" рядом с описанием технологии нейросетей заставляют сомневаться в авторе.
pbabincev; +1 4 Ответить
27. nomadon 367 18.07.18 13:44 Сейчас в теме
(26)
Такие перлы, как "бизнес стремиться за событиями" и "что-бы попробовать" рядом с описанием технологии нейросетей заставляют сомневаться в авторе.

Спасибо, удалил.
29. F1215 21.07.18 08:37 Сейчас в теме
Я используют CRM Битрикс 24 тариф CRM с Face- трекером связанный с 1С
В чем фишка данной базы я откровенно не понял
30. nomadon 367 21.07.18 21:49 Сейчас в теме
(29)Использовать системы и разрабатывать - это разные вещи
31. nomadon 367 23.07.18 09:08 Сейчас в теме
(29) там можно идентифицировать конкретного человека? Прям персональную скидку предоставить тогда, когда клиент заходит в магазин?
32. F1215 23.07.18 16:44 Сейчас в теме
33. amd1986 25.09.18 10:54 Сейчас в теме
Битрикс такое полтора года назад делал в 1С-Трекере. Тоже с внешней компонентой, в которой был затянут урезанный хром, Единственно что - не офлайн и не бесплатно.
36. nomadon 367 25.09.18 14:23 Сейчас в теме
(33) технологий и сервисов на самом деле очень много уже..
38. amd1986 26.09.18 11:23 Сейчас в теме
(36) сейчас уже да. Но когда выходил модуль - распознование мало где использовали. По сути это был первый сервис для 1С. К некоторым клиентам даже приходили с телевидения(основной сетки) и снимали репортаж как это работает в магазинах.
34. AlX0id 25.09.18 12:50 Сейчас в теме
На 64-битной платформе работать не захотело - ошибка подключения компоненты. В 32-бит - работает.
35. nomadon 367 25.09.18 14:22 Сейчас в теме
(34) об этом написано в описании и комментариях, x64 вроде как для более детальной разработки платного решения
37. AlX0id 25.09.18 14:39 Сейчас в теме
(35)
Ну значит, чукча не читатель ) Так, написал, можт снимет вопросы у кого.
39. 🅵🅾️🆇 522 28.09.18 12:02 Сейчас в теме
Вопрос только один: что за библиотеку взял за основу?)
40. nomadon 367 28.09.18 16:39 Сейчас в теме
(39) чукча не читатель) в тексте публикации об этом написано)
41. 🅵🅾️🆇 522 01.10.18 00:53 Сейчас в теме
42. catv 05.10.18 09:23 Сейчас в теме
Сразу же возникает вопрос за ПДн. Если человек давал письменное согласие на хранение его биометрических данных - это одно, в противном случае, даже если это вор, можно залететь по жалобе
Chizhik2020; +1 Ответить
43. nomadon 367 05.10.18 17:08 Сейчас в теме
(42) это не совсем биометрические данные, группы крови нет, даже цвета глаз и волос не хранится. Хранятся некие хеши, которые получаются путем визуальной оценки. Это равносильно тому, что Вы посмотрите на человека, запомните его, и поставите цифру 0.3832534, которую с ним ассоциируете. Эта цифра биометрические данные? На нее нужно давать письменное согласие? А вдруг у Вас в системе расчет кода справочника Клиенты основан на биометрических данных?
44. catv 05.10.18 22:16 Сейчас в теме
(43)
152-ФЗ Статья 11. Биометрические персональные данные
1. Сведения, которые характеризуют физиологические и биологические особенности человека, на основании которых можно установить его личность (биометрические персональные данные) и которые используются оператором для установления личности субъекта персональных данных...

В каком виде вы храните эти сведения - дело десятое, тем более, что вы их привязываете к конкретному лицу в базе
45. nomadon 367 07.10.18 09:59 Сейчас в теме
(44) к лицу привязано в демо базе, для оценки возможностей, да и устанавливать личность совсем не обязательно, дело не в идентификации личности
46. simuljakr 203 15.11.23 16:48 Сейчас в теме
Вроде работает. Но на определенной итерации выдало сообщение:

"Преобразование значения к типу Число не может быть выполнено"


В отладчике показывает вот это:

Скрин
47. simuljakr 203 15.11.23 16:48 Сейчас в теме
А если в базе будет например 10 тыс фотографий - насколько будет быстро работать ?
48. nomadon 367 16.11.23 08:08 Сейчас в теме
(47) есть более современные, производительные, точные решения, в т.ч. опенсорсные, которые показывают метрики на GPU извлечение данных из фото менее секунды (ембеддинг лица, пол, возраст, раса и т.д.), а так же для поиска по базе есть разные решения
из недавнего опыта: 7 млн лиц - извлечение несколько недель на слабеньком CPU, точный поиск - 2 минуты, не очень точный но приемлемый - пара секунд
50. simuljakr 203 16.11.23 10:18 Сейчас в теме
(48) Все-таки про 10 тысяч фотографий - можете ответить ?
Именно эта разработка использовалась для распознавания на подобных количествах?
Ее можно использовать в рабочей базе ? Или это все-же демо версия - непригодная для промышленной эксплуатации ?
51. nomadon 367 16.11.23 10:35 Сейчас в теме
(50) первоначально 10 тыс сохранить в базу будет не очень быстро, но потом, время поиска будет зависеть от производительности СУБД
simuljakr; +1 Ответить
49. simuljakr 203 16.11.23 10:14 Сейчас в теме
(48) Есть ли примеры таких систем в связке с 1С ?
Ваша разработка интересна именно тем, что это уже готовое решение для 1С...
А то, что есть много систем - хороших и разных - я догадываюсь ))
52. nomadon 367 16.11.23 10:36 Сейчас в теме
(49) это скорее рекламный пробник, обычно готовые решения имеют свои особенности уникальные, что требует индивидуальной разработки. Какую задачу Вы хотите решить?
53. simuljakr 203 16.11.23 11:31 Сейчас в теме
(52) Я хочу решить задачу идентификации покупателей в магазине по их лицу.
С целью отказа от использования пластиковых бонусных карт, идентификации по СМС и пр. устаревших способов...

В первый приход в магазин кассир фотографирует покупателя.
А при последующих посещениях система его уже узнает, и покупателю нет необходимости носить с собой пластиковую бонусную карту, подтверждать списание баллов при помощи СМС и пр....
54. nomadon 367 16.11.23 15:58 Сейчас в теме
(53) Точно не скажу, но сейчас вроде законодательство по использованию лиц в коммерческих целях несколько ужесточено. У 10 тыс. пользователей возьмете согласие?
лично мне библиотека dlib не очень нравится по точности, на больших количествах и при разных ракурсах и освещении точность не подошла, например, по запросу подошли вероятность 0.68 0.67 0.61, при этом верным вариантом была 0.61. Это потребует ручных действий от человека по идентификации.
Да и со временем когда в разное время будут накапливаться разные снимки разными устройствами - сложно определить тот порог, по которому считать угадывание.
Можно наверное поток снимать (несолько раз фотки делать разные) и по совокупности (мин макс или среднее) выбирать наиболее подходящего
55. simuljakr 203 16.11.23 17:17 Сейчас в теме
(54) Брать согласие или нет - не знаю. В любом случае кассир, перед тем как сфоткать покупателя, будет спрашивать у него разрешение - независимо от законодательства. Да и вообще - юридическая сторона вопроса - мне не интересна.

( Как неспециалисту в этой области - мне кажется тут нет "персональных данных" - ведь мы не просим у пользователя его реальное имя (не проверяем паспорт) - нам достаточно никнейм. А значит "персонализации" по лицам тут фактически не будет.)

А то, что касается невысокого качества распознавания при разных ракурсах - так я предполагаю распознавать не "в потоке покупателей" - а каждого конкретного покупателя - только в случае - когда нужно начислять или списать ему бонусы.
В этом случае кассир просит его "смотрите в камеру" - делает фотку - и фотка сравнивается с оригиналом... Таким образом - ракурс будет всегда примерно одинаковый, и даже расстояние до камеры примерно одно и то же....
56. simuljakr 203 16.11.23 17:21 Сейчас в теме
(54) Вчера тестировал программу таким способом:
Взял некоего знаменитого человека (у которого много фоток в открытом доступе), одну его фотку - загнал в вашу программу в качестве образца. А потом брал все подряд фотки этого человека из Яндекс картинок - и скармливал их вашей программе...
На два десятка фоток - не было ни одной ошибки распознавания !
57. simuljakr 203 16.11.23 17:26 Сейчас в теме
(54)
Да и со временем когда в разное время будут накапливаться разные снимки разными устройствами - сложно определить тот порог, по которому считать угадывание.


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