![]() |
|
![]() ![]() ![]() |
|
DoZENT |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 2.6.2006 Репутация: нет Всего: 1 |
Добрый день! Имеется картинка, содержащая в себе штрих-код товара (бело-черные линии). Необходимо найти этот штрих-код на картинке и (самое главное) распознать цифровой код, который зашифрован этими линиями. Весь интернет перерыл, нет алгоритма расшифровки. Может кто сталкивался? Как там код определяется, по ширине линий или как?
-------------------- Какая боль, какая боль, Internet Explorer 5.0... |
|||
|
||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
Уже обсуждалось. Кодировка описывается в Википедии. Если мы говорим о штрихкоде на продукте, то это, вероятно вот этот код: http://ru.wikipedia.org/wiki/UPC
P.S. Нет, скорее европейский: http://ru.wikipedia.org/wiki/European_Article_Number Это сообщение отредактировал(а) Dims - 4.10.2009, 13:39 |
|||
|
||||
DoZENT |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 2.6.2006 Репутация: нет Всего: 1 |
Ну ок, допустим, кодировку я знаю: черная полоса - 1, белая полоса - 0. Но не пойму такой момент: на разных товарах штрих код наносится по-разному, т.е. имеет разную ширину. Длинна кода = разрешение картинки по горизонтали. Поэтому для каждого товара и для каждой камеры (со сменой разрешения) количество символов кода всегда будет разным!. Так же не должно быть, правильно? Наверное, сканеры как-то масштабируют картинку.... Если объяснил непонятно, скажите)) Это сообщение отредактировал(а) DoZENT - 4.10.2009, 21:35 -------------------- Какая боль, какая боль, Internet Explorer 5.0... |
|||
|
||||
Pavia |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 418 Регистрация: 6.12.2008 Репутация: 11 Всего: 12 |
![]() Да разные штрих коды имеют разную длину это нормально. По поводу разрешения да масштабируют. Длину кода вообще то определяется числом закодированных знаков. |
|||
|
||||
DoZENT |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 2.6.2006 Репутация: нет Всего: 1 |
Ну с этим все понятно. Я имею в виду, читая пиксель за пикселем, мы определяем 0 или 1 в зависимости от цвета - белый или черный.
По какой технологии картинка должна масштабироваться? Вот пример: у меня 2 одинаковых штрих кода в bmp файлах. Один - 111х84. Другой - 248х188. По горизонтали - разное число символов, соответственно, и код получится разный... Никак не пойму, что делать ![]() -------------------- Какая боль, какая боль, Internet Explorer 5.0... |
||||
|
|||||
cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 5 Всего: 99 |
DoZENT, стандарт определенного штрих кода почитай.
-------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
Pavia |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 418 Регистрация: 6.12.2008 Репутация: 11 Всего: 12 |
Не совсем картинку. Картинку лучше оставить в покои как есть чтобы не терять данных. Идем по строчкам считаем ширину последовательности каждого штриха в пикселях (можно до долей пикселя). Так для нескольких строк. Результаты усредняем. Потом ищем самый маленький по ширине штрих на него и делим все ширины штрихов и округляем. PS. Никто базы от сканированных штрихов не видел для тренировки? |
|||
|
||||
Dims |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1016 Регистрация: 21.11.2006 Репутация: 1 Всего: 11 |
Штрихкод оптимизирован под сканирование лазером. Лазер пробегает весь код не обязательно строго параллельно, поэтому длина картинки не имеет значения, она всё равно масштабируется.
|
|||
|
||||
DoZENT |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 2.6.2006 Репутация: нет Всего: 1 |
-------------------- Какая боль, какая боль, Internet Explorer 5.0... |
|||
|
||||
cardinal |
|
|||
![]() Инженер ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 6003 Регистрация: 26.3.2002 Где: Германия Репутация: 5 Всего: 99 |
-------------------- Немецкая оппозиция потребовала упростить натурализацию иммигрантов В моем блоге: Разные истории из жизни в Германии "Познание бесконечности требует бесконечного времени, а потому работай не работай - все едино". А. и Б. Стругацкие |
|||
|
||||
DoZENT |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 2.6.2006 Репутация: нет Всего: 1 |
Pavia, в принципе понятно, спасибо. а что делать со штрих кодами, ширина единичных штрихов в которых разная? Например, на некоторых штрих кодах черный штрих - в 3 пикселя, а белый - в 1 пиксель. Среднее значение = 2. Читая каждый второй пиксель в штрих коде, мы можем пропустить белые полосы длинной в 1 пиксель. Можно ли считать такие штрих коды некорректными или есть способ прочитать их?
-------------------- Какая боль, какая боль, Internet Explorer 5.0... |
|||
|
||||
DoZENT |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 326 Регистрация: 2.6.2006 Репутация: нет Всего: 1 |
еще подскажите, нужно ли картинку черно-белой делать?
-------------------- Какая боль, какая боль, Internet Explorer 5.0... |
|||
|
||||
vvalen |
|
|||
Новичок Профиль Группа: Участник Сообщений: 1 Регистрация: 2.6.2010 Репутация: нет Всего: нет |
вот нашел готовую реализацию распознования штрихкодов с изображением из веб и ip камер
http://www.aivision.ru/forum/viewtopic.php?f=2&t=2 там есть демка распознающая EAN-13 |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Алгоритмы" | |
|
Форум "Алгоритмы" предназначен для обсуждения вопросов, связанных только с алгоритмами и структурами данных, без привязки к конкретному языку программирования и/или программному продукту.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, maxim1000. |
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Алгоритмы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |