Parking restrictions ensure parking availability to specific groups of individuals and meeting critical traffic demands. Subsequently, this increases safety and accessibility to facilities. Currently, the responsibility of detecting illegally parked vehicles has been left up to law enforcement. To improve the efficiency of law enforcement for better management, a parking detection Web GIS powered by computer vision technology is needed.

What it does

  • A web dashboard displays the spatio-temporal distribution of all detected vehicles
  • The dashboard will be updated in a near real-time manner*
  • Support spatial and temporal query of parking violation vehicles

How it was built

The dashboard is built with two parts:

  • License plate detection from video stream via Python
    • Detecting license plate number from image using Unconstrained ALRP
      • Vehicle extraction from images: Darknet YOLO v2
      • License plate detection: Detecting license plate area and transform into front view using Keras with Tensorflow backend.
      • Optical character detection: a modified YOLO network
      • All three networks are pre-trained at Unconstrained ALRP. The last two are trained with augmented vehicle images and is robust against different factors affecting image qualities.
    • Detecting license plate number and estimate vehicle location from video
      • Video image extraction: Opencv
      • Determine valid license plate number: sanity check
      • Estimate vehicle location: positioning reasoning, implemented using matrix transformation for fast computation
  • Dashboard web application
    • Server: node.js
      • Rest API Endpoints
      • Execute Python script to extract license if a new video comes in*
      • Index and query database upon requests
    • Web App
      • Material Design based Front-end
      • ArcGIS JavaScript API for map interactions and animations
      • Data Visualization
    • Database: Elasticsearch

Challenges I ran into

  • Finding the right technology resource for image object detection
  • Setting up correct development environment of Unconstrained ALRP given the incorrect dependency info in its repo
  • Rewrite the code to optimize the processing of videos
  • Figuring out an appropriate algorithm of find out valid license plate number and vehicle locations
  • Synchronize mapping, video processing, and visualization.

Accomplishments that I'm proud of

  • Detecting vehicle license plate from video stream with high accuracy and low latency
  • A web application provides spatial decision support for management

What I learned

  • Methods, frameworks, and libraries used for multi-objects detection from image and videos
  • Web application development using Esri technology

What's next for ArcVision

At present, the costs of installing automatic ticketing machines, printing out those tickets, making copies of the tickets for record-keeping and mailing out tickets to offenders adds up significantly. ArcVision strives to reduce and eventually eliminate these costs.

ArcVision hopes to expand its applications to both private and public sectors such as hospitals and military establishments.

ArcVision's technology can be used to collect dataset for retrospective crime investigation and evidence collection, which will help prosecution and reduce the liabilities of law enforcement face.

Built With

Share this project: