Применение математического аппарата контурного анализа для распознавания образов с web - камеры для 1С

Программирование - Внешние компоненты

Представлен видеоролик, а также демо - программа Identification.exe и 1C 8.1 (для теста). Реализован механизм сканирования видеоряда с web - камеры и занесения считанных кодов в документ. Для просмотра видеодемонстрации без скачивания можно перейти по ссылке - http://youtu.be/skEdJgKQ0h4

Данная демонстрационная версия программы предназначена для прямого сканирования изображения с web - камеры в реальном времени.  С помощью математического аппарата контурного анализа производится распознавания образов (в данном примере цифр) и занесения данных в 1С. С помощью данной программы имеетеся возможность распознавания символов, букв, цифр, образов: машин, самолетов, и т.д. Программа позволяет загружать свои шаблоны объектов и распознавать их вне зависимости от угла поворота, масштаба. Программа может быть применена для дистационного мониторинга движения объектов помеченных маркерами, и т.д. В следующей версии будет реализовано детектирование лица на изображении, распознавание и занесение в базу 1С. Для работы необходима web - камера (можно 4Tech). Программа реализована как COM exe - сервер. Все коды в 1С открыты. Для тестирования необходимо сразу запускать программу 1С. COM - сервер Identification.exe регистрируется в системе автоматически при первом запуске (необходимы права администратора). Для просмотра видеодемонстрации без скачивания можно перейти по ссылке - http://youtu.be/skEdJgKQ0h4

Для работы программы нужно зарегистрировать COM-exe - сервер: (под правами администратора) Regsvr32\Путь к каталогу\ImageIdentification.exe

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

Наименование Файл Версия Размер
Видео - демонстрация
.exe 200,13Mb
21.09.17
8
.exe 200,13Mb 8 Скачать
Программа и тестовая база (запакованная rar-ом)
.exe 1,38Mb
21.09.17
77
.exe 1,38Mb 77 Скачать

См. также

Комментарии
1. Григорьев Анатолий (ToJIuK) 26.03.14 08:15 Сейчас в теме
А можно видео в свободный доступ? А то из описания не очень понятно возможности.
3. Сергей Смирнов (protexprotex) 145 26.03.14 08:50 Сейчас в теме
(1) ToJIuK, Добрый день. Хотел выложить в свободный доступ - но там с форматом - не дают. Скиньте мне свою почту - скину само видео.
4. Сергей Смирнов (protexprotex) 145 26.03.14 09:23 Сейчас в теме
(1) ToJIuK, Можете просмотреть по адресу: http://youtu.be/skEdJgKQ0h4
2. Сергей Смирнов (protexprotex) 145 26.03.14 08:49 Сейчас в теме
Добрый день. Хотел выложить в свободный доступ - но там с форматом - не дают. Скиньте мне свою почту - скину само видео.
5. bulpi bulpi (bulpi) 117 26.03.14 14:10 Сейчас в теме
Офигительная штука. Дополнительный плюс за бесплатность!
6. Сергей Смирнов (protexprotex) 145 26.03.14 14:30 Сейчас в теме
(5) bulpi, Спасибо, работаем на благо клиентов :-)
7. Борис (soap) 41 27.03.14 12:43 Сейчас в теме
Классная разработка спасибо
8. Сергей Смирнов (protexprotex) 145 27.03.14 17:28 Сейчас в теме
(7) soap, Всегда пожалуйста :-)
9. Александр Зубцов (iov) 363 06.04.14 22:09 Сейчас в теме
10. Сергей Смирнов (protexprotex) 145 06.04.14 23:09 Сейчас в теме
11. Александр Зубцов (iov) 363 07.04.14 16:43 Сейчас в теме
И вот момент может я не увидел - а нет ли распознания из файла?
12. Сергей Смирнов (protexprotex) 145 07.04.14 16:48 Сейчас в теме
(11) iov, Добрый день. Есть конечно. В полной версии. Точнее, есть и демо - версии - только я этот метод не выводил в доступный интерфейс. Не думал что так будут копать глубоко :-) Нужен?
17. Александр Зубцов (iov) 363 12.04.14 23:12 Сейчас в теме
(12) да очень пригодится - это на тот случай когда изображение придет с устройств фиксации изображений
19. Сергей Смирнов (protexprotex) 145 13.04.14 00:21 Сейчас в теме
(17) iov, ок. Ну тогда когда "случай" настанет - тогда и выложу. Счас на эту разработку уже три проекта есть - по уши ушел в доработку программы - управление открытием/закрытием шлагбаума по идентификации гос. номера автомашины, регистрации заказ наряда по появлении в боксе автомашины и еще есть. Вот это сейчас с помощью этого движка и разрабатываю.
13. Денис Луцик (NAKIS) 4 10.04.14 18:31 Сейчас в теме
ООО, прикольно) Может пригодится, скоро начальство и такое заставит сделать)))
14. Сергей Смирнов (protexprotex) 145 10.04.14 18:47 Сейчас в теме
(13) NAKIS, Обращайтесь, если что :-)
15. Юрий Лазаренко (TitanLuchs) 11.04.14 17:22 Сейчас в теме
Прикольно! Но пока не придумал, где бы это можно было применить в реальной жизни, кроме как при сканировании штрих-кодов и пропусков.
16. Сергей Смирнов (protexprotex) 145 11.04.14 17:41 Сейчас в теме
(15) TitanLuchs, Нуууу - областей применения куча. Ну например, у Вас есть склад - у Вас ячеистое хранение. Вам интересно в какой ячейке находится тот или иной ящик. Наклеиваете на ящик этикетку с цифровым кодом. Через веб - камеру можно получать данные в какой ячейке какой ящик находится (ячейки тоже содержат цифровые коды). Или например - камера на пропускном турникете - сканирует бейджики на сотрудниках - получаем данные когда вход и когда выход. Или например, идентификация номеров машин, или сканирование ТОРГ-12 - просто поднесли к веб - камере - и торг-12 (не используя Fine Reared) появилась в 1С-ке (кстати, у меня есть в публикациях программа для сопоставлений). Да хоть определение какой объект появился в поле зрения веб - камеры - человек или машина или собака/кошка :-) ну и т.д. Куча, в общем. Вплоть до управления мобильным роботом.
18. Александр Зубцов (iov) 363 12.04.14 23:14 Сейчас в теме
Будет пара минут времени постучите в личку. Есть вопрос который может расширить функционал и вывести в реальный сектор рынка.
20. Сергей Смирнов (protexprotex) 145 13.04.14 00:21 Сейчас в теме
(18) iov, В личку постучался :-)
21. Сергей Сытько (8SiriuS8) 117 13.04.14 21:12 Сейчас в теме
(0) А как оно распознает если есть 2 блока цифр на одном насителе например штрихкод и цена.
22. Сергей Смирнов (protexprotex) 145 13.04.14 21:42 Сейчас в теме
(21) 8SiriuS8, Добрый день. Ну как Вам нужно - так и распознает. В текущем демо - режиме запрограммировано отбрасывать все что не является цифрами. Но если нужно чтобы и штрих - код распознал - так надо программе описать "что такое штрих - код" - и программа тогда и его детектирует. Ведь это "движок" - он предоставляет программисту возможности описания шаблонов ЧТО надо получить и КАК это интерпретировать. Можно задать программе (просто нарисовать в bmp - файле) например, самолет - и тогда если в области видимости web - камеры появиться самолет, программа его идентифицирует и выдаст сигнал.
23. Дмитрий Шиндориков (sdn-1) 126 14.04.14 16:42 Сейчас в теме
Спасибо за публикацию - тема очень интересная!
Если не секрет - какой алгоритм распознавания образов использовали ?
В свое время занимался реализацией алгоритма нейросети Хопфилда - неплохие результаты были при распознавании нечетких образов.
Еще раз спасибо!
24. Сергей Смирнов (protexprotex) 145 14.04.14 18:03 Сейчас в теме
(23) sdn-1, Добрый день. Метод распознавания - контурный анализ. Контур представлен комплексными числами. Я тоже занимаюсь и нейронными сетями. Вот только проблема с ними есть - долго обучаются и не всегда получаешь то что надо :-) Больше сейчас склоняюсь к математическим методам распознавания. Достаточно быстро - и обучать не надо. Хотя, есть у меня наработки по нейронной сети - аналог глаза - от колбочки->Биполярные клетки->Горизонтальные клетки->Ганглиозные клетки->Слои колонок и суперколонок с латеральным торможением. Прикольно, но очень уж тормозит :-) Так что пока математические методы рулят :-)
25. Kostya Zhurov (It-developer) 20 18.04.14 14:13 Сейчас в теме
26. Сергей Смирнов (protexprotex) 145 18.04.14 14:43 Сейчас в теме
(25) It-developer, Простите, не понял вопроса - "PDF файл накладной, ФАКС " ??? - это к чему?
27. Андрей (waizz) 30 04.08.14 11:46 Сейчас в теме
Текст распознавать может? С каким разрешением камеры может работать?
28. Сергей Смирнов (protexprotex) 145 04.08.14 11:59 Сейчас в теме
(27) waizz, Добрый день. Да, текст распознает хорошо. По поводу разрешения камеры - любое. Тут главное не разрешение камеры - а минимальные размеры объектов (6*4 пикселя - достаточно).
29. Андрей (waizz) 30 04.08.14 12:24 Сейчас в теме
Меня интересует паспортные данные распознавать сможет?
30. Сергей Смирнов (protexprotex) 145 04.08.14 12:56 Сейчас в теме
(29) waizz, Да, сможет. Это для программы не проблема. Распознавать сможет даже в режиме реального времени. Могу даже показать - давайте - вышлите мне на почту пару изображений паспортных данных (чтобы на Ваших данных) - я Вам вышлю результат распознавания - если устроит - потом по удаленке подключимся - покажу как все это работает в режиме реального времени. protexsmirnov@mail.ru
31. Фёдор Вер (Fedvere) 25.07.15 16:56 Сейчас в теме
Здравствуйте, Хорошая программа. А возможно распознание товарной накладной и внесение данных в базу?
32. Сергей Смирнов (protexprotex) 145 27.07.15 14:16 Сейчас в теме
(31) Fedvere, Добрый день. Да, это не составит особого труда.
33. dionisiy (Dionisiy) 13.08.15 17:59 Сейчас в теме
Здравствуйте! Сейчас стоит вопрос покупать потоковый сканер или вдруг пойдет Ваша чудо программа. Мне накладные распознавать, ведь даже не нужно будет скрепки убирать, просто перелистывать.

А как программа отреагирует на перелистывание? Нужен какой-то алгоритм смены листа, ну что-то вроде - это другой лист, не тот который был до этого. Лицензия на одно рабочее место. Распознавание обычного А4, автоматическое выдирание скана без лишней информации превышающей 10%, например голова попала. Распознать штрихкод еан 128, если его нет распознать наименование документа число, дата и желательно все ИНН/КПП. Распознавать весь скан нужды нет.

На входе. Веб камера с неплохим качеством, например 1000 точек, расположена над столом, человек сидит под ней, листает документы
На выходе. Создаются текстовые файлы с текстом и с ссылками на сканы (кстати, обрезанные по листу), обязательно выдаются сигналы звуковые в случае успешного выполнения задачи


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

А если Вы сделаете такую программу, то готов заплатить половину цены потокового сканера, отдал бы все, но придеться покупать хорошую камеру, чтобы сканы читабельные были ))
34. Сергей Смирнов (protexprotex) 145 13.08.15 21:58 Сейчас в теме
(33) Dionisiy, Добрый день. По поводу смены листа - тут все просто - перелистнул, нажал на кнопку на клавиатуре - программа распознала. Потом опять перелистнул - опять нажал на кнопку - тут придумывать лишние механизмы не нужно. По поводу сделать такую программу - сделаю, но я думаю, что цена такой программы будет больше чем цена потокового сканера - цена нормального потокового сканера примерно 60000. Стоимость доработки программы - 80000. Так что овчинка будет стоить выделки, если будете покупать два - три сканера - тогда имеет смысл эту программу Вам покупать.
35. dionisiy (Dionisiy) 14.08.15 05:28 Сейчас в теме
(34) protexprotex, оказалось, что перелистывать мятую, разрозненную бумагу трудоемко. Готовы выдирать скрепки, но не мучаться с каждым листом. А насчет кнопки не согласен.
36. Сергей Смирнов (protexprotex) 145 14.08.15 09:19 Сейчас в теме
(35) Dionisiy, Ну, если бумага мятая, то согласен.
37. Сергей Смирнов (protexprotex) 145 14.08.15 09:21 Сейчас в теме
(35) Dionisiy, А вот по поводу кнопки - в чем тут проблема? - неужели лучше разрабатывать алгоритмы анализа смены страницы? - или просто заставить пользователя при смене страницы нажать на кнопку для активации распознавания?
38. dionisiy (Dionisiy) 14.08.15 10:55 Сейчас в теме
(37) protexprotex, ну чтобы уложиться в 2 секунды на страницу ))
39. Сергей Муравьёв (murenysh) 10 14.09.15 01:14 Сейчас в теме
protexprotex, подскажите как программа работает через терминальный режим?
40. Сергей Смирнов (protexprotex) 145 14.09.15 08:15 Сейчас в теме
(39) murenysh, Добрый день. По поводу терминального режима - есть многопользовательская версия - запуск также как и на стационарном компе - только в терминальном окне.
41. Сергей Муравьёв (murenysh) 10 21.09.15 04:15 Сейчас в теме
(40) protexprotex, камера установлена на локальном компьютере, все равно будет работать? RDP такие устройства как камеры вроде еще не научился терминалить.

Еще возник вопрос по качеству распознавания - программа пытается распознать даже мелкие сочетания, из-за чего происходят тормоза и ложные срабатывания, что видно и на вашем демо-видео. Это как-то настраивается?
42. Сергей Смирнов (protexprotex) 145 21.09.15 20:35 Сейчас в теме
(41) murenysh, Добрый день. По поводу RDP - есть фоновая программа которая данные с IP камеры сжимает и транслирует в программу распознавания по выделенному каналу. По поводу ложных срабатываний - да, там есть уровень ложных срабатываний. Но на самом деле все немного по другому - в этом демо - ролике включено распознавание только по одному методу (контурный метод) - если включить каскадное(или конкурентное) распознавание (сразу несколько методов - а их там разработано около 10-ти) с голосованием, то ложных срабатываний практически не будет.
43. Сергей Муравьёв (murenysh) 10 23.09.15 00:26 Сейчас в теме
(42) protexprotex, Добрый день,
сразу новая куча вопросов:
1. Что это за программа? Я устанавливал DroidCamApp на компьютер и DroidCam на смартфон, но при попытке выбрать в ImageRecognition.exe одну из камер, эмулируемых DroidCam, вылетает исключительная ситуация.
2. Получается, в программе есть какие-то настройки кроме шаблонов цифр?
3. Если подключить одновременно несколько методов распознавания, то думать будет дольше? Сейчас на код номенклатуры из демо-конфигурации уходит 2-3 секунды (из них одна секунда на стабилизацию четкости изображения веб-камерой)
4. Есть ли в настройках программы звуковой сигнал успешного распознавания шаблона?
5. Сколько времени будет распознаваться через веб-камеру ТОРГ-12?
6. Сколько стоит коммерческая версия и что в ней можно настраивать?

44. Сергей Смирнов (protexprotex) 145 23.09.15 20:55 Сейчас в теме
(43) murenysh, Добрый день. По номерам вопросов - 1) - это программа просто транслирует видеопоток с веб-камеры в приемник - приемником может выступать каталог(папка windows) или порт или еще др. - самописная (мной) программа. 2) - да, настроек много 3) - увеличение времени распознавания будет, но это зависит от вида включенных методов. Те "тормоза" кот. вы видите - это из-за того, что производится вывод на экран - это долгая операция - она и занимает около 60% - в НЕ демо версии - вывод на экра можно отключить - т.к. он не нужен в рабочем режиме. 4) - есть. 5) - у меня старый комп - Core 2 DUO 3 Гг - ТОРГ - 12 распознается около 1.5 сек. 5) - коммерческая версия стоит 15000 руб. Что касается настроек - там реализован процедурный язык с помощью которого можно описывать алгоритм и методологию распознавания.
45. Сергей Муравьёв (murenysh) 10 24.09.15 22:33 Сейчас в теме
(44) protexprotex, снова вопросы :)
1. Каково качество распознавания ТОРГ-12? Тот же FineReader может делать ошибки, а в документе, связанном с деньгами, это недопустимо.
2. Сложно ли настраиваются шаблоны - некоторые поставщики добавляют свои столбцы и прочие изменения в стандартные формы
3.
там реализован процедурный язык с помощью которого можно описывать алгоритм и методологию распознавания

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

Мы приобрели годовой пакет распознавания от EFSOL, но не удовлетворены сильным торможением и адски неудобным интерфейсом под обычными формами. Ищем варианты.
46. Сергей Смирнов (protexprotex) 145 25.09.15 16:42 Сейчас в теме
(45) murenysh, Добрый день. По вопросам - 1) По поводу качества распознавания - на хороших формах - отличное. А если пролили кофе на ТОРГ-12 - то не очень. 2) - по поводу шаблонов - несложно. У меня есть такая программа (в моих публикациях) - по считыванию из EXCEL - файлов - на 1С 8 - там настраиваются любые варианты шаблонов (а также любые варианты определения столбцов и многое чего еще) - http://infostart.ru/public/194838/ 3) - это не полуфабрикат, а демонстрация метода. Для его применения в распознавании ТОРГ-12 много-немного - но надо будет оптимизировать для этого. 4) - да возможна. Вылетания - может быть. Это же не коммерческий продукт - а демонстрация метода. Поддержка - новые обновления в рамках приобретенного продукта - бесплатные - покуда живы и работаем :-)
52. Сергей Муравьёв (murenysh) 10 30.09.15 00:37 Сейчас в теме
(46) protexprotex,
это не полуфабрикат, а демонстрация метода


Я Вас уже наверное замучил, но мне по-прежнему неясны возможности и интерфейс платной версии. И я правильно понял, что вылетает с ошибками только демо-версия?
И непонятно, какое отношение программа по распознаванию из Excel-файлов имеет к шаблонам распознавания из видеопотока.
это не полуфабрикат, а демонстрация метода. Для его применения в распознавании ТОРГ-12 много-немного - но надо будет оптимизировать для этого

Если Вы говорите, что распознавание ТОРГ-12 идет 1.5 сек., значит вы эту оптимизацию уже произвели?
Можете ли Вы выложить видео такого распознавания, это сняло бы большую часть вопросов, а то мне это напоминает попытки слепого понять, что такое рассвет по описанию зрячего :)
53. Сергей Смирнов (protexprotex) 145 30.09.15 09:04 Сейчас в теме
(52) murenysh, Давайте - может, так будет проще - мой скайп - pppprotexprotex - буду сегодня в скайпе после 18-00 или мой телефон - 8-920-252-20-50
54. Сергей Муравьёв (murenysh) 10 30.09.15 12:39 Сейчас в теме
(53) protexprotex, Да, так будет проще, думаю. Наберу.
47. Дмитрий Мартынюк (demart-omsk) 16 26.09.15 11:09 Сейчас в теме
Добрый день. При подключение к камере "COM_SERVER.ConnectToCamera ()"
падает по ошибке: "Ошибка при вызове метода контекста (ConnectToCamera): Произошла исключительная ситуация (0xfffffffe)"
Камера HD, куда копать?
Спасибо.
48. Сергей Смирнов (protexprotex) 145 27.09.15 12:43 Сейчас в теме
(47) demart-omsk, Добрый день. Назовите, пжл, марку камеры. И такая ошибка появляется если com-exe сервер некорректно зарегистрирован - или может камера уже занята другим приложением.
49. Дмитрий Мартынюк (demart-omsk) 16 28.09.15 21:41 Сейчас в теме
(48) protexprotex, HP TrueVision HD.
Камера не используется.
50. Сергей Смирнов (protexprotex) 145 29.09.15 07:18 Сейчас в теме
(49) demart-omsk, Тяжело так сказать. Надо смотреть "на месте". Могу по удаленке глянуть.
51. Дмитрий Мартынюк (demart-omsk) 16 29.09.15 19:54 Сейчас в теме
55. Сергей Смирнов (protexprotex) 145 05.10.17 00:34 Сейчас в теме
Добрый день мой скайп - pppprotexprotex
56. Сергей Смирнов (protexprotex) 145 05.10.17 08:47 Сейчас в теме
Добрый день. Да, программа дорабатывается.
57. Сергей Болбачан (sergbsv) 60 01.11.17 10:49 Сейчас в теме
а если на фото изогнутый провод - сможет распознать ?
58. Сергей Смирнов (protexprotex) 145 01.11.17 14:41 Сейчас в теме
(57) Добрый день. Да, сможет.
Оставьте свое сообщение