Chamfer Distance for Handshape Detection and Recognition CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.

Slides:



Advertisements
Similar presentations
Shape Context and Chamfer Matching in Cluttered Scenes
Advertisements

CSCE 643 Computer Vision: Template Matching, Image Pyramids and Denoising Jinxiang Chai.
Hough Transforms CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
CSE 473/573 Computer Vision and Image Processing (CVIP)
Cynthia Atherton.  Methodology  Code  Results  Problems  Plans.
Detection, Segmentation, and Pose Recognition of Hands in Images by Christopher Schwarz Thesis Chair: Dr. Niels da Vitoria Lobo.
Computational Photography CSE 590 Tamara Berg Filtering & Pyramids.
Announcements Final Exam May 13th, 8 am (not my idea).
Database-Based Hand Pose Estimation CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
Cambridge, Massachusetts Pose Estimation in Heavy Clutter using a Multi-Flash Camera Ming-Yu Liu, Oncel Tuzel, Ashok Veeraraghavan, Rama Chellappa, Amit.
Facial feature localization Presented by: Harvest Jang Spring 2002.
Ghunhui Gu, Joseph J. Lim, Pablo Arbeláez, Jitendra Malik University of California at Berkeley Berkeley, CA
Pedestrian Detection in Crowded Scenes Dhruv Batra ECE CMU.
Lecture 5 Template matching
Announcements Final Exam May 16 th, 8 am (not my idea). Practice quiz handout 5/8. Review session: think about good times. PS5: For challenge problems,
1 Model Fitting Hao Jiang Computer Science Department Oct 6, 2009.
Real-time Embedded Face Recognition for Smart Home Fei Zuo, Student Member, IEEE, Peter H. N. de With, Senior Member, IEEE.
Computer Vision - A Modern Approach Set: Linear Filters Slides by D.A. Forsyth Differentiation and convolution Recall Now this is linear and shift invariant,
Processing Digital Images. Filtering Analysis –Recognition Transmission.
Human Posture Recognition with Convex Programming Hao Jiang, Ze-Nian Li and Mark S. Drew School of Computing Science Simon Fraser University Burnaby, BC,
Chamfer Matching & Hausdorff Distance Presented by Ankur Datta Slides Courtesy Mark Bouts Arasanathan Thayananthan.
CS 223B Assignment 1 Help Session Dan Maynes-Aminzade.
Fitting a Model to Data Reading: 15.1,
Robust estimation Problem: we want to determine the displacement (u,v) between pairs of images. We are given 100 points with a correlation score computed.
Computer Vision P. Schrater Spring 2003
Lecture 6: Feature matching and alignment CS4670: Computer Vision Noah Snavely.
Traffic Sign Identification Team G Project 15. Team members Lajos Rodek-Szeged, Hungary Marcin Rogucki-Lodz, Poland Mircea Nanu -Timisoara, Romania Selman.
Linked Edges as Stable Region Boundaries* Michael Donoser, Hayko Riemenschneider and Horst Bischof This work introduces an unsupervised method to detect.
Template-Based Face Detection CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
Classifying Images with Visual/Textual Cues By Steven Kappes and Yan Cao.
Image Processing Edge detection Filtering: Noise suppresion.
Tracking CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
Fast Similarity Search in Image Databases CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
Robust Real Time Face Detection
Image-Based Segmentation of Indoor Corridor Floors for a Mobile Robot Yinxiao Li and Stanley T. Birchfield The Holcombe Department of Electrical and Computer.
University of Texas at Arlington
Edges.
Looking at people and Image-based Localisation Roberto Cipolla Department of Engineering Research team
CSE 185 Introduction to Computer Vision Feature Matching.
By Pushpita Biswas Under the guidance of Prof. S.Mukhopadhyay and Prof. P.K.Biswas.
CSE 6367 Computer Vision Image Operations and Filtering “You cannot teach a man anything, you can only help him find it within himself.” ― Galileo GalileiGalileo.
Project Overview CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington.
Machine Vision Edge Detection Techniques ENT 273 Lecture 6 Hema C.R.
Face Detection Using Color Thresholding and Eigenimage Template Matching Diederik Marius Sumita Pennathur Klint Rose.
Peter Matthews, Cliff C. Zou University of Central Florida AsiaCCS 2010.
Tracking Hands with Distance Transforms Dave Bargeron Noah Snavely.
Non-linear filtering Example: Median filter Replaces pixel value by median value over neighborhood Generates no new gray levels.
EE368 Final Project Spring 2003
IMAGE PROCESSING Tadas Rimavičius.
Nearest Neighbor Classifiers
Linear Filters and Edges Chapters 7 and 8
Histograms CSE 6363 – Machine Learning Vassilis Athitsos
CS 4501: Introduction to Computer Vision Sparse Feature Detectors: Harris Corner, Difference of Gaussian Connelly Barnes Slides from Jason Lawrence, Fei.
Game Theoretic Image Segmentation
Lecture 26 Hand Pose Estimation Using a Database of Hand Images
LOCUS: Learning Object Classes with Unsupervised Segmentation
Recognition using Nearest Neighbor (or kNN)
Detecting Shapes in Cluttered Images
Image gradients and edges
Feature description and matching
A Tutorial on HOG Human Detection
Scott Tan Boonping Lau Chun Hui Weng
Object recognition Prof. Graeme Bailey
Brief Review of Recognition + Context
CSSE463: Image Recognition Day 30
CSSE463: Image Recognition Day 30
CSE 185 Introduction to Computer Vision
Fourier Transform of Boundaries
Feature descriptors and matching
CSSE463: Image Recognition Day 30
Presentation transcript:

Chamfer Distance for Handshape Detection and Recognition CSE 6367 – Computer Vision Vassilis Athitsos University of Texas at Arlington

Contours A contour is a curve/line (typically not straight) that delineates the boundary of a region, or between regions.

Shapes Without Texture Letters/numbers. Contours. Edge templates.

Detecting Shapes Without Texture Normalized correlation does not work well. Slight misalignments have a great impact on the correlation score. star1 star3combined

Chamfer Distance For each edge pixel in star1: –How far is it from the nearest edge pixel in star3? The average of all those answers is the directed chamfer distance from star1 to star3.

Chamfer Distance For each edge pixel in star1: –How far is it from the nearest edge pixel in star3? The average of all those answers is the directed chamfer distance from star1 to star3.

Chamfer Distance For each edge pixel in star1: –How far is it from the nearest edge pixel in star3? The average of all those answers is the directed chamfer distance from star1 to star3.

Chamfer Distance For each edge pixel in star1: –How far is it from the nearest edge pixel in star3? The average of all those answers is the directed chamfer distance from star1 to star3.

Chamfer Distance For each edge pixel in star3: –How far is it from the nearest edge pixel in star1? The average of all those answers is the directed chamfer distance from star3 to star1.

Input: two sets of points. –red, green. c(red, green): –Average distance from each red point to nearest green point. Directed Chamfer Distance

Input: two sets of points. –red, green. c(red, green): –Average distance from each red point to nearest green point. c(green, red): –Average distance from each green point to nearest red point. Directed Chamfer Distance

Input: two sets of points. –red, green. c(red, green): –Average distance from each red point to nearest green point. c(green, red): –Average distance from each red point to nearest green point. Chamfer Distance Chamfer distance: C(red, green) = c(red, green) + c(green, red)

Chamfer Distance On two stars: –31 pixels are nonzero in both images. On star and crescent: –33 pixels are nonzero in both images. Correlation scores can be misleading.

Chamfer Distance Chamfer distance is much smaller between the two stars than between the star and the crescent.

Detecting Hands Input image Template. Problem: hands are highly deformable. Normalized correlation does not work as well. Alternative: use edges.

Detecting Hands Compute chamfer distance, at all windows, all scales, with template. Which version? Directed or undirected? We want small distance with correct window, large distance with incorrect windows. window template

Direction Matters Chamfer distance from window to template: problems? window template

Direction Matters Chamfer distance from window to template: problems? Clutter (edges not belonging to the hand) cause the distance to be high. window template

Direction Matters Chamfer distance from template to window: problems? window template

Direction Matters Chamfer distance from template to window: problems? What happens when comparing to a window with lots of edges? window template

Direction Matters Chamfer distance from template to window: problems? What happens when comparing to a window with lots of edges? Score is low. window template

Choice of Direction For detection, we compute chamfer distance from template to window. Being robust to clutter is a big plus, ensures the correct results will be included. Incorrect detections can be discarded with additional checks. window template

Computing the Chamfer Distance Compute chamfer distance, at all windows, all scales, with template. Can be very time consuming.

Distance Transform Edge image e1Distance transform d1 For every pixel, compute distance to nearest edge pixel. d1 = bwdist(e1);

Distance Transform Edge image e1Distance transform d1 If template t1 is of size (r, c): Chamfer distance with a window (i:(i+r-1), (j:(j+c-1)) of e1 can be written as: t1

Distance Transform If template t1 is of size (r, c): Chamfer distance with a window (i:(i+r-1), (j:(j+c-1)) of e1 can be written as: Computing image of chamfer scores for one scale: window = d1(i:(i+r-1), j:(j+c-1)); sum(sum(t1.* window)) Edge image e1Distance transform d1 t1

Distance Transform Computing image of chamfer scores for one scale s How long does that take? Can it be more efficient? resized = imresize(image, s, 'bilinear'); resized_edges = canny(resized, 7); resized_dt = bwdist(resized_edges); chamfer_scores = imfilter(resized_dt, t1, 'symmetric'); figure(3); imshow(chamfer_scores, []); Edge image e1Distance transform d1 t1

Improving Efficiency Which parts of the template contribute to the score of each window? Edge image e1Distance transform d1 t1

Improving Efficiency Which parts of the template contribute to the score of each window? Just the nonzero parts. How can we use that? Edge image e1Distance transform d1 t1

Improving Efficiency Which parts of the template contribute to the score of each window? Just the nonzero parts. How can we use that? Compute a list of non-zero pixels in the template. Consider only those pixels when computing the sum for each window. Edge image e1Distance transform d1 t1

Results for Single Scale Search What is causing the false result?

Results for Single Scale Search What is causing the false result? –Window with lots of edges. How can we refine these results?

Results for Single Scale Search What is causing the false result? –Window with lots of edges. How can we refine these results? –Skin color, or background subtraction