Рубрики
Без рубрики

3 Методы обработки изображений для строительства программного обеспечения для сканирования штрих -кода 1D и 2D 2D.

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

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

Сканирование и чтение штрих -кода – это сектор проблем компьютерного зрения, которые редко имеют прямое и прямое решение. Множество вещей, включая яркость, ясность изображения, контрастность изображения и длина штрих -кода относительно изображения, могут привести к тому, что ваше программное обеспечение возникает в сфере решений. Многие отрасли могут видеть безумное сокращение затрат и рабочих часов, используя те же методы для создания систем автоматизации для вашего бизнеса. Мы собрали несколько методов, с которыми мы добились больших успехов, чтобы создать пользовательские решения для довольно шумных изображений и видео. Если вы хотите увидеть бизнес -инструмент реального мира, используя эти методы и получить результаты, ознакомьтесь с этим тематическим исследованием, где мы использовали Программное обеспечение для сканирования штрих -кода и компьютерное зрение, чтобы полностью автоматизировать бэкэнд -систему для интернет -магазина (наряду с другими инструментами ML).

При чтении шумных 1D штрих -кодов с изображений это может быть самой важной доступной техникой. Используя операции Erode и Delat Morphology, мы можем просто удалить любые большие горизонтальные линии с изображения, что очень полезно для линий вокруг штрих -кода или линий, которые бегут в штрих -код с боковых сторон. Вы можете увидеть хороший пример с изображениями и кодом Здесь Анкет

Пример Использование музыкальных заметок – оригинальное изображение

Горизонтальные линии, обнаруженные библиотекой OpenCV

Снятые линии, изображение имеет пробелы после удаления (не показано), но мы можем использовать функцию вертикального ядра для восстановления линий

Кроме того, вы можете создать «вертикальный структурирующий элемент», который определяет размер мин или максимума для вертикальной линии, которая также удаляется из изображения. Это важный шаг, так как он позволяет нам удалять большие вертикальные линии вокруг штрих -кода, которые на определенных шумных изображениях могут быть обнаружены как часть штрих -кода. На изображении выше мы можем увидеть несколько примеров вертикального пространства, которые можно смутить как часть штрих -кода под определенными боковыми углами, особенно средним штрих -кодом с перфорированным пространством рядом с ним. OpenCV имеет отличный пример удаления этих строк с использованием морфологических операций Здесь Анкет

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

Одним из ранних шагов, которые многие добавляют к своему программному обеспечению для чтения штрих -кодов 1D и 2D, является GreyScaling the Image, в идее удаления цветов, чтобы облегчить чтение штрих -кода. Хотя мыслительный процесс для этого не так уж и плох, вначале график – не очень хорошая идея. Штрихи черные, а иногда и темно -серые, что означает, что они уже являются одним из самых темных объектов на изображениях в видео. То, что может произойти, – это такие цвета, как темно -красный или темно -синий вокруг штрих -кода, можно найти в том же цвете, что и штрих -код, вызывая огромные проблемы при попытке обнаружить границы реального штрих -кода. Что может произойти, так это темные цвета, изменится на черный или темно -серый и теперь невозможно сказать, кроме самого штрих -кода, особенно если они пытаются нарисовать ограничивающие ящики вокруг штрих -кодов.

Вместо этого давайте Удалите цвета Перед манипулированием изображением:

В этом примере из одного из наших проектов мы стремимся удалить красный цвет, преобразуя его в белый из объекта изображения подушки, который передается. Сравнивая значения r, g, b с диапазоном значений для красного цвета, это позволяет нам удалить любой оттенок, который может быть на изображении. Мы видели, как эта концепция работает особенно отличной при создании систем штрих -кодов для управления запасами, учитывая, что вы можете удалить цвет продукта, который окружает штрих -код.

Тестирование программного обеспечения для чтения штрих -кодов на разных меток и углов – лучший способ обеспечить достижение результатов с высокой правильностью. Одной из вещей, которые мы заметили во время качественного тестирования, было более частые ошибки с штрих -кодами, где этикетка существует в открытой или строительной среде. Штрих -коды становятся выцветшими, разрывающимися и разорванными, что делает невозможным читать, даже если у нас есть хороший процесс для изоляции штрих -кода. Стратегия, которую мы видели, чтобы улучшить эти результаты тестирования, заключается в использовании OCR, чтобы увидеть, сможем ли мы идентифицировать и прочитать номер штрих -кода с метки. Много раз, если мы можем определить, что существует штрих -код, но мы просто не можем его прочитать, можно определить номер штрих -кода и обработать его через библиотеку штрих -кодов.

Хотя алгоритмы OCR обычно занимают больше времени, чем большинство библиотек штрих -кодов, это может быть отличной альтернативой последнего шага, когда вы просто не можете прочитать штрих -код. Скрытый бонус к этой реализации OCR заключается в том, что он прекрасно интегрируется с любым более широким компьютерным зрением для систем автоматизации, что обычно является тем, как системы сканирования штрих -кода и QR -кода используются в качестве части всей головоломки. Если вы думаете о создании инструмента для полной автоматизации с помощью компьютерного зрения, оба этих алгоритма, вероятно, будут частью вашего процесса.

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

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

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

Оригинал: “https://dev.to/mattpayne/3-image-processing-techniques-for-building-enterprise-level-1d-2d-barcode-scanning-software-413f”