Simple and high-contrast. Attention marketplace is crowded.

Reply to this note

Please Login to reply.

Discussion

one reason i didn't like the stencil idea ( my parents are Architects and so was my sister ( who is dead ) so i have definitely thought about it ) is it would not work very well for a QR code ...

which actually made me think - maybe we need a new type of "QR code" that can specifically be drawn using a stencil or by hand.

i remember Mark Zuckerberg had his Facebook engineers paint a giant QR code on top of FB headquarters - but that ordeal took like the whole day with a lot of measuring and many smart people working to paint it.

smartphone cameras today have WAY MORE resolution than regular QR codes need to be read. if a QR code is something like 30 X 30 pixels a basic smartphone camera is 3,000 X 4,000 pixels resolution. in other words in the 30 years since QR code was invented cameras got a lot better and we can relax the geometry used in QR codes to make them easier to paint and still have them 100% reliably read by modern smartphones which have both better cameras and orders of magnitude better processing than what was available 30 years ago.

a new type of QR code could be a new type of freedom tech as well ...

frankly a modern phone can just take a picture of a page of a book and use optical character recognition to read the whole page without any code ...

so there is quite a lot of latitude with implementing a QR code alternative with this level of power

Good thoughts.

We don't need a QR code alternative, just a stencil-friendly "style" of QR codes even if they violate the spec. The error correction is pretty rugged already, should handle asymmetrical blocks / non-rectangular blocks.

We should experiment and see how different phones perform for different "styles".

no nigger i already invented the new system you can't go back now.

it's just a block of text but instead of using regular characters only special characters that are easy to draw, paint, stencil and OCR recognize for example:

"^+=ETYUIOSFHJKLZXCVN<>" are easy to produce and recognize

on other hand:

"@,&" are hard to stencil or draw and / or may be hard to recognize at low resolution

remember also that most characters have have 8 different orientations because they can be rotated by 90 degrees 4 times plus mirrored. each of 8 orientations can count as a separate character.

and i only used as examples characters present on my keyboard but you can pull numbers, letters and special characters from all languages such as ancient greek, japanese etc.

some new characters can be created as well.

we could easily have, say 256 easy to create and reliable to recognize characters ... swastika could be a character for example, and we could also have a separate swastika that spins in reverse direction ... or we could have letter "H" but horizontally on the side or letter "S" but mirrored etc.

so one character is 8 bits then and a 30 x 30 matrix of 1-bit dots is replaced with a 12 x 12 grid of these characters.

we could produce several thousand "candidate" characters then BENCHMARK them on how quickly they can be drawn by hand, painted with a brush, how well they work with a stencil and how reliably they are recognized with poor lighting or vandalism etc.

then we pick the best 256 or the best 128 or 64 or 32 or 16 characters depending on feedback.

maybe it will be too painful for human mind to draw by hand using 256 different characters. maybe having 16 characters will be more intuitive for painting by hand in terms of things like muscle memory.

this will all be determined by testing.

here are some more ideas for possible characters:

each character would be roughly 5 by 5 pixels.

then each 9 characters would be grouped into a 3 X 3 sub block like a face of a rubik's cube

and the larger code would be made up of these sub blocks

this would be analogous to paragraphs in written text

there is one billion websites. 1 billion is 30 bits.

let's say we go with 6 bits per character ( 64 distinct characters ) then we need just 5 characters to represent any website

a single 3 X 3 character sub block would be 9 characters where the first 5 or 6 are the information and the remaining ones are for error correction.

so just one sub-block would be enough to represent a link to any website. this could be easily drawn by hand.