Seminar Projects Dong Xuan Associate Professor CSE Dept., The Ohio State University
Barcode Scanner Motivation: Check if friends have an item that can be borrowed before buying it Function: User scans item barcode with camera, uploads to central DB, and checks if other users have the same product Implementation: – Java with Android SDK (client) – MySQL and PHP (server) – Google ZXING (barcode scan) Device: T-Mobile G1 Internet HTTP Request/ Response MySQL DB PHP Script HTTP Request/ Response Architectural Overview
OCR Text Scanner Motivation: Store and use contact info about businesspeople instead of carrying around many business cards Functionality: Takes a picture of card, recognizes text using OCR, and displays text with hyperlinks to call/ person, map location, visit website Implementation: – Java with Android SDK (client) – PHP scripts (server) – Tesseract OCR, netpbm (tools) Device: T-Mobile G1
Multiplayer Tic-Tac-Toe Game Motivation: Mobile phones have limited multiplayer game support Functionality: Implements two-player tic-tac-toe via Bluetooth Implementation: Java ME MIDlets and Bluetooth Device: Any mobile phone that supports Java ME Tic Tac Toe – 1 st Player Mark Tic Tac Toe – 2 nd Player MarkExit X X O 11X 00O
GPS Runner Motivation: Joggers, runners, et al. need to keep track of their activities, coordinate group activity Functionality: Keeps track of running statistics, displays paths ran on Google Maps Implementation: – C# on Windows Mobile 6 (client) – PHP, MySQL (server) – Google Maps Device: Verizon Wireless XV6800
Phone Security Utility Motivation: Phones can be easily stolen and confidential data can be exposed Functionality: Provides remote locking capability via SMS/MMS (password required), notifies user of theft via SMS/MMS, takes thief’s picture, sounds an alarm Implementation: Python on Symbian S60 (via “pys60”); uses camera, location services, etc. Device: Nokia N95 (uses front camera for picture)
Real-Time City Bus Tracker Motivation: Students and commuters are often stuck waiting for Columbus city buses (COTA – Central Ohio Transit Authority) Functionality: “Scrapes” COTA RSS feed to get bus location (each bus has GPS) and displays it on a map Implementation: – Java ME (client) – Sniffing & parsing COTA feed Device: any phone that supports Java ME
Flash Card Studying App Motivation: Students use “flash cards” to help them learn concepts and it’s inconvenient to carry decks of cards around Functionality: Allows students to enter information on electronic “flash card” and both check and refresh their knowledge Implementation: Objective C Device: Apple iPhone/iPod touch
Emergency Notification System Motivation: People in danger need to unobtrusively notify authorities, esp. if their lives are in jeopardy Functionality: Those in danger press button on smartphone to notify police of threat with GPS location; “virtual keyboard” can be used with camera sensor Implementation: C++ (for Symbian OS) Device: Symbian OS-powered phones
Conclusion Students in OSU’s smartphone seminar developed numerous applications with many possible extensions, e.g., – Using smartphone cameras for distributed, context-sensitive image processing – Unobtrusively notify police via smartphone when one is held at gunpoint without gunman noticing Thank you! Questions and comments?