Assistive Technology for Patients with Medical Face Blindness

Slides:



Advertisements
Similar presentations
Manar Mousa Al-Hamaidi
Advertisements

1 Electrical and Computer Engineering Cameron Proctor Ramsey Khudairi Thomas Gilbert Chad Young MDR Presentation TekBand.
Chapter 13 Embedded Systems
Input/Output and Communication
ECE 353 Introduction to Microprocessor Systems Michael G. Morrow, P.E. Week 13.
Critical Design Review 27 February 2007 Black Box Car System (BBCS) ctrl + z: Benjamin Baker, Lisa Furnish, Chris Klepac, Benjamin Mauser, Zachary Miers.
Arduino Josh Villbrandt February 4, Digital Circuits Analog versus digital – What’s the difference? – How to represent an analog signal in a computer?
Input/Output mechanisms
Ruslan Masinjila Aida Militaru.  Nature of the Problem  Our Solution: The Roaming Security Robot  Functionalities  General System View  System Design.
Bluetooth Controlled Robot USART communication. This project aims in wireless control of the robot from a bluetooth app in a mobile device through USART.
CHAPTER 3 TOP LEVEL VIEW OF COMPUTER FUNCTION AND INTERCONNECTION
ECE 353 Introduction to Microprocessor Systems Michael Schulte Week 13.
Team 6 DOODLE DRIVE Alexander Curtis Peachanok Lertkajornkitti | Jun Pan | Edward Kidarsa |
ATtiny23131 A SEMINAR ON AVR MICROCONTROLLER ATtiny2313.
ECE 477 Design Review Team 3  Spring Outline Project overviewProject overview Project-specific success criteriaProject-specific success criteria.
ECE 4007 L01 DK6 1 FAST: Fully Autonomous Sentry Turret Patrick Croom, Kevin Neas, Anthony Ogidi, Joleon Pettway ECE 4007 Dr. David Keezer.
Android Multi-Meter (AMM)
© 2008, Renesas Technology America, Inc., All Rights Reserved 1 Course Introduction Purpose  This course provides an introduction to the peripheral functions.
Communicating. The ATmega16 communicates through one of the following ways: Serial Peripheral Interface (SPI) Universal Synchronous and Asynchronous serial.
Voice Controlled Home Automation System Group 13 Zhe Gong Hongchuan Li.
Solar Powered LED Blinds Group 28: Austin Estes and Kerr Oliva TA: Katherine O’Kane.
SmartCup – Team 42 Harington Lee, Chirag Patil, Arjun Sharma 1.
PROJECT OVERVIEW GSM SECTION BLUE TOOTH SECTION SOFTWARE DEVELOPMENT CIRCUIT DEVELOPMENT LESSONS LEARNED AND CHALLENGES FACED.
Wireless Bluetooth Controller For DC Motor. Introduction Wireless becoming more and more available and widely used Bluetooth is one of the major players.
Railway Level Crossing Gate Operation Remotely by Android.
Arduino.
Voice Controlled Robot by Cell Phone with Android App
Wireless Anti-Theft Device
<Add team picture or relevant project picture here>
Chapter 6 Input/Output Organization
Chapter 13: I/O Systems Modified by Dr. Neerja Mhaskar for CS 3SH3.
Arduino Based Industrial appliances control system by decoding dual tone multi frequency signals on GSM / CDMA network. Submitted by:
ECE 445 Smart Window Responding System
DTMF BASED REMOTE INDUSTRIAL LOAD AND/OR AGRICULTURAL PUMP CONTROL
<Add team picture or relevant project picture here>
Mobile Application Development
Textbook Detection System With Radio-Frequency Identification
Controlling of robot using voice
Input/Output and Communication
Monitoring Robot Prepared by: Hanin Mizyed ,Abdalla Melhem
Mobile Operating System
Microcontroller Based Digital Code Lock
Virtual Training Room David Hernandez, Joshua Opada, Dorian Ozoude
ARDUINO LINE FOLLOWER ROBOT
Serial I/O and Data Communication.
ECE477 MIDTERM DESIGN REVIEW: TEAM #08
RAILWAY TRACK SNAP NOTIFICATION
RF Range detection and alert system team 26
Directional Driver Hazard Advisory System
E3165 DIGITAL ELECTRONIC SYSTEM
Solar-Powered Flower Sculpture
Introduction to Microprocessors and Microcontrollers
CSCI 315 Operating Systems Design
AT91RM9200 Boot strategies This training module describes the boot strategies on the AT91RM9200 including the internal Boot ROM and the U-Boot program.
Self-Contained Analytical Skating Form Tracker
Serial Communication Interface: Using 8251
Real-Time Free Throw Feedback Device
Switching Techniques In large networks there might be multiple paths linking sender and receiver. Information may be switched as it travels through various.
Operating Systems Chapter 5: Input/Output Management
Switching Techniques.
Programmable Data Communication Blocks
8051 Micro Controller.
Chapter 13: I/O Systems I/O Hardware Application I/O Interface
UNIT 9 Relays.
COMP3221: Microprocessors and Embedded Systems
Chapter 13: I/O Systems.
UNIT 9 Relays.
Toy Train Safety Control System
AN INEXPENSIVE ROBOTIC KIT FOR CHILDREN EDUCATION
Chapter 13: I/O Systems “The two main jobs of a computer are I/O and [CPU] processing. In many cases, the main job is I/O, and the [CPU] processing is.
Presentation transcript:

Assistive Technology for Patients with Medical Face Blindness Project 10 Timothy Chia - tchia2 Jeffrey Luan - jrluan2

Introduction Prosopagnosia - A neurological condition which affects the ability to recognize familiar faces As a result, social interactions are adversely affected Workplace Family and Friends Safety

Objective Facilitate social interaction for individuals suffering from prosopagnosia Utilize existing smartphone technology as effectively as possible, while remaining unobtrusive

High Level Modules Camera Processing Wristband Capture and transmit images to the processing module Processing Identify faces in photos User interface Communication hub for other modules Wristband Display names and vibrate in response to information from processing module Button for user to request a recognition cycle

Design

Software Cycle

Project Build

Additional Design Considerations Low cost Familiar user interface Portability Battery Life Development Time Iterations

Modularity Hardware Software Breadboard Arduino Computer instead of Android phone Battery Circuit Independence Software Testing/Training of API on computer Android app functional independence from hardware modules

Stage Targets Recognition and database capabilities on computer Hardware component functionality achieved on breadboard Android app functional without hardware Android app communicating with hardware Android app fully functional with hardware Android app fully functional with PCB hardware

Recognition Design Kairos API Inputs, Outputs, Interface, Capabilities Threshold control Training Calibration: Priority on minimization of false positives

Facial Recognition Requirements False Positive < 5% Training Set: 7 individuals, 15 photos Testing Set: 13 individuals, 1 photo Constraints: Distance = 1.25m Angle = Direct Lighting Conditions = Indoor, all lights on.

Receiver Operating Characteristic Curve

Challenges

Bluetooth Receiver Issue Android Buffer Issue For unknown reasons, bluetooth inputstream consistently crashes after receiving about 15,000 bytes, refusing to accept more bytes from the HC - 05. Diagnosis Attempt transmission of various size arrays from HC-05, also varying the android side handling. Attempted several varieties of continuous reading, buffered reading, blocking reading, parallel thread reading etc. Significance 320 * 240 = 76,800 > 10,000 Conclusion Must settle for 10 kB chunks

Bluetooth Transmitter Issue HC - 05 Speed Issue Serial input below datasheet spec. Maximum of 115,200 baud instead of 1,000,000 baud. Diagnosis AT command rejected. Significance Images received by computer from camera become garbage at this speed. Interrupt Handler Interference Images became garbage after implementing asynchronous command reception from phone module. Can selectively disable interrupts during pixel capture.

Bluetooth Solution Buffer Issue: No memory in PCB layout. Downscaling by 1/16 is 4800 bytes per frame. 4800 < 10,000, but only have ~1000 bytes of memory in microcontroller. 80x60 below API recommended resolution. Speed Issue: Cannot transmit 4800 bytes synchronously either. No time for hardware solution. SPI SRAM ordered, circuit revision drafted in case, code drafted for TIMER1 and SPI pin shuffling.

Pixel Timing Original driver transmitted each byte synchronously. (blocking on UCSR). Low speed means transmission desyncs from PCLK.

Row Timing Use PCLK to capture ¼ pixels in this row. Resynchronize. For our speed, need 2 rising edges. Asynchronously transmit during next 3 rows.

Example Camera Issues: Pixel synch lost due to low speed serial transmission Correct # of HREF blocking waits Row synchronization incorrect: (synch, asynch without HREF, asynch with wrong # HrEF

Hardware Challenges PCB Voltages below specification Diagnosis/Potential Causes Multimeter on regulator circuits without load, and stable 5V input. Voltage regulator damage (possibly due to static discharge or other human error) Conclusion No time to replace due to small form factor. Bypass our power circuitry entirely. Camera circuit not returning data Potential Causes Mismatch between PCB design and breadboard prototype Initially, used breadboard to reorder pins and add pullup resistors Camera eventually went completely dead, even when returned to original circuit; unknown cause, but most likely damage inflicted onto camera during testing

Hardware Challenges (continued) Oversights in PCB design Diagnosis After receiving PCBs, the following errors were noticed Certain traces to microcontroller were wrongly placed USB port placed out of place Conclusion While not an fatal error, took time to troubleshoot Would have corrected provided more time/board submissions

Conclusions Communication between all modules Image capture and recognition Phone App for database management State machine and command transmission for modules 3000 lines of code ready for next iteration of hardware modules

Future Work Size and Enclosure Image Quality Battery Circuit Delays encountered in PCB development Would have selected smaller components and optimized our PCB design to be smaller (for realistic portable usage) Image Quality Because data errors occurred at 320x240, we had to downscale images. Severe loss of accuracy. Battery Circuit Voltage regulator issues prevented battery use Troubleshooting required Replacing regulator(s) Redesigning circuit