Матричные коды: определение, принцип построения, свойства, параметры, достоинства и недостатки. Двухмерные штрихкоды — что это такое и с чем их едят

Последнее обновление: 12/06/2011

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

Наибольшее распространение в настоящее время получили стандарты DataMatrix, изобретённый в 1989 году, и QR-код («QuickResponse», т.е. «Быстрый отклик»),разработанный в 1994 году Японской компанией Denso Wave Inc. Ключевое отличие QR над Data Matrix - умение работать с кана символами японского языка.
Двухмерный код может быть нанесен различными способами - струйной печатью, гравировкой, лазером, электролитическими способами и т.д. В зависимости от метода нанесения, код может оставаться на элементе на протяжении всего его цикла использования.


QR-код

QR код - это разновидность матричного кода (2D-barcode), созданная Японской корпорацией Denso-Wave в 1994 году. "QR" - это сокращение от"Quick Response", "Быстрый отклик", этим названием создатели хотели показать, что QR-код позволяет быстро доносить свое содержание до пользователя. QR коды очень распространены в Японии, там они являются самым популярным видом 2D-кодов.
Уже в начале 2000 года QR-коды получили широкое распространение в Японии и других азиатских странах. Вы можете найти их на визитках,журналах, газетах, листовках, плакатах, досках объявлений, продуктах питания, сайтах и т. д. В Европе и Америке тоже стараются не отставать.

Несмотря на то, что QR коды изначально использовались для учета деталей в машиностроении, сейчас они используются более широко, как для коммерческих систем учета, так и для быстрой доставки информации пользователям мобильных телефонов. QR коды могут хранить контактную информацию, текст, телефонные номера, адреса e-mail и гипертекстовые ссылки. Пользователи с телефоном, оснащенным камерой и с соответствующим программным обеспечением могут сосканировать QR-код,при этом откроется закодированная в QR гиперссылка, или закодированный контакт добавится в адресную книгу. Удобство использования QR-кода очевидно - вместо запоминания длинной ссылки или адреса e-mail достаточно навести камеру телефона на QR-код, и ссылка будет добавлена в избранное.

Емкость QR-кода

На первый взгляд может показаться, что QR-код не способен хранить много информации, и подходит лишь для кодирования коротких строк, например, URL или e-mail. На самом деле емкость QR-кода не так уж мала:

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

Коррекция ошибок в QR кодах

QR коды используют алгоритм Рида-Соломона(Reed-Solomon) для коррекции ошибок. Это позволяет без проблем считывать коды, которые каким-то образом повреждены - затерты, перечеркнуты, и т.п. QR коды имеют 4 уровня коррекции ошибок, которые отличаются количеством информации для восстановления и соответственно количеством полезной информации,которую можно восстановить при повреждении кода. Уровни коррекции и соответствующие проценты информации, которые возможно восстановить,следующие:

L 7%
M 15%
Q 25%
H 30%

DataMatrix код

Штрихкод DataMatrix, в свою очередь, на 30-60% меньше по площади, чемQR, содержащий идентичные данные.

DataMatrix - типичный представитель семейства 2D-баркодов, позволяющий закодировать до 3Кб информации. DataMatrix, как и все другие подобные баркоды, содержит информацию для восстановления, которая позволяет восстановить закодированную информацию при частичном повреждении кода.

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

Особенности DataMatrix кода:

  • Стандартизация (принят международный стандарт ISO/IES16022, готовится российский стандарт)
  • Большая информационная емкость (более 2000 букв или 3000цифр)
  • Высокая скорость распознавания и декодирования
  • Низкие требования к качеству поверхности, на которуюнаносится метка
  • Распознавание не зависит от фона изображения
  • У символа допускается две формы - квадрат и прямоугольник,это облегчает вписывание метки в имеющееся на изделии пространство

Наиболее распространенное применение DataMatrix - это маркировка небольших объектов, например микросхем, поскольку DataMatrix позволяет закодировать 50 символов в изображении размером 2-3 мм2, который может быть считан без проблем. В общем-то размер кода ограничен только технологически, как и в случае любого другого 2D кода, но поскольку DataMatrix - это открытый стандартизованный код, многие компании его используют для своих целей. Этим можно объяснить его широкое распространение.

Коды DataMatrix состоят из модулей, состыкованных друг с другом. Всегос использованием DataMatrix можно закодировать до 3116 символов ASCII.Коды должны содержать четное количество модулей по вертикали и горизонтали. Большинство DataMatrix-ов квадратные, но в целом можно использовать и прямоугольные коды. Все коды используют коррекцию ошибок стандарта ECC200, который, в свою очередь, использует алгоритм Рида-Соломона(Reed-Solomon) для кодирования/декодирования данных. Это позволяет восстановить в случае повреждения кода до 30% полезной информации. DataMatrix коды постепенно становятся привычным явлением на конвертах и посылках. Код может быть быстро прочитан сканером, что позволяет отслеживать корреспонденцию довольно эффективно

В промышленности DataMatrix применяют для маркировки различных элементов.

Microsoft Tag

Microsoft Tag представляет собой двухмерный цветной штрихкод (High Capacity Color Barcode). В отличии от QR и DataMatrix-кодов, этот тип гораздо лучше распознается. Даже расфокусированный код (часто камеры мобильных телефонов без автофокуса) можно прочесть.

Microsoft Tag хранит собственный номер длиной 13 байт + 1 контрольный бит. Программа распознавания отправляет этот номер на сервер, которые выдает хранимую в этом коде информацию.

Плюсы Microsoft Tag, по сравнению с QR и DataMatrix-кодами

  • Хранят больше информации на том же физическом размере
  • Информацию содержат только небольшие кружочки в центрах треугольников и концы синхронизационных линий. Поэтому возможны Microsoft Tag и с рисунками.
  • Можно проследить сколько пользователей "прочли" код (благодаря статистике Live)

Минусы Microsoft Tag, по сравнению с QR и DataMatrix-кодами

  • Требуется подключение к интернету (т.к вся информация, зашифрованная в коде, находится на серверах Microsoft Tag)
  • Необходимо цветное печатающее устройство (хотя возможно создать и черно-белый код)

Создание своего кода доступно (необходима учетная запись Windows Live).

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

Создание своего кода

Создать QR-код с любой текстовой информацией можно несколькими способами:

1) Через онлайн-сервисы

Наиболее простой и удобный способ. Просто заходите на специальный сайт, выбираете тип кода (QR или DataMatrix), выбираете,что будет содержать код (просто текст, адрес интернета, адрес e-mail, визитную карточку, размер кода).

QuickMarkreader [ЛОГИН и ПАРОЛЬ = 4PDA]
BeeTagg QR Reader

2) Через программы на ПК

Как правильно прочесть код через мобильный телефон?

1) Запустить программу на сотовом.

2) Когда активируется камера, навести ее на двухмерный код. Рекомендуемое расстояние (для небольших кодов) - 15 см!

3) Используя цифровой зум, приблизьте код, чтобы он четко и полностью был виден на дисплее (цифр.зум лучше работает, чем уменьшение расстояния до кода)

4) Программа автоматически распознаст код и выдаст результат

Если не получилось с первого раза - попробуйте еще, меняя расстояние и увеличение до кода

Советы:

1) Сканируйте при хорошем освещении.

2) Не допускайте сильной тряски телефона при сканировании.

3) Располагайте код под углом 90" к телефону, т.е одной из четырех сторон квадрата (не важно, какой).

4) Старайтесь располагать телефон на одной высоте с кодом.

Как создать хорошо читаемый код?

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

2) Если нужно закодировать много информации - делайте код большего размера.

3) Печатайте код с максимальным качеством - чтобы был наиболее четким(особенно важно для струйных принтеров).

4) Если напечатали код и хотите его вырезать с листа, оставляйте поля -где-то 2 мм с каждой стороны (на qrcoder.ru поля встраиваются автоматически)

5) После создания готового варианта - проверьте его несколькими программами с мобильного.

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

В соответствии с ГОСТом 20687-82 передаваемые блоки ин­формационных, символов записываются в виде столбцов и строк матрицы выбранного размера (ранга). Первоначальная запись информацион­ных символов по строкам или столбцам не имеет принципиального значения, т.е. не сказывается на характеристиках кода. Матрицы могут быть по форме представления квадратные и прямоугольные, т.е. рангами соответственно где k и l количество соответственно строк и столбцов, представляющие передаваемые информационные символы.

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


Таким образом, ранг матрицы будет равен

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

Примечание: для синхронных и асинхронных систем связи ГОСТ 20687-86 предусматривает различные правила форми­рования проверочных символов по столбцам, а именно:

Для синхронных систем связи формируется четное число логических 1;

Для асинхронных систем связи формируется нечетное число логических 1.

На приемной стороне, т.е. в декодере, формируется аналогичная матрица рангом . Приемная матрица формируется следующим образом. В каждом столбце и в каж­дой строке по принятым информационным символам формиру­ются проверочные символы (b i , j) (проверки на четность), которые записываются в матрице рядом с соответствующими принятыми проверочными символами (смотри b n ,1 и b" n+1,1 b 1, n и b" 1, n+1 т.д.). Далее в каждой строке и в каждом столбце из принятых и вновь сформированных проверочных символов формиру­ются синдромные символы по правилу:

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

1) с обнаружением ошибок и повторной передачей пере­данного информационного блока;

2) с обнаружением позиций ошибочных информационных символов и их коррекцией.

Основные свойства одномерного матричного кода:

1) так как формирование проверочных символов осуществляется путем суммирования по модулю два информационных символов, то данный код относится к линейным кодам ;

2) в связи с тем, что каждая строка имеет вес w≥d 0 , то данный код относится к классу блоковых кодов ;

3) так как строки и столбцы матрицы образуют совокуп­ность кодовых последовательностей линейно-независимых отно­сительно операции суммирования по модулю два, то данный код обладает всеми свойствами групповых кодов ;

4) по способу передачи кодовых символов матричные коды могут быть как систематическими, так и несистематическими.

Параметры одномерного матричного кода.

1) N m =n 1 ×n 2 – длина кодовой последовательности, где – со-

ответственно количество строк и столбцов.

При , двоичных символов;

2) количество информационных символов, где k 1 и k 2 соответственно ко­личестве «информационных» строк и «информационных» столбцов. При двоичных символов;

3) R m = K m /N m =k 1 /n 1 ×k 2 /n 2 – скорость передачи кода,

4) l т =N m -K m - абсолютная избыточность кода,

5) r т =(1-R m)*100%- относительная избыточность кода,

6) d 0 m - минимальное ко­довое расстояние, Введение одного проверочного символа в по­следовательность простого безызбыточного кода, т.е. в блок из k информационных символов, позволяет обнаруживать однократ­ные и нечетные ошибки, а в соответствии с теорией кодирова­ния, для обнаружения ошибки d 0 должно быть равно или более Аналогично определяется d 02 по столбцам матрицы. Следовательно, одномерный матричный код имеет и позволяет обнаруживать двукратные ошибкиили исправлять однократные ошибки


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

Если при приеме информации ошибочным будет только один информационный символ, то синдромные символы данной строки и столбца будут ненулевыми, т.е. равны 1;

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

7) Р н.ош т – вероятность необнару­женной ошибки

A Data Matrix двумерный матричный штрих-код, содержащий черные и белые ячейки, упорядоченные в квадратный или прямоугольный массив. Может быть закодирован как текст, так и произвольные данные.
Объём закодированных данных зависит от размеров используемого символа. Символ содержит коды коррекции ошибок: даже если символ частично поврежден, он может быть прочитан. Символ Data Matrix symbol может хранить до 2335 алфавитно-цифровых знаков.

Примечание : В этой символике не отображается человекочитаемый текст.

Data Matrix symbols can encode text in several different ways. Use the Encoding combo box to define the most appropriate encoding algorithm for the text you want to encode:

  • (Mixed): значение по умолчанию. Кодирование данных, используя комбинацию всех нижеприведенных режимов, в зависимости от типа найденных данных. Обычно этот режим дает наилучший результат.
  • Ascii: задает кодировку всех 256 знаков стандартной таблицы ASCII. Наилучший результат для цифровых знаков и знаков с кодами ASCII от 0 до 127.
  • C40: задает кодировку цифр, букв и нескольких специальных символов. Наилучший результат для цифр и алфавитно-цифровых кодов, содержащих только заглавные буквы.
  • Text: задает кодировку цифр, букв и нескольких специальных символов. Наилучший результат для цифр и алфавитно-цифровых кодов, содержащих только строчные буквы.
  • X12: задает кодировку знаков из набора ANSI X12.
  • Edifact: задает кодировку символов с кодами ASCII в диапазоне от 32 до 94. Кодировка считается устаревшей, добавлена для совместимости.
  • Base 256: специальная кодировка для произвольных данных в диапазоне от 0 до 255. Алгоритм кодирования позволяет закодировать любые значения от 0x00 до 0xFF (десятичные 0 ~ 255). Чтобы использовать эту кодировку, необходимо ввести строку, содержащую двухразрядные шестнадцатеричные значения, разделенные пробелом, например: 32 FA 56 E8 12 … и т.д.

В последнее время в сети все больше и больше информации о матричных кодах, они же 2D баркоды(2D barcode), QR коды, Datamatrix коды, и т.п. Что же такое баркоды и для чего они применяются?

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

2D коды

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

Для чего же можно использовать матричные коды? С торговлей и логистикой понятно, но какую пользу может извлечь из этого простой обыватель? Снова приведем пример. Человек протягивает Вам визитку, на которой его Имя, Фамилия, телефон,e-mail,адрес сайта, адрес компании, и т.п. Наверняка Вам хотелось бы поместить контактные данные этого человека к себе в телефон. Представляете сколько времени у Вас уйдет на добавление контакта? Допустим, вы довольно быстро умеете обращаться со своим телефоном, и уложитесь в 2 минуты. Теперь представьте себе, что на обратной стороне визитки напечатан 2D-баркод, и чтобы добавить контакт со всей информацией в телефон, вам нужно запустить на нем приложение для считывания баркодов, навести камеру телефона на баркод, и подтвердить добавление контакта, нажав одну кнопку. На все манипуляции у Вас уйдет не больше 10 секунд.

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

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

Существующие на данный момент приложения для считывания баркодов позволяют передавать ссылки, контакты, SMS/email,GPS-координаты, и собственно, просто текст. Поскольку популярность баркодов растет, а это показывает постоянно растущая активность обсуждений этой темы в интернете, логично предположить, что это подтолкнет создателей софта для мобильных телефонов к воплощению новых идей по использованию баркодов, что еще больше повысит к ним интерес.

Web 3.0?

Существует мнение, что баркоды применительно к их использованию для передачи информации пользователям мобильных устройств - это шаг к формированию Web 3.0, в котором реальный и виртуальный миры частично переплетаются, и объекты виртуального мира(ссылка на веб-страницу) переходят в реальный(баркод этой ссылки, напечатанный на стене)


Есть вопросы или предложения?

Что такое двухмерный штрихкод (2d barcode)? Многие считают, что этот синоним «QR-код». Однако, на самом деле, это не совсем так — видов двухмерных штрихкодов намного больше. Именно о них мы и поговорим в этой статье.

Хочу сразу предупредить, что в этот раз текста будет довольно много, а цветных картинок мало. Да и тема довольно специфическая, и будет интересна далеко не всем. Тем более, что недавно на сайте уже была статья Виталия Буздалова про QR коды, где были четко и лаконично описаны все основные моменты —

К сожалению, WorldPress не позволяет вставлять видео с youtube в текст статьи (либо я не разобрался как это сделать). Из-за этого пришлось вставлять картинку, при клике на которую откроется само видео.

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

Статья делится на две части — теоретическая (разновидности 2D кодов, их особенности и способы применения) и практическая (программы для сканирования и генерации кодов, сайты-генераторы и пр.)

ТЕОРИЯ

Все штрихкоды можно разделить на два типа: линейные и двухмерные.

Линейный штрихкод — это код, который читается в одном направлении. Такие штрихкоды очень просты и дешевы в использовании.

Авторами первого линейного штрихкода можно считать Бернарда Сильвера и Джозефа Вудланда. В 1948 они стали случайными свидетелями разговора между президентом крупной сети продуктовых компаний и деканом Института Технологии Университета Дрекселя, которые обсуждали создание системы, автоматически считывающей информацию о продукте.

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

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

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

Первый коммерческий формат штрихкода был разработан в 1972 году и получил название UPC — Universal Product Code. С тех пор форматы штрихкод многократно совершенствовались и менялись. На сегодняшний день существует более 300 стандартов штрих-кодирования.

Главный недостаток линейных штрихкодов — малое кол-во кодируемой информации. Именно для преодоления этого недостатка и были разработаны двухмерные штрихкоды .

Сайт-генератор — http://barcode.tec-it.com
Программа-сканер — Accusoft Barcode Scanner

PDF417 был разработан компанией Symbol Technologies в 1991 году. Название PDF происходит от «Portable Data File». Число «417» отражает структуру кода — штрихкод имеет длинну в 17 модулей, состоящих из 4-х «штрихов» и «пробелов». По сути, такие блоки являются одномерным штрихкодом.

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

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


DataMatrix

Сайт-генератор — http://www.qrcc.ru/generator.php
Программа-сканер — Barcode Scanner

Код DataMatrix был изобретен компанией International Data Matrix, которая позже была объединена в Acuity CiMatrix и в 2005 году куплена компанией Siemens. Существенное влияние на разработку кода DataMatrix оказал предшествующий ему многострочный штрих-код PDF-417. В настоящее время Data Matrix описывается соответствующими стандартами ISO. Код может быть использован свободно, без каких либо лицензионных отчислений.

Код представляет собой двухмерную матрицу из черно-белых точек или модулей. В коде должно содержаться четное число таких модулей как по вертикали, так и по горизонтали. DataMatrix код может состоять как из одного, так и из нескольких блоков. В каждом блоке обязательно содержится две сплошные пересекающиеся линии в виде буквы L — так называемый «шаблон поиска», который помогает понять ориентацию кода для считывающего устройства. Две другие стороны блока состоят из чередующихся черных и белых точек, которые указывают считывающему устройству размер кода. Код использует стандарт коррекции ошибок, основанный на алгоритме Рида-Соломона. В случае повреждения кода, это позволит восстановить до 30% полезной информации.

Главное прeимущество этой разновидности двухмерных кодов — его сверхмалый размер. С помощью DataMatrix можно поместить информацию в 50 символов на площадь размером в два квадратных миллиметра. При этом, код может быть нанесен на поверхность огромным кол-вом способов: это и струйная печать, и гравировка, и лазер и многое другое. Кроме того, у кода есть две возможные формы: квадрат и прямоугольник. Это позволяет еще более эффективно использовать доступную для размещения кода площадь.

Все это делает DataMatix отличным кодом для маркировки малых объектов, например, микросхем. И именно поэтому Data Matrix очень активно применяется в промышленности. В частности, его активно используют такие крупные компании как Intel, AMD, BMW, Mercedes Benz, Siemens, Philips, NASA, Vodaphoone. Во многих странах он также используется для сортировки почты, но как с этим обстоит дело в России я не знаю. Впрочем, потихоньку он начинает появляться и у нас. Например, текущий формат больничного листа предусматривает специальное поле для размещения Data Matrix кода:

«для упрощения процедуры машинной обработки данных из больничного, в левый верхний угол бланка было добавлено поле для впечатывания в него двухмерного штрих-кода в формате Data Matrix, содержащего те же сведения, что и сам листок, причем этот штрих-код нужно иметь возможность впечатывать в заполненный ранее бланк отдельно даже в том случае, если бланк уже был сложен в несколько раз»

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


Хотя в промышленности DataMatrix является безусловным фаворитом, в повседневной жизни намного более распространен другой тип двумерного штрихкода — QR-код.

QR-код

Сайт-генератор – http://qrcc.ru/generator.php
Программа-сканер – Barcode Scanner

QR код это еще одна разновидность матричного кода. Его название происходит от английского «Quick Response» — «Быстрый Отклик». Он был создан компанией Denso-Wave в 1994 году в Японии. И именно в Японии он получил наиболее широкое распространение. Согласно данным опросов, в этой стране его использует более половины всех пользователей мобильной связи. В первую очередь это связано с тем, что в отличие от многих конкурентов, он понимает символы каны.

Само название «QR Code» является официально зарегистрированной торговой маркой компании Denso Wave Incorporated. Тем не менее, его использование бесплатно как для физический, так и юридических лиц и не попадает под действия каких либо лицензий.

Размеры кода могут варьироваться в довольно широких пределах: от 11 модулей в версии Micro QR (M1) до 177×177 модулей в Version 40 QR code. Официальных стандартов QR кодов, насколько мне известно, не существует. Ниже приведены примеры QR кодов разных версий, взятых из Википедии.



Как вы видите, любой QR код содержит несколько обязательных элементов. В первую очередь, это три больших «квадратика», окруженных пустым пространством. Именно по ним программа-сканер определяет позицию кода и корректирует искажение перспективы. Кроме того, код содержит еще один «квадратик» меньшего размера. Он служит для определения ориентации служебных областей. Стоит отметить, что в версии Micro QR используется всего одна метка позиционирования. Как и многие другие штрихкоды, QR код требует свободное пространство вокруг самого кода. Для полной версии кода оно состовляет 4 модуля, для микро версии — два модуля.

Как и в DataMatrix, в QR коде используется метод коррекции ошибок, основанный на алгоритме Рида-Соломона. Это позволяет легко прочитать даже поврежденный или загрязненный QR код. Существует четыре уровня коррекции ошибок. Они отличаются кол-вом информации, доступной для восстановления – L (7%), M (15%), Q (25%), H (30%). Благодаря такому «запасу прочности» можно разместить на QR коде произвольное изображение или текст. И если не будут задеты служебные области, то код все равно останется читаемым. Правда, стоит понимать, что в этом случае дальнейшая возможность коррекции ошибок сильно падает.

Подробнее про разметку QR кодов можно прочитать на сайте анг. Википедии . Кроме того, на habrahabr.ru о том, как можно вручную прочитать QR код

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


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


Интересно, насколько возросли продажи? =)

Не менее широко распространены QR коды и в туризме. Например, QR коды все чаще стали размещать на туристических объектах. В самом простом случае, такой код будет содержать короткую справку об объекте на разных языках или ссылку на Wikipedia. Но есть и более интересные варианты — например, прочитав QR код, вы сможете увидеть, как выглядел этот объект 100 лет назад. В качестве примера можно привести город Львов, где QR кодами отмечено более сотни туристических объектов. Информация есть, например, на этом сайте Аналогичные решения очень часто применяются и в музеях. Один клик — и вы находитесь на веб странице, содержащей всю информацию о заинтересовавшем вас экспонате.

Отдельно хочу отметить одно очень оригинальное решение, при котором сканируя один и тот же QR код, каждый пользователь автоматически попадет на статью именно на своем родном языке. Это стало возможно благодаря проекту QRpedia. Подробнее о нем можно прочесть тут: http://ru.wikipedia.org/wiki/QRpedia

С QR кодами можно все чаще встретиться и при оформлении билетов. В этом году и в России и в Украине собирались ввести QR коды на железнодорожных билетах. Это даст возможность заказать билет через интернет и просто распечатать QR код (или просто открыть его на экране мобильного телефона) для прохода через турникет или для предъявления проводнику. К сожалению, не знаю, работает ли уже такая система в РЖД, но точно могу сказать, что именно так обстоят дела в АэроЭкспрессе. На заказ билета через интернет я потратил несколько минут, после чего не пришлось даже его печатать – турникет успешно считал код с экрана телефона. Правда, код там используется не QR, а скорее PDF417.

Применений QR кодов сотни, они все чаще начинают проникать в нашу повседневную жизнь. Например, буквально на днях впервые «вживую» увидел визитку с QR кодом. И это оказалась действительно очень удобная штука, которая избавляет от необходимости вбивать все данные контакта вручную. Достаточно сосканировать QR код, и все данные контакта в вашем телефоне: имя, фамилия, компания, должность, e-mail, рабочие и мобильные телефоны. Не знаю, насколько такие визитки приживутся, но, на мой взгляд, идея отличная. Разумеется, на этом идеи использования QR кодов не заканчиваются. Есть масса других вариантов — татуировки с QR кодом, содержащим ссылку на страничку в соц. сети, брелоки с QR кодом, в котором зашифрованы имя и телефон владельца, QR код со ссылкой на аудио поздравление на подарке… Хорошо проиллюстрировано применение QR кодов .

Двумерный код данного формата начинает применяться и в Сбербанке (Источник — http://www.arendamest.ru/qr-kod-v-terminalach-sberbanka)

Почему он стал столь популярен на фоне уже довольно распространенного Data Matrix? Точного ответа на этот вопрос я не знаю, но мне кажется, что дело главным образом в его узнаваемости. В отличие от несколько безликого Data Matrix, он имеет свое лицо, интереснее выглядит, на него проще обратить внимание потенциальных пользователей. Учитывая, что чаще всего он применяется в маркетинге, это оказалось весьма важно. А сильные стороны Data Matrix (меньший размер, стандарт ISO) здесь наоборот, практически не имеют значения.

Напоследок приведу данные опроса, проведенного в 2012 году компаниями J’son&Partners Consulting, SMARTEST и WapStart в России. Согласно ему, треть респондентов (33%) информированы о QR-кодах - они знают и понимают, как можно использовать эту технологию. 59% не знают о QR-кодах, а 8% неправильно информированы (ошибаются в знании технологии). 23% пользователей уже сканировали своим телефоном QR-коды, причем почти половина из них (48%) делают это постоянно или проводили такие манипуляции много раз. Большая часть пользователей QR-кодов (84%) переходила после их считывания на веб-сайт; третья часть (33%) смогла считать контактные данные человека и сохранить их на телефон; 28% получали рекламу; 21% - другой контент (музыку, картинки, презентации и пр.) и 8% - видео. Только 6% указали, что QR-технология помогла им зарегистрироваться на рейс или мероприятие.

Как мы видим, хотя в России QR коды пока распространены не так сильно, как во многих других странах, но, тем не менее, они постепенно становятся популярны и у нас.

Aztec Code

Сайт-генератор — http://barcode.tec-it.com/
Программа-сканер — Accusoft Barcode Scanner

Структура кода состоит из следующих элементов: «мишень» , элементы ориентации, решетка привязки, слои данных. Программа сканер опознает код по наличию «мишени», определяет ее центр и углы. Далее программа вычисляет расстояние между углами мишени и их углы наклона. По этим данным вычисляется угол наклона и поворот кода относительно камеры телефона. Стоит отметить, что код может быть распознан не только при больших искажениях от угла наклона и ориентации камеры, но даже при зеркальном отражении.

Подробнее с алгоритмом декодирования Aztec Code можно ознакомиться на сайте odamis.ru по следующей ссылке . Как и в случае QR кода, у Aztec существует своя компактная версия.

Как и DataMatrix, Aztec код возможно применять там, где площадь для нанесения кода сильно ограничена. В первую очередь это обусловлено тем, что он не требует свободного места вокруг кода. Но, в отличие от DataMatrix, Aztec код может быть только квадратным. Сторона квадрата содержит от 15 до 151 модуля. Код может объединяться в блоки. Разумеется, как и остальные типы кодов, Aztec код поддерживает коррекцию данных по принципу Рида-Соломона. При этом он позволяет настроить избыточность данных от 5% до 95%.

Во многих странах данный код используется железнодорожными компаниями в электронных билетах. Кроме того, он был выбран международной ассоциацией воздушного транспорта для электронных билетов. В частности, по информации Википедии, он используется на электронных билетах Российской авиакомпании S7 Airlines. Ниже приведу цитату с офф. сайта s7.ru:

«В аэропорту вашего вылета должно быть специальное устройство, распознающее 2D-штрихкод мобильного посадочного талона. Оно находится перед входом в зону контроля безопасности и работает следующим образом: считывает информацию 2D-штрихкода мобильного посадочного талона с экрана вашего телефона, а затем распечатывает посадочный талон на бумаге.»

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

Microsoft tag (High Capacity Color Barcode - HCCB)

Сайт-генератор — http://tag.microsoft.com
Программа-сканер — Microsoft Tag

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


Microsoft Tag довольно сильно отличается от большинства своих собратьев. Первое, что сразу бросается в глаза: в отличие от QR, Data Matrix и других монохромных кодов, он может быть цветным. Помимо белого используется еще три цвета: Yellow, Magenta, Cyan. Такой выбор цветов позволяет избежать ошибок декодирования из-за плохой цветопередачи CMYK принтера. Дополнительные цвета позволяют «впихнуть» в код больше информации не меняя его размер. Тем не менее, у штрихкода существует и черно-белый вариант.


Второе, не менее важное отличие: в штрихкоде содержатся не сами данные, а только ссылка на них (13 байт + 1 контрольный). Сами же данные хранятся на сервере Microsoft. Очевидный минус такого решения состоит в том, что без доступа в интернет воспользоваться таким кодом невозможно. С другой стороны, это дает и дополнительные возможности: можно в любой момент отредактировать «привязанную» к коду информацию, можно узнать кол-во считываний кода, можно установить срок действия кода.

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

. . . . . .

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

У меня эта технология оставила смешанное чувство. Когда упоминание о Microsoft Tag впервые попалось мне на глаза, я отмахнулся от него, не вникая в детали. Штрихкод, для декодирования которого нужен доступ к интернету? Это не для Российских реалий. Да и напечатать цветной код сложнее, чем черно-белый. Изначально мне казалось, что при таких недостатках все плюсы этого кода уже не имеют значения. Но давайте на минуту задумаемся, какая именно информация чаще всего закодирована в 2D штрихкоде? В большинстве случаев, это ссылка на ресурс в интернете. Это может быть что угодно: сайт компании, рекламный ролик, статья об историческом объекте, но в любом случае, без доступа в интернет эта ссылка не имеет никакой практической ценности. И вот тут уже Microsoft Tag смотрится очень выигрышным вариантом. Информацию можно в любой момент поменять или обновить не меняя сам код, собрать статистику просмотров и пр. Потенциал у Microsoft Tag, безусловно, есть, но сможет ли Microsoft его реализовать — вопрос открытый.

Взгляд вперед

Вначале появились линейные штрихкоды. Затем двухмерные. Что может ждать нас в будущем?

Весьма интересной выглядит идея компании MIT Media Lab — bokode. Название произошло от слов bokeh и barcode. Прототип был показан еще в 2009 году. Диаметр метки данного кода составлял всего несколько квадратных миллиметров. Сама метка состоит из светодиода, на который накладывается специальная маска и особой линзы. Информация поступает на считывающее устройства в виде потоков света, проходящих через маску на светодиоде.
Такой код способен передавать в тысячи раз больше информации, чем линейные штрихкоды. Кроме того, его можно считать с расстояния в несколько метров (теоретический предел — 20 метров).
Более подробную информацию можно найти на сайте BBC или посмотрев видео от самой MIT Media Lab:


ПРАКТИКА

Сайт-генератор http://qrcc.ru

Один из популярных генераторов 2D штрихкодов. Позволяет создавать коды QR, Micro QR и DataMatrix. Интерфейс сайта интуитивно понятен, и я думаю, что нет смысла останавливаться на нем подробно. Вверху можно выбрать тип кода. В левой колонке — указать тип содержания. Внизу можно выбрать дополнительные параметры: иконку, которая будет отображаться на коде, текст над и под кодом, цвета текста и самого кода.


В отличие от многих подобных сайтов, qrcc.ru поддерживает большое кол-во разных типов данных. Разумеется, данные любого типа можно просто закодировать как обычный текст. Но в этом случае смартфон не сможет автоматически распознать их тип и понять, что с ними делать. В качестве примера приведу два кода с одинаковым текстом.




Сайт позволяет сгенерировать данные следующих типов:
Визитка (VCARD) — после сканирования кода у пользователя будет возможность в один клик создать контакт со всеми данными в телефонной книге.

Произвольный текст — просто набор данных, программа-сканер будет реагировать на него стандартным образом

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

СМС-сообщение — программа-сканер предложит пользователю отправить заданный им текст, указанный им номер в виде смс или ммс сообщения

E-mail адрес — пользователь сможет либо отправить по этому адресу письмо, либо добавить его в телефонную книгу. Тоже самое будет, если закодировать e-mail адрес и обычным способом, как «произвольный текст».

E-mail сообщение — содержит поля «E-mail получателя», «Тема» и «Текст». Предлагает пользователю отправить введенное им сообщение на соответствующий адрес.

Запланированное событие(VCALENDAR) — позволяет ввести название, начало и конец события. При сканировании такого кода будет возможность импортировать данное событие в календарь.

WI-FI — позволяет ввести SSID сети, пароль и тип шифрования. После сканирования такого кода, смартфон предложит вам подключиться к этой сети.

Сайт-генератор http://barcode.tec-it.com

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


Вверху сайта необходимо выбрать тип кода. Предлагает следующие варианты:

1D коды . Сюда входят 12 типов линейных штрихкодов, такие как Code-128, Code-11 и другие. У каждого кода указывается допустимый тип данных (только цифры, полный набор ASCII и пр.). Открыв раздел «дополнительные опции штрихкода» можно настроить такие параметры, как цвет кода, ориентация, зона молчания (место вокруг штрих кода).

2D коды . Сюда входят такие коды как QR, DataMatrix, Aztec, Codablock-F, PDF417, MaxiCode, MicroPDF417, Micro QR. Настройки кода аналогичны прошлой категории, но в «дополнительных параметрах» добавилась опция «корректировка ошибок» (пока поддерживается только QR кодом). Она позволяет вручную указать уровень коррекции — L, M, Q, H

Мобильный Тэг — как и http://qrcc.ru , позволяет создавать коды для мобильных телефонов, с разными типами данных. Позволяет создавать коды трех типов — QR, DataMatrix, Aztec. Поддерживает несколько новых типов кодов, такие как отправка твита, «лайк» в Facebook, поиск приложения в AndroidMarket и другие.

Далее идет еще множество различных категорий линейных кодов: UAN \ UPC (ипользуются на товарах в магазинах), ISBN (книги и другая печатная продукция), почтовые коды, др. В конце списка представлены «Визитки » (поддерживается QR и DataMatrix), «События » (тоже QR и DataMatrix), WI-FI коды (QR и DataMatrix) — в этих пунктах все аналогично qrcc.ru

Сайт-генератор http://tag.microsoft.com

tag.microsoft.com заметно отличается от прошлых рассмотренных нами ресурсов. И в первую очередь, это связанно с особенностями формата Microsoft Tag. На самом сайте содержится масса справочного материала как по особенностям этого формата кода, так и по работе с самим генератором. К сожалению, информация доступна только на английском.

Для работы с сайтом требуется Microsoft account. Если у вас его нет — придется регистрироваться. Далее заходим в «My Tag» — «Tag manager». Для создания новой метки, выбираем «Create a tag» в левом верхнем углу менеджера.


Tag Title — имя метки, которое будет отображаться под самим штрихкодом в «истории» программы сканера

Tag Tipe — тип метки. Поддерживаются метки следующих типов: URL (ссылка), App Download (загрузка приложения, позволяет задать для каждой платформы отдельные ссылки на скачивание), Free Text (произвольный текст, до 1000 знаков), vCard (можно как загрузить готовую vCard, так и внести данные контакта вручную), Dialer (ввод телефонного номера)

Tag Notes — описание метки, длинной до 200 символов. Описание отображается только на сайте в самом в самом менеджере. Пользователь его не увидит.

Upload Thumbnail — загрузка эскиза метки, рекомендованный размер — 200 x 200, форматы JPEG, GIF, PNG

Start Date — дата, с которой метка начнет работать

End Date — дата окончания работы метки. Можно выбрать вариант «No End Date»

Поле для ввода данных — зависит от выбранного вами типа метки.

После ввода всех данных сохраняем метку, нажав на кнопку «Save». Созданная метка теперь отображается в менеджере. При необходимости, ее в любой момент можно отредактировать либо удалить. Кроме того, всегда можно посмотреть график кол-ва просмотров. Теперь загружаем созданную метку, нажав на синюю стрелочку «Download» справа.

Перед загрузкой метки необходимо выбрать формат ее кодирования. Доступные варианты: Tag Barcode (стандартный Microsoft Tag с рисунком в виде треугольников), Custom Tag Barcode (Microsoft Tag, на который нанесены только сами точки, в которых кодируется информация), QR Code , NFC URL . Здесь же можно выбрать формат файла и сам размер кода. В случае использования Microsoft Tag можно выбрать его монохромный вариант.

При сканировании QR кода обычной программой-сканером отобразится просто ссылка вида tagr.com/xxx. Для получения доступа к самой информации, необходимо открыть ее в браузере. При сканировании кода «родной» программой Microsoft Tag данные загрузятся с сервера MS автоматически. При этом будет отображена и дополнительная информация, такая как название метки, картинка метки в «истории» и пр. В общем и целом, использования QR кода в данном случае совершенно нецелесообразно.

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

Проще всего открыть скаченный файл в Photoshop или любом другом редакторе, умеющем работать со слоями. Сам слой с точками не трогаем, под ним просто создаем еще один и делаем с ним все, что хотим. Более подробно ознакомиться с кастомизацией Microsoft Tag можно (англ.)

Программы сканеры

Barcode Scanner

Поддерживаемые форматы 2D кодов: QR, DataMatrix
Программа бесплатна. Имеет платную версию с поддержкой дополнительных форматов.

Начать хотел бы с классики жанра — программы Barcode Scanner (Zxing от Google).
Кто-то считает этот сканер слишком простым, но лично мне он очень нравится. В программе есть все, что нужно для выполнения ее основной функции и никаких лишних «наворотов». Этакий Linux way. Кому-то такой подход нравится, кому-то нет.

Accusoft Barcode Scanner

Поддерживаемые форматы 2D кодов: QR, DataMatrix, Aztec и PDF417

Как показала практика, многие сканеры в Play.Market сделаны на основе Barcode Scanner, а вернее Zxing от Google — . Поэтому, они в большинстве своем имеют очень похожий интерфейс и функционал. В качестве примера можно привести программу Accusoft Barcode Scanner, которая по сути является клоном Barcode Scanner. Главное отличие — дополнительная поддержка кодов Aztec и PDF417

QR Droid

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


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




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

Microsoft Tag

Сканер, в первую очередь рассчитанный на работу с Microsoft Tag и QR кодами с сайта tag.microsoft.com . С обычными QR кодами программа работает значительно хуже. В качестве примера можно посмотреть на следующий скриншот, где показан результат декодирования QR кода типа «смс».


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

В верхней части окна программы находится кнопка «Scan», в центре — список меток истории сканирования. Метки представлены в виде иконок, которые были назначены автором кода. Тут же отображается и название метки. Обычные QR коды, которые не имеют названия и иконки, в списке не отображаются. Разумеется, метки из списка истории можно открывать повторно.


На скриншоте ниже приведет результат сканирования кодов с закодированным текстом и с закодированной ссылкой на Android.MR




Выводы

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

В комментариях к прошлой статье про QR коды некоторые читатели высказывали мнение, что из-за появления NFC, двухмерные штрихкоды скоро исчезнут. Мне кажется, что этого не случится. Это две разные технологии, применение которых пересекается лишь частично. NFC удобнее для передачи информации. Иногда он используется для этого напрямую, иногда применяется только для установки соединения по более быстрому протоколу. Но вот напечатать NFC метку в домашних условиях еще очень долгое время будет проблематично. Из-за этого NFC врядли будет применяться, скажем, на электронных билетах. Да и размещать на объявлениях бесперспективно — чтобы считать ее, каждый будет вынужден подходить к такому объявлению вплотную, что не всегда возможно. Разумеется, при желании можно придумать и реализовать любой сценарий. Вопрос только в том, стоит ли?