@Override
  public void run() {
    Looper.prepare();
    handler = new DecodeHandler(activity);
    handlerInitLatch.countDown();
    Looper.loop();
  }
This thread does all the heavy lifting of decoding the images.

The code for this class was adapted from the ZXing project: http://code.google.com/p/zxing
OCRTest/src/main/java/edu/sfsu/cs/orange/ocr/DecodeThread.java