Related, <a href="https://qris.cool/" rel="nofollow">https://qris.cool/</a> was posted here a few weeks ago and it's a really neat way to interactively explore the code itself, and see what any given pixel does.
There is a tool called qrazy box
<a href="https://merri.cx/qrazybox/" rel="nofollow">https://merri.cx/qrazybox/</a>
It allows you to essentially remake a damaged or partially hidden QR code pixel by pixel, but has some limitations.
QR codes already have built-in Reed-Solomon error correction at different levels (L:7%, M:15%, Q:25%, H:30%), which is why they can often be read despite partial damage or obstruction.
A software tool should exist to repair QR codes. People could really benefit from it because QR codes are used everywhere.<p>I'd like to find a way to repair QR codes through software. However, that begins with collecting a bunch of broken and corrupted QR codes people stumble across and fixing them up by hand. This will help spot patterns in how they fail. So please help out by submitting your QR code that doesn't scan. Please don't create QR codes that don't scan just to submit them. Thank you! In the past I have fixed one QR code by hand and it is shown at the link.
Reading the QR code spec (or even just the wikipedia page) could help a lot here. A lot of the room on the code is taken up by metadata, rather than output-data. The output data is repeated lots of times across the code (this is why you can have a brand logo right in the middle of the code).<p>Repairing the metadata parts & iterating over each of the version number should make the overwhelming majority of broken QR codes usable again.<p><a href="https://en.wikipedia.org/wiki/QR_code#/media/File:QR_Code_Structure_Example_3.svg" rel="nofollow">https://en.wikipedia.org/wiki/QR_code#/media/File:QR_Code_St...</a>
I participated in the QR Show in NYC mentioned in the post.
It sent me down a rabbit hole and gave me a whole new perspective on QR codes now.<p>Show: <a href="https://qrshow.nyc/retrospective.html" rel="nofollow">https://qrshow.nyc/retrospective.html</a>
Related: <a href="https://bsky.app/profile/sri.xyz/post/3llnpa3tvqs2u" rel="nofollow">https://bsky.app/profile/sri.xyz/post/3llnpa3tvqs2u</a>
> I'd like to find a way to repair QR codes in a reliable way.<p>Consider reading up on <a href="https://www.nayuki.io/page/creating-a-qr-code-step-by-step" rel="nofollow">https://www.nayuki.io/page/creating-a-qr-code-step-by-step</a><p>And I highly recommend QRazyBox for manual painting with automatic decoding: <a href="https://merri.cx/qrazybox/" rel="nofollow">https://merri.cx/qrazybox/</a> , <a href="https://github.com/Merricx/qrazybox">https://github.com/Merricx/qrazybox</a><p>> that begins with collecting a bunch of broken and corrupted QR codes<p>Some ideas to consider: <a href="http://datagenetics.com/blog/november12013/index.html" rel="nofollow">http://datagenetics.com/blog/november12013/index.html</a>
The most common failure case I see for broken QR codes is it scans fine but it was created using some commercial link-bouncer service and they stopped paying the subscription fees so the redirect is dead.
It's pretty cool that QR codes were created by a Japanese automotive company in order to address the limitations of scanning bar codes, mainly that the scans only worked with a certain orientation. [1]<p>That being said, I believe bar codes have the UPC number below it in case the code itself is damaged. Could QR codes have a similar textual encoding to identify them? And would that even fit legibly in the square?<p>[1] - <a href="https://www.microsoft.com/en-us/microsoft-365-life-hacks/privacy-and-safety/brief-history-qr-codes" rel="nofollow">https://www.microsoft.com/en-us/microsoft-365-life-hacks/pri...</a>
The biggest failure mode I've seen in-the-wild is from QR codes being attached to non-flat surfaces, e.g. wrapped around a lamp post, or on a car panel with "crease" in the bodywork (sorry, no specific examples on-hand)<p>AI is getting pretty good at depth estimation, and some phones even ship with LIDAR, so I think it should be feasible to correct for these automatically. <i>Especially</i> if you can get pictures from multiple angles.