QR-коды — что это такое, как создать и расшифровать любой баркод, онлайн генераторы и программы для их считывания. Что такое QR-код и как правильно им пользоваться

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

Для распознавания QR-кодов используются камера мобильного телефона и специальное программное обеспечение, например, QR Droid Code Scanner , QuickMark и т. д.

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

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

Существуют статические и динамические QR-коды:

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

Для создания QR-кода используются генераторы - программы и интернет-сервисы . С пятью популярными онлайн генераторами QR-кодов мы и познакомим вас далее.

Visualead

Возможностей упражняться в искусстве дизайна QR Coder не предусматривает. Главный «конек» этого сервиса - скорость и простота. Но кому-то это может показаться и недостатком.

Creambee

Creambee - еще один русскоязычный многофункциональный генератор QR-кодов для коммерческого и некоммерческого использования.

Позволяет кодировать различную информацию как в статическом, так и в динамическом формате. В том числе:

  • картинки;
  • визитки;
  • сообщения для социальных сетей;
  • ссылки на сайты;

На сайте есть множество примеров использования интерактивных QR-кодов в разных областях бизнеса.

Обратите внимание! Кроме генерации, зарегистрированный пользователь может бесплатно хранить свои QR-коды в личной папке, создавать мобильные сайты, карточки товаров, книги отзывов, купоны. Бизнес-аккаунты дополнительно получают инструменты анализа: статистику переходов по коду, сведения об индексировании поисковыми системами, панель реселлера, возможность подключить сервис «Яндекс.Метрика» и многое другое.

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


Иногда возникают такие ситуации, когда нужно прочитать QR код, а смартфона под рукой нет. Что же делать? В голову приходит лишь попробовать прочитать вручную. Если кто-нибудь сталкивался с такими ситуациями или кому просто интересно как же читается QR код машинами, то данная статья поможет вам разобраться в этой проблеме. В статье рассмотрены базовые особенности QR кодов и методика дешифрирования информации без использования вычислительных машин. Решение задачи непосредственного чтения информации с QR-картинки рассмотрим на примере двух кодов.
Чтобы понять, как извлечь данные из кода, нужно разобраться в алгоритме. Существует несколько стандартов в семействе QR кодов, с их базовыми принципами можно ознакомиться в спецификациях. Кратко поясню: данные, которые необходимо закодировать, разбиваются на блоки в зависимости от режима кодирования. К разбитым по блокам данным прибавляется заголовок, указывающий режим и количество блоков. Существуют и такие режимы, в которых используется более сложная структура размещения информации. Данные режимы рассматривать не будем, в виду того, что извлекать вручную из них информацию нецелесообразно. Однако, основываясь на тех принципах, что описаны ниже, можно адаптироваться и к этим режимам. На случай некорректного чтения данных в QR применяются специальные коды, которые способны исправить недочёты при чтении. Это так называемые коды Рида-Соломона . Принцип вычисления кодов, а также исправление ошибок в блоках информации рассматривать не будем, это тема отдельной статьи. Корректирующие ошибки коды Рида-Соломона (RS) записываются после всех информационных данных. Это очень упрощает задачу непосредственного чтения информации: можно просто считать данные, не трогая коды. Как показывает практика, обычно бОльшую часть QR -матрицы занимают корректирующие RS-коды.

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

Шаг 0. QR код


Взглянув на картинки, можно заметить несколько отчётливых областей. Эти области используются для детектирования QR кода. Эти данные не представляют интереса с точки зрения записанной информации, но их нужно вычеркнуть или просто запомнить их расположение, чтобы они не мешали. Всё остальное поле кода несёт уже полезную информацию. Её можно разбить на две части: системная информация и данные. Также существует информация о версии кода. От версии кода зависит максимальный объём данных, которые могут быть записаны в код. При повышении версии – добавляются специальные блоки, например как здесь: По ним можно сориентироваться и понять какая версия QR перед вами. Коды высоких версий обычно также нецелесообразно считывать вручную. Размещение системной информации показано на рисунке:
Системная информация дублируется, что позволяет значительно понизить вероятность возникновения ошибок при детектировании кода и считывании. Системная информация – это 15 бит данных, среди которых первые 5 - это полезная информация, а остальные 10 – это BCH (15,5) код, который позволяет исправлять ошибки в системных данных. К классу BCH кодов относят и RS коды. Обратите внимание, что на рисунке две полоски по 15 бит не пересекаются.

Шаг 1. Чтение 5 бит системной информации

Как уже говорилось, интерес представляют только первые 5 бит. Из которых 2 бита показывают уровень коррекции ошибок, а остальные 3 бита показывают какая маска из доступных 8 применяется к данным. В рассматриваемых QR кодах системная информация содержит:

Шаг 2. Маска для системной информации

Кроме уже озвученных схем зашиты системной информации, в добавок, используется статическая маска, которая применяется к любой системной информации. Она имеет вид: 101010000010010 . Так как имеет интерес только первые 5 бит, то маску можно сократить и легко запомнить: 10101 (десять-сто один). После применения операции «исключающего или» (xor) получаем информацию. Возможные уровни коррекции ошибок:
L 01
M 00
Q 11
H 10
Возможные маски:
000 (i + j) mod 2 = 0
001 i mod 2 = 0
010 j mod 3 = 0
011 (i + j) mod 3 = 0
100 ((i div 2) + (j div 3)) mod 2 = 0
101 (i j) mod 2 + (i j) mod 3 = 0
110 ((i j) mod 2 + (i j) mod 3) mod 2 = 0
111 ((i+j) mod 2 + (i j) mod 3) mod 2 = 0

Шаг 3. Чтение заголовка данных

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

Шаг 4. Применение маски к заголовку

После извлечения 4-х бит, описывающих режим, необходимо к ним применить маску.
В нашем случае для двух кодов используются разные маски. Маска определяется выражением, приведённым в таблице выше. Если данное выражение сводится к TRUE (верное) для бита с координатами (i,j) , то бит инвертируется, иначе всё остаётся без изменений. Начало координат в левом верхнем углу (0,0) . Взглянув на выражения, можно заметить в них закономерности. Для рассматриваемых QR кодов, маски будут выглядеть так: Получим режимы:

Шаг 5. Чтение данных

После получения данных о режиме можно приступать к чтению информации. Надо оговорить, что наиболее интересно считывать числовые и буквенно-числовые данные, так как они легко интерпретируются. Но также не стоит бояться 8-битных. Это может быть также легко интерпретируемая информация. Например, многие онлайн генераторы QR текст кодируют в этом режиме, используя . Ещё одна причина, почему следует изначально прочитать режим это то, что от него зависит количество пакетов данных. Которая также зависит и от версии кода. Для версий с первой по девятую длины блоков для более читабельных режимов: Первый блок после указателя режима – это количество символов. Для числового режима количество закодировано в 10 следующих битах, а для 8-битного режима в 8 битах (прошу прощения за тавтологию).
На рисунке видно, что в левом QR коде, как и отмечалось, записана цифра 5. Это видно по указателю количества символов и последующим после него 4 битам. В числовом режиме наряду с 10-битными блоками используются 4-х битные блоки для экономии места, если в 10-битном объёме нет необходимости. В правом коде, зашифровано 4 символа. На данный момент неизвестно, что зашифровано в нём. Поэтому необходимо перейти к чтению следующего столбца для извлечения всех 4-х блок информации.
На рисунке видно, все 4 пакета представляют собой коды ASCII латинских букв, образующие слово «habr» Естественно наилучшим способом остаётся достать телефон из кармана и, наведя камеру на QR-картинку, считать всю информацию. Однако в экстренных случаях может пригодиться и описанная методика. Конечно, в голове не удержишь все указатели режимов и типов масок, а также ASCII символы, но популярные комбинации запомнить (хотя бы те, что рассмотрены в статье) под силу.

Спецификация:

BS ISO/IEC 18004:2006. Information technology. Automatic identification and data capture techniques. QR Code 2005 bar code symbology specification. London: BSI. 2007. p. 126. ISBN 978-0-580-67368-9. P.S. Соблюдайте правила ресурса и условия Creative Commons Attribution 3.0 Unported (CC BY 3.0)

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

В отличие от обычного штрихкода, QR код является двухмерным, то есть строится не из полос, а из квадратиков, что позволяет шифровать намного больше информации. Зачастую кодируется текст, максимальный размер которого (вместе с цифрами) может быть до 4296 символов, реже – рисунки небольших размеров. Для считывания кода с постеров и упаковок Вам потребуется лишь смартфон с камерой и специальное приложение. Однако гораздо интереснее создать QR код самостоятельно. О том, как это сделать – читайте далее.

QR код при помощи сайта

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

· www.qurify.com

· qrcode.kaywa.com

Рассмотрим первые два из них, так как эти сайты максимально удобны и понятны.

Генератор QR кода Qrcoder.ru

Данный генератор QR кода наиболее простой и потребует от Вас минимум действий. После перехода на сайта(www.qrcoder.ru ) перед Вами откроется поле для ввода текста, над которым можно выбрать тип вводимой информации: «любой текст», «ссылку на сайт», «визитную карточку» или «sms-сообщение». Под формой настраивается размер получаемого кода – от 1 до 6. Закончив ввод нужного текста, нажмите «создать код» в правом нижнем углу формы, после чего в правой части экрана появится рисунок с кодом.

Чтобы сохранить изображение – нажмите на него правой клавишей мышки и в выпадающем окне выберите «сохранить картинку как» и укажите путь для сохранения. Если полученный QR код нужно разместить на сайте, то можно использовать постоянную ссылку либо HTML-код, находящиеся под изображением.

Генератор QR кода Qrcc.ru

Еще один ресурс для построения QR кода онлайн, имеющий более широкий функционал. Перейдя на сайт(qrcc.ru ), Вы увидите также форму для ввода информации. Однако, в отличие от предыдущего сайта, здесь можно выбрать не только «произвольный текст», «адрес сайта (URL)», «визитку (VCARD)» или «смс-сообщение». Среди других разновидностей вводимой информации, которые расположены списком в левой части экрана, имеется даже такие как «данные WI-FI» или «координаты Google Maps».

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

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

QR код при помощи программы

Владельцы операционной системы Windows могут загрузить генератор QR кода «XRen QRCode» по этой ссылке . Справа на странице жмем на синюю кнопку с надписью «Download», далее в открывшемся окне нажимаем на надпись «Softpedia Secure Download (US)», через пару секунд начнется загрузка.

Запускаем файл установки, жмем «Next». Если Вы желаете установить программу в какую-то конкретную папку, то нажимаем «Browse…» выбираем эту папку, жмем «OK». Потом снова дважды «Next», когда XRen QRCode установится – закрываем программу.

На рабочем столе компьютера должна появиться иконка с надписью «QRCode», жмем на нее. В открывшемся окне Вы увидите форму, в которую нужно ввести текст, после чего ниже нажать на кнопку «Encode». Справа появится изображение готового QR кода, для сохранения которого следует найти в верхней панели окна – синюю дискетку («Save»), и нажать на нее.

Выберите папку для сохранения картинки, а также внизу, в выпадающем списке, формат картинки — .jpg , .png или.gif, жмем «сохранить» — QR код готов.

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

Особенности QR-кода и приложений для сканирования

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

Для мобильных устройств и планшетов на базе имеются такие приложения как «QR Reader for iPhone» и «QR Code Reader» соответственно, и приобрести их можно бесплатно в официальных интернет-магазинах (appstore.com или play.google.com ). Для сканирования штрихкода достаточно запустить приложение и просто навести камеру на изображение QR-кода, после чего откроется окно с зашифрованной информацией. Если же Вы имеете платформу с другой операционной системой, то Вам следует скачать приложение, подходящее конкретно для Вашего устройства. Выбрать программу для мобильного телефона можно на этом сайте(qrcoder.ru ).

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

Фото на главной: / ghazayel.com

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

Программа CodeTwo QR Code Desktop Reader это очень удобное приложение, которое позволит Вам без использования специальных устройств получить всю зашифрованную информацию в штрихкоде формата QR-code.

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

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

CodeTwo QR Code Desktop Reader поддерживает считывание QR-кода:

С экрана (From Screen)

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

С Веб-камеры (From webcam)

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

Из файла (From file)

С помощью проводника Windows указать на нужный файл цифрового изображения с зашифрованной QR-информацией. Поддерживаются BMP, JPG, TIFF, GIF и PNG форматы.

Из буфера обмена (From clipboard)

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

QR-код генератор

Программа CodeTwo QR Code Desktop Reader является не только инструментом для считывания QR-code, а также способна сама генерировать зашифрованный графический штрихкод из Ваших данных. Для этого нужно воспользоваться соответствующим пунктом главного меню приложения "Режим Генератор (Generator mode on)". В окне для ввода текста "QR code text" набрать необходимую информацию и сохранить получившееся изображение в один из форматов графических файлов "Save as".

Максимальный объем современного стандарта кодирования QR-code вмещает:

  • Цифр 7089
  • Латинских символов 4296
  • Кириллица
    • В Windows-1251 кодировке 2953 символа
    • В UTF-8 кодировке 1450 символов
  • Tutorial

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

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

Иллюстраций: 14, символов: 8 510.

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

Решение задачи непосредственного чтения информации с QR-картинки рассмотрим на примере двух кодов. Информация была закодирована в online-генераторе QR Coder.ru .

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

На случай некорректного чтения данных, в QR применяются специальные коды, которые способны исправить недочёты при чтении. Это так называемые коды Рида-Соломона . Принцип вычисления кодов, а также исправление ошибок в блоках информации рассматривать не будем, это тема отдельной статьи. Корректирующие ошибки коды Рида-Соломона (RS) записываются после всех информационных данных. Это очень упрощает задачу непосредственного чтения информации: можно просто считать данные, не трогая коды. Как показывает практика, обычно бОльшую часть QR -матрицы занимают корректирующие RS-коды.

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

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

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

Шаг 0. QR код

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

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

Размещение системной информации показано на рисунке:

Системная информация дублируется, что позволяет значительно понизить вероятность возникновения ошибок при детектировании кода и считывании. Системная информация – это 15 бит данных, среди которых первые 5 - это полезная информация, а остальные 10 - это BCH (15,5) код, который позволяет исправлять ошибки в системных данных. К классу BCH кодов относят и RS коды. Обратите внимание, что на рисунке две полоски по 15 бит не пересекаются.

Шаг 1. Чтение 5 бит системной информации

Как уже говорилось, интерес представляют только первые 5 бит. Из которых 2 бита показывают уровень коррекции ошибок, а остальные 3 бита показывают какая маска из доступных 8 применяется к данным. В рассматриваемых QR кодах системная информация содержит:

Шаг 2. Маска для системной информации

Кроме уже озвученных схем зашиты системной информации, вдобавок, используется статическая маска, которая применяется к любой системной информации. Она имеет вид: 101010000010010 . Так как имеет интерес только первые 5 бит, то маску можно сократить и легко запомнить: 10101 (десять - сто один). После применения операции «исключающего или» (xor) получаем информацию.

Возможные уровни коррекции ошибок:

L 01
M 00
Q 11
H 10

Возможные маски:

000 (i + j) mod 2 = 0
001 i mod 2 = 0
010 j mod 3 = 0
011 (i + j) mod 3 = 0
100 ((i div 2) + (j div 3)) mod 2 = 0
101 (i j) mod 2 + (i j) mod 3 = 0
110 ((i j) mod 2 + (i j) mod 3) mod 2 = 0
111 ((i+j) mod 2 + (i j) mod 3) mod 2 = 0

Шаг 3. Чтение заголовка данных

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

Список возможных режимов:

P.S. Соблюдайте правила ресурса и условия Creative Commons Attribution 3.0 Unported (CC BY 3.0)

P.P.S. Если ошибся блогом, то подскажите куда - перенесу.

Теги: Добавить метки



Просмотров