Automatic Parking Enforcer ENSC 440 Presentation and Demo December 13, 2010 Presented by: R.Maroufi, R.Johal, A.Moshgabadi, Y.Kuo, S.Rohani
2 of 34ENSC 440 Project Presentation Rodin Maroufi (CEO) - Image Processing Unit - OCR Rosy Johal (COO) - GUI - Documentation Amin Moshgabadi (CTO) - Image Processing Unit - Infrared Camera - OCR
3 of 34ENSC 440 Project Presentation Yi Chen Kuo (CFO) - GUI - Integration - Documentation Shadi Rohani (CMO) - Image Processing Unit - OCR
4 of 34ENSC 440 Project Presentation Motivation Background System Overview Business Case Time Line Learning Outcomes Future Work Conclusion Acknowledgments Question and Answer Period
5 of 34ENSC 440 Project Presentation Motivation Image Credit: Patrolling Large Parking Lots requires: - significant number of employees. - significant amount of money. - issuing individual paper permits. - students remembering to bring their permit. Image Credit: blog.telenav.com
6 of 34ENSC 440 Project Presentation Easy to Operate Portable Low Power Low Cost Recognize all North American License Plates Operate in most weather conditions Differentiate between different parking lots Recognize more than one vehicle per permit
7 of 34ENSC 440 Project Presentation AutoVu - System software is incorporated in the camera. - Retail price is very expensive, about $20, Only checks if the vehicle has been parked for longer than a certain time. - GUI does not have the manual search option. Image Credit: MatthiasKabel (Wikimedia Commons) Image Credit:
8 of 34ENSC 440 Project Presentation APE (Automatic Parking Enforcer) consists of five components: - Infrared Camera - Imaging Processing Unit - OCR (Optical Character Recognization) unit - Database - GUI
9 of 34ENSC 440 Project Presentation
10 of 34ENSC 440 Project Presentation In most weather Needs to operate in most weather conditions Needs to work in low lighting. Needs to be light and durable Needs to be able to mount on top of car Needs to be waterproof
11 of 34ENSC 440 Project Presentation Horizontal Resolution Color 1/3" Sony, 600TV Lines IR LED 42PCS Lens 4-9mm Manual Zoom Lens Operation Temperature -10~ +50degree RH95% Max Able make Automatic Gain Control Off & Adjust shutter speed
12 of 34ENSC 440 Project Presentation Responsible for separating the image of the license plate from the image of the vehicle. Coded using Visual C++ because: - ease of programming functionality - MFC support Can be broken into two main components: - License Plate Recognization - Licesnse Plate Segmentation Image Credit: ALGORITHMIC AND MATHEMATICAL PRINCIPLES OF AUTOMATIC NUMBER PLATE RECOGNITION SYSTEMS
13 of 34ENSC 440 Project Presentation Responsible for recognize the License Plate from the image of a vehicle. The input to the License Plate Recognizer is the clear image obtained from the infrared camera. OPenCV library is used to process the grayscale image. Image Credit: ALGORITHMIC AND MATHEMATICAL PRINCIPLES OF AUTOMATIC NUMBER PLATE RECOGNITION SYSTEMS
14 of 34ENSC 440 Project Presentation
15 of 34ENSC 440 Project Presentation Image of Morphological Edge Detection
16 of 34ENSC 440 Project Presentation Horizontal projection of the image is drawn to determine the boundaries of the image The peak of the graph is calculated, the skirts are marked and width is attained If width is less than 20% of the image width zero the interval and look for next peak
17 of 34ENSC 440 Project Presentation The approximate width is analyzed and the data is projected into the y axis. Same concept as before is applied and the approximate height of the license plate is attained.
18 of 34ENSC 440 Project Presentation The purpose of License Plate Segmentation is to segment the License Plate once it has been recognized from an image of the whole vehicle. Uses a skew correction algorithm to align the image properly. Image Credit: ALGORITHMIC AND MATHEMATICAL PRINCIPLES OF AUTOMATIC NUMBER PLATE RECOGNITION SYSTEMS
19 of 34ENSC 440 Project Presentation Once the approximate height and width are attained that segment is cropped out from the original image. For the image to be able to be read by the OCR engine the image has to be processed again and the noise removed. The x and y projection of the image are drawn and noises removed using the information on the graphs. Image Before and after noise filtering for OCR
20 of 34ENSC 440 Project Presentation
21 of 34ENSC 440 Project Presentation The purpose of the OCR is to read the License plate characters from the segmented image. Tesseract will be used as the OCR engine, because it was chosen as one of the top 3 engines a the UNLV Accuracy test. Image Credit: ALGORITHMIC AND MATHEMATICAL PRINCIPLES OF AUTOMATIC NUMBER PLATE RECOGNITION SYSTEMS
22 of 34ENSC 440 Project Presentation
23 of 34ENSC 440 Project Presentation
24 of 34ENSC 440 Project Presentation
25 of 34ENSC 440 Project Presentation Our product is meant for large parking lots such as: - University Campuses - Large Buildings It can also be used for security services, such as surveillance. Similar, products are very expensive. Image Credit: greendairy.com
26 of 34ENSC 440 Project Presentation
27 of 34ENSC 440 Project Presentation $ 400 was obtained from the ESSEF (Engineering Science Student Endowment Fund) $ 50 was obtained from department funding. $ 40 of our own funds was used. Image Credit: guarantyautos.com
28 of 34ENSC 440 Project Presentation
29 of 34ENSC 440 Project Presentation Learned professionalism and team dynamics Improved debugging and troubleshooting skills Improved time management skills Learned not to trust the supplier and always prepare for the worst case scenario Learned the importance of integrating as soon as possible. Image Credit: tls.vu.edu.au
30 of 34ENSC 440 Project Presentation Improve filtering techniques or noise removal. Use machine learning for Tesseract’s OCR Use Skew correction Get better quality camera to take videos Add sensor to sense lighting condition and adjust threshold accordingly
31 of 34ENSC 440 Project Presentation Achieved a low power and low cost system. APE is also easy to operate. Can work in many weather conditions. Can accommodate more than one vehicle per permit.
32 of 34ENSC 440 Project Presentation ESSEF (Funding) David Agosti (Information) - Manager of Parking Services (SFU) Faculty of SFU Engineering Science -Andrew Rawicz -Mike Sjoerdsma -Ali Ostadfar -Carlyn Loncaric
33 of 34ENSC 440 Project Presentation Image Credit: searchenginepeople.com