От Иван
К Кирилл Ю
Дата 29.08.2003 16:39:36
Рубрики 1941; Холмово;

Re: Я именно этот алгоритм имел в виду

>Я написал не о значениях e1 и e2, а об их СООТНОШЕНИИ. Разы - это уже не миллиметры, правильно? Т.е. для той же шестерки это соотношение будет примерно равным 1:1. Правду сказать, я немного поторопился насчет b1+b2. Но и тут достаточно соотношения b1+b2 скажем с e1. Т.е. я хотел выразить ту мысль, что имея те самые штрих-пробел-штрих, без последнего пробела и соответственно не зная S, и пусть все элементы будут совершенно произвольного масштаба - у нас сохраняется возможность правильной идентификации знаков практически с теми же допусками, что и с S. Узким местом будет только отличить "6" от "1" в сетах B и C, т.к. "1" просто вдвое увеличенное "6". Но тут можно предположить, что масштабы отдельных знаков все же не будут отличаться более, чем в 2 раза. Соответственно и определить масштаб спорного знака можно, сравнивая его величины с измерениями соседних знаков. Таким образом, S лишь несколько упрощает идентификацию, с тем допущением, что все знаки дополнены до одного и того же размера за счет последнего пробела. Именно из этого я и делаю вывод, что S отнюдь не основной здесь момент.

Собственно, когда я говорил (ранее, когда эта дискуссия возникала, и сейчас) о принципиальной возможности придумать алгоритм, который будет распознавать штрих-код без учета величины S и, следовательно, пробелов между символами, я имелв виду почти в точности то, что Вы написали. Будет ли это декодирование однозначным - нет, при имеющейся структуре штрихов (Вы сами привели пример двух кодов, которые друг от друга отличаются только масштабом, - не уверен, что этот пример единственный). Но даже если бы декодирование було однозначным, надежность такого алгоритма была бы меньшей, по причине того, что используется меньше информации. Представьте, что искажение произошло из-за плохой пропечатки штрих-кода - где-то тонкий штрих "смазался" и стал в два раза толще. Тогда алгоритм ошибется и распознает неверный код, тогда как ГОСТ-овский алгоритм увидит, что один из символов имеет толщину не 7, а 8 модов, и установит факт неправильности самого штрих-кода.