250 likes | 340 Views
Circular Augmented Rotational Trajectory (CART) Shape Recognition & Curvature Estimation. Presentation for 3IA 2007 Russel Ahmed Apu & Dr. Marina Gavrilova Department of Computer Science University of Calgary. Brief Outline. Motivation Shape Representation Problems with current approach
E N D
Circular Augmented Rotational Trajectory (CART)Shape Recognition & Curvature Estimation Presentation for 3IA 2007 Russel Ahmed Apu & Dr. Marina Gavrilova Department of Computer Science University of Calgary
Brief Outline • Motivation • Shape Representation • Problems with current approach • Proposed Approach (CART) • R-Space Representation • Experimental Results
Motivation: Computer Graphics • Augmented Reality Can Vision algorithms in AR be improved so that objects can be inserted by recognizing more natures signs and shapes? Source: http://www.artag.net/
Motivation: Computer Graphics • Markerless Motion Capture • Can we capture motion from body contours in natural images? Source: http://www.toshiba.co.jp/rdc/mmlab/tech/w38e.htm
Motivation: Artificial Intelligence • Aerial Robotics: Target Recognition Identify special shape/color for Automated Search and Rescue Operation
Ship Trajectory Analysis • MARIS Project: Risk Analysis How can we identify ship type and abnormal navigation patterns from the real-time GPS data? Source: http://www.marin-research.ca/english/research/methods/spatial_statistics.html
Key Problems in the area • Extraction of Shapes/contours: • From noisy image with texture & clutters • Overlapped, broken, faded & occluded • Widely varying scale, rotation & transformation • Representation & Interpretation of Shapes, Regions & Contours • Vector representation is much better than Raster (pixels) for interpretation • Contour Models: Spline, points, lines or graphs • Detection of invariant feature points • Analysis & matching of Shapes • Shape matching and classification for distorted, transformed and often incomplete contour • Detecting geometric properties in shapes despite local noise
Current Approaches • Active Contour (i.e. Snakes) • Edge Detectors • Segmentation • Normalized-Cuts (and it’s variants) • Corner Detector (I.e. Sift) • Kalman Filter (For noisy contours) • Gausian filters, Haugh Transform etc.
Problem Complexity… • Very difficult to extract shapes • Object Contour ≠Edges • Effective methods are Computationally extensive • Some methods such as Active Contour have erratic convergence • Loss of detail in Kalman filter, Edge detector, Haugh transform etc. • Others: Does not work well to “Classify” shapes • Unable to cope with scale, rotation & distortion • Unable to detect geometric signatures
Difficulty in Contour Extraction • Intensity changes are not only observed in edges • Texture • Clutter • Image artifacts • One solution is to smooth • Smoothing destroys detail • Must Observe regions • i.e. segmentation • But region based methods are slow • When the Object shape is not just linear it is much harder • I.e. noisy curved objects This edge gradient image shows that it is very difficult to ascertain actual contours from textures and clutters
Problem with current approaches • Active Contour (i.e. Snakes), Segmentation, Corner Detection are very slow to converge • Not practical in most applications such as Augmented Reality • Edge detection is neither robust nor sufficient • Haugh transform is only good for Straight line Features
Extraction Anomaly • Often, shape extracted has erratic points which deviate from the curve • Solution: • Smoothing Then, how can we preserve linear features & sharp corners? Pixel Discretization artifacts is a notorious effect. It masks the actual shape of the object
Which of the following interpretation is right? Impossible to Ascertain by looking at a small local region Shape can be: Part of a rotated rectangle Part of a curved surface There can be misleading noise Curvature Interpretation Ambiguity
A Curvature based Spline Model Represents Rotation Invariant graphs Main Idea: Estimate the curvature at a given point At what constant turn rate can we travel the furthest along a contour? Constraint: Cannot deviate from original curve more than Tolerance Differs from Kalman Filter (or smoothing): No statistical assumption on noise distribution Does not smooth away sharp features Differs from Haugh: CART works with both linear and curved objects Differs from Active Contour & segmentaion: Convergence is guaranteed and bounded Much faster Circular Augmented Rotational Trajectory (CART)
Estimation of d/dl Linear Spline Model: Problem: Not scale invariant Sensitive to Step resolution Solution: Use Circular trajectory estimation Insensitive to rescaling (except that details are lost) At a constant turn rate, different stepsize generates the same exact curve See Algorithm 1: Procedure Circular Projects a particle along a circular trajectory Estimate turn rate by linear/quadratic curve fitting CART: Main Concept Shape & Total Turn Varies depending on step resolution (Hard to perform Multiscale analysis)
Rotation Estimation • Define A Score • Score= <Distance , Sum(Deviation)> • Distance = How far can a particle travel at constant turn rate without breaking the constraint • Initial Step: Estimate initial direction & turn-rate • Following Steps: Estimate Turn Rate only • Optimization Goal: Maximize distance and minimize deviation (distance gets priority)
Represent curve as a graph Length along curve VS rotation rate Easy to detect geometric Signatures Convexity, Concavity Corners (sharp/smooth) Domes, Ovals Straight lines Circles/ellipses Polygons (sharp/cambered) R-Space is Rotation invariant Same graph for any orientation Minimally affected by scaling Robust to noise and distortion R-Space conversion of shapes Rotation invariant R-Space representation
R-Space Example (a) (b) (c) (d) Shapes and their representation in R-space. (a) Rectangles has four spikes (b) circles are horizontal lines (c) Distorted rectangular shape (d) Distorted circular shape
R-Space Example The object is a polygon with 12 sides (12 spikes in r-space). This is generated without CART by simple applying gaussian smoothing & differentiating
Discretization Anomaly and Noise • Gaussian smoothing no longer works when noise & anomalies are present R-Space Graph without smoothing (too many false spikes) R-Space Graph with significant smoothing (false spikes still present and getting wider) The Object & tracked contour
Using CART: • Anomalies are eliminated R-Space Graph with significant smoothing (false spikes still present and getting wider) R-Space Graph with CART: Shows linear segments and corners properly
Detection of Geometric Signatures (Invariant points) • Natural Image • Lots of Texture & clutter • High Noise & anomaly present
Detection of Geometric Signatures (Invariant points) • Presence of heavy noise • Blurred image • Misleading contour noise Easy to detect shape signatures in Region A,B,C & D
Conclusion • CART is simple and easy to implement • Very efficient and fast compared to other methods • Robust convergence & result • Robust to Noise & discretization error • Allow detection of Corners and other unique geometric signatures • Allow Geometric analysis (Convexity, linearity, global curvature etc.) • Invariant to rotation and scaling • Minimally affected by other distortions & transformations
Thank you :) Questions & inquiries?