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

QR-код придумали в Японии в 1990-х годах, чтобы быстро отслеживать детали на производстве. Теперь такие квадраты стоят на билетах, меню, упаковках и квитанциях, а читает их обычная камера телефона.
Из чего состоит квадрат
Код состоит из маленьких чёрных и белых клеток, которые называют модулями. Три больших квадрата в углах нужны для ориентации: по ним телефон понимает, где у кода верх, под каким углом он повёрнут и каков его размер. Поэтому код можно сканировать под наклоном и даже вверх ногами. Вокруг картинки оставляют пустое белое поле, чтобы код не сливался с окружающим рисунком.
Остальные клетки — это данные, записанные в двоичном виде. Часть из них отведена под служебные сведения: способ кодирования и уровень защиты от ошибок. В больших кодах есть и дополнительные маленькие квадраты, которые помогают выровнять изображение, если поверхность искривлена.
Почему код читается с ошибками
Кроме самих данных, в код записывают избыточные сведения, по которым можно восстановить утраченное, если часть квадрата повреждена. Для этого применяют особые математические методы исправления ошибок. Чем выше выбранный уровень защиты, тем большую долю повреждённой площади код переживёт, но тем меньше полезных данных помещается в тот же квадрат.
Именно поэтому в середину кода иногда помещают логотип или картинку: часть модулей закрыта, но избыточных сведений хватает, чтобы всё прочитать. Поцарапанный или слегка выцветший код тоже может сработать, хотя у защиты есть предел.
Что стоит помнить пользователю
Код хранит только текст, чаще всего ссылку. Он ничего не говорит о сайте, на который ведёт, поэтому перед переходом посмотрите на адрес, который показывает телефон, особенно если код наклеен на столб или пришёл в письме. Если адрес кажется странным, лучше его не открывать. А для собственных нужд такой код легко сделать самому: он удобен для адреса Wi-Fi, визитки или ссылки на семейный альбом.



