Skip to content

Repository files navigation

AVSAM ( Advanced Vehicle Survelliance and Monitoring )


### Update v1.1
  • Improved retrained model with a vast dataset of 5000+
  • FR secured was 0.97 on 100 samples (previously 0.96)
  • Improved system for handling unrecognized number plate by sending a push notification to the concerned personnel with the image and the text fields for manually entering the plate number by looking at the picture, before the data is retreived from the RTO.
  • Implemented DeepSORT to keep track of vehicles "coming in" or "goin out"
  • Implemented SafeSPEED parameter to keep track of the vehicle's speed while at the entry point
  • Speed Detector dependencies varies from camera to camera.It can be implemented by changing the variables.
  • Improved best Confidence Score refining mechanism
  • Improved filter for image processing and deskewing algorithms used

Using YOLOv3 and Pytesseract (Team: Error_404) (College: NIT Jalandhar)

Problem Statement : Create an affordable Solution through image processing of the number plates of vehicles for the Detection , Identification and Monitoring of Vehicles in Different scenario.

Sample Annotation

Please find the annotations using this model on the below link https://www.youtube.com/watch?v=A1jiDW4kLoo

Table of Contents

PREREQUISITES

DETECTION

  • Run Requirements File for Installing the Required Packages : If you want to run on CPU: pip install -r requirements-cpu.txt If you want to run on GPU: pip install -r requirements-gpu.txt

OCR

- Install Pytesseract using following steps:
  • Download Pytesseract using the Below link: - Tesseract-ocr-Download -Add C:/Program Files/Tesseract-OCR/tesseract.exe' to your system variables - Then Install tesseract on our system by using:

              `pip install pytesseract-ocr`
    
  • For Hindi OCR , Download hin.trainedata and put it C:\Program Files\Tesseract-OCR\tessdata

STORAGE

  • We are using FireBase for our Storage system
  • It can be installed by following command: - pip install pyrebase

How to Run

  • Step 0: Change the locations of the file in the code wherever required.
  • Step 1: Images and Video to Detect should be kept in Data/Source Images/Test Images/
  • Step 2: If you want to Detect the Files just go to training/src/keras_yolo3/Tracking.py
  • Step 3: If you have put Video on Detection , It would be open for first 20 seconds to click on the four points in frame...for creating Two line, which will help model to Track the vehicles to focus on specific vehicle in crowd of vehicles.

Detection Image Before crossing the line


Detection and Tracking ID on each vehicle before crossing the vehicle.

After Crossing the line, it turns green and Vehicle is entering message will be flashed and Update will be made on database with image of vehicle and plate

Vehicle Detection App

How It Works

  • When we run the model , Number plate will be detected with an average accuracy of 97% of the vehicles crossing the Line drawn , Then the Number Plate will be cropped and filtered and passed through The OCR and we will get the Number plate. Then the Numbe Plate we get , then Processed through the RTO Database and If the Data is Found , Then it will be updated in the Storage as well as App too. But If No data is Found in the RTO database , then it will cause an Alert in the Admin Database in the app , and can only be resolved by Manually entering the Number plate in the App .

Troubleshooting

  1. If you encounter any error, please make sure you follow the instructions exactly (word by word). Once you are familiar with the code, you're welcome to modify it as needed but in order to minimize error, I encourage you to not deviate from the instructions above.

  2. If you are using pipenv and are having trouble running python3 -m venv env, try:

    pipenv shell
    
  3. If you are having trouble getting cv2 to run, try:

    apt-get update
    apt-get install -y libsm6 libxext6 libxrender-dev
    pip install opencv-python
    
  4. If you are a Linux user and having trouble installing *.snap package files try:

    snap install --dangerous vott-2.1.0-linux.snap
    

    See Snap Tutorial for more information.

Stay Up-to-Date

  • star this repo to get notifications on future improvements and
  • fork this repo if you like to use it as part of your own project.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages