Objective: Study project on identification of objects in motion and locating them in subsequent video frames doing real time image processing using openCV* (Open computer vision library)
Background: Identifying and tracking objects in motion is really necessary in security and surveillance system. Metropolitan police in European nations have already started using this kind of technique to observe and control various important highway systems for e.g. Autobahn in Germany. This helps them keep track of vehicles over-speeding or violating traffic rules without any human interference in the process. Another important system build on the similar lines using OpenCV is known as “Swiss track” it’s used for tracking agents for security reasons. These systems can be of great help to our country’s Police and local security systems, as it will provide them with the Hi-tech equipments without any added human resources. Once customized, these systems can be handled by anyone with little knowledge of computers.
Modeling motion in real time: Any motion in time can be defined by few basic mathematical algorithms:
1. When pertaining to 2-D motion of object in given profile view of the system, any motion can be easily described by “Affine transformation” also known as homography. In this, any object is assign co-ordinates relative to the Cartesian system defined for camera & image capturing system and later change in its locations are defined by the linear transformation of the same object. For e.g.
2. When dealing with 3-D objects we come across 2 kinds of objects:
1. Deformable: In case of deformable objects, they are covered in a mesh around their periphery with sophisticated edge detection technique, and any changes in node positions of the mesh are treated as MOTION
2. Non-Deformable: Incase of non-deformable objects, the objects are surrounded by a regular geometric pattern for e.g. square or circle and relative change in position of entire figure in only noted with respect to the previous analyzed frame.
Blob detection: It refers to visual modules that are aimed at detecting points and/or regions in the image that are either brighter or darker than the surrounding. There are two main classes of blob detectors
Kernel based tracking: It is also known as mean shift tracking. It is an iterative localization procedure based on the maximization of a similarity measure. It is realized using “Bhattacharya Coefficient” In statistics, the Bhattacharyya distance measures the similarity of two discrete probability distributions. It is normally used to measure the separability of classes in classification.
Contour tracking: It is simply a detection of change in localized object boundary. It is implemented using “Condensation Algorithm”. The condensation algorithm (Conditional Density Propagation) is a computer vision algorithm. The principal application is to detect and track the contour of objects moving in a cluttered environment. Condensation is a probabilistic algorithm that attempts to solve this problem.
Visual feature matching: In computer vision, sets of data acquired by sampling the same scene or object at different times, or from different perspectives, will be in different coordinate systems. Image registration is the process of transforming the different sets of data into one coordinate system. Registration is necessary in order to be able to compare or integrate the data obtained from different measurements.
Primary area of study: Main aim of this SOP will be to study and compare above mentioned algorithms, and find out best suited algorithm to implement in faster and more accurate real time image processing for detection on objects in motion. This may be later implemented by coding in Python and C/C++ which can be direct used in systems already at place.
---- X ---- X ---- X ---- X ---- X ---- X ----
*OpenCV is a computer vision library originally developed by Intel. It is free for commercial and research use under a BSD license. The library is cross-platform, and runs on Windows, Mac OS X, Linux, VCRT (Real-Time OS on Smart camera) and other embedded operating systems. It focuses mainly on real-time image processing, as such, if it finds Intel's Integrated Performance Primitives on the system, it will use these commercial optimized routines to accelerate itself