Почему QR-код считывается, даже если он поцарапан или заклеен?
Наводишь камеру на помятый билет, потёртую упаковку или наклейку с пятном — и ссылка всё равно открывается. Кажется странным: часть чёрных квадратиков исчезла, значит, должна была потеряться и часть информации.
Но QR-код изначально создавался с расчётом на повреждения.
Сначала камера ищет три крупных квадрата по углам. Они нужны не для хранения ссылки, а для ориентации. По их расположению телефон понимает, где верх и низ кода, насколько он повёрнут и под каким углом снят. Поэтому QR-код можно сканировать боком и даже с небольшим искажением перспективы.
Затем программа мысленно выпрямляет изображение и делит его на сетку из маленьких чёрных и белых элементов — модулей. Каждый из них участвует в записи данных: адреса сайта, номера билета, текста или другой информации.
Однако внутри зашифрованы не только сами данные. При создании QR-кода к ним добавляется математическая «страховка» — код коррекции ошибок Рида — Соломона. Это не просто вторая копия ссылки, спрятанная в другом углу. Алгоритм рассчитывает дополнительные проверочные значения, по которым сканер может обнаружить испорченные фрагменты и восстановить недостающие данные.
Похожий принцип используют при передаче файлов и хранении информации на дисках. Представь фразу, к которой добавили несколько специальных подсказок. Даже если часть букв залили чернилами, по оставшимся буквам и подсказкам можно вычислить, что находилось на повреждённом месте.
У QR-кода есть четыре уровня коррекции. В зависимости от выбранного уровня можно восстановить примерно от 7 до 30% кодовых слов. Чем выше защита, тем больше служебных данных приходится записывать и тем крупнее либо плотнее получается код. При этом обещанные 30% не означают, что можно безнаказанно закрасить любую треть картинки: результат зависит от места и характера повреждения. Если уничтожить угловые метки, сильно смазать модули или убрать свободное белое поле вокруг кода, камера может его даже не распознать.
QR-код переживает царапины не потому, что телефон угадывает ссылку. Часть его площади заранее отдана математике, способной восстановить потерянное.
Наводишь камеру на помятый билет, потёртую упаковку или наклейку с пятном — и ссылка всё равно открывается. Кажется странным: часть чёрных квадратиков исчезла, значит, должна была потеряться и часть информации.
Но QR-код изначально создавался с расчётом на повреждения.
Сначала камера ищет три крупных квадрата по углам. Они нужны не для хранения ссылки, а для ориентации. По их расположению телефон понимает, где верх и низ кода, насколько он повёрнут и под каким углом снят. Поэтому QR-код можно сканировать боком и даже с небольшим искажением перспективы.
Затем программа мысленно выпрямляет изображение и делит его на сетку из маленьких чёрных и белых элементов — модулей. Каждый из них участвует в записи данных: адреса сайта, номера билета, текста или другой информации.
Однако внутри зашифрованы не только сами данные. При создании QR-кода к ним добавляется математическая «страховка» — код коррекции ошибок Рида — Соломона. Это не просто вторая копия ссылки, спрятанная в другом углу. Алгоритм рассчитывает дополнительные проверочные значения, по которым сканер может обнаружить испорченные фрагменты и восстановить недостающие данные.
Похожий принцип используют при передаче файлов и хранении информации на дисках. Представь фразу, к которой добавили несколько специальных подсказок. Даже если часть букв залили чернилами, по оставшимся буквам и подсказкам можно вычислить, что находилось на повреждённом месте.
У QR-кода есть четыре уровня коррекции. В зависимости от выбранного уровня можно восстановить примерно от 7 до 30% кодовых слов. Чем выше защита, тем больше служебных данных приходится записывать и тем крупнее либо плотнее получается код. При этом обещанные 30% не означают, что можно безнаказанно закрасить любую треть картинки: результат зависит от места и характера повреждения. Если уничтожить угловые метки, сильно смазать модули или убрать свободное белое поле вокруг кода, камера может его даже не распознать.
QR-код переживает царапины не потому, что телефон угадывает ссылку. Часть его площади заранее отдана математике, способной восстановить потерянное.
Просмотры: 18