Программы для qr кодов онлайн. Программы для распознавания

  • 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. Если ошибся блогом, то подскажите куда - перенесу.

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

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

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

Как создать QR-код

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

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

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

Специальные ресурсы позволяют сделать рисунок разноцветным. В программу вносятся данные о цвете элементов, надписях и размере. После внесения информации, предназначенной для кодирования, генерируется баркод. Зная, как читать qr-код, узнаем, на чем это сделать.

Оборудование, необходимое для расшифровки баркода

Вы знаете, как расшифровать qr-код? Для того чтобы получить расшифровку QR-кода необходимо, чтобы у вас было мобильное устройство, имеющее встроенную фотокамеру. Однако кроме фотокамеры требуется, чтобы на телефон была установлена программа, предназначенная для дешифрования баркодов – QR Reader.

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

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

Как расшифровать QR-код

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

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

Есть несколько правил успешной дешифровки баркода.

  1. Следите за освещенностью.
  2. Обеспечивайте максимально неподвижное положение камеры во время съемки QR-кода. Если камера во время съемки будет двигаться – это затруднит процесс сканирования.
  3. Камера должна располагаться под прямым углом к какой-нибудь стороне картинки с кодом.
  4. Телефон должен располагаться на одном уровне с кодом.

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

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

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

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

Что же обычно зашифровывают таким способом? Ну, прежде всего это логистика (т.е. замена обычному штрих коду), банковские квитанции для ускорения считывания с них информации, а так же обыденные вещи: ссылки на рекламных плакатах или сайтах и данные визитных карточек, которые сразу же будут открыты в браузере вашего сотового телефона , либо занесены в его адресную книгу.

Предназначение QR-кодов и их использование

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

Выглядит эта вариация баркода примерно так:

Представляет он из себя изображение, на котором, как правило, всегда можно выделить три больших квадрата . Они служат ориентирами при расшифровки кода программами для его считывания — помогают определить уровень наклона и четко привязаться к масштабу. Раньше повсеместно использовался более простой одномерный (линейный) barcode (штрих-код):

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

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

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

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

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

Как создать QR-код — онлайн генераторы

Чуть выше мы рассмотрели генераторы интегрированные в браузеры, но гораздо более функциональными выглядят их онлайн версии, которые могут закодировать нужную вам информацию (URL адрес, текст, личные данные с визитной карточки, SMS, номер телефона и т.п.) и создать картинку нужного вам размера. Результирующее изображение barcode вы сможете сохранить на своем компьютере или получить на него ссылку.

    QR Hacker — служит для создания эксклюзивных изображений с баркодами, которые вы сможете раскрасить, скруглить им углы и даже добавить свой логотип. Т.к. в этой технологии изначально заложена избыточность кода (до 30%), то данные издевательства не приведут к потере информации.

    Сначала в левой панели генератора выбираете тип данных — это нужно, чтобы программа расшифровщик в вашем мобильнике знала, чего с этими данными делать в дальнейшем — открывать ссылку в браузере, показывать текст, добавлять данные в контакты или еще чего-то делать. На следующем шаге в расположенной чуть ниже форме вводите то, что вы хотите закодировать (в моем случае это URL — https://сайт) и жмете на кнопку «Generate».

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

    Ну, а чуть ниже расположены инструменты для раскраски самих элементов (прям как детские раскраски Пет Шоп) и размещения логотипа на поверхности создаваемого баркода. Под изображением, над которым вы издеваетесь, расположена цветовая шкала, которая косвенно характеризует его читаемость. На приведенном чуть выше скриншоте читаемость находится на грани, хотя мой телефон с установленной программой расшифровки I-nigma (созвучно, с , не правда ли) справился с этой задачей на ура.

    QR Coder.ru — простенький генератор barcode с интерфейсом на русском языке. Сначала следует выбрать тот тип информации, который вы хотите зашить в картинку (текст, визитка, SMS или URL) для того, чтобы программа для считывания предложила бы вам нужные варианты дальнейших действий. Например, в случае визитки вам будет предложено заполнить следующие поля:

    Для ссылок это будет открытие в браузере, а для данных визитной карточки — сохранение в контактах (либо набрать номер из визитки):

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

    Имеет место быть возможность кодирования E-mail адреса и целого почтового сообщения с указанием адресата, темы и текста письма. Кроме этого можно закодировать номер телефона (было бы удобно, если бы девушки носили значки или сумки с таким баркодом), Твиттер сообщения и даже координаты на Google картах. Чума!

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

  2. Qrcc.ru — менее пафосный, но тоже функциональный русский онлайн генератор с возможностью заказа печати созданного QR-кода на шмотках и вещах.
  3. Есть еще несколько генераторов от сервиса Kaywa (один и второй), которые ничем особенным не выделяются, но имеют место быть.
  4. Есть свой создатель баркодов и у разработчиков популярного мобильного сканера i-nigma .
  5. Ах, да, еще один буржуйский сервис Goqr.me стоит упомянуть, ибо дизайн приятный. Ну, и хватит, пожалуй.

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

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

Как расшифровать баркод — программы и онлайн сервисы

Другой вопрос — чем можно расшифровать такие замысловатые картинки на мобильном телефоне. Набор подобных программ довольно велик и многое будет зависеть от типа вашего телефона, а точнее от той ОС, на базе которой он работает (Андроид, Ios и т.п.).

Лично я юзаю телефон Нокиа E72 и больше всего мне понравилась I-nigma — просто переходите с сотового по этой ссылке, сайт разработчиков автоматически сам определит тип вашего аппарата и предложит закачать программу для считывания и расшифровки QR-кодов. Поддерживается, по-моему, все, что только можно придумать (в плане моделей телефонов). Скриншот работы I-nigma вы сможете найти чуть выше по тексту.

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


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

Да, еще стоит упомянуть десктопную программу , ибо тоже имеет право на жизнь. Называется она BarCapture .

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

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

  1. I-nigma — уже упоминал эту программу, которая существует для разных мобильных платформ
  2. Barcodes Scanner — популярное приложение, которое существует в вариации для Андроида и для Ios.
  3. QuickMark — подойдет практически для любого мобильного устройства
  4. BeeTagg — еще одна универсальная программа для сканирования и распознавания QR-кода, подходящая для огромного числа моделей мобильников
  5. UpCode — опять же мультлатформенный сканер и дешифратор
  6. Neo Reader — ну, вы поняли
  7. Расшифровать QR-код самому — статья на Хабре о том, как обойтись без программ для считывания

Ну, и хочу попрощаться в нетрадиционной манере:

Удачи вам! До скорых встреч на страницах блога сайт

посмотреть еще ролики можно перейдя на
");">

Вам может быть интересно

Dropbox - как пользоваться облачным хранилищем данных, а так же работа с программой Дропбокс на компьютере и в мобильном OneDrive - как пользоваться хранилищем от Microsoft, удаленный доступ и другие возможности бывшего SkyDrive
Как онлайн сделать надпись на фото или наложить текст на картинку
Закладки в браузере Яндекса, Гугл Хром и Фаерфорс, а так же виртуальные онлайн-закладки
Онлайн FTP клиент Net2ftp и Google Alerts - полезный сервисы для вебмастеров

Н есмотря на то, что 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 код машинами, то данная статья поможет вам разобраться в этой проблеме. В статье рассмотрены базовые особенности 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)

Понравилась статья? Поделиться с друзьями: