Thursday, December 1, 2016

KNFB Reader, a hands on experience

As mentioned in my previous post, I was looking for a mobile OCR apps to help me read the info  on packages.  I tried the TextGrabber (TG) and the result was very disappointing.  I mentioned that KNFB Reader may be an better OCR apps but I didn't want to buy it due to it's high cost.   Recently, I saw a notice on the KNFB website saying that Google is supporting  KNFB development, and the apps is selling for $20 for a limited time.  I thought the price was reasonable so I bought a copy.  I also found out that the apps has try before you buy option.   You can try the full function for 25 pictures, after that, you have to do in apps purchase in order to continue using the apps.

Unlike TG, KNFB Reader was designed for a blind user in mind.  There are couple ways to help a blind user to position the camera to capture a good image.   While TG only has manual mode, KNFB has three ways to capture an image, manual mode, auto mode, and stand mode.  There are extensive online video on on this app.   With that in mind, I would provide a link to each feature follow by my own hands on experience.  This demo video provides an overview of KNFB Reader's features. 

When you open the app, you are at the take picture screen.  In addition to take picture, this screen also let you change various options, like picture mode, language, file management, etc.  There are three ways to take a picture, manual mode, automatic mode, and stand mode.

Manual picture mode is the default mode.  If you can position your phone to take the picture manually, this is the fastest method.  After you press the shutter button, the OCR goes to work immediately and read the text on the reading screen within few seconds.  I use this mode to quickly sort out junk mails from important mails.

If you can't take the picture manually, you can take a picture with the automatic picture mode.  The camera will take a picture after it found all 4 corners of the paper.   This mode is fairly time consuming and doesn't work all the time, but if you put a light color paper on dark background, the automatic picture mode would work much better.  You can use the field of view and tilt assistance as additional help to take a picture.  Note:  the video demo the field of view usage with a split tap gesture on an iPhone, this gesture didn't work on my Android phone.

If you have a lot of material to scan, the stand mode would be very helpful.  You will need to buy an optional scan stand in order to use this mode.   Fopydo scanning stand appear to be a popular choice.  I have not tested this mode because I didn't have a scan stand.

One of the major reason that I want a mobile OCR apps is to read info on various packages while shopping.  I tried it out on one of my Costco shopping trip and I was disappointed with result.  The automatic mode was pretty much useless in a shopping environment because of product placement and/or lighting condition.   For example, there were boxes of food placed side by side on a shelf, the automatic mode was not able to take a picture because, I guess, it couldn't find all 4 corners of a box.  I had to pull one box out, put it on my chopping cart, for the automatic mode to work some of the time.  I ended up using manual mode for the rest of the shopping trip.

If the package is not printed on a flat surface, like the text on plastic food packages, the KNFB OCR result is about the same as TextGrabber, that mean both were poor visual aids for shopping.  The  automatic mode didn't work on the long strip of register tape either because again it couldn't find the 4 corners.   So I had to use manual mode to scan the long tape section by section, and because the tape won't lay flat on a table, I had to put a coin at the top and bottom of the tape to hold it flat.   I think the whold shopping experience was more trouble than its worth.

I had a much better result using KNFB reading food package at home because I could remove the food and flatten the plastic package.  Both KNFB and TG had similar OCR result with flattened packages.  I was surprised that KNFB able to read most text on curve surfaces. I took a picture of a plastic jar of peanut butter, a can of soup, and a small bottle of medication, the OCR result were just fair to good but I had enough useful info.  TG  was not able to recognize any text on curve surface. 

In conclusion, if you only want to scan plain black text printed on flat white paper, both KNFB and TG produced about the same OCR result.   The KNFB did slightly better than TG on color magazine pages and news letter with graphics.  Both apps have trouble reading text printed on non flat surfaces.  Unlike TG, KNFB was able to read text printed on curve surfaces.

TG was not designed for blind user in mind, so you must to see well enough to point and shoot the document manually.  You also need to press couple more buttons to have the text read to you after you took the picture.  If you can't do point and shoot, KNFB is the way to go.  This apps would read out the text after a picture is taken without additional action.  I think a better camera and more user experience would probably improve the OCR result on either apps.

Finally, TG is a lot cheaper at $2 a copy, while KNFB costs $100 at regular price, but often on sale.  I bought my copy for only $20.  Only you can determine whether the much higher price of KNFB is worth  for you.  I think I would use a Bluetooth headset when using the KNFB in public to avoid unwanted attention. 

Update July 2017
Microsoft just released a free IOS app called SeeingAI. From what I saw in the following video, I think this app could make the KNFB Reader obsolete.  I don't have an iPhone so I couldn't try it out, hopefully Microsoft would release an Android version in the future.
SeeingAI Demo Video