Home > Uncategorized > QR correction on curved surfaces

QR correction on curved surfaces

I was trying to figure out how to correct graphically for changes in perspective of QR codes on cylinders ( bottles, poles, etc.).  If you paste a normal QR on a pole or bottle, the edges are too condensed, and it wont work. How can I distort the code to compensate for this optical barrier to QR.

Here is what I came up with.

I know the math is wrong, but the concept was there. Its a problem to my knowledge no one has solved yet.   If one COULD, exponentially correct for the curvature of the object by distorting the code inversely, you could make the code more scannable. So thats what I did. I do not (yet) have a formula for the relationship between the photoshop spherize filter and the radius of the object, but here is what I did.

1. transform the width of your QR code on the X dimension.
2. Photoshop> filters> distort> spherize> horizontal  ( 10-20%)
3. Place them on cylindrical objects.

Please use this technique to allow for larger QR codes on cylindrical objects!

and for the skeptics, yes, I could try this on something that curvier, but… I only have a few good cylinders in proximity. The logic is sound though.

Advertisements
  1. June 4, 2010 at 7:34 am

    if THIS guy ( http://www.youtube.com/watch?v=skotd6g7etU ) can do this, I’m sure YOU’ll figure out how to project the QR onto cylinders.
    -or why not go all the way: I’m looking forward to seeing your artistic QR code, wrapped around corners etc (and only readable from a certain view point) like he did with his cube.
    -go for it ! 🙂

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: