We closed this forum 18 June 2010. It has served us well since 2005 as the ALPHA forum did before it from 2002 to 2005. New discussions are ongoing at the new URL http://forum.processing.org. You'll need to sign up and get a new user account. We're sorry about that inconvenience, but we think it's better in the long run. The content on this forum will remain online.
IndexProgramming Questions & HelpVideo Capture,  Movie Playback,  Vision Libraries › Processing wrapper for ZXing QRcode decoder
Page Index Toggle Pages: 1
Processing wrapper for ZXing QRcode decoder (Read 2176 times)
Processing wrapper for ZXing QRcode decoder
Apr 11th, 2009, 5:54pm
 
Hi,

in late 2007 I created a little wrapper for Google's opensource & crossplatform ZXing library, in order to use QR codes in a similar fashion to the fiducial markers used by reacTIVision. Back then ZXing was at a really early development stage and their decoder too unstable & slow for my desired purposes. However, 1.33 years later a revisit of their project shows just how much this has moved on and in good capture conditions, realtime tracking of QR codes is now a reality.

See the short video for a demonstration: http://vimeo.com/3820225

Since a few people have been asking me about the demo recently, here's just a heads up that the source code is now available under GPLv3 as part of my new public code repository at:

http://pspctclr.com/hg

To replicate what's shown in the video you'll need both ZXingTestCamServer and ZXingTestClient projects. Only the ZXingTestCamServer makes use of ZXing though, handles the wrapping and tracking, as well as is broadcasting the found ID & location of a marker to connected clients via TCP...

If you want to create QR codes at different sizes you can use the pre-alpha stage, preliminary web API of my related SpimeCo.de project: http://spimeco.de (or use any other generator, e.g. Kaywa). ZXing itself has a QRcode encoder too, but requires a bit more effort.

If you're interested in developing this use case further, here're 2 key things which should be implemented first:

* add computation of marker orientation/rotation to become more compatible with reacTIVision
* switch to TUIO for broadcasting marker events/details (also consult tuio.org and specifically http://www.tuio.org/?tuio20)
* broadcast a timeout event when no more marker has been recognized for past x milliseconds
* bundle into a proper library (*preferably without requiring a PApplet instance)

Again, ZXing itself is released under ALv2 and my demo & wrapper under GPLv3 (which is compatible with their license). I might not have time in the near future to develop this much further myself, but would love if this is getting picked up, since QR codes provide sooo much more potential... If you're interested, please do let me know so at least we can consult each other about progress. Cheers!

Happy Easter everyone! Smiley
Re: Processing wrapper for ZXing QRcode decoder
Reply #1 - Apr 20th, 2010, 4:19pm
 
Hey Toxi

Thanks for this great little demo, its defiantly going to help kick start a project I am working on with some students, I wanted to point out that we couldn't get this to work at all until one student pointed out that it was an error with the Open GL and so we just took that out and it worked fine, however I believe we also suffered from an issue with the 32/64 bit snow leopard video java support.

Anyways its up and running now, however its a long way from being usable in a reactable style way so wish us luck!
Page Index Toggle Pages: 1