И quick response код который. Программа для чтения и создания QR кодов. Как прочитать QR-код с помощью смартфона на OS Android

Каждый кто сталкивался со странными рисунками, содержащими в себе массу информации, хотел узнать: как создается подобный код, как пользоваться 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-код напоминает собой традиционный штрих-код. Но он имеет квадратную форму, а вместо полосок разной толщины здесь используется множество квадратиков, которые рядовыми пользователями могут приниматься за лабиринт из полосок. Зачем же нужны QR-коды? Какое приложение следует использовать для их считывания? На все эти вопросы постарается ответить наша статья.

В любом QR-коде зашифрована та или иная информация. Она может быть следующих видов:

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

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

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

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

Как отсканировать QR-код?

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

Программы, способные расшифровать QR-код, обычно являются очень простыми в освоении. Весят они немного, поэтому вы можете скачать любое приложение даже при отсутствии сети Wi-Fi. Если вам нужна подобная программа на Айфон, то мы рекомендуем установить Scan . Эта утилита была создана достаточно давно, а её интерфейс переведён на множество языков, включая русский. Считывать она может в том числе штрих-коды, которые содержат в себе информацию о товаре. Имеется у программы и дополнительный функционал, заключающийся в создании полезных QR-кодов. Например, вы можете создать специальный код, считывание которого позволит вашим гостям подключиться к сети Wi-Fi.

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

Что касается операционной системы Android, то для неё разработано огромное количество программ, умеющих распознавать QR-коды. Например, вы можете установить QuickMark . Это очень небольшое, но весьма функциональное приложение. Оно понимает не только QR-коды, но и штрих-коды самых разных форматов. Интерфейс здесь выполнен на английском языке, но это ничуть не пугает. Каждое ваше считывание какого-либо кода заносится в историю, что очень удобно. Ссылки открываются посредством Google Chrome или любого другого браузера, который у вас назначен по умолчанию. К сожалению, есть у данного продукта разработчиков и негативные стороны. Заключаются они во время от времени отображаемой рекламе. Устранить этот недостаток можно только покупкой полной версии. А ещё в отзывах нередко встречаются упоминания о том, что на каких-то смартфонах приложение попросту не работает.

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

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

Как создать собственный QR-код?

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

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

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

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

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

Изображения с черными квадратиками присутствуют на

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

Эти квадраты ни что иное, как QR-коды.

Что такое QR-код: история появления и принцип использования

Аббревиатура QR происходит от английской фразы Quick Response, что можно перевести как быстрый отклик.

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

В европейских странах давно применяются QR-коды. У нас они стали использоваться сравнительно недавно, но сейчас активно распространяются.

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

QR-код возник в 1994 году. Тогда специалисты фирмы Denso-Wave (Япония) придумали особый метод шифрования, который позволял кодировать различные файлы. Объем информации был ограничен 4296 символами или 7089 цифрами.

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

Применение QR-кодов в современности

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

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

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

В кодах на упаковке товара могут храниться сведения о составе продукта, его производителе.


Оплата по QR-коду квитанции ЖКХ

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

В туризме QR-коды используются при покупке и проверке билетов, для подтверждения подлинности документов.

Как пользоваться?

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

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

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

Пример, как считывать QR-код на телефоне

Для этого устанавливаем на смартфон приложение для чтения кода, которое можно выбрать, бесплатно скачать и установить в магазине Play Market. Например, я выбрала приложение для чтения кода от Лаборатории Касперского:

Скачиваем приложение, подносим смартфон, когда на нем открыт QR-сканер непосредственно к коду (он может быть на экране, на товаре, на билете, на чеке и т.д.) и читаем сообщение, которое содержит данный код.

Создание QR-кода

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

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

Этот генератор позволяет закодировать (создать код):

  • Любой текст,
  • Ссылку на сайт,
  • Визитную карточку,
  • Sms-сообщение.

Что касается текста, то для него есть ограничение на генерацию кода – не более 2953 байт, то есть не более 2953 букв кириллицы в кодировке windows-1251или около 1450 букв кириллицы в utf-8.

Как считывать QR-код на ПК

Для этого есть 2 варианта:

  1. установить на своем ПК (ноутбуке) бесплатную программу для считывания кода;
  2. не устанавливать никаких программ и просто использовать бесплатный онлайн-сервис.

Скачать бесплатно на ПК программу CodeTwo QR Code Desktop Reader https://www.codetwo.com/freeware/qr-code-desktop-reader/

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

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

Далее открываем онлайн-сервис и загружаем туда файл с картинкой с помощью кнопки “Выберите файл” (рисунок см. выше). После этого жмем “Отправить”. Сервис расшифровывает код и выдает нам ту информацию, которая зашифрована в коде.

Пример, как сделать qr код онлайн для текста

Попробуем сначала самостоятельно создать код, а потом его прочитать с помощью смартфона.

Для примера возьмем текст содержания этой статьи. Затем откроем сервис онлайн для создания кода этого содержания:


Рис. 1. Примерный порядок действий в Генераторе QR-кода

1 на рис. 1 – Открываем Генератор QR-кода по ссылке, предложенной выше.

2 – Выбираем опцию «любой текст». Для него будем создавать код.

3 на рис. 1– текст или печатаем его самостоятельно. Затем поместим текст в окно «введите текст для кодирования».

4 на рис. 1 – Выбираем размер кода или оставляем тот, который предложен по умолчанию.

5 на рис. 1 – Нажав «создать код», получаем изображение кода (6).

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

Пример, как сделать qr код онлайн для ссылки на сайт

О том, как это сделать онлайн с помощью генератора кода, показано по шагам на рисунке ниже:


Рис. 2 Примерный план создания кода для ссылки на свой сайт

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

Видео “Что такое QR код, для чего он нужен, и как его создать?”

Итоги

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

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

История создания

Итак, что же подразумевает под собой подобного рода шифр? Все очень просто: QR - аббревиатура слов Quick Response, что в переводе с английского языка означает «быстрый отклик» или «быстрый ответ». А QR-код - это так называемый двумерный штрих-код, который был разработан и представлен в 1994 году японской компанией, именуемой Denso Wave. QR-код, расшифровать который после прочтения данной статьи не составит большого труда, стал нужен в силу того, что японским компаниям не хватало объема информации, которую можно заложить в обычный одномерный штрих-код.

Процесс распознавания

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

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

Преимущества использования

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

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

Популярность

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

Позднее, в середине 2000-х, при появлении первых смартфонов с камерой, а после них - Apple iPhone и других более современных девайсов, QR-код снова начал набирать популярность. Все дело в том, что приложения, считывающие шифр с помощью камеры устройства, также могут делать это в считаные секунды. Причем информация, содержащаяся в QR, может в полной мере передавать ссылки, письма, SMS, контакты и даже изображения JPG и GIF размером до 4 кб. Последние, к слову, не прижились в современном мире и применяются очень редко.

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

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

Если просто включить приложение камеры и навести на QR-код, естественно, ничего не выйдет, и шифр не распознается. Все потому, что для считывания нужно специальное приложение-дешифратор. Где его взять? В данном случае все тоже очень просто: подобными приложениями полны различные магазины мобильных приложений, такие как AppStore на iPhone и Play Market на Android. В строке поиска последних стоит ввести запрос «сканер QR-кода» или же просто «сканер QR». После появления результатов следует выбрать любое приглянувшееся приложение, установить и запустить его. На интересующий QR-код наводят камеру с любой стороны и под абсолютно любым углом. Приложение само выводит нужную информацию на дисплей. К примеру, если это будет ссылка на веб-сайт, автоматически запустится по умолчанию установленный браузер с уже открытой страницей.

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

Где используются QR-коды

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

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

Подводя итоги, хочется сказать, что, благодаря QR-кодам, поиск информации в современном мире стал намного приятнее и проще. Конечно, смартфоны могут сканировать и более простые одномерные штрих-коды, но последние не несут достаточной информации, что делает двумерные шифры более популярными. Именно поэтому не стоит лениться, чтобы скачать приложение-дешифратор на свой смартфон. Ведь кто знает, где и когда потребуется распознание 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)

Просмотров