title: Coin Recognition on Android
body: <p>I am currently developing an Android application that is capable of taking an existing image of a coin, or using an in-built camera to scan a single coin (very much like Google Goggles does). I am using OpenCV for Android.</p>
  
  <p>My question is as follows: <strong>What method(s) would be most appropriate for performing Coin Recognition on Android using OpenCV?</strong></p>
  
  <p>The method I have tried so far is below (maybe I'm doing it wrong, or I'm just going down the wrong route completely)</p>
  
  <p>I am currently using OpenCV for Android (no native code!) and am using various Feature Detection algorithms to identify key points in an image (i.e. ORB, FAST, STAR). I believed that it would simply be a matter of calculating the Euclidean distance between each of these keypoints within an extracted image and a set of known test data to identify the most similar images (and therefore recognise the coin), but it turns out that this method alone is not appropriate as effects such as lighting, coin rotation etc. have too much of an effect on the Feature extraction (plus coins have surprisingly similar features...)</p>
  
  <p>Generically speaking I am looking for advice on whether any form of pre-image processing would be useful? What alternative methods are available? Or any tips on how to improve my current methods.</p>
  
  <p>NOTE: I have seen plenty of documents out there about Coin Detection, but I am looking at Coin Recognition specifically.</p>
  
  <p>Thanks in advance!</p>