qr код читается с фото

Как cчитать QR-код: все способы

qr код читается с фото

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

qr код читается с фото

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

Как считать QR-код без приложения

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

Как считать QR-код с помощью смартфона

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

Как читать QR-коды на ПК с ОС Windows

Как считывать QR-коды на компьютере или ноутбуке, подробно описано в нашем соответствующем материале. Здесь для сканирования штрих-кода вам понадобится веб-камера.

Как расшифровать QR-код вручную

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

Источник

Читаем QR код

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

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

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

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

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

qr код читается с фото

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

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

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

qr код читается с фото

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

Шаг 0. QR код

qr код читается с фото

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

qr код читается с фото

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

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

qr код читается с фото

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

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

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

qr код читается с фото

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

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

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

000(i + j) mod 2 = 0
001i mod 2 = 0
010j 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

qr код читается с фото

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

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

qr код читается с фото

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

ECI0111
Числовые0001
Буквенно-числовые0010
8-битный (байтный)0100
Kanji1000
Структурированное дополнение0011
FNC10101 (1-я позиция)
1001 (2-я позиция)

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

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

qr код читается с фото

qr код читается с фото

qr код читается с фото

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

После получения данных о режиме можно приступать к чтению информации. Надо оговорить, что наиболее интересно считывать числовые и буквенно-числовые данные, так как они легко интерпретируются. Но также не стоит бояться 8-битных. Это может быть также легко интерпретируемая информация. Например, многие онлайн генераторы QR текст кодируют в этом режиме, используя ASCII. Ещё одна причина, почему следует изначально прочитать режим, это то, что от него зависит количество пакетов данных. Которая также зависит и от версии кода. Для версий с первой по девятую длины блоков для более читабельных режимов:

Числовые10 бит / 4 бита
Буквенно-числовые9 бит
8-битный (байтный)8 бит

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

qr код читается с фото

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

qr код читается с фото

На рисунке видно, все 4 пакета представляют собой коды ASCII латинских букв, образующие слово «habr»

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

Источник

Как работает QR-код?

Привет Хабр! В блоге на нашем сайте мы регулярно публикуем статьи про данные и всё, что с ними связано. Некоторые материалы оттуда публикуем и здесь.

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

qr код читается с фото

Как придумали?

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

Cоздателя первого штрихового кода Нормана Вудланда вдохновила азбука Морзе: он объяснял, что просто расширил точки и тире, превратив их в широкие и узкие штрихи. Для их считывания предполагалось использовать технологию оптической звукозаписи. Из-за технических трудностей реализация замысла заняла двадцать лет: первый товар со штрихкодом (пачка жевательной резинки Wrigley) был продан в 1974.

qr код читается с фото

Штрихкоды быстро нашли применение в промышленности: ими удобно было маркировать детали и комплектующие. Но не для всех компаний этого было достаточно. В японской Denso Wave, производящей запчасти для автомобилей, работники просили руководство разработать более эффективную систему, и в 1994 она появилась — в виде матричного (двумерного) кода. Его назвали Quick Response Code — код быстрого реагирования или QR-код.

Где используется?

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

qr код читается с фото

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

Почему так выглядит и как шифрует?

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

Каждый QR-код может содержать:

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

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

Составление QR-кода проходит в несколько этапов:

qr код читается с фото

Как распознается?

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

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

В чём проблема?

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

Хотя Denso Wave и предупреждает о том, что цветные двумерные коды, коды с картинками и прочие творческие находки не соответствуют стандартам, это не мешает ими пользоваться — или, по крайней мере, «рисовать их». Тут фантазии есть, где развернуться: от цветной ёлочки Лебедева и генераторов, которые позволяют вставить в QR-код текст или картинку, сохранив читаемость, до кодов, выложенных цветами в британских магазинах Marks&Spencer или высаженных можжевельником в Китае.

qr код читается с фото

Альтернативы

При всех своих достоинствах, QR-код — не единственный. Та же Denso Wave разработала Micro QR для передачи меньшего объема информации (вот тут сравнение), SQRC (код, часть информации которого доступна всем, а часть — только пользователям, у которых есть специальный ключ для расшифровки), IQR Code (может иметь разный размер и форму), Frame QR (внутрь можно вставлять изображения). Сравните их все.

Используются и коды, которые не имеют отношения к Denso Wave. Это, например, Aztec Code (его легко узнать по квадрату в центре) на авиа- и железнодорожных билетах, MaxiCode в грузоперевозках, DataMatrix в промышленности, прямоугольный PDF417 для документов.

Российская национальная система маркировки «Честный знак» использует DataMatrix. Индивидуальный код позволяет отслеживать перемещение всех товаров от поставщика к покупателю и исключает возможность появления подделок в торговых сетях. Кроме того, специальное мобильное приложение позволяет любому покупателю убедиться в подлинности товара.

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

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

На тот случай если вы задумали сменить сферу или повысить свою квалификацию — промокод HABR даст вам дополнительные 10 % к скидке указанной на баннере.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *