Robotics Programming Laboratory

Similar documents
Feature Descriptors. CS 510 Lecture #21 April 29 th, 2013

SUMMARY: DISTINCTIVE IMAGE FEATURES FROM SCALE- INVARIANT KEYPOINTS

Augmented Reality VU. Computer Vision 3D Registration (2) Prof. Vincent Lepetit

Motion Estimation and Optical Flow Tracking

Local Features Tutorial: Nov. 8, 04

Local Features: Detection, Description & Matching

Feature Based Registration - Image Alignment

CS 534: Computer Vision Segmentation and Perceptual Grouping

EE368 Project Report CD Cover Recognition Using Modified SIFT Algorithm

SIFT: SCALE INVARIANT FEATURE TRANSFORM SURF: SPEEDED UP ROBUST FEATURES BASHAR ALSADIK EOS DEPT. TOPMAP M13 3D GEOINFORMATION FROM IMAGES 2014

Topics to be Covered in the Rest of the Semester. CSci 4968 and 6270 Computational Vision Lecture 15 Overview of Remainder of the Semester

CS 664 Segmentation. Daniel Huttenlocher

Feature Detection. Raul Queiroz Feitosa. 3/30/2017 Feature Detection 1

Introduction. Introduction. Related Research. SIFT method. SIFT method. Distinctive Image Features from Scale-Invariant. Scale.

Comparison of Feature Detection and Matching Approaches: SIFT and SURF

Chapter 3 Image Registration. Chapter 3 Image Registration

The SIFT (Scale Invariant Feature

Scale Invariant Feature Transform

Image Processing. Image Features

Feature descriptors. Alain Pagani Prof. Didier Stricker. Computer Vision: Object and People Tracking

Feature Detection and Matching

Scale Invariant Feature Transform

Computer vision: models, learning and inference. Chapter 13 Image preprocessing and feature extraction

SIFT: Scale Invariant Feature Transform

Object Recognition. Lecture 11, April 21 st, Lexing Xie. EE4830 Digital Image Processing

Last update: May 4, Vision. CMSC 421: Chapter 24. CMSC 421: Chapter 24 1

Biometrics Technology: Image Processing & Pattern Recognition (by Dr. Dickson Tong)

Local Feature Detectors

Patch-based Object Recognition. Basic Idea

Features Points. Andrea Torsello DAIS Università Ca Foscari via Torino 155, Mestre (VE)

CS4670: Computer Vision

Outline 7/2/201011/6/

CITS 4402 Computer Vision

Image Analysis - Lecture 5

BSB663 Image Processing Pinar Duygulu. Slides are adapted from Selim Aksoy

Computer Vision for HCI. Topics of This Lecture

EE 701 ROBOT VISION. Segmentation

Obtaining Feature Correspondences

Object Reconstruction

Lecture 12 Recognition

Image features. Image Features

Local Descriptors. CS 510 Lecture #21 April 6 rd 2015

Learning and Inferring Depth from Monocular Images. Jiyan Pan April 1, 2009

CS 664 Slides #11 Image Segmentation. Prof. Dan Huttenlocher Fall 2003

Seminar Heidelberg University

Computer Vision 5 Segmentation by Clustering

Efficient Surface and Feature Estimation in RGBD

Ensemble of Bayesian Filters for Loop Closure Detection

Image Segmentation and Registration

Implementing the Scale Invariant Feature Transform(SIFT) Method

Implementation and Comparison of Feature Detection Methods in Image Mosaicing

SIFT - scale-invariant feature transform Konrad Schindler

Final Exam Schedule. Final exam has been scheduled. 12:30 pm 3:00 pm, May 7. Location: INNOVA It will cover all the topics discussed in class

Content-based Image and Video Retrieval. Image Segmentation

Object Recognition with Invariant Features

EE795: Computer Vision and Intelligent Systems

2D Image Processing Feature Descriptors

Lecture 12 Recognition. Davide Scaramuzza

Classifying Images with Visual/Textual Cues. By Steven Kappes and Yan Cao

CAP 5415 Computer Vision Fall 2012

Classification and Detection in Images. D.A. Forsyth

Introduction to SLAM Part II. Paul Robertson

3D Reconstruction From Multiple Views Based on Scale-Invariant Feature Transform. Wenqi Zhu

Panoramic Image Stitching

Car Detecting Method using high Resolution images

Object and Class Recognition I:

Part-based and local feature models for generic object recognition

HISTOGRAMS OF ORIENTATIO N GRADIENTS

Modern Medical Image Analysis 8DC00 Exam

Perception. Autonomous Mobile Robots. Sensors Vision Uncertainties, Line extraction from laser scans. Autonomous Systems Lab. Zürich.

2D image segmentation based on spatial coherence

Range Image Segmentation for Modeling and Object Detection in Urban Scenes

Corner Detection. GV12/3072 Image Processing.

CRF Based Point Cloud Segmentation Jonathan Nation

Lecture 8: Fitting. Tuesday, Sept 25

6.801/866. Segmentation and Line Fitting. T. Darrell

Segmentation and Grouping

human vision: grouping k-means clustering graph-theoretic clustering Hough transform line fitting RANSAC

Computer Vision I - Appearance-based Matching and Projective Geometry

TA Section 7 Problem Set 3. SIFT (Lowe 2004) Shape Context (Belongie et al. 2002) Voxel Coloring (Seitz and Dyer 1999)

Training-Free, Generic Object Detection Using Locally Adaptive Regression Kernels

Previously. Part-based and local feature models for generic object recognition. Bag-of-words model 4/20/2011

Coarse-to-fine image registration

Motion illusion, rotating snakes

Elective in A.I. Robot Programming

Key properties of local features

Contents I IMAGE FORMATION 1

3D Models and Matching

Lecture 10 Detectors and descriptors

Specular 3D Object Tracking by View Generative Learning

Ulas Bagci

MULTI ORIENTATION PERFORMANCE OF FEATURE EXTRACTION FOR HUMAN HEAD RECOGNITION

EN1610 Image Understanding Lab # 4: Corners, Interest Points, Hough Transform

A Comparison of SIFT, PCA-SIFT and SURF

Computer Vision. Recap: Smoothing with a Gaussian. Recap: Effect of σ on derivatives. Computer Science Tripos Part II. Dr Christopher Town

THE ANNALS OF DUNAREA DE JOS UNIVERSITY OF GALATI FASCICLE III, 2007 ISSN X ELECTROTECHNICS, ELECTRONICS, AUTOMATIC CONTROL, INFORMATICS

Local features: detection and description May 12 th, 2015

Motion Tracking and Event Understanding in Video Sequences

CS 4495 Computer Vision A. Bobick. CS 4495 Computer Vision. Features 2 SIFT descriptor. Aaron Bobick School of Interactive Computing

Region-based Segmentation

Transcription:

Chair of Software Engineering Robotics Programming Laboratory Bertrand Meyer Jiwon Shin Lecture 8: Robot Perception

Perception http://pascallin.ecs.soton.ac.uk/challenges/voc/databases.html#caltech car Given visual input, understand the information the input contains Object location: object detection Type of object: object classification Exact object name: object recognition Overall scene: scene understanding 3

Type of data Disparity map Laser data Range data RGBD data Camera image 4

Structured light f cot(α) + u u f CMOS sensor b x α z (x,z) x = b u f cot(α) + u z = u z = G p = b f z 2 α z = G α = b sin(α)2 z 2 b f f cot(α) + u Near IR light source Carmine 1.09 Operating range: 0.35 m 1.4 m Spatial resolution: 0.9 mm at 0.5m Depth resolution: 0.1 cm at 0.5m 5

Structured light 6

Segmentation Segmentation: decomposition of an image into consistent regions Data that belong to the same region have similar properties Similar color, texture, surface normal, etc. Data that belong to different regions have different properties Different color, texture, surface normal, etc. Segmentation as clustering Partitioning: divide an image into coherent regions Grouping: group together elements of similar properties 7

Image segmentation Divide an image into sensible regions using pixel intensity, color, texture, etc. Background subtraction Clustering Graph-based 8

Background subtraction http://vip.bu.edu/files/2010/02/fdr_fpr_control_comparison1-594x636.jpg 9

Background subtraction Subtract an estimate of the appearance of the background from the image Consider areas of large absolute difference to be foreground Issues Obtaining a good estimate of the background is non-trivial Changes in environment, lighting, weather, etc. Use a moving average Threshold 10

Agglomerative clustering Consider each data point as a cluster Recursively merge the clusters with the smallest inter-cluster distance until the result is satisfactory 11

Agglomerative clustering http://www.cse.buffalo.edu/~jcorso/r/files/multilevel_square.png 12

Agglomerative clustering Issues Inter-cluster distance Distance between closest elements Distance between farthest elements Average distance between elements Number of clusters 13

K-means clustering Choose k data points as seed points Recursively assign each data point to the cluster whose center is the closest and recalculate the cluster mean until the center does not change Minimize the within cluster sum of squares Tries to produce k clusters of equal size 14

K-means clustering http://en.wikipedia.org/wiki/segmentation_(image_processing) 15

K-means clustering Issues Segments are not connected in image Using pixel coordinates would break up large regions Determining k is non-trivial 16

Efficient graph-based image segmentation Represent image as a graph, each pixel being a node of a graph Edges are formed between neighboring pixels Merge the nodes such that nodes belonging to the same segment more similar to one another than nodes at the boundary of two segments 17

Efficient graph-based image segmentation Internal difference of a cluster c: Int C = max eεmst(c,e) w(e) Difference between clusters c 1, c 2 : Dif C 1, C 2 = min v i εc 1,v j εc 2, v i,v j E w( v i, v j ) Minimum internal difference: MInt C 1, C 2 = min(int C 1 + τ C 1, Int C 2 + τ C 2 ) τ C = k C A boundary exists between c 1 and c 2 if Dif C 1, C 2 > MInt C 1, C 2 18

Efficient graph-based image segmentation Felzenszwalb, P. and Huttenlocher, D. 2004. Efficient Graph-Based Image Segmentation International Journal of Computer Vision, Volume 59, Number 2. 19

Efficient graph-based image segmentation Regions of consistent properties are grouped together Issues Number and quality of segments depend on the parameter k, smoothing factor, and minimum number of nodes 20

Range data segmentation Generally, we can use image segmentation algorithms by replacing intensity, color, or texture by depth, surface normal, etc. Surface normal computation x u x v x u x v N = 1 x u x v (x u x v ) 21

Ground segmentation http://www-personal.acfr.usyd.edu.au/p.morton/media/img/data_ground.png 22

Ground segmentation Extract all points below a certain height Issues Data are noisy Objects will also lose information Wall cannot be segmented out Ground is not always planar 23

Plane segmentation http://kos.informatik.uni-osnabrueck.de/icar2013/segmentation.png 24

Plane segmentation Find a plane that minimize the average distance between a set of points and the surface Recursively merge the surface patches Issues Not every object is planar Curved objects will be segmented into several segments 25

Feature extraction Feature: a piece of information relevant for solving a computational task, e.g., locating an object in an image Raw data Histogram Pyramid of histograms Shape 27

Histogram Compute a histogram of intensity or color Compute the correlation between example and test Issues Loss of the structural information Dimensionality 28

Scale Invariant Feature Transform Lowe, D. 1999. Object recognition from local scale-invariant features. Proceedings of ICCV. 29

Scale Invariant Feature Transform (SIFT) Identify locations and scales that are identifiable from different views of the same object L(x, y, σ) = G(x, y, σ) * I(x, y) D(x, y, σ) = L(x, y, kσ) - L(x, y, σ) Detect extrema (local minimum or maximum) 30

Scale Invariant Feature Transform Remove points of low contrast or poorly localized on an edge Orientation assignment m x, y = (L x + 1, y L x 1, y ) 2 + (L x, y + 1 L x, y 1 ) 2 L x, y + 1 L x, y 1 θ x, y = tan 1 L x + 1, y L x 1, y Create a keypoint descriptor: 16 histograms (4x4 grid), each with 8 orientation bins, containing a total of 128 elements. 31

Histogram of Oriented Gradient Divide the image into small rectangular or radial cells Each cell accumulates a weighted local 1-D histogram of gradient directions over the pixels of the cell Normalize each cell by the energy over larger regions 32

Shape factor Compute eigenvectors: λ 1, λ 2, λ 3 Point/Spherical: λ 1 λ 2 λ 3 Planar: λ 1 λ 2» λ 3 Elongated: λ 1» λ 2 λ 3 Issues Many different objects have similar shape factor Shape factor of an object can depend on the point of view 33

Tensor voting 2x2 or 3x3 matrix that captures both the orientation information and its confidence/saliency Shape defines the type of information (point, surface, etc.) Size represents the saliency Each token is first decomposed into the basis tensors, and then broadcasts its information to its neighbors. Medioni, G., Lee, M., Tang. C. 2000. A Computational Framework for Segmentation and Grouping. 34

Tensor voting The magnitude of the vote decays with distance and curvature: V d, ρ = e d2 +cρ 2 σ 2 d is the distance along the smooth path ρ is the curvature of the path c controls the degree of decay σ controls the size of the voting neighborhood Accumulate the votes by adding the matrices Analyze the tensor by eigen decomposition 35

Spin image Johnson, A., Herbert, M., 1999. Using Spin Images for Efficient Object Recognition in Cluttered 3D Scenes IEEE Transactions on Pattern Analysis and Machine Intelligence, 21, (5). 36

Spin image 37

Spin image Collect a histogram of points The resolution of the histogram The size of the histogram To compare two spin images P and Q Compute the correlation between two images R P, Q = N p i q i p i q i (N p i 2 ( p i ) 2 )(N q i 2 ( q i ) 2 ) Can also apply PCA, remove the mean spin image and compute the Euclidean norm 38

Classifier Take a set of labeled examples Determine a rule that assign a label to any new example using the labeled examples Training dataset (x i, y i ) x i : measurements of the properties of objects y i : label Goal: given a new, plausible x, assign it a label y. 40

Bayes classifier p( k x ) = p( x k ) p( k ) p( x ) p( x k ) p( k ) Given x Assign label k to x if p( k x ) > p( i x ) for all i k and p( k x ) > threshold Assign a random k label between k 1,, k j if p( k 1 x ) = = p( k j x ) > p( i x ) for all i k Do not assign a label if p( k x ) > p( i x ) for all i k and p( k x ) threshold 41

Strategies Modeling probability explicitly Determining decision boundaries directly 42

Nearest neighbor classifier Given x Determine M training example that are nearest: x 1,, x M Determine class k that has the largest representation n in the set Assign label k to x if n > threshold Assign no label otherwise 43

Support Vector Machine Find a hyperplane that maximizes the margin between the positive and negative examples Support vectors w x i + b 1 : positive x i w x i + b -1 : negative x i w x i + b = 1 or -1 : support vectors Classify a point: f x = sign w x + b For multiclass classification, one against all, one against one, etc. 44

Bag of Words 45

Spatial relation Appearance How much does a patch of image resemble a known part? Spatial relation How well do the parts match the expected shape? Fischler and Elschlager, IEEE Trans. on Comp., 1973 46

OpenCV Library Open Source Computer Vision Library for image and video processing The library has more than 2500 optimized algorithms, including both classic and state-of-the-art computer vision and machine learning algorithms http://www.opencv.org 47

Point Cloud Library (PCL) Library for 2D/3D image and point cloud processing Contains numerous state-of-the art algorithms including filtering, feature estimation, surface reconstruction, registration, model fitting and segmentation http://www.pointclouds.org 48