Hi HN!<p>Inspired by a recent HN article on QR codes [0], I decided to finally publish [1] and open-source [2] a service I created 7 years ago. I got pulled away from it by projects with higher priority and it has been catching dust and been bitrot eroding since. Now reconstructed the basics and hosted on an AWS instance I would like to share so it might inspire.<p>Creating a photo realistic QR requires two steps. The first is to create a 93x93 dithered monochrome image. The dithering is calculated to preserve the mandatory QR framework/timing bits and keep the data/crc bits conforming. Trying to maximize the crc bits to match the original image.<p>The second step is adding colour information as a 186x186 dithered layer. The colour palette is created using Spacial Colour Quantification which uses the 93x93 QR image as constraints on the available colour range.<p>SCQ also stabilises palettes used for animations (a service not made available through the site yet).<p><pre><code> [0] https://news.ycombinator.com/item?id=24119124
[1] https://www.qrpicture.com
[2] https://github.com/xyzzy/qrpicture</code></pre>
Slightly OT, but when migrating data between iPhones, the old iPhone displays an animated point cloud that appears to function like a QR code. You scan it with the new phone, and your data starts to migrate locally through Bluetooth.<p>Other than aesthetics, what are the advantages of the point cloud? Higher bandwidth?<p>Also, if you were to transfer 100s of megabytes of data from device A to B, using A's display and B's camera, what tech would you look into?
Somehow, I think these kinds of "clever" QR codes would be less used. Most people aren't going to even notice that they are legit QR codes. QR codes are already underutilized enough, at least in western countries. Cool idea, though!
That's really clever.<p>Using the 4 example images at the top, the first (color) and last (B&W) work flawlessly on my iPhone.<p>But the two animated ones in the middle will work for a second, and then the phone loses it. Animated seems like "too much" for a phone to lock on to -- perhaps just stick to static? That's cool enough.
Funny how <i>QR codes scanning pictures of people</i> has more content, and is more engaging, than the "Pictures of People Scanning QR-codes" [1].<p>In all seriousness, impressive work - and very pragmatic delivery, queue system and all.<p>----<p>[1] <a href="https://picturesofpeoplescanningqrcodes.tumblr.com/" rel="nofollow">https://picturesofpeoplescanningqrcodes.tumblr.com/</a>
This is really cool!<p>I do wonder what the practical use is, though, aside from just being pretty cool. In a real world situation I think the recognizability of a QR code as something you can scan with your phone is an important part of the value.
I only get B&W QR. (In case it is important, I used the first photo (one with three vertical yellow bananas) <a href="https://www.google.com/search?q=banana&rlz=1C1CHBF_esAR839AR839&tbm=isch&source=iu&ictx=1&fir=LZxQx4PwvNVDfM%252C5ymPQx-S2visAM%252C%252Fg%252F120lq251&vet=1&usg=AI4_-kS_Ps27TvfuXUSvBgTIyh101nchpQ&sa=X&ved=2ahUKEwiZzMCg8JrrAhVPD7kGHYmaCQgQ_B16BAgWEA8#imgrc=LZxQx4PwvNVDfM" rel="nofollow">https://www.google.com/search?q=banana&rlz=1C1CHBF_esAR839AR...</a> )<p>> <i>If QR does not scan, then Re-Generate with more (+1) safer settings</i><p>What does this do? Can you give a technical explanation?<p>I don't like when the outline is so small that it doesn't cover the horizontal o vertical part of the grid. (This is a personal opinion anyway.)<p>Note: Remove the two spaces before the links in your comment, so they become clickable.
Related idea:<p><a href="https://www.aestheticodes.com/" rel="nofollow">https://www.aestheticodes.com/</a><p><a href="https://www.youtube.com/watch?v=kW39Mt5kscQ" rel="nofollow">https://www.youtube.com/watch?v=kW39Mt5kscQ</a><p>But this is probably better because it uses natively supported QR codes.
Related work elsewhere (2012): <a href="https://research.swtch.com/qart" rel="nofollow">https://research.swtch.com/qart</a>
The default Camera App in Google Pixel can auto-recognize QR codes, but unfortunately it doesnt work with these. Meanwhile, a dedicated QR scanner (such as built-in in iPhne) works.
I've long wondered whether you can make a photo that gets recognized as a QR code by computers. This is very cool! Is there any way you can smooth out the calibration squares?
I looked at this work and since it's AGPL licensed I went away.<p><a href="https://www.bitcat.cc/webapp/awesome-qr" rel="nofollow">https://www.bitcat.cc/webapp/awesome-qr</a> is a great alternative.
QR should look MORE like QR, and always include an URL next to it.<p>If you display a QR Code with some url, and fail to show a shortened url next to it for people to type instead of scanning, you either fail basic common sense tests, or are intentionally being an asshat.