Real-time Object Recognition on a GPU

Shape-Based matching (SBM) is a known method for 2D object recognition that is rather robust against illumination variations, noise, clutter and partial occlusion. The objects to be recognized can be translated, rotated and scaled. The translation of an object is determined by evaluating a similarity measure for all possible positions (similar to cross correlation). The similarity measure is based on dot products between normalized gradient directions in edges. Rotation and scale is determined by evaluating all possible combinations, spanning a huge search space. A resolution pyramid is used to form a heuristic for the search that then gains real-time performance. For SBM, a model consisting of normalized edge gradient directions, are constructed for all possible combinations of rotation and scale.We have avoided this by using (bilinear) interpolation in the search gradient map, which greatly reduces the amount of storage required.SBM is highly parallelizable by nature and with our suggested improvements it becomes much suited for running on a GPU.This have been implemented and tested, and the results clearly outperform those of our reference CPU implementation (with magnitudes of hundreds)…


1 Introduction
1.1 Object recognition
1.1.1 Correlation
1.1.2 Search
1.2 Previous results
1.3 Alternative methods
1.3.1 Edge based methods
1.3.2 High level feature based methods
1.4 Definitions
1.4.1 Pose
1.4.2 Occlusion and clutter
1.4.3 Stages
1.5 Requirements and constraints
1.6 Purpose
2 Shape-Based Matching
2.1 Overview
2.2 Similarity measure
2.2.1 Vector notation
2.2.2 Component notation
2.2.3 Angular notation
2.3 Model
2.4 Search
2.4.1 Exhaustive search
2.4.2 Tracking
2.4.3 Optimization
2.4.4 Reversed polarization
3 Analysis and improvements
3.1 Similarity response
3.1.1 Characteristics
3.1.2 Distortion
3.2 Model
3.2.1 Directional non-maximum suppression
3.2.2 Rotation requirements
3.2.3 Scale requirements
3.2.4 Match interpolation
3.3 Search
3.3.1 Exhaustive search
3.3.2 Tracking
3.3.3 Separated tracking
3.3.4 Effort
3.4 Rotationally symmetric objects
3.4.1 Detection and modeling
3.4.2 Search
3.4.3 Weighting
3.4.4 Effort
3.4.5 Conclusions
4 GPU implementation
4.1 GPU
4.1.1 Hardware
4.1.2 CUDA
4.2 SBM on a GPU
4.3 Implementation
4.3.1 Modeling
4.3.2 Resolution pyramid
4.3.3 Exhaustive search
4.3.4 Tracking
4.4 Evaluation
5 Experiments
5.1 Setup
5.1.1 Obtaining evaluation material
5.1.2 Ground truth
5.1.3 Parameters
5.2 Results
5.2.1 Representation
5.2.2 Correction
5.3 Evaluation
5.3.1 Recognition
5.3.2 Accuracy
5.3.3 Observations
6 Conclusions
6.1 Improvements
6.2 Evaluation
6.3 GPU implementation
6.4 Future work

Author: Pettersson, Johan

Source: Linköping University

Download URL 2: Visit Now

Leave a Comment