Computer Vision with Android (Bangkok Web Design Group)

3,662 views

Published on

Ideas and case-studies for a new generation of Android mobile applications based on Computer Vision principles.
A presentation given to the Bangkok Web Design group.

Published in: Technology
1 Comment
2 Likes
Statistics
Notes
No Downloads
Views
Total views
3,662
On SlideShare
0
From Embeds
0
Number of Embeds
7
Actions
Shares
0
Downloads
1
Comments
1
Likes
2
Embeds 0
No embeds

No notes for slide

Computer Vision with Android (Bangkok Web Design Group)

  1. 1. Computer Vision with Android<br />Ideas and case-studies for a new generation of mobile applications<br />A talk by<br />Andrea Gagliardi La Gala<br />andrea.lagala@gmail.com<br />Bangkok Web Meetup<br />25 January 2011 @ Web Courses Bangkok<br />
  2. 2. Who am I?<br />Andrea Gagliardi La Gala, Italian<br />Based in South East Asia since 6 years<br />In Thailand since 3 years<br />Mobile Solutions Architect (10+ years exp.)<br />Develop business apps for mobile and Android<br />Integrate mobile apps into enterprise systems<br />R&D in Computer Vision and Artificial Intelligence<br />
  3. 3. In this presentation<br />Short introduction to Android<br />Computer Vision applications for Android<br />Live demos and case-studies<br />Introduction to real-time image processing<br />Develop ideas for new mobile applications<br />Surveillance Systems<br />Driver Assistance and Safety<br />Augmented Reality<br />…and many more, depending on your creativity!<br />Feel free to interrupt me, this is an open discussion<br />
  4. 4. U.S.A. Smartphone Market Share(hey… but U.S.A. set the trend)<br />Source: The Nielsen Company.<br />
  5. 5. Hello, Android<br />By Google Inc.<br />Linux Kernel<br />Robust<br />Multi-tasking<br />Open source (largely)<br />Java programming<br />Image source: Google Inc.<br />
  6. 6. Android Versions<br />Current versions:<br />Android 2.3 Gingerbread for smartphones<br />Android 3.0 Honeycomb for tablets (coming soon)<br />Platform fragmentation is not a big deal<br />Images source: Google Inc.<br />Data collected during two weeks ending January 4, 2011<br />Last historical data set collected on January 4, 2011<br />
  7. 7. Mobile capabilities<br />Powerful processors<br />Lots of sensors<br /><ul><li>Qualcomm Snapdragon (1GHz)
  8. 8. Samsung Hummingbird (1GHz)
  9. 9. NVIDIA Tegra 2 (1GHz, dual core)
  10. 10.
  11. 11. GPS / Positioning
  12. 12. Accelerometer / Gyroscope
  13. 13. NFC, Proximity, Light intensity
  14. 14. …</li></ul>Ubiquitous connectivity<br />Advanced cameras<br />Up to 8 MP<br />Good optical quality<br />Sensors are improving<br />…<br /><ul><li>GSM / GPRS / 3G / 4G
  15. 15. SMS / MMS
  16. 16. Wi-Fi
  17. 17. Bluetooth</li></li></ul><li>Android aims for space<br /><ul><li>24 January, 2011:Surrey Satellite Technology Ltd. to blast Android into orbit</li></ul>http://www.bbc.co.uk/news/science-environment-12253228<br /><ul><li>Take pictures of earth
  18. 18. Control satellite navigation
  19. 19. Substitute main computer on spacecraft</li></li></ul><li>Mobile capabilities<br />Powerful processors<br /><ul><li>Qualcomm Snapdragon (1GHz)
  20. 20. Samsung Hummingbird (1GHz)
  21. 21. NVIDIA Tegra 2 (1GHz, dual core)
  22. 22. …</li></ul>Advanced cameras<br />Up to 8 MP<br />Good optical quality<br />Sensors are improving<br />…<br />
  23. 23. What is Computer Vision?<br />The goal of Computer Vision:<br />Make useful decisions about real physical objects and scenes based on sensed images<br />Sense the physical world through the camera (2D image)<br />Shape, illumination, spatial relationships<br />Understanding of the 3D world<br />Geometry, texture, motion, identity of objects<br />Algorithms to:<br />Process image information<br />Construct descriptions of the world and its objects <br />
  24. 24. Real-Time Motion DetectionLive Demo<br />
  25. 25. Basic approach to motion<br />Current frame<br />Absolute difference<br />Reference frame (background)<br />
  26. 26. A more sophisticated approach(surveillance low-cost system)<br />People counting and tracking<br />Motion vectors<br />Scene analysis<br />Stream live audio/video to remote server<br />Video source: YouTube.<br />
  27. 27. Marker RecognitionLive Demo<br />AndAR (Android ARToolKit)<br />http://code.google.com/p/andar/<br />Java based software library that enables AR on Android<br />Marker recognition within image<br />3D models display<br />Images source: ARToolworks Inc.<br />
  28. 28. A real case-study:Optical Recognition of Passports<br />Remote server <br />Agent<br />with optical scanner<br />End-user<br />Integration ofend-user data into remote solution<br />On-board localdatabase<br />
  29. 29. Live Demo<br />Scan image<br /><ul><li>ID card placed in front of scanner
  30. 30. Real-time,touch-less recognition of ID card</li></ul>Recognize information<br /><ul><li>Background removal
  31. 31. Distortion correction
  32. 32. Detection of information
  33. 33. Image enhancement
  34. 34. Automatic extraction of graphical data (eg. picture)
  35. 35. Extraction of text from image (OCR)</li></ul>Import data<br />
  36. 36. How it is done<br />
  37. 37. Component Based Architecture<br />Component 1<br />Component 1<br />Component 1<br />Component 2<br />Passport Recognizer<br />(Component 2)<br /> Component 2<br />Component 3<br />Component 3<br />Barcode Scanner<br />(Component 3)<br />3rdparty Application #1<br />Your Application<br />3rdparty Application #2<br />
  38. 38. Can we make it fast?Yes, with the Android NDK!<br />C/C++ compiler<br />STL libraries included since Android 2.3 (NDKr5)<br />Embed C/C++ code into Java .apk<br />JNI layer<br />Image source: Google Inc.<br />
  39. 39. Augmented Reality Applications:Driver Assistance<br />Images source: Opel cars.<br />Video source: YouTube.<br />
  40. 40. Safety Applications:Driver Safety Monitor<br />Images source: Opel cars.<br />Video source: YouTube.<br />
  41. 41. Get started on Computer Visionfor Android<br />Computer Vision<br />L. Shapiro, G. G. Stockman, Prentice Hall, 2001<br />Digital Image Processing<br />R. C. Gonzalez, R. E. Woods, Prentice Hall, 2007<br />Learning OpenCV: Computer Vision with the OpenCV Library<br />G. Bradski, A. Kaehler, O’Reilly, 2008<br />MATLAB (MathWorks Inc.)<br />Image Processing Toolkit<br />OpenCV C++ library:<br />Sponsored by Intel<br />BSD licence, free, open-source<br />Android port: http://code.google.com/p/android-opencv/<br />
  42. 42. OpenCV library overview<br />
  43. 43. Do you have any questions?<br />Q&A<br />
  44. 44. Unleash your creativity!<br />Andrea Gagliardi La Gala<br />andrea.lagala@gmail.com<br />

×