gifts2017

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

Опубликовал Сергей Смирнов (protexprotex) в раздел Программирование - Внешние компоненты

Представлен видеоролик, а также демо - программа 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

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

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

См. также

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

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

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


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

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

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

44. Сергей Смирнов (protexprotex) 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) 24.09.15 22:33
(44) protexprotex, снова вопросы :)
1. Каково качество распознавания ТОРГ-12? Тот же FineReader может делать ошибки, а в документе, связанном с деньгами, это недопустимо.
2. Сложно ли настраиваются шаблоны - некоторые поставщики добавляют свои столбцы и прочие изменения в стандартные формы
3.
там реализован процедурный язык с помощью которого можно описывать алгоритм и методологию распознавания

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

Мы приобрели годовой пакет распознавания от EFSOL, но не удовлетворены сильным торможением и адски неудобным интерфейсом под обычными формами. Ищем варианты.
46. Сергей Смирнов (protexprotex) 25.09.15 16:42
(45) murenysh, Добрый день. По вопросам - 1) По поводу качества распознавания - на хороших формах - отличное. А если пролили кофе на ТОРГ-12 - то не очень. 2) - по поводу шаблонов - несложно. У меня есть такая программа (в моих публикациях) - по считыванию из EXCEL - файлов - на 1С 8 - там настраиваются любые варианты шаблонов (а также любые варианты определения столбцов и многое чего еще) - http://infostart.ru/public/194838/ 3) - это не полуфабрикат, а демонстрация метода. Для его применения в распознавании ТОРГ-12 много-немного - но надо будет оптимизировать для этого. 4) - да возможна. Вылетания - может быть. Это же не коммерческий продукт - а демонстрация метода. Поддержка - новые обновления в рамках приобретенного продукта - бесплатные - покуда живы и работаем :-)
47. Дмитрий Мартынюк (demart-omsk) 26.09.15 11:09
Добрый день. При подключение к камере "COM_SERVER.ConnectToCamera ()"
падает по ошибке: "Ошибка при вызове метода контекста (ConnectToCamera): Произошла исключительная ситуация (0xfffffffe)"
Камера HD, куда копать?
Спасибо.
48. Сергей Смирнов (protexprotex) 27.09.15 12:43
(47) demart-omsk, Добрый день. Назовите, пжл, марку камеры. И такая ошибка появляется если com-exe сервер некорректно зарегистрирован - или может камера уже занята другим приложением.
49. Дмитрий Мартынюк (demart-omsk) 28.09.15 21:41
(48) protexprotex, HP TrueVision HD.
Камера не используется.
50. Сергей Смирнов (protexprotex) 29.09.15 07:18
(49) demart-omsk, Тяжело так сказать. Надо смотреть "на месте". Могу по удаленке глянуть.
51. Дмитрий Мартынюк (demart-omsk) 29.09.15 19:54
52. Сергей Муравьёв (murenysh) 30.09.15 00:37
(46) protexprotex,
это не полуфабрикат, а демонстрация метода


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

Если Вы говорите, что распознавание ТОРГ-12 идет 1.5 сек., значит вы эту оптимизацию уже произвели?
Можете ли Вы выложить видео такого распознавания, это сняло бы большую часть вопросов, а то мне это напоминает попытки слепого понять, что такое рассвет по описанию зрячего :)
53. Сергей Смирнов (protexprotex) 30.09.15 09:04
(52) murenysh, Давайте - может, так будет проще - мой скайп - pppprotexprotex - буду сегодня в скайпе после 18-00 или мой телефон - 8-920-252-20-50
54. Сергей Муравьёв (murenysh) 30.09.15 12:39
(53) protexprotex, Да, так будет проще, думаю. Наберу.
Для написания сообщения необходимо авторизоваться
Прикрепить файл
Дополнительные параметры ответа