Закодированная бумага для оптического считывания

Иллюстрации

Показать все

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

Реферат

Область техники

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

Предшествующий уровень техники

Известно сохранение закодированной информации на поверхности посредством различных типов меток.

Патент США 5852434, например, описывает шаблон кодирования позиции, который кодирует X-Y-координаты для набора позиций на поверхности записи. Шаблон кодирования позиции дает возможность пользователю посредством электроники регистрировать графическую информацию, которая создается на поверхности записи, посредством непрерывного считывания шаблона кодирования позиции.

Три примера построения шаблона кодирования позиции раскрыты в патенте США 5852434. В первом примере шаблон состоит из символов, каждый из которых строится из трех концентрических кругов. Внешний круг представляет Х-координату, а средний круг представляет Y-координату. Оба внешних круга дополнительно разделены на 16 частей, которые, в зависимости от того, заполнены они или нет, показывают различные числа. Это означает, что каждая пара координат X, Y кодируется сложным символом с конкретным видом.

Во втором примере координаты каждой точки на поверхности записи задаются штрих-кодами, причем штрих-код для Х-координаты изображается над штрих-кодом для Y-координаты.

В качестве третьего примера дается шаблон в виде клеток, который может использоваться для кодирования Х- и Y-координат. Однако нет объяснения относительно того, как строится шаблон в виде клеток или как он может быть преобразован в координаты.

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

Еще одна проблема состоит в том, что обработка определенного шаблона кодирования позиции становится слишком сложной вследствие того факта, что процессор должен интерпретировать сложные символы.

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

В патенте ЕР 0578692 описан шаблон кодирования позиции, который строится из ячеек в виде квадратов. Значения ячеек определяются по их виду, например по их цвету. Ячейки могут быть отделены разделительными зонами так, чтобы можно было различить две смежные ячейки с одинаковым цветом. Этот шаблон кодирования позиции отличается от шаблона согласно патенту США 5852434 тем, что конкретный набор ячеек, то есть символов, вместе кодирует положение. Кодирование, кроме того, является плавающим, что означает, что произвольная частичная поверхность шаблона, которая содержит вышеупомянутый набор ячеек, кодирует положение. Таким образом, каждая ячейка вносит вклад в кодирование нескольких положений. В этом способе отношение между требуемой поверхностью датчика и частью шаблона кодирования позиции, которая задает положение, меньше, чем в вышеупомянутом американском патенте. Кроме того, каждая ячейка менее сложна, и поэтому процессор, который должен декодировать шаблон кодирования позиции, должен иметь способность распознать меньшее количество различных элементов. Однако процессор должен быть способен определять местоположение и различать, по меньшей мере, две различные ячейки.

Патент ЕР 0171284 В1 представляет другой плавающий шаблон кодирования позиции, который строится из горизонтальных и вертикальных линий, причем вертикальные линии кодируют положение в горизонтальном направлении, а горизонтальные линии кодируют положение в вертикальном направлении. Линии могут оказаться в положениях, которые являются кратными 1 мм. Наличие линии в таком положении кодирует единицу (1), отсутствие линии в таком положении кодирует ноль (0).

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

Патентная заявка Швеции SE 9901954-9 настоящих заявителей, которая зарегистрирована 28 мая 1999 и которая не была широко доступна во время подачи настоящей заявки и, следовательно, не представляет уровня техники, описывает дополнительный шаблон кодирования позиции плавающего типа, в котором информация позиции кодируется графически посредством точек первого и второго размера, причем точка первого размера соответствует нулю (0), а точка второго размера соответствует единице (1). Множество точек вместе кодируют координаты для позиции.

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

Сущность изобретения

Следовательно, задача настоящего изобретения заключается в том, чтобы снабдить изделие шаблоном кодирования, который выполняет это требование, по меньшей мере, в той степени, как известные шаблоны кодирования.

Эта задача достигается посредством изделия по п.1.

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

В уровне техники кодирование обычно осуществляется посредством вида одного или более символов или меток, причем значение каждого символа или метки определяется их видом. Устройство, которое декодирует шаблон кодирования, должно быть способно распознавать различные символы или метки, что увеличивает чувствительность к помехам или делает декодирование более трудным.

Согласно настоящему изобретению определяют значение каждой метки вместо того, чтобы определять, как она расположена относительно ее номинальной позиции. Поскольку значение основано на местоположении метки, все метки могут иметь идентичный вид. Следовательно, шаблон кодирования можно легко нанести на изделие. Более того, определение меток выполняется просто и не подвержено влиянию присутствующих на изделии других меток, которые не являются частью шаблона кодирования. Кроме того, шаблон кодирования может быть реализован более просто посредством использования технологии, отличной от оптической технологии, такой как, например, химической, электрической или механической. Оформление метки также означает, что изделие, которое снабжается шаблоном кодирования, будет эстетически более привлекательно, чем в случае, когда метка считывается оптически. Наконец, можно иметь большое расстояние между метками, по сравнению с плотностью информации, что означает, что шаблон кодирования является менее чувствительным к расплывчатости за счет движения, которая может возникать во время считывания.

В этой связи под номинальным положением подразумевается положение, которое можно определить и относительно которого метка может быть локализована различными способами. Номинальные позиции могут быть отмечены на изделии, но они также могут быть виртуальными и могут определяться косвенно.

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

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

В предпочтительном варианте осуществления каждому номинальному положению присваивается метка. Преимущество, получаемое тем самым, состоит в том, что все значения кодируются меткой. Таким образом, отсутствие метки всегда подразумевает ошибку.

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

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

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

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

В особенно предпочтительном варианте осуществления каждая метка смещается относительно ее номинальной позиции в одном из четырех ортогональных направлений. Зная номинальное положение метки, соответственно, необходимо произвести поиск только в четырех различных направлениях. Это облегчает и ускоряет определение местонахождения меток. Кроме того, тем самым снижается риск ошибок, поскольку метки, которые не являются частью шаблона и которые расположены в позициях, отличных от позиций вдоль четырех ортогональных направлений, не определяются и, таким образом, не приводят к риску воздействия на декодирование шаблона.

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

В предпочтительном варианте осуществления расстояние между растровыми линиями составляет приблизительно от 250 мкм до 300 мкм, предпочтительно 300 мкм. Это обеспечивает возможность высокой плотности информации, при этом сохраняя надежное определение.

В предпочтительном варианте осуществления растровые линии также образуют прямоугольную, предпочтительно квадратную, сетку. В последнем случае расстояние между растровыми линиями является одинаковым в обоих направлениях.

В предпочтительном варианте осуществления каждая метка дополнительно смещается по одной из растровых линий. Когда растр известен, местоположение меток может быть определено эффективным способом путем поиска вдоль четко заданных направлений, которые представляют растровые линии.

В предпочтительном варианте осуществления каждая метка смещается от своей номинальной позиции на расстояние, которое составляет от 1/4 до 1/8, предпочтительно 1/6, от расстояния между растровыми линиями. Если смещение составляет приблизительно 1/6 от интервала растровых линий, то относительно легко определить, к какой именно номинальной позиции принадлежит метка. Если смещение составляет приблизительно меньше 1/8, то может оказаться, что его трудно определить, то есть требования к разрешению слишком высокие. Если смещение составляет больше, чем приблизительно 1/4, то может оказаться, что трудно определить, к какой именно номинальной позиции принадлежит метка. Это применимо особенно в случае, если представление шаблона кодирования, зарегистрированное датчиком или детектором, искажено, что может происходить, например, если оптический датчик находится под углом к поверхности, на которой расположен шаблон кодирования. Таким образом, при вышеупомянутом предпочтительном интервале растровых линий, равном 300 мкм, предпочтительное смещение составляет 50 мкм.

Растр с растровыми линиями может быть обозначен на поверхности таким способом, чтобы его можно было считывать непосредственно устройством, которое определяет метки. Однако в этом случае растр также должен быть определяемым устройством и отличаться от меток. В предпочтительном варианте осуществления растр вместо этого может быть виртуальным, что означает, что он не отмечен каким-либо способом на изделии, но его местоположение может быть определено из местоположений меток. Таким образом, вместо того, чтобы считываться с изделия, он может определяться косвенно посредством меток.

Как уже упоминалось, в предпочтительном варианте осуществления по существу все метки имеют по существу идентичный вид. Это позволяет легко располагать их на изделии.

Метки, предпочтительно, имеют некоторую простую геометрическую форму. Таким образом, они могут быть преимущественно приблизительно круглыми, треугольными или прямоугольными. Они могут быть закрашенными или нет, но последнее предпочтительно, поскольку тогда определение является более простым.

Метка не должна закрывать номинальную позицию и поэтому не должна иметь большего диаметра, чем двойное смещение, которое составляет 200%. Однако такое требование не является критичным, поскольку допустима некоторая величина перекрывания, например 240%. Наименьший размер определяется, во-первых, разрешением датчика и требованиями процесса печати, используемого для изготовления шаблона. Однако практически метки не должны иметь диаметр меньше, чем приблизительно 50% от смещения, для того чтобы избежать проблем с частицами и шумом в датчике.

Шаблон кодирования может быть реализован с любыми параметрами, которые могут использоваться для создания меток вышеупомянутого типа, которые могут определяться детектором. Параметры могут быть электрическими или химическими, или некоторого другого типа. Однако предпочтительно, чтобы шаблон кодирования можно было считывать оптически, чтобы его легче было располагать на изделии. Например, он может быть напечатан на изделии.

В предпочтительном варианте осуществления шаблон кодирования может считываться инфракрасным светом. В этом способе информация, которая не может считываться инфракрасным светом, может быть наложена на шаблон кодирования, не мешая его считыванию.

В предпочтительном варианте осуществления метки составляют от 0,25% до 20%, предпочтительно приблизительно 9%, от поверхности, которую занимает шаблон кодирования. Если шаблон печатается, например, на листе белой бумаги, то в таком случае это будет приводить только к бледной серой штриховке бумаги, что означает, что она будет выглядеть как по существу нормальная бумага.

Предпочтительно, шаблон кодирования представляет собой шаблон кодирования позиции, который кодирует множество позиций на изделии, причем каждая позиция кодируется посредством множества меток. Однако шаблон кодирования также может использоваться для кодирования другой информации.

Изделием может быть любое изделие, которое может быть снабжено шаблоном кодирования. Оно не обязательно должно быть физическим изделием, но также может быть электронным, например, изображением или поверхностью на экране компьютера, на который шаблон кодирования наносится в электронном виде.

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

Преимущества использования такого шаблона очевидны из обсуждения шаблона кодирования на изделии. Особенности, которые упомянуты для шаблона кодирования на изделии, также, конечно, применимы к использованию шаблона кодирования. Использование может, например, заключаться в печати шаблона кодирования на изделии, сохранении шаблона кодирования в электронном виде или декодировании шаблона кодирования.

Краткое описание чертежей

В дальнейшем изобретение поясняется описанием конкретных вариантов его осуществления со ссылками на сопровождающие чертежи, на которых:

фиг.1 схематично изображает вариант осуществления изделия, которое снабжается шаблоном кодирования позиции,

фиг.2 схематично изображает то, каким образом метки могут быть оформлены и расположены в варианте осуществления изобретения,

фиг.3 схематично изображает пример символов 4*4, которые используются для кодирования позиции,

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

фиг.5 схематично изображает шаблон кодирования позиции с треугольным растром и

фиг.6 схематично изображает шаблон кодирования позиции с гексагональным растром.

Подробное описание предпочтительных вариантов осуществления

Фиг.1 изображает часть изделия в виде листа 1 бумаги, который, по меньшей мере, на части своей поверхности 2 снабжается оптически считываемым шаблоном 3 кодирования позиции, обеспечивающим возможность определения позиции.

Шаблон кодирования позиции содержит метки 4, которые выстроены систематически на поверхности 2 так, чтобы она имела вид с нанесенным шаблоном. Лист бумаги имеет ось Х-координаты и ось Y-координаты. Определение позиции может выполняться на всей поверхности изделия. В других случаях поверхность, которая обеспечивает возможность определения позиции, может составлять маленькую часть изделия.

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

Шаблон кодирования позиции содержит виртуальный растр, который, таким образом, является как не видимым для глаза, так и не может быть обнаружен непосредственно устройством, которое должно определять позицию на поверхности, а также содержит множество меток 4, каждая из которых, в зависимости от ее местоположения, представляет одно из четырех значений от "1" до "4", как описано ниже. В этой связи следует указать, что для наглядности шаблон кодирования позиции на фиг.1 является сильно увеличенным. Кроме того, он показан расположенным только на части листа бумаги.

Шаблон кодирования позиции расположен так, что позиция частичной поверхности на полной поверхности записи однозначно определяется метками, находящимися на этой частичной поверхности. Первая и вторая частичные поверхности 5а, 5b показаны на фиг.1 пунктирными линиями. Вторая частичная поверхность частично накладывается на первую частичную поверхность. Часть шаблона кодирования позиции (здесь метки 4*4) на первой частичной поверхности 5а кодирует первую позицию, а часть шаблона кодирования позиции на второй частичной поверхности 5b кодирует вторую позицию. Таким образом, шаблон кодирования позиции является частично одним и тем же для смежных первой и второй позиций. Такой шаблон кодирования позиции в настоящем описании называется "плавающим". Каждая частичная поверхность кодирует специфическую позицию.

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

В одном варианте осуществления расстояние между растровыми линиями составляет 300 мкм, а угол между растровыми линиями составляет 90 градусов. Возможны другие растровые интервалы, например 254 мкм, для того, чтобы адаптироваться к принтерам и сканерам, которые часто имеют разрешение, кратное 100 точкам на дюйм, что соответствует расстоянию между точками, равному 25,4 мм/100, то есть 254 мкм.

Значение метки зависит от того, где расположена метка относительно номинальной позиции. В примере на фиг.2 имеются четыре возможных местоположения, по одному на каждую из растровых линий, отстоящих от номинальной позиции. Смещение от номинальной позиции имеет одинаковую величину для всех значений.

Каждая метка 7 смещается относительно своей номинальной позиции 6, то есть в номинальной позиции нет никакой метки. Кроме того, на одну номинальную позицию приходится только одна метка, и эта метка смещается относительно своей номинальной позиции. Это относится к меткам, которые составляют шаблон. Могут иметься другие метки на поверхности, которые не являются частью шаблона и, таким образом, не вносят вклад в кодирование. Такие метки могут представлять собой пятнышки пыли, непреднамеренные точки или метки и преднамеренные метки, например, от изображения или чертежа на поверхности. Поскольку положение меток шаблона на поверхности достаточно четкое, шаблон не подвержен действию таких помех.

В одном варианте осуществления метки смещаются на 50 мкм относительно номинальной позиции 6 вдоль растровой линии 8. Смещение составляет, предпочтительно, 1/6 растрового интервала, поскольку тогда относительно легко определить, к какой именно номинальной позиции принадлежит конкретная метка. Смещение должно составлять, по меньшей мере, приблизительно 1/8 растрового интервала, в противном случае становится трудно определять смещение, то есть требования к разрешению становятся высокими. С другой стороны, смещение должно составлять меньше, чем приблизительно 1/4 растрового интервала, для того чтобы можно было определить, к какой номинальной позиции принадлежит метка.

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

Каждая метка состоит из более или менее круглого пятнышка с радиусом, который имеет приблизительно такую же величину, как смещение, или несколько меньше. Радиус может составлять от 25% до 120% от смещения. Если радиус намного больше, чем смещение, то может быть трудно определить растровые линии. Если радиус слишком маленький, то для регистрации меток требуется большее разрешение.

Метки не обязательно должны быть круглыми, но может использоваться любая подходящая форма, как, например, квадрат или треугольник.

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

В дальнейшем метка на фиг.2а представляет значение 1, на фиг.2 б - значение 2, на фиг.2в представляет значение 3 и на фиг.2г представляет значение 4.

Таким образом, каждая метка может представлять одно из четырех значений от 1 до 4. Это означает, что шаблон кодирования позиции может быть разделен на первый код позиции для х-координаты и второй код позиции для у-координаты. Разделение выполняется следующим образом:

Значение меткиx-кодy-код
111
201
310
400

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

Каждая позиция кодируется посредством множества меток. В этом примере для того, чтобы закодировать позицию в двух измерениях, то есть по х-координате и y-координате, используются метки 4*4.

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

Чтобы битовый ряд имел вышеописанную особенность для битовой последовательности из четырех битов, он должен быть длиной максимум 16 битов. Однако в данном примере битовый ряд длиной только семь битов используется следующим образом:

"0001010".

Этот битовый ряд содержит семь уникальных битовых последовательностей из четырех битов, которые кодируют номер позиции в ряду следующим образом:

Номер позиции в рядуПоследовательность
00001
10010
20101
31010
40100
51000
60000

Для того, чтобы закодировать х-координату, битовый ряд записывается последовательно в столбцах по всей поверхности, которая должна быть закодирована, где левый столбец К0 соответствует нулевой х-координате (0). Таким образом, в одном столбце битовый ряд может последовательно повторяться несколько раз.

Кодирование основано на разностях или смещениях позиции между соседними битовыми рядами в смежных столбцах. Величина разности определяется номером позиции (то есть битовой последовательностью) в битовом ряду, с которого начинаются смежные столбцы.

Более точно, если взять разность Δn по модулю семь между, с одной стороны, номером позиции, который закодирован четырехбитовой последовательностью в первом столбце Кn и который, таким образом, может иметь значение от 0 до 6, и, с другой стороны, номером позиции, который закодирован смежной четырехбитовой последовательностью на соответствующей "высоте" в смежном столбце Kn+1, то разность будет одинаковой независимо от того, где, то есть на какой "высоте", вдоль двух столбцов создается разность. Таким образом, используя разность между номерами позиций для двух битовых последовательностей в двух смежных столбцах, можно закодировать х-координату, которая является независимой от всех y-координат и постоянной для них.

Поскольку каждая позиция на поверхности кодируется частичной поверхностью, в этом примере состоящей из 4*4 меток, то для кодирования х-координаты имеются четыре вертикальные доступные битовые последовательности и, таким образом, три разности каждая со значением от 0 до 6.

Шаблон делится на кодовые окна F с особенностью, состоящей в том, что каждое кодовое окно состоит из 4*4 меток. Таким образом, имеются четыре горизонтальные битовые последовательности и четыре вертикальные доступные битовые последовательности, так что можно создать три разности в х-направлении и можно получить четыре позиции в y-направлении. Эти три разности и четыре позиции кодируют позицию частичной поверхности в х-направлении и y-направлении. Смежные окна в х-направлении имеют общий столбец, см. фиг.1. Таким образом, первое кодовое окно F0,0 содержит битовые последовательности из столбцов К0, K1, K2, К3 и битовые последовательности из строк R0, R1, R2, R3. Поскольку разности используются в х-направлении, следующее окно по диагонали в х-направлении и y-направлении, окно F1,1, содержит битовую последовательность из столбцов К3, К4, K5, К6 и строк R4, R5, R6, R7. Рассматривая кодирование только в х-направлении, можно считать, что кодовое окно имеет в y-направлении неограниченное протяжение. Соответственно, рассматривая кодирование только в y-направлении, можно считать, что кодовое окно имеет в х-направлении неограниченное протяжение. Такие первое и второе кодовые окна с неограниченным протяжением в y-направлении и х-направлении, соответственно, вместе образуют кодовое окно типа, показанного на фиг.1, например F0,0.

Каждое окно имеет координаты Fx, которые задают положение окна в х-направлении, и Fy, которые задают положение окна в y-направлении. Таким образом, связь между окнами и столбцами следующая:

Ki=3 Fх

Rj=4 Fy

Кодирование выполняется таким образом, что из трех разностей одна из разностей Δ0 всегда имеет значение 1 или 2, что показывает наименьшую значащую цифру S0 для числа, которое представляет позицию кодового окна в х-направлении, а обе другие разности Δ1, Δ2 имеют значения в диапазоне от 3 до 6, которые показывают наименьшие значащие цифры S1, S2 для координаты кодового окна. Таким образом, для х-координат никакая разность не может быть нулевой, так как это могло бы привести к слишком симметричному кодовому шаблону. Другими словами, столбцы кодируются так, чтобы разности были следующие:

(от 3 до 6); (от 3 до 6); (от 1 до 2); (от 3 до 6); (от 3 до 6); (от 1 до 2); (от 3 до 6); (от 3 до 6); (от 1 до 2); (от 3 до 6); (от 3 до 6);...

Таким образом, каждая х-координата кодируется двумя разностями Δ1, Δ2 между 3 и 6 и последующей разностью, которая равна 1 или 2. Вычитая единицу (1) из наименьшей разности Δ0 и тройку (3) из других разностей, можно получить три цифры S2, S1, S0, которые в основании смешанной системы счисления непосредственно дают номер позиции кодового окна в х-направлении, из которого можно затем непосредственно определить х-координату, как показано в примере ниже. Номер позиции кодового окна:

S2*(4*2)+S1*2+S0*1

Таким образом, используя вышеописанный принцип, возможно закодировать кодовые окна 0, 1, 2,..., 31, используя номер позиции для кодового окна, состоящий из трех цифр, которые представлены тремя разностями. Эти разности кодируются битовым шаблоном, который основан на вышеупомянутом числовом ряде. Битовый шаблон может быть окончательно закодирован графически посредством меток, изображенных на фиг.2.

Во многих случаях, когда регистрируется частичная поверхность, состоящая из 4*4 меток, полный номер позиции, который кодирует х-координату, не будет получен, но будут получены части двух номеров позиций, поскольку частичная поверхность во многих случаях не совпадает с одним кодовым окном, но покрывает части двух смежных кодовых окон в х-направлении. Однако, так как разность для наименьшей значащей цифры S0 каждого номера всегда составляет 1 или 2, полный номер позиции можно легко восстановить, поскольку известно, что цифра является наименьшей значащей.

y-координаты кодируются посредством кодовых окон приблизительно в соответствии с тем же принципом, который используется для х-координат. Циклический числовой ряд, который представляет собой такой же числовой ряд, который используется для х-кодирования, записывается многократно в горизонтальных строках на поверхности, которая должна подвергнуться кодированию позиции. Точно также, как для х-координат, строки составляются так, чтобы они начинались в различных позициях, то есть с различных битовых последовательностей в числовом ряду. Однако для y-координаты разности не используются, а координаты кодируются значениями, которые основаны на начальной позиции числового ряда в каждой строке. Как только х-координата определена для частичной поверхности с 4*4 метками, начальные позиции в числовом ряду фактически могут быть определены для строк, которые включены в y-код для 4*4 меток.

В y-коде наименьшая значащая цифра определяется как единственная цифра, которая имеет значение в специфическом диапазоне. В данном примере строка из четверок начинается в позиции от 0 до 1 в числовом ряду, чтобы показать, что этот ряд относится к наименьшей значащей цифре S0 в кодовом окне, а три другие строки начинаются в любой из позиций от 2 до 6, чтобы показать другие цифры S1 S2 S3 в кодовом окне. Таким образом, в y-направлении имеется следующий ряд значений:

(от 2 до 6); (от 2 до 6); (от 2 до 6); (от 0 до 1); (от 2 до 6); (от 2 до 6); (от 2 до 6); (от 0 до 1); (от 2 до 6);...

Таким образом, каждое кодовое окно кодируется тремя значениями между 2 и 6 и последующим значением между 0 и 1.

Если из низкого значения вычесть ноль (0), а из других значений - двойку (2), то в основании смешанной системы счисления получается позиция в у-направлении S3 S2 S1 S0, способом, подобным для х-направления, из которого номер позиции кодового окна может быть определен непосредственно, то есть:

S3*(5*5*2)+S2*(5*2)+S1*2+S0*1

Используя вышеупомянутый способ, в х-направлении для кодовых окон можно закодировать 4*4*2=32 номеров позиций. Каждое кодовое окно содержит битовые последовательности из трех столбцов, что дает 3*32=96 столбцов или х-координат. Кроме того, можно закодировать 5*5*5*2=250 номеров позиций в y-направлении для кодовых окон. Каждый такой номер позиции содержит горизонтальные битовые последовательности из 4 строк, что дает 4*250=1000 строк или y-координат. Таким образом, всего возможно закодировать 96000 координатных позиций.

Так как х-кодирование основано на разностях, то можно выбрать позицию, в которой начинается первый числовой ряд в первом кодовом окне. Если учесть, что первый числовой ряд может начинаться в семи различных позициях, то можно закодировать 7 * 96000=672000 позиций. Начальная позиция первого числового ряда в первом столбце К0 может быть рассчитана, когда уже определены х- и y-координаты. Вышеупомянутые семь различных начальных позиций для первого ряда могут кодировать различные страницы или поверхности записи изделия.

Теоретически частичная поверхность с 4*4 символами, каждый из которых имеет четыре значения, может закодировать 44*4 позиций, то есть 4294967296 позиций. Таким образом, чтобы обеспечить возможность плавающего определения позиции частичной поверхности, имеется множитель избыточности более 6000 (4294967296/672000).

Избыточность состоит частично в ограничении на величину разностей и частично в использовании только 7 битов из 16 в коде позиции. Однако последний факт может использоваться для определения позиции вращения частичной поверхности. Если к последовательности с четырьмя битами добавить следующий бит в битовом ряду, то получается последовательность с пятью битами. Пятый бит получается посредством считывания смежного бита, находящегося сразу за используемой частичной поверхностью. Такой дополнительный бит часто является легко д