content top

Practical Inexpensive Monitor Stand

Practical Inexpensive Monitor Stand

About once a year, I’m writing about a DIY project. Not about the stuff you typically find on this blog, but more old world, non techy things, like last year’s Riding the Rods projects.
This time it’s about a monitor stand that I built for my home office. I don’t know if it’s because of my constantly decreasing visual perception, which some might call Presbyopia aka age-related farsightedness, but I thought it would be a good idea to raise my good old Apple 23″ Cinema HD Display up a little.
Many of the newer – but still not as good looking – LCD displays, can have their hight adjusted. My Cinema display on the other hand has a a beautiful brushed metal foot, unadjustable in hight tho.

Read More

Android and OCR

Android and OCR
I’m still remembering it well, the first piece of software I wrote when I came to the US was a de-skewing algorithm. Deskewing an image helps a lot, if you want to do OCR, OMR, barcode detect, or just improve the readability of scanned images.
At the time, I was working for a small software company, developing TeleForm, an application that reads data from paper forms and stores that data in previously created databases. The Cardiff TeleForm product was later re-branded Verity-TeleForm for a brief period in 2004 and 2005 when Verity Inc. acquired Cardiff Software. In 2005, when Autonomy acquired Verity, the Cardiff brand was reintroduced as Autonomy Cardiff (http://www.cardiff.com); more recently, Autonomy was acquired by HP.

Optical character recognition, usually abbreviated to OCR, is the mechanical or electronic translation of scanned images of handwritten, typewritten, or printed text into machine-encoded text.

Image Deskew is the process of removing skew from images (especially bitmaps created using a scanner). Skew is an artifact that can occur in scanned images because of the camera being misaligned, imperfections in the scanning or surface, or simply because the paper was not placed completely flat when scanned.

Now most of the data entry or origination happens on the Web, where most of the forms processing has been moved to as well, i.e. OCR hasn’t been in vogue for quite a while. However, the popularity of smartphones, combined with built-in high-quality cameras has created a new category of mobile applications, benefiting greatly from OCR. Take Word-Lens (http://questvisual.com) as an example: an augmented reality translation application that tries to find out what the letters are in an image and then looks in a dictionary, to eventually draws the words back on the screen in translation.

On Device or In The Cloud ?

Before deciding on an OCR library, one needs to decide, where the OCR process should take place: on the Smartphone or in the Cloud. Each approach has its advantages.
On device OCR can be performed without requiring an Internet connection and instead of sending a photo, which can potentially be huge (many phones have 8 or 12 Mega-Pixel cameras now), the text is recognized by an on-board OCR-engine.

Read More

Android ICS Source Code for your IDE

Android ICS Source Code for your IDE

“Your father’s light saber. This is the weapon of a Jedi Knight. Not as clumsy or random as a blaster; an elegant weapon for a more civilized age. For over a thousand generations, the Jedi Knights were the guardians of peace and justice in the Old Republic. Before the dark times… before the Empire.”

While the Android 4.0 SDK comes with a complete set of javadocs, the source code of the SDK is missing in the SDK distribution. This is very unfortunate, since you cannot easily debug into SDK methods (at least not without running into de-compiled code) nor can you see how things actually work.

Eclipse - Source Not Found

However, there is a quick fix to that problem. I downloaded the complete Android source including the Linux, drivers, libs, etc., like explained here: http://source.android.com/source/download.html and ran small Java program on the source tree. I used to this with a simple bash script but over the last couple of Android Releases, the java source locations got a little more diverse and I started missing a couple files. So instead, this Java program walks the source tree and looks for java source files. All those will then be copied into a new location, considering their package name. Finally, the jar tool gets called to put all the source into a single bundle for easier handling.

Read More

Running Errands with Google Wallet

Running Errands with Google Wallet

Running errands with Google Wallet in San Diego’s Carmel Valley / Rancho Bernardo area (92128 / 92129 / 92130)

Tap & Go a.k.a PayPass, is a new simple way of paying. PayPass is a payment method that lets you make purchases without having to swipe your card or provide your signature. A simple tap with a card, key fob, or mobile phone is all it takes to pay at checkout.

So this Saturday morning, I took paying with a mobile phone to the test – the only method of payment available to me was the Google Wallet application on a Samsung Nexus S Android Phone running on Sprint’s 4G Network.

Google Wallet can be linked to a Citi MasterCard, or like I did, used as a prepaid card, funded with any of my existing credit cards.

Read More

Tiffany meets Android

Tiffany meets Android

Ever since I started working on the Android platform and Android phone and tablet applications, I found it challenging to show my ideas, designs, and prototypes to a group of people, no matter how small that group was. Naturally, I wanted to not just explain concepts and behaviors but to show a live demo on a phone. However, the screen-size of a phone can be a serious obstacle when presenting to a small group. Moreover, the phone often gets covered by my hand when interacting with a mobile application.
I have tried to capture the phone’s screen with a video-camera and showing the live-view on a bigger monitor but reflections, glare, and insufficient lighting resulted almost always in an even worse experience and only in an controlled environment (light-box etc.), filming worked well and I was able to capture footage with a reasonable quality.

For the last couple of weeks now, we have started experimenting with USB-tethered Android screen capturing in combination with TiffanyScreens.

Read More
content top