Компоненты распознавания и печати штрих-кодов

0. Igor Berezhnov (igorberezhnov) 74 10.07.15 10:15 Сейчас в теме
Комплект программного обеспечения для реализации функций оптического распознавания штрих-кодов различных систем при помощи обычной web-камеры, а также их отображения в печатных формах. Программы могут работать в составе конфигураций, созданных на базе платформ «1С-Предприятие» версий 7.7, 8.2, 8.3. Компонент чтения кодов реализован в виде внешней компоненты 1С с COM-интерфейсом. Компонент отображения создан по стандартной технологии ActiveX для Windows, и может быть встроен в любое приложение, поддерживающее встраивание ActiveX элементов управления, например в документ Word или Excel, или форму VBA.

P.S. Добавлена новая версия программы распознавания. Новые функции: обработка видео в реальном режиме (а не по таймеру, как раньше), добавлена возможность распознавания штрих-кодов из графических файлов JPEG, PNG, GIF, BMP, а также передавать для распознавания картинки из 1С, теперь можно получить в 1С захваченное с камеры или файла изображение, как с выделением мест, содержащих коды, так и без, а также отдельные фрагменты изображений, содержащие код. Добавлены новые свойства и методы для программирования. Обновлена документация.


Перейти к публикации

Комментарии
1. sournk (sournk) 25 15.07.15 10:52 Сейчас в теме
Можно распознать штрих-коды в jpg файлах?
Как работает с несколькими штрих-кодами в кадре или на листе?
2. Igor Berezhnov (igorberezhnov) 74 15.07.15 11:38 Сейчас в теме
(1) sournk,
1. Планирую в следующей версии добавить;
2. Распознаёт все штрих-коды на листе, последовательно отправляет в 1С.
3. Igor Berezhnov (igorberezhnov) 74 17.07.15 21:52 Сейчас в теме
(1) sournk, как и обещал, добавил распознавание из файлов JPEG, GIF, PNG, BMP, а также из родных картинок 1С (тип "Картинка"). Возможно считывать распознанные фрагменты изображения в 1С (см. видео).
4. Фантаев Сегрей (serg1983) 22 01.09.15 08:35 Сейчас в теме
какая скорость распознания штрих кода. В сравнении с обычным сканером
5. Igor Berezhnov (igorberezhnov) 74 01.09.15 14:32 Сейчас в теме
(4) serg1983, Что значит "какая скорость"? Любой сканер распознаёт штрих-код моментально, в момент попадания его в фокус. Другое дело - качество распознавания. Но тогда нет такого понятия, как "обычный сканер", - у каждого может быть своё качество распознавания тех или иных штрих-кодов. Во многих аппаратных сканерах, насколько мне известно, страдает качество распознавания двумерных штрих-кодов, здесь оно на высоте (для QR-кодов). Обычные штрих-коды тоже распознаются прекрасно. Единственная ложка дёгтя - PDF417 практически не распознаётся. Это связано с особенностями библиотеки ZBar, надеюсь, в обозримом будущем разработчики поправят код.
6. Вячеслав Кузнецов (VyacheslavKuznetsov) 27.09.15 17:11 Сейчас в теме
Устанавливаю галку "Закрывать окно после сканирования". Сканирую QR-код и окно камеры остается висеть активным. Как от него избавиться?
7. Igor Berezhnov (igorberezhnov) 74 27.09.15 22:12 Сейчас в теме
(6) VyacheslavKuznetsov, попробуйте после установки флажка "Закрывать окно..." полностью закрыть программу, чтобы значение настроек сохранилось, а потом заново запустить. Возможно, какой-то глюк произошел в процессе сохранения. В следующей версии добавлю программное управление настройками.
8. Igor Berezhnov (igorberezhnov) 74 27.09.15 22:49 Сейчас в теме
(6) VyacheslavKuznetsov, действительно, это ошибка в программе. Куда скинуть исправленный файл?
9. Igor Berezhnov (igorberezhnov) 74 02.10.15 21:29 Сейчас в теме
В связи с исправлением ошибки, выявленной VyacheslavKuznetsov, перезалил дистрибутив с новой версией.
10. Саня Пупкин (pupkinSana) 19 23.11.15 17:49 Сейчас в теме
Чет пробую сканировать файл - не распознает. Может у него алгоритмы проверок есть какие-то, как отключить?

А помимо распознания штрихкодов возможно распознание текста по шаблону? Например искать в картинке текст "накладная".
Цель - написать обработку группового распознания сканов из папки и привязки к базе.
Прикрепленные файлы:
11. Igor Berezhnov (igorberezhnov) 74 23.11.15 23:44 Сейчас в теме
(10) pupkinSana,
1. Можно попробовать отключить галочку "Проверять корректность данных". Проверьте в настройках, включен ли нужный тип штрих-кода. EAN-13 распознается без проблем, но на рисунке по-моему 12 символов?
2. текст не распознается, только штрих-код.
12. Igor Berezhnov (igorberezhnov) 74 23.11.15 23:49 Сейчас в теме
(10) pupkinSana, проверил, второй код распознается без проблем, показывает тип upc-a. .
13. Саня Пупкин (pupkinSana) 19 25.11.15 07:04 Сейчас в теме
Чет не то.. Вот еще пример 13 длина четче картинки уже некуда. Если к камере распечатать подставлять то только последние 4 символа берет а впереди свои откуда-то. А если с картинки то вообще не видит ничего.
Прикрепленные файлы:
14. Igor Berezhnov (igorberezhnov) 74 25.11.15 08:06 Сейчас в теме
(13) pupkinSana, Что это за код? Вроде EAN-13 с 0 не должен начинаться?
15. Makc Saipl (Saipl) 6 26.11.15 09:35 Сейчас в теме
Подскажите как художник - художнику ...
Обращаюсь как к специалисту по штрихкодированию, после инвентаризации в файлах выгрузки ТСД стали попадаться штрхикоды товаров которые фактически числятся в других складах.
Вопрос может ли ТСД считать неверно штрихкод с повреждениями (затерся, поцарапался, плохо распечатался и т.д.) , технические проблемы ТСД или это исключено ?
16. Igor Berezhnov (igorberezhnov) 74 26.11.15 12:33 Сейчас в теме
(15) Saipl, К сожалению, опыт работы с ТСД не такой богатый, как хотелось бы. Но теоретически могу предположить, что ошибки чтения могут быть, при считывании сканером бывают, ТСД аппаратно мало отличается в части устройства считывания..
17. Слепченко Рита (avestadv) 24.03.16 15:10 Сейчас в теме
при открытии окна сканирования (СканерОбъект.ПоказатьОкноСканирования();) выдаёт ошибку:
interface not supported
открывает окно без изображения.
Что может быть??
18. yurok kozorez (kozorez) 6 24.03.16 15:24 Сейчас в теме
Ошибка в Windows7x64
Прикрепленные файлы:
19. yurok kozorez (kozorez) 6 24.03.16 17:24 Сейчас в теме
на другой камере ошибки нет.
не читает PDF417...

Возможно-ли обновление библиотеки zbar, или замена на библиотеку читающую PDF47?
20. Igor Berezhnov (igorberezhnov) 74 25.03.16 12:24 Сейчас в теме
(18) kozorez, Возможно, неправильно зарегистрирован компонент. - может прав каких-то не хватает. Попробуйте зарегистрировать при помощи regsvr32 /i obrscanner.dll
21. Igor Berezhnov (igorberezhnov) 74 25.03.16 12:32 Сейчас в теме
(19) kozorez, Здесь: http://infostart.ru/public/157814/ автор утверждает, что PDF417 поддерживается. Если разработчики библиотеки zbar сподобятся обновить её с целью улучшения обработки кода PDF417, можно будет просто заменить файл библиотеки в каталоге с компонентой
22. yurok kozorez (kozorez) 6 26.03.16 03:27 Сейчас в теме
(20) igorberezhnov, компоненту регистрировал, не работает с камерой HD качества, возможно камера не поддерживает directX. PDF417 ни один не определил, возможно ли подключение библиотеки ZXing?
23. Igor Berezhnov (igorberezhnov) 74 28.03.16 08:40 Сейчас в теме
(22) kozorez, 1. Наименование камеры в списке выбора в окне настроек отображается?
2. ZXing - это Java-библиотека, есть порт для .Net. Я же писал на Delphi, поэтому вряд ли, если кто нибудь не возьмется портировать библиотеку. Попытки есть, но пока распознается всего 3 типа кодов.
24. Отдел ИТ МУП КТТУ (asuktty) 01.04.16 11:35 Сейчас в теме
Мы применили этот компонент для распознавания штрихкода, напечатанного в печатной форме документа в стандарте code-128, из отсканированного в формате JPG файла. Всё классно и замечательно. НО! Выявилась та ложка дёгтя, которая делает эту технологию неприменимой. А именно. Как выяснилось, при распознавании штрихкодов из серии файлов (потоковое распознавание) при обращении к функции компоненты СканерОбъект.СканироватьРисунок() происходит, похоже, в ней утечка памяти. Предполагаем, что из оперативной памяти не убираются результаты обработки предыдущего акта распознавания, и память стремительно (например, на моём компьютере её 8 Гб) исчерпывается и происходит останов из-за её дефицита. Нигде в документации к компоненте не сказано о этом или о каких либо настройках. Поэтому сейчас ищем что-либо подобное. А жаль...
25. Igor Berezhnov (igorberezhnov) 74 01.04.16 18:57 Сейчас в теме
(24) asuktty, Пришлите мне в код 1С, каким образом Вы загружаете файл изображения в компоненту, постараюсь воспроизвести ситуацию и исправить ошибку, если таковая будет выявлена.
26. Igor Berezhnov (igorberezhnov) 74 01.04.16 19:16 Сейчас в теме
(24) asuktty, Нашел место, где возможно была утечка памяти. Отправил Вам в личку исправленный файл для тестирования. По возможности отпишитесь по результатам.
27. Igor Berezhnov (igorberezhnov) 74 01.04.16 19:44 Сейчас в теме
(24) asuktty, Проверил сканирование на 1000 файлов - утечек нет
28. Igor Berezhnov (igorberezhnov) 74 02.04.16 10:07 Сейчас в теме
Выложена обновленная версия дистрибутива программы с исправлением обнаруженных ошибок.
29. Отдел ИТ МУП КТТУ (asuktty) 04.04.16 15:03 Сейчас в теме
Спасибо!!! Проблема устранилась заменой obrscanner.dll. А обращение ко всем возможностям компоненты взято из статьи и руководства, т.е. совершенно штатно. Ещё раз спасибо!!
30. Lika Alimova (likalim) 07.07.16 13:29 Сейчас в теме
На платформе 8.3 1С вылетает в dump на строке СканерОбъект.Картинка = Путь; и при этом даже, если в качестве пути указывать пустую строку всё равно точно такое же поведение. Проверила на платформе 8.2 тоже самое.
31. Igor Berezhnov (igorberezhnov) 74 09.07.16 13:57 Сейчас в теме
(30) likalim, ошибку исправил, отправил исправленный файл в личном сообщении. Дистрибутив на сайте обновил.
32. Андрей Седых (dronprog) 14 22.07.16 09:16 Сейчас в теме
На счет ошибки, когда при присваивании
СканерОбъект.Картинка = Путь;

вылетает в dump. Скачивал файл 13.07.2016, после того, как якобы обновлялся файл после исправления. Ничего не изменилось.
Так же вылетает в том случае, если по указанному пути нет файла или нет доступа к файлу. Обходится легко, проверкой перед этим на существование файла.

Другой вопрос, это добавить параметр в СканерОбъект, чтобы убрать все всплывающие окна во время распознания, для того, чтобы можно было автоматизировать поток файлов. Сможете сделать?
33. Igor Berezhnov (igorberezhnov) 74 26.07.16 12:16 Сейчас в теме
(32) dronprog, Та проблема была в другом, там была попытка удаления неициализированного указателя. Проверку на существование файла добавлю. Что за всплывающие окна надо убрать?
34. Коваленко Виктор (user595111_kovalenkovj) 29.07.16 11:09 Сейчас в теме
Добрый день!
Столкнулись с проблемой при печати макета из 1С с областью ШК QR кода: визуально на дисплее все нормально - вся площадь отведенная под QR код заполнена правильно, а при выводе на принтер размер области ШК QR существенно уменьшается и распознавание с печатного документа становится невозможным. Подскажите пожалуйста в чем может быть причина не соответствия размеров области ШК QR (возможно Ваш объект настраивается на разрешение принтера?).
С уважением Виктор Коваленко.
35. Igor Berezhnov (igorberezhnov) 74 01.08.16 11:06 Сейчас в теме
(34) user595111_kovalenkovj, проверил, действительно есть такое поведение, связано с ошибкой отрисовки в шаблоне ActiveX-компонента Delphi. В ближайшее время постараюсь исправить.
36. c+ + (ture) 228 24.11.16 16:57 Сейчас в теме
(0) 27 звёздочек за такой труд? одно написание статьи чего стоит!
В общем, я знаю как работать с Zbar и компоненту могу настрогать, которая ШК гадает. Но! Нарисовалась проблемка.
Задача:
Найти ШК на скане (фигня вопрос с Zbar), повернуть изображение на нужное количество градусов (14, 95, 100 и т.п.), чтоб текст на скане стал горизонтальным и читался не вверх ногами (фиг знает как это сделать), скан запихать в в pdf (фигня вопрос) и положить в базу на основе ШК.

Вот за такое тебе звезд навтыкают, т.к. это функционал системы документооборота.
На слабо брать не буду.
37. Igor Berezhnov (igorberezhnov) 74 24.11.16 19:27 Сейчас в теме
(36) Не понимаю, для чего нужна подобная функция. Ведь можно отсканировать не вверх ногами, и не под углом 45 градусов, а нормально. И не нужно будет переворачивать. По поводу улучшения качества изображения перед сканированием - смотри другую мою компоненту для массового распознавания штрих-кодов в документах, она больше похожа на компоненту из документооборота (http://infostart.ru/public/542683/).
38. Igor Berezhnov (igorberezhnov) 74 24.11.16 19:31 Сейчас в теме
(36) Что касается требуемого функционала - нет проблем. Пишите в личку, договоримся.
39. c+ + (ture) 228 28.11.16 11:31 Сейчас в теме
(38) нужен поворот изображения по тексту (остальное не проблема). Знаешь как, скажи. Система OpenCV не подходит (вопрос "почему", мне не нужно задавать. я просто программист на проекте).
40. Igor Berezhnov (igorberezhnov) 74 28.11.16 12:51 Сейчас в теме
(39) 1. Выделяем строку целиком путем пробегания по ней квадратом с размером по горизонтали в полтора раза больше чем самый длинный символ и по высоте на 7-10% меньше высоты строчного символа. Если сверху /снизу этого квадрата есть явный проблеск, то смещаемся в противоположную сторону. И закрашиваем эту строку чисто черным или проводим прямую 30% от высоты символов.
2. Дальше применяем преобразование Хафа и считаем параметрическое уравнение прямой.
3. Из него выделяем угол наклона прямой.
4. Другой вариант - сначала применяем сглаживание ко всему изображению, затем применяем фильтр резкости, чтобы строки превратились в прямые, и опять же - преобразование Хафа.

Про поиск прямых линий методом преобразования Хафа:
http://www.graphicon.ru/html/2006/fr11_35_Volegov_Gusev_Yurin.pdf

41. ralexv (ralexv) 08.12.16 10:30 Сейчас в теме
(34) столкнулся с такой же проблемой, подскажите, пожалуйста, не исправили уже этот баг? или как вышли из положения?
42. Александр Остапенко (popusta) 29.12.16 09:20 Сейчас в теме
Столкнулся с проблемой использования компоненты распознавания в 1С:7.7.
Загружается компонента вроде бы нормально (никаких сообщений не выдается).
Но при попытке запустить распознавание с помощью СканерОбъект.ПоказатьОкноСканирования() вылетает ошибка "1C:V7 starter program (multi-user)".
При этом окно сканирования на экране появляется.
Пробовал на своей конфигурации и типовой торговле, локально и в терминале.
На локальном компьютере установлена WindowsXP, релиз платформы - 1С:7.70.027.
43. Арсен Лысенко (aragonzp) 17.04.17 17:47 Сейчас в теме
Нужно читать ISSN + 2 Цифры.Реально доработать?
Прикрепленные файлы:
44. Igor Berezhnov (igorberezhnov) 74 17.04.17 19:14 Сейчас в теме
Вообще-то такой код должен читаться, сейчас нет возможности проверить.
Оставьте свое сообщение