top of page
Awiros.jpg

INTRO

I worked on a very interesting project on depth perception on my summer internship at Awiros, Gurgaon.

I had the opportunity to study depth perception and provide a solution to the problem of scaling affine measurements for a surveillance camera. The project has much applications like autonomous vehicles, drones to trespasser detection. 

awiros-squarelogo-1569476719942.png

Depth perception and auto-calibration module

May - July 2019

Skills and Tools

  • MATLAB

  • OpenCV

    • Object tracking​

    • Background subtraction 

  • Homography 

  • PyQt (GUI)

  • Computer vision

  • PID control

About my project

How I did it

This is my first experience in an industrial internship. I am glad I got this opportunity at a young video intelligence start-up, Awiros. With this project, I learnt basics about the geometric CV. I started working on this project from scratch and developed a novel algorithm for scaling objects and measuring heights without any extrinsic or intrinsic parameters. I worked on this project closely for about 2 and a half month.

The problem statement: Develop and implement a model for aiding surveillance camera such that any object given in the image can be scaled without the knowledge of extrinsic and intrinsic camera parameters. 

The project can be broken down into three major parts: 

  • Depth perception module

  • Auto-calibration module

  • Application and testing on videos

This research was conducted at Awiros, Gurgaon, India. I am working on further improving the scope of this project as my BTP - II. 

Screenshot (219).png
Screenshot%20(219)_edited.jpg

Depth perception module

  • For this phase, I started working on testing different camera calibration techniques and referred to papers by Zhang 

  • Since the goal was to use the minimum amount of info about the parameters and to extract the info from any given image, none of the available methods were sufficient and I started working on developing the algorithm from the scratch.

  • I proposed a flexible technique using the following variables: Height of the camera, tilt angle of the camera and angle of view. 

  • The method used was first tested on MATLAB and then I used OpenCV to build the module. I used PyQt for the GUI.


The image you see to the left is of a national highway and the grid is GUI designed to align virtual ground with the real ground image.

Screenshot%20(223)_edited.jpg
Auto-calibration module
  • For phase II, I started experimenting with the projection of lines perpendicular to the ground to the image and found a relationship between height and angle of projection on the image plane.

  • Next, I used the PID controller to iterate the module to give final output for the angle of view and the tilt angle

Awiros.png
Application and testing on sample videos
  • For the application part, I implemented this algorithm to the unknown video in order to get speed. 

  • For tracking the vehicles, I used object detection and tracking algorithms like KCF and CSRT, and compared the result

Result

I presented the whole module and its application to the director of Awiros with the help of my mentor. The results I got was widely appreciated. Further, I am working on this project to make it better.

bottom of page