Перейти к содержимому

Why a Damaged QR Code Can Still Work

Matter Made Clear

0:00 / 0:00

Why a Damaged QR Code Can Still Work

13 просмотров · 1 дн. назад
Matter Made Clear
31 подписчик
13 просмотров · 1 дн. назад
Why can 32 changed QR modules still decode while nine changes fail? Follow our own saved-image experiment, the mapping from squares to 8-bit codewords and the separate job of finding the symbol before correcting extracted data. The test payload is plain text: MMC91. Encoder: python-qrcode 8.2; independent reader: ZXing-C++ 3.1.1. We used version 1-H, fixed mask 0 and a four-module quiet zone. Four whole codewords were flipped in one test; one bit in each of nine distinct codewords was flipped in another. These are deterministic crisp-image tests with one reader, not a universal dirt-area percentage or a physical camera survey. Red outlines and gold traces are explanatory annotations; decoding used the unannotated saved images. The modulo 7 straight-line example is an original small teaching analogy. It is not QR's actual byte arithmetic. Original Blender blocks rearrange actual mapped modules to make 8-bit grouping visible; dimensions and playback time are illustrative. Sources and technical references: https://www.qrcode.com/en/about/error... https://www.qrcode.com/en/howto/code.... https://github.com/lincolnloop/python... https://github.com/zxing-cpp/zxing-cpp Footage and credits: Gunjee Nyam / Pexels, "A Person Scanning a QR Code", item 5226464. Recorded scan gesture; source excerpt 0–3 seconds at native speed, source audio omitted. Pexels free commercial video licence; no endorsement implied. https://www.pexels.com/video/a-person... https://www.pexels.com/license/ Original experiment, graphics and Blender explanatory model: Matter Made Clear. python-qrcode 8.2: BSD licence, Lincoln Loop contributors. ZXing-C++ 3.1.1: Apache-2.0, ZXing-C++ contributors. Chapters: 0:00 Missing squares, readable message 0:54 First find the symbol 1:47 The picture is a mapped data structure 2:35 Extra relationships, not a spare photograph 3:29 What our generated symbol contains 4:23 Thirty-two changed modules, four damaged codewords 5:17 Nine changes can be harder than thirty-two 6:08 Why the percentages need a denominator 7:02 A different failure before correction 7:51 Recover the message, not the appearance