Вячеслав Землянский (ins0mnis) wrote in engineering_ru,
Вячеслав Землянский
ins0mnis
engineering_ru

Не для наших глаз.

В далёком детстве, году эдак в 94м, мама принесла домой шоколадку. Событие само по себе нетривиальное, но моё внимание умудрилось соскочить с белого шоколада и сконцентрироваться на упаковке. Там, на той стороне что не видна на запечатанной упаковке, были странные значки: чёрное перекрестье и три разноцветных кружка. Что это? Кто на кондитерской фабрике способен прочесть эти значки?
Со временем пришло осознание - эти значки не имеют отношения к шоколаду. И вокруг полно разнообразных значков и азбук, которые не способен прочесть ни один человек. Их читают роботы.

Всё началось после Второй мировой войны. К западным странам неумолимо подкрадывалось общество потребления - полки универмагов ломились от товаров всевозможных наименований. Кассиры вешались: запомнить цены всего этого изобилия было нереально.
Американец Бернард Сильвер задался целью автоматизировать процесс. Люди и машины с 1804 года успешно общались посредством перфокарт и лент. Но их можно читать только на просвет - для упаковки не годится. Сильвер решил создать графический аналог азбуки Морзе. Физическую реализацию он позаимствовал из кино - звук тогда записывался на краешек киноплёнки и считывался фотоэлементом. И Сильвер придумал штрихкод. Изначально коды предполагалось делать круглыми, такой код можно считывать в любом направлении. Но развёрнутые в линию коды компактней и лучше вписываются в дизайн упаковки. Кассир легко сориентирует красную полоску лазерной развертки в нужном направлении. А для стационарных сканеров можно сделать несколько развёрток под разными углами, или сделать развёртку вращающейся. Также предлагалось использовать невидимые ультрафиолетовые чернила, но остановились на простейшем варианте. Так штрихкод плотно вошёл в торговлю и логистику, став стандартом по умолчанию.

В классическом штрихкоде информация закодирована в толщине линий:
Linear1.svg

А вот другой вариант - тут линии одинаковой толщины, важно, в каком положении линия выступает из строки (вниз, вверх, в обе стороны, не выступает):
Linear2
А вот и несколько вариантов киноплёнки с оптическим саундтреком - прабабушки штихкодов:

35mm_film_audio_macro

Внешний вид кодов некоторым кажется суховатым. Не беда - можно немного видоизменить крайние участки. Бутылочку кока-колы видели все:

Linear3

Но некоторым этого показалось мало. А где искать нестандартное решение тривиальной задачи как не в Японии?
Linear4

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

Linear5

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

Штрихкод отлично справлялся с возложенной на него миссией, облегчая работу миллионов кассиров, грузчиков, аптекарей и библиотекарей. Но, как известно, данных всегда слишком много, а места для их записи слишком мало. И вот на коробках уже теснятся множество кодов со всевозможной информацией о товаре. И вот кому-то приходит в голову объединить несколько полосок в массив одна над одной. А тут ещё и видеокамеры стали меньше и дешевле (такие коды уже невозможно читать лазером), прокачались системы распознавания образов. Так появились двухмерные коды с более плотной записью информации. Вот пример такого многострочного кода стандарта PDF:

PDF

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

Наиболее популярный на данный момент стандарт - японский QR (Quick response code). Используется в рекламе в качестве физической гиперссылки. Код распознаётся камерой смартфона и позволяет перейти на сайт для получения дополнительной информации.
Коды бывают разных размеров, для захвата кода камерой необходимы маркеры - чёрные квадратики в углах (и маленькие, разбросанные по матрице):
QR1

Такие можно увидеть в любом журнале, на билбордах и афишах. Камеры распознают любое контрастное изображение, что даёт дизайнером некоторое пространство для творчества:
QR2
Данные записываются в виде помехоустойчивых кодов. Это позволяет считывать повреждённые изображения, а также вносить повреждения умышленно. Зачем? Ну вот например рисуночек всунуть:

QR3

Другая популярная разновидность - код Aztec, разработанный в Америке. Он похож на QR, но маркер расположен в центре изображения:

Aztec

Его часто используют железнодорожные и авиакомпании для верификации купленных по интернету билетов:
424px-OnlineTicket_DeutscheBahn_200dpi
Формат Data Matrix немецкой компании Siemens стал стандартом на производстве для маркировки различных деталей. В нём нет сплошных закрашенных участков - маркерами служат линии:
DataMatrix1

Такой код удобно наносить на любой материал с помощью лазерной гравировки:

DataMatrix2

Для считывания таких кодов приходится решать проблему их выравнивания - изображение ведь поступает с камеры под весьма произвольным углом. А можно решать задачу от противного - зная эталонное изображение определить его положение относительно камеры. Компьютерные маркеры в виде чёрных квадратов или чёрточек можно заметить на разнообразных бланках тестирования. Они помогают правильно сориентировать лист и установить положение квадратиков с ответами:

Loc1

И почтовых конвертах (там ещё и цифры машина читает):

Loc4

И вот мы подобрались вплотную к тайне шоколадной обёртки. Цветные кружки были метками для сведения цветов при полиграфической печати. Ведь в типографии каждый цвет печатается отдельным станком. И в принтер ровно заправить бумагу не всегда выходит, а эти машины печатают с рулона и очень быстро - перекосы неизбежны. А если оттиски разных цветов немного разойдутся - получится пародия на стереоснимок. Метки сведения, расположение которых известно, помогают машинам подправлять печать для идеального совмещения. Другие метки помогают правильно обрезать лист. При высококачественной печати метки располагаются на специальных полях, которые потом обрезают:

Tip1

Но при массовом производстве (упаковка, газеты, учебники) бумагу экономят: метки прячут на сгибах и между склеиваемых поверхностей:

Tip2

Или на самой неприметной части упаковки - донышке:

Tip3

Помогают метки и при расфасовке, если упаковки отрезаются от общего куска по мере наполнения. Вот эти чёрные риски на пакетиках:

Loc2

И тюбиках:

Loc3

Такое решение можно применить не только для плоскости - можно определять положение объектов и в трёх измерениях. Вот, например, стенд для калибровки автомобильной подвески:

Loc5

К колёсам прикреплены контрастные мишени, их размер и форма в кадре позволяет компьютеру построить трёхмерные координаты (и что-то там подкрутить в тачке:). Такую систему можно использовать и для настройки промышленного робота - манипулятор размахивает такой "шахматной доской", а камера на потолке соотносит реальное положение устройства и подаваемое на моторы напряжение.
Нечто подобное можно видеть на корпусе и манипуляторах марсохода Curiosity:

Loc6

Кружки с закрашенными секторами, как  на висках у краш-манекенов, позволяют определять угол поворота. Ровер получает команды на поворот устройства, преобразуемые в напряжение для сервоприводов. Маркеры служат защитой от дурака, если застрявшая в моторе марсианская песчинка не даст оси повернуться на нужный угол. Чтобы робот не застрелился в бортовой компьютер из геологического лазера, положение манипулятора подтверждается визуально. Тут, правда, нужно сделать отступление, ибо я понятия не имею: анализируются эти метки автоматически, или отсылаются техникам на Землю. Подскажите, если кто копался в НАСАвских презентациях?

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

UPD: Забыл самое интересное - созвездие Евриона!

Паттерн из пяти окружностей небольшого диаметра, вплетённых в дизайн некоторых банкнот. Такие метки блокируют печать на цветных ксероксах. Кто нибудь пробовал?)
Tags: информация, торговля
Subscribe
promo engineering_ru april 14, 2014 13:47 105
Buy for 200 tokens
В 50-х годах Советский Союз вел грандиозные стройки, одной из которых был невиданный по тем временам проект — подземный тоннель на остров Сахалин, получивший рабочее название «Строительство № 506″. В конце 40-х, начале 50-х годов XX века остров Сахалин переживал бурный…
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 48 comments
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →
Previous
← Ctrl ← Alt
Next
Ctrl → Alt →