This project provides the infrastructure to take a picture using an Android device (we've heard that they can cost as low as 100$ in developing countries which would need this sort of app) run the picture through some image processing or pattern recognition in OpenCV and then upload the image using POST.
We are targeting it specifically for the Bacteria Counting app for low-cost water monitoring kit project.
We already have the code for:
*accessing Android Camera
*taking and saving a jpg
*uploading image and metadata via multipart form POST
*server api to accept the image
Our strategy will be:
*adopting an existing OpenCV (Open Computer Vision) for Android tutorials
*putting together a server side to geotag photos (Ushahidi?)
The major challenge which we dont expect to finish this weekend:
*creating a custom OpenCV algorithm to recognize the bacteria colonies. UPDATE: we actually did get it done!
We need another team member with OpenCV experience. (We have just used it for Eye Recognition)
We got a 88% functioning Android app (according to our GitHub Issue Tracker) For details check out the Milestone's issues:
A functioning Image Recognition algorithm for colonies which sucessfullly processes images as low quality as 512x512 pxles (.25 megapixles) in almost any lighting condition (we normalze and filter). For details check out the Milestone's issues:
Here is the presentation on the image processing:
We are going to work on Iteration 2 - Setting up an Ushahidi for the project, and Iteration 3 - Porting our python to run in the Android OpenCV stack so that we can give instant feedback on the Android client side (we are modling after the Google Googles instant feedback). We expect these each to take another 8 hours.