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

Здравствуйте, дорогие читатели моего блога! Сегодня я расскажу вам про QR код и что это такое. Qr код переводится, как код быстрого реагирования. Это матричный пароль, который изначально был создан для автомобилей в Японии. Он содержит информацию о товаре, к которому привязан.

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

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

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

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

Так как же это работает? Qr код можно прочитать с помощью , в котором есть камера и специальная программа. Нужно просто запустить приложение, навести объектив на метку, и вы получите информацию. В данном случае ваша камера — это своеобразный сканер. Вас может перенаправить на закодированный сайт или на звонок по вложенному номеру телефона.

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

Необходимые программы

Существует уже достаточно приличный список приложений для расшифровки метки. одними из самых популярных являются Barcode scanner и QuickMark Lite QR Code Reader. Их легко можно скачать в Google Play.

Для IOS самые распространенные приложения: Bacodo и Scan.

Такие программы, как i-nigma, могут быть использованы на разных платформах и являются универсальными.

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

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

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

Для создания кода есть специальные сайты, которые называют генераторами, не требующие никаких особых навыков, например, www.qrcoder.ru и www.qrmania.ru . Вы просто заходите на сайт и вводите желаемую информацию. Под строкой ввода можно выбрать размер будущей метки. Она появится с правой стороны экрана в уже закодированном виде — готово!

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

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

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

Quick Response кодировка, известная как QR-код, с недавних пор стала активно использоваться государственными службами Российской Федерации. Коды появились на некоторых банкнотах и на всех кассовых чеках. С 2018 года QR код в обязательном порядке должны на своих чеках размещать все онлайн кассы. Данный законопроект был введен для того, чтобы предприниматели вели прозрачную деятельность, а налоговым органам было проще проводить фискальные проверки. Для обычного покупателя в QR-кодах такого типа не содержится полезной информации, кроме подтверждения подлинности. Но некоторые Quick Response на чеках всё же несут определенные данные полезные обычным клиентам.

Что содержит QR код на кассовом чеке

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

1. Дата и время совершения операции или покупки

2. Сумма денежных средств

3. Идентификационный номер фискального накопителя

4. Данные, какой фискальный документ использовался в операции

5. Фискальные признаки документации

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

При продаже алкогольной продукции наличие на чеке QR кода было обязательно еще с 2016 года. Код содержит данные об акцизной марке и подтверждает, что покупка совершена до 22:00. Этот вид кодов важен уже именно для клиентов. Покупатель может проверить, является ли лицензионной продукция, которую он приобрел с помощью специальной программы, и при необходимости обратиться в государственные органы, если его попытались обмануть или продать суррогатный алкоголь.

Как прочитать QR код на кассовом чеке

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

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

Для сканирования и чтения QR кода на чековом документе к приобретенной алкогольной продукции используется приложение для смартфонов «Сканер ЕГАИС». Его можно скачать в том же Play Market. Прочитать Quick Response с его помощью можно следующим образом:

1. Заходите в магазин приложений на вашем мобильном телефоне (Android - Play Market, Windows Phone - Microsoft Магазин, iOS - App Store) и вводите в строку поиска «Сканер ЕГАИС».

2. Скачиваете и устанавливаете приложение «Сканер ЕГАИС».

3. Запускаете приложение «Сканер ЕГАИС», предварительно проверив качество интернет соединения.

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

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

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

Что такое QR-код?

Дата: 2014-09-06

Что такое QR-код? Для чего нужен QR-код?

Думаю, что Вы слышали такое словосочетание: QR-код . Если не слышали, то уж точно видели и не один раз. Листая журналы, посещая различные сайты или просто гуляя по улицам, Вы точно видели непонятную картинку из сочетания небольших квадратиков, напоминающую игру тетрис. Это и есть QR-код. Так что же такое QR-код? Для чего он нужен и где его взять?

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

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

QR-код - это двухмерный штрихкод (бар-код), разработанный и представленный японской компанией «Denso-Wave» в 1994 году. Почему двухмерного? Потому что шифрование происходит в двух измерениях (по горизонтали и вертикали), что позволяет кодировать большие объемы информации.

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

Как считать информацию, закодированную в QR коде?

Все просто. На мобильное устройство (планшетный компьютер, смартфон или сотовый телефон) устанавливается небольшая программка сканер. Запускаете данную программку, наводите камеру своего смартфона (планшетника) на данный QR-код, программа моментально считывает данный код и выдает нужную информацию. Это может быть текстовая информация или ссылка на ресурс в Интернете. Например, описание товара, справка об историческом месте или здании, какая-то карта или схема и т.д. и т.п. Если у Вас в данные момент есть возможность выйти в Интернет, то Вы можете перейти на сайт и изучить информацию в он-лайн.

Я сам пользуюсь мобильными устройствами (смартфоном и планшетным компьютером) на базе Android . Из Play Маркет установил на свои устройства бесплатное приложение QR Barcode Scanner (хотя подобных приложений великое множество, возможно, Вам понравится и какое-то другое). Но приложение QR Barcode Scanner , умеет считывать и QR-коды и традиционные штриховые коды , мне понравилось, очень удобно.

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

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

Например, в городе Белгороде в конце 2013 года был реализован областной проект по оснащению памятников культуры города QR-кодами. Таким образом, запуск информационного ресурса «QR Белгород» позволил сделать информацию об историческом и культурном наследии региона более доступной для гостей и жителей области.

Где и как получить QR код?

На сегодняшний день в Интернете существует множество он-лайн сервисов, позволяющих сгенерировать картинку QR-кода . Например, вот один из подобных сервисов: QR Coder.ru .

Закодировать можно любой текст, ссылку на сайт, визитную карточку, СМС сообщение. Здесь все просто. Вводите нужную информацию, выбираете размер картинки и нажимаете кнопку: СОЗДАТЬ КОД . В правом окне генерируется картинка QR кода и ссылки для вставки на сайт (блог). Например на картинке QR кода справа, зашифрована информация обо мне, моя Визитная карточка.

Далее, кликните по сгенерированной картинке правой кнопкой мыши и выберите: "Сохранить изображение как..." . Картинка в формате GIF, с вашим персональным кодом будет сохранена на вашем компьютере, а дальше эту картинку уже можете использовать по своему усмотрению: размещать в интернете на сайтах (блогах), печатать на рекламных буклетах, визитках в средствах массовой информации и т.д. Я например зашифровал и разместил в подразделе: НАШИ ССЫЛКИ .

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

Всего Вам доброго.

Пример QR кода, в котором закодирован адрес нашего сайта.

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

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

QR-код может содержать действительно большой объем информации - целых 7089 цифр или 4296 букв . Это количество букв равняется двум полным листам текста формата А4. Обычно в такие коды шифруется самая разнообразная информация, начиная от адреса сайта и контактной информации, заканчивая большими описаниями товаров или просто текстами.

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

И все! Нужная информация будет передана в ваш мобильный.

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

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

Одними из самых популярных и удобных профильных сервисов являются:

Найти reader-приложение для вашего мобильного устройства вы можете в соответствующей его OS репозиториях

  • App Store ()
  • Google Play (для Android)
  • Ovi store (Для Nokia / Symbian)

Просто введите в строку поиска слово «QR» и скачайте подходящий бесплатный вариант (ну, или платный).

А как декодировать изображение с QR без телефона?

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

Возможно, вам будет интересно:

Чтобы ответить на вопрос о том, что такое auth key, нужно пояснить одну вещь. А именно то, что при использовании определенных приложений и программ пользователю требуется создать личную учетную запись, под которой он будет входить в программу. То есть, в рамках данной программы каждому пользователю присваивается персональная страничка, где и хранятся все его данные. Так вот: чтобы создать или изменить учетную запись, необходим Authentication key…

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

Облако тегов для сайта про игры Теги – это метки наподобие ключевых слов. В более узком смысле, теги – это идентификаторы для описания, поиска информации, категоризации и задания внутренней структуры сайта. Также под словом «тег» понимается ключевое слово, которое позволяет пользователю отмечать данные на web-сайте или в ПО. К примеру, с помощью тегов вы можете пометить письма в Gmail, какие-то записи и закладки в Livejournal.…

Если вы у вас появилось желание купить Айфон, то вы должны знать, чем он будет вам полезен. iPhone от компании Apple сегодня популярен как никогда. Но мало кто по-настоящему может осознать всю прелесть этого гаджета. Давайте разберемся, что такое iPhone и какая от него польза нам, пользователям? iPhone появился в результате объединения лучших качеств сотового телефона , музыкального iPod и компьютера. В итоге получилось очень хорошее…

В последнее время жители крупных городов России стали замечать на рекламных изображениях, упаковках товаров, визитных карточках странной “символики” – различного размера черно-белых квадратиков. Одни не обращают на них внимания, другие проявляет вполне здоровый интерес, находятся и такие, кто видит в этом новом явлении очередные происки врага. Так что же это на самом деле?





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

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





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



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





А вот еще один пример использования QR-кодов в безопасности. Как известно, относительно недавно компания Microsoft для защиты аккаунтов пользователей ввела. Теперь после введения пароля пользователь будет получать на свой мобильный телефон код подтверждения.

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





Итак, мы уже знаем, что такое QR-код, знаем зачем он нужен, теперь пришла пора узнать как его можно создать. А создать его можно очень просто. В Интернете для этого существуют специальные ресурсы – генераторы QR-кода. Одним из самых является QR Сoder.ru.

Здесь вы можете быстро сгенерировать QR-код для произвольного текста, визитки, sms-сообщения или ссылки на сайт. А вот еще одни неплохой сервис – QR Mania.ru. Помимо всего прочего здесь также можно создать QR-код сообщения email, номера телефона и участка карты Google.

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

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

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

Описание

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

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

Основное достоинство QR-кода - это лёгкое распознавание сканирующим оборудованием, что даёт возможность использования в торговле , производстве, логистике .

Хотя обозначение «QR code» является зарегистрированным товарным знаком «DENSO Corporation», использование кодов не облагается никакими лицензионными отчислениями , а сами они описаны и опубликованы в качестве стандартов ISO.

Спецификация QR-кода не описывает формат данных . Наиболее популярные программы просмотра QR-кодов поддерживают такие форматы данных: URL , закладка в браузер , Email (с темой письма), SMS на номер (c темой), MeCard, vCard , географические координаты .

Также некоторые программы могут распознавать файлы GIF , JPG , PNG или MID меньше 4 КБ и зашифрованный текст , но эти форматы не получили популярности.

Применение

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

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

Как показало исследование, проведённое компанией comScore в 2011 году, 20 млн жителей США использовали мобильные телефоны для сканирования QR-кодов .

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

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

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

В феврале 2019 года в более чем 600 ресторанах сети Burger King в 180 городах России был запущен новый способ оплаты - с электронного кошелька WebMoney через QR-код. Таким образом Burger King стала единственной (на момент запуска) сетью ресторанов быстрого питания, где россияне могут рассчитываться через QR-код .

Общая техническая информация

Самый маленький QR-код (версия 1) имеет размер 21×21 пиксель (без учёта полей), самый большой (версия 40) - 177×177 пикселей.

Существует четыре основных кодировки QR-кодов:

  • Цифровая: 10 битов на три цифры, до 7089 цифр.
  • Алфавитно-цифровая: поддерживаются 10 цифр, буквы от A до Z и несколько спецсимволов. 11 битов на два символа, до 4296 символов
  • Байтовая: данные в любой подходящей кодировке (по умолчанию ISO 8859-1), до 2953 байт.
  • Кандзи : 13 битов на иероглиф, до 1817 иероглифов.

Также существуют «псевдокодировки»: задание способа кодировки в данных, разбиение длинного сообщения на несколько кодов и т. д.

Для исправления ошибок применяется код Рида-Соломона с 8-битным кодовым словом. Есть четыре уровня избыточности: 7, 15, 25 и 30 %. Благодаря исправлению ошибок удаётся нанести на QR-код рисунок и всё равно оставить его читаемым.

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

Micro QR

Отдельно существует микро QR-код ёмкостью до 35 цифр.

Эффективность хранения данных по сравнению с традиционным QR кодом значительно улучшена благодаря использованию всего одной метки позиционирования, по сравнению с тремя метками в обычном QR коде. Из-за этого освобождается определённое пространство, которое может быть использовано под данные. Кроме того, QR код требует свободного поля вокруг кода шириной минимум в 4 модуля (минимальной единицы построения QR-кода), в то время как Micro QR код требует поля в два модуля шириной. Из-за большей эффективности хранения данных, размер Micro QR кода увеличивается не столь значительно с увеличением объёма закодированных данных по сравнению с традиционным QR кодом.

По аналогии с уровнями коррекции ошибок в QR кодах, Micro QR код бывает четырёх версий, М1-М4 .

Версия кода Количество модулей Уровень коррекции ошибок Цифры Цифры и буквы Двоичные данные Kanji
M1 11 - 5 - - -
M2 13 L (7 %) 10 6 - -
M (15 %) 8 5 - -
M3 15 L (7 %) 23 14 9 6
M (15 %) 18 11 7 4
M4 17 L (7 %) 35 21 15 9
M (15 %) 30 18 13 8
Q (25 %) 21 13 9 5

Кодирование данных

Закодировать информацию в QR-код можно несколькими способами, а выбор конкретного способа зависит от того, какие символы используются. Если используются только цифры от 0 до 9, то можно применить цифровое кодирование, если кроме цифр необходимо зашифровать буквы латинского алфавита, пробел и символы ±*/$%*.:, используется алфавитно-цифровое кодирование. Ещё существует кодирование кандзи, которое применяется для шифрования китайских и японских иероглифов, и побайтовое кодирование. Перед каждым способом кодирования создаётся пустая последовательность бит, которая затем заполняется.

Цифровое кодирование

Этот тип кодирования требует 10 бит на 3 символа. Вся последовательность символов разбивается на группы по 3 цифры, и каждая группа (трёхзначное число) переводится в 10-битное двоичное число и добавляется к последовательности бит. Если общее количество символов не кратно 3, то если в конце остаётся 2 символа, полученное двузначное число кодируется 7 битами, а если 1 символ, то 4 битами.

Например, есть строка «12345678», которую надо закодировать. Последовательность разбивается на числа: 123, 456 и 78, затем каждое число переводится в двоичный вид: 0001111011, 0111001000 и 1001110, и объединяется это в один битовый поток: 000111101101110010001001110.

Буквенно-цифровое кодирование

В отличие от цифрового кодирования, для кодирования 2 символов требуется 11 бит информации. Последовательность символов разбивается на группы по 2, в группе каждый символ кодируется согласно таблице «Значения символов в буквенно-цифровом кодировании». Значение первого символа умножается на 45, затем к этому произведению прибавляется значение второго символа. Полученное число переводится в 11-битное двоичное число и добавляется к последовательности бит. Если в последней группе остаётся один символ, то его значение кодируется 6-битным числом. Рассмотрим на примере: «PROOF». Разбиваем последовательность символов на группы: PR , OO , F . Находим соответствующие значения символам к каждой группе (смотрим в таблицу): PR -(25,27), OO -(24,24), F -(15). Находим значения для каждой группы: 25*45+27=1152, 24*45+24=1104, 15=15. Переводим каждое значение в двоичный вид: 1152=10010000000, 1104=10001010000, 15=001111. Объединяем в одну последовательность: 1001000000010001010000001111.

Байтовое кодирование

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

Например, слово «Мир» кодируем в Unicode (HEX) в UTF-8: М - D09C; и - D0B8; р - D180. Переводим каждое значение в двоичную систему счисления: D0=11010000, 9C =10011100, D0=11010000, B8=10111000, D1=11010001 и 80=10000000; объединяем в один поток бит: 11010000 10011100 11010000 10111000 11010001 10000000.

Кандзи

В основе кодирования иероглифов (как и прочих символов) лежит визуально воспринимаемая таблица или список изображений иероглифов с их кодами. Такая таблица называется «character set». Для японского языка основное значение имеют две таблицы символов: JIS 0208:1997 и JIS 0212:1990. Вторая из них является дополнением к первой. JIS 0208:1997 разбита на 94 страницы по 94 символа. К примеру, страница 4 - хирагана, 5 - катакана, 7 - кириллица, 16-43 - кандзи уровня 1, 48-83 - кандзи уровня 2. Кандзи уровня 1 («JIS дайити суйдзюн кандзи») упорядочены по онам. Кандзи уровня 2 (JIS дайни суйдзюн кандзи) упорядочены по ключам, и внутри них - по количеству черт.

Добавление служебной информации

После определения версии кода и кодировки необходимо определиться с уровнем коррекции ошибок. В таблице представлены максимальные значения уровней коррекции для различных версий QR-кода. Для исправления ошибок применяется код Рида-Соломона с 8-битным кодовым словом.

Таблица. Максимальное количество информации.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
L 152 272 440 640 864 1088 1248 1552 1856 2192 2592 2960 3424 3688 4184 4712 5176 5768 6360 6888
M 128 224 352 512 688 864 992 1232 1456 1728 2032 2320 2672 2920 3320 3624 4056 4504 5016 5352
Q 104 176 272 384 496 608 704 880 1056 1232 1440 1648 1952 2088 2360 2600 2936 3176 3560 3880
H 72 128 208 288 368 480 528 688 800 976 1120 1264 1440 1576 1784 2024 2264 2504 2728 3080
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
L 7456 8048 8752 9392 10208 10960 11744 12248 13048 13880 14744 15640 16568 17528 18448 19472 20528 21616 22496 23648
M 5712 6256 6880 7312 8000 8496 9024 9544 10136 10984 11640 12328 13048 13800 14496 15312 15936 16816 17728 18672
Q 4096 4544 4912 5312 5744 6032 6464 6968 7288 7880 8264 8920 9368 9848 10288 10832 11408 12016 12656 13328
H 3248 3536 3712 4112 4304 4768 5024 5288 5608 5960 6344 6760 7208 7688 7888 8432 8768 9136 9776 10208

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

  • 0001 для цифрового кодирования,
  • 0010 для буквенно-цифрового и
  • 0100 для побайтового

Ранее в примере байтового кодирования кодировалось слово «Мир», при этом получилась следующая последовательность двоичного кода:

11010000 10011100 11010000 10111000 11010001 10000000, содержащая 48 бит информации.

Пусть необходим уровень коррекции ошибок Н, позволяющий восстанавливать 30 % утраченной информации. По таблице максимальное количество информации выбирается наиболее оптимальная версия QR-кода (в данном случае 1 версия, которая позволяет закодировать 72 символа полезной информации при уровне коррекции ошибок Н).

Информация о способе кодирования: побайтовому кодированию соответствует поле 0100.

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

По таблице определяется необходимая длина двоичного числа - 8 бит. Дописываются недостающие нули: 00000110.

Версия 1-9 Версия 10-26 Версия 27-40
Цифровое 10 бит 12 бит 14 бит
Буквенно-цифровое 9 бит 11 бит 13 бит
Побайтовое 8 бит 16 бит 16 бит

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

0100 00000110 11010000 10011100 11010000 10111000 11010001 10000000.

Разбиение на блоки

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

Сначала определяется количество байт (данных) в каждом из блоков. Для этого надо разделить всё количество байт на количество блоков данных. Если это число не целое, то надо определить остаток от деления. Этот остаток определяет, сколько блоков из всех дополнены (такие блоки, количество байт в которых больше на один, чем в остальных). Вопреки ожиданию, дополненными блоками должны быть не первые блоки, а последние. Затем идёт последовательное заполнение блоков.

Пример: для версии 9 и уровня коррекции M количество данных - 182 байта, количество блоков - 5. Поделив количество байт данных на количество блоков, получаем 36 байт и 2 байта в остатке. Это значит, что блоки данных будут иметь следующие размеры: 36, 36, 36, 37, 37 (байт). Если бы остатка не было, то все 5 блоков имели бы размер по 36 байт.

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

Создание байтов коррекции

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

Таблица. Количество байтов коррекции на один блок
Строка - уровень коррекции, столбец - номер версии.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
L 7 10 15 20 26 18 20 24 30 18 20 24 26 30 22 24 28 30 28 28 28 28 30 30 26 28 30 30 30 30 30 30 30 30 30 30 30 30 30 30
M 10 16 26 18 24 16 18 22 22 26 30 22 22 24 24 28 28 26 26 26 26 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28
Q 13 22 18 26 18 24 18 22 20 24 28 26 24 20 30 24 28 28 26 30 28 30 30 30 30 28 30 30 30 30 30 30 30 30 30 30 30 30 30 30
H 17 28 22 16 22 28 26 26 24 28 24 28 22 24 24 30 28 28 26 28 30 24 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30

По количеству байтов коррекции определяется генерирующий многочлен (приведено в таблице).

Таблица. Генерирующие многочлены.

Количество байт коррекции Генерирующий многочлен
7 87, 229, 146, 149, 238, 102, 21
10 251, 67, 46, 61, 118, 70, 64, 94, 32, 45
13 74, 152, 176, 100, 86, 100, 106, 104, 130, 218, 206, 140, 78
15 8, 183, 61, 91, 202, 37, 51, 58, 58, 237, 140, 124, 5, 99, 105
16 120, 104, 107, 109, 102, 161, 76, 3, 91, 191, 147, 169, 182, 194, 225, 120
17 43, 139, 206, 78, 43, 239, 123, 206, 214, 147, 24, 99, 150, 39, 243, 163, 136
18 215, 234, 158, 94, 184, 97, 118, 170, 79, 187, 152, 148, 252, 179, 5, 98, 96, 153
20 17, 60, 79, 50, 61, 163, 26, 187, 202, 180, 221, 225, 83, 239, 156, 164, 212, 212, 188, 190
22 210, 171, 247, 242, 93, 230, 14, 109, 221, 53, 200, 74, 8, 172, 98, 80, 219, 134, 160, 105, 165, 231
24 229, 121, 135, 48, 211, 117, 251, 126, 159, 180, 169, 152, 192, 226, 228, 218, 111, 0, 117, 232, 87, 96, 227, 21
26 173, 125, 158, 2, 103, 182, 118, 17, 145, 201, 111, 28, 165, 53, 161, 21, 245, 142, 13, 102, 48, 227, 153, 145, 218, 70
28 168, 223, 200, 104, 224, 234, 108, 180, 110, 190, 195, 147, 205, 27, 232, 201, 21, 43, 245, 87, 42, 195, 212, 119, 242, 37, 9, 123
30 41, 173, 145, 152, 216, 31, 179, 182, 50, 48, 110, 86, 239, 96, 222, 125, 42, 173, 226, 193, 224, 130, 156, 37, 251, 216, 238, 40, 192, 180

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

Объединение информационных блоков

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

В итоге получается следующая последовательность данных: <1-й байт 1-го блока данных><1-й байт 2-го блока данных>…<1-й байт n-го блока данных><2-й байт 1-го блока данных>…<(m - 1)-й байт 1-го блока данных>…<(m - 1)-й байт n-го блока данных><1-й байт 1-го блока байтов коррекции><1-й байт 2-го блока байтов коррекции>…<1-й байт n-го блока байтов коррекции><2-й байт 1-го блока байтов коррекции>….

Здесь n - количество блоков данных, m - количество байтов на блок данных у обычных блоков, l - количество байтов коррекции, k - количество блоков данных минус количество дополненных блоков данных (тех, у которых на 1 байт больше).

Этап размещения информации на поле кода

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

  • Поисковые узоры
  • Выравнивающие узоры
  • Полосы синхронизации
  • Код маски и уровня коррекции
  • Код версии (с 7-й версии)

а также обязательный отступ вокруг кода . Отступ - это рамка из белых модулей, её ширина - 4 модуля. Поисковые узоры - это 3 квадрата по углам кроме правого нижнего. Используются для определения расположения кода. Они состоят из квадрата 3х3 из чёрных модулей, вокруг рамка из белых модулей шириной 1, потом ещё одна рамка из чёрных модулей, так же шириной 1, и ограждение от остальной части кода - половина рамки из белых модулей шириной 1. Итого эти объекты имеют размер 8х8 модулей.

Выравнивающие узоры - появляются, начиная со второй версии, используются для дополнительной стабилизации кода, более точном его размещении при декодировании. Состоят они из 1 чёрного модуля, вокруг которого стоит рамка из белых модулей шириной 1, а потом ещё одна рамка из чёрных модулей, также шириной 1. Итоговый размер выравнивающего узора - 5х5. Стоят такие узоры на разных позициях в зависимости от номера версии. Выравнивающие узоры не могут накладываться на поисковые узоры. Ниже представлена таблица расположения центрального чёрного модуля, там указаны цифры - это возможные координаты, причём как по горизонтали, так и по вертикали. Эти модули стоят на пересечении таких координат. Отсчёт ведётся от верхнего левого узла, его координаты (0,0).

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
- 18 22 26 30 34 6, 22, 38 6, 24, 42 6, 26, 46 6, 28, 50 6, 30, 54 6, 32, 58 6, 34, 62 6, 26, 46, 66 6, 26, 48, 70 6, 26, 50, 74 6, 30, 54, 78 6, 30, 56, 82 6, 30, 58, 86 6, 34, 62, 90
21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
6, 28, 50, 72, 94 6, 26, 50, 74, 98 6, 30, 54, 78, 102 6, 28, 54, 80, 106 6, 32, 58, 84, 110 6, 30, 58, 86, 114 6, 34, 62, 90, 118 6, 26, 50, 74, 98, 122 6, 30, 54, 78, 102, 126 6, 26, 52, 78, 104, 130 6, 30, 56, 82, 108, 134 6, 34, 60, 86, 112, 138 6, 30, 58, 86, 114, 142 6, 34, 62, 90, 118, 146 6, 30, 54, 78, 102, 126, 150 6, 24, 50, 76, 102, 128, 154 6, 28, 54, 80, 106, 132, 158 6, 32, 58, 84, 110, 136, 162 6, 26, 54, 82, 110, 138, 166 6, 30, 58, 86, 114, 142, 170

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

Код маски и уровня коррекции - расположен рядом с поисковыми узорами: под правым верхним (8 модулей) и справа от левого нижнего (7 модулей), и дублируются по бокам левого верхнего, с пробелом на 7 ячейке - там, где проходят полосы синхронизации, причём горизонтальный код в вертикальную часть, а вертикальный - в горизонтальную.

Код версии - нужен для определения версии кода. Находятся слева от верхнего правого и сверху от нижнего левого, причём дублируются. Дублируются они так - зеркальную копию верхнего кода поворачивают против часовой стрелки на 90 градусов. Ниже представлена таблица кодов, 1 - чёрный модуль, 0 - белый.

Версия 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
Код версии 000010 011110 100110 010001 011100 111000 110111 011000 000100 101001 111110 000000 001111 111010 111100 001101 100100 011010 101011 100000 100110 110101 000110 100010 010011 000010 011110 011100 010001 011100 111010 010101 100000 100100 110011 100100 000010 110111 011000 000000 101001 111110 100110 101101 000010 111000 001011 000110 011110 001111 111010
24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
001101 001101 100100 101011 001001 011000 110101 101111 011100 010011 101011 100000 010001 110101 000110 110111 110001 111010 101001 010111 111110 001111 010011 000010 101000 011000 101101 001110 011100 010001 010000 111010 010101 110110 111110 101001 110100 100000 001111 010010 100100 110011 001100 000010 110111 101010 000110 001011 111001 000100 010101

Занесение данных

Оставшееся свободным место делят на столбики шириной в 2 модуля и заносят туда информацию, причём делают это «змейкой». Сначала в правый нижний квадратик заносят первый бит информации, потом в его левого соседа, потом в тот, который был над первым и так далее. Заполнение столбцов ведётся снизу вверх, а потом сверху вниз и т. д., причём по краям заполнение битов ведётся от крайнего бита одного столбца до крайнего бита соседнего столбца, что задаёт «змейку» на столбцы с направлением вниз. Если информации окажется недостаточно, то поля просто оставляют пустыми (белые модули). При этом на каждый модуль накладывается маска.

Примечания

Ссылки

  • Сайт компании Denso Wave, посвящённый QR-кодам (англ.)

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

QR-код или Quick Response («быстрый отклик»), по сути, является такой же базой данных, только вместо уже знакомых полосок используются квадратики. Специальное приложение позволяет зашифровать в двумерные черно-белые «шашечки» информацию разного рода: номер телефона или электронной почты, просто текст для ознакомления, координаты, например, достопримечательности или навигации. Чаще всего кодируется в QR-код URL-адрес, т.е. ссылка на организацию или страничку в интернете. Практикуется использование штрих-кода в целях достижения максимального комфорта и универсальности в применении. Ведь куда проще в один клик расшифровать подобную картинку, чем скрупулёзно вбивать символы в строку поиска.

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

История штрих-кода

Новшество в лице QR-кода предложила компания Denso-Wave ещё в середине 90-ых. Размер вмещаемой информации, конечно же, не безграничен. В стандартный QR-код может уместиться чуть более 4 тыс. символов латиницы или 7 тыс. чисел десятичной системы счисления. Больше всего штрих-коды распространены в странах Азии и на своей родине, в Японии. Активно применяются QR-коды в музеях, справочниках, рекламных буклетах и прочих сферах, связанных с туризмом (не обошли стороной даже кладбища).

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

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

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

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

Допустим, есть необходимость создать собственный QR-код. Осуществить задумку можно при помощи, опять-таки, смартфона, компьютера или же специального сайта. Например, qrcoder.ru или decodeit.ru . Исходный текст для создания штрих-кода необходимо вставить в поле (или ссылку на него) и нажать кнопку «Создать Код». На некоторых сайтах и вовсе используется комбинация клавиш ctrl+enter. А дальше всплываемые подсказки сами подскажут, что делать. В частности в интернете практикуется создание анимированных QR-кодов, которые могут разворачиваться на несколько градусов. Правда, такой приём может привнести некоторые осложнения в дальнейшее распознавание.

Созданием штрих-кодов на смартфоне помогает заниматься специализированный генератор. Никакой рекламы, никакой платы, всё на русском, доступно, понятно и никаких ограничений. Google Play или AppStore полны различных приложений, остаётся только выбрать подходящее. Продолжая тему вариантов для создания штрих-кодов можно упомянуть и QR Code Reader. Его изюминка в высокой скорости обработки изображений, которые могут быть ещё и видоизменёнными или вовсе уменьшенными. Обладателям ранних версий Windows Phone повезло ещё больше. Им достаточно запустить Bing браузер и активировать кнопку «с глазом», после чего процесс сканирования QR-кода запустится сам собой. Он не такой быстрый и качественный, как предыдущий, но для раза-другого в случае чего сгодится.

Заключение

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

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