Lesson 04. KAZE, Non-linear diffusion filtering, ORB, MSER. Ing. Marek Hrúz, Ph.D.

Similar documents
Machine vision. Summary # 4. The mask for Laplacian is given

Achieving scale covariance

LoG Blob Finding and Scale. Scale Selection. Blobs (and scale selection) Achieving scale covariance. Blob detection in 2D. Blob detection in 2D

Machine vision, spring 2018 Summary 4

Properties of detectors Edge detectors Harris DoG Properties of descriptors SIFT HOG Shape context

SURF Features. Jacky Baltes Dept. of Computer Science University of Manitoba WWW:

CS5670: Computer Vision

INTEREST POINTS AT DIFFERENT SCALES

Scale-space image processing

CSE 473/573 Computer Vision and Image Processing (CVIP)

Vlad Estivill-Castro (2016) Robots for People --- A project for intelligent integrated systems

Corners, Blobs & Descriptors. With slides from S. Lazebnik & S. Seitz, D. Lowe, A. Efros

Detectors part II Descriptors

Overview. Harris interest points. Comparing interest points (SSD, ZNCC, SIFT) Scale & affine invariant interest points

Overview. Introduction to local features. Harris interest points + SSD, ZNCC, SIFT. Evaluation and comparison of different detectors

ITK Filters. Thresholding Edge Detection Gradients Second Order Derivatives Neighborhood Filters Smoothing Filters Distance Map Image Transforms

Feature extraction: Corners and blobs

SIFT keypoint detection. D. Lowe, Distinctive image features from scale-invariant keypoints, IJCV 60 (2), pp , 2004.

Fast Explicit Diffusion for Accelerated Features in Nonlinear Scale Spaces

Consistent Positive Directional Splitting of Anisotropic Diffusion

Feature detectors and descriptors. Fei-Fei Li

Blob Detection CSC 767

Blobs & Scale Invariance

Edges and Scale. Image Features. Detecting edges. Origin of Edges. Solution: smooth first. Effects of noise

Image Analysis. Feature extraction: corners and blobs

Image matching. by Diva Sian. by swashford

Image Processing 1 (IP1) Bildverarbeitung 1

Feature detectors and descriptors. Fei-Fei Li

NONLINEAR DIFFUSION PDES

SIFT: SCALE INVARIANT FEATURE TRANSFORM BY DAVID LOWE

Medical Image Analysis

Machine Learning and Data Mining. Decision Trees. Prof. Alexander Ihler

Overview. Introduction to local features. Harris interest points + SSD, ZNCC, SIFT. Evaluation and comparison of different detectors

CS 3710: Visual Recognition Describing Images with Features. Adriana Kovashka Department of Computer Science January 8, 2015

KAZE Features. 1 Introduction. Pablo Fernández Alcantarilla 1, Adrien Bartoli 1, and Andrew J. Davison 2

Image enhancement. Why image enhancement? Why image enhancement? Why image enhancement? Example of artifacts caused by image encoding

Medical Image Analysis

Advances in Computer Vision. Prof. Bill Freeman. Image and shape descriptors. Readings: Mikolajczyk and Schmid; Belongie et al.

Lecture 8: Interest Point Detection. Saad J Bedros

SIFT: Scale Invariant Feature Transform

EKF and SLAM. McGill COMP 765 Sept 18 th, 2017

Scale & Affine Invariant Interest Point Detectors

Nonlinear Diffusion. 1 Introduction: Motivation for non-standard diffusion

Linear Diffusion and Image Processing. Outline

PDE Based Image Diffusion and AOS

Corner detection: the basic idea

Outline. Convolution. Filtering

Comments. Assignment 3 code released. Thought questions 3 due this week. Mini-project: hopefully you have started. implement classification algorithms

Laplacian Filters. Sobel Filters. Laplacian Filters. Laplacian Filters. Laplacian Filters. Laplacian Filters

NON-LINEAR DIFFUSION FILTERING

Metric Embedding of Task-Specific Similarity. joint work with Trevor Darrell (MIT)

Given a feature in I 1, how to find the best match in I 2?

Review for Exam 1. Erik G. Learned-Miller Department of Computer Science University of Massachusetts, Amherst Amherst, MA

SIFT, GLOH, SURF descriptors. Dipartimento di Sistemi e Informatica

Edge Detection. CS 650: Computer Vision

Roadmap. Introduction to image analysis (computer vision) Theory of edge detection. Applications

Efficient Inference in Fully Connected CRFs with Gaussian Edge Potentials

Invariant local features. Invariant Local Features. Classes of transformations. (Good) invariant local features. Case study: panorama stitching

Lecture 7: Finding Features (part 2/2)

Lecture 7: Finding Features (part 2/2)

Introduction to Vector Functions

Classification: The rest of the story

Support Vector Machines

Recap: edge detection. Source: D. Lowe, L. Fei-Fei

PDEs in Image Processing, Tutorials

Face detection and recognition. Detection Recognition Sally

Extract useful building blocks: blobs. the same image like for the corners

ECE 468: Digital Image Processing. Lecture 8

Wavelet-based Salient Points with Scale Information for Classification

Image Enhancement: Methods. Digital Image Processing. No Explicit definition. Spatial Domain: Frequency Domain:

Advanced Features. Advanced Features: Topics. Jana Kosecka. Slides from: S. Thurn, D. Lowe, Forsyth and Ponce. Advanced features and feature matching

D(f/g)(P ) = D(f)(P )g(p ) f(p )D(g)(P ). g 2 (P )

CS 231A Section 1: Linear Algebra & Probability Review

CS4670: Computer Vision Kavita Bala. Lecture 7: Harris Corner Detec=on

Information geometry for bivariate distribution control

Orientation Map Based Palmprint Recognition

CS 231A Section 1: Linear Algebra & Probability Review. Kevin Tang

Log-Linear Models, MEMMs, and CRFs

Some common examples of vector fields: wind shear off an object, gravitational fields, electric and magnetic fields, etc

Ad Placement Strategies

Fraunhofer Institute for Computer Graphics Research Interactive Graphics Systems Group, TU Darmstadt Fraunhoferstrasse 5, Darmstadt, Germany

Machine Learning, Midterm Exam: Spring 2009 SOLUTION

Representing regions in 2 ways:

Lecture 12. Local Feature Detection. Matching with Invariant Features. Why extract features? Why extract features? Why extract features?

A BAYESIAN APPROACH TO NONLINEAR DIFFUSION BASED ON A LAPLACIAN PRIOR FOR IDEAL IMAGE GRADIENT

Clustering with k-means and Gaussian mixture distributions

Maximally Stable Local Description for Scale Selection

Computer Assisted Image Analysis

Outline. Supervised Learning. Hong Chang. Institute of Computing Technology, Chinese Academy of Sciences. Machine Learning Methods (Fall 2012)

A graph contains a set of nodes (vertices) connected by links (edges or arcs)

Ergodicity in data assimilation methods

MATH 423/ Note that the algebraic operations on the right hand side are vector subtraction and scalar multiplication.

Midterm exam CS 189/289, Fall 2015

Slide a window along the input arc sequence S. Least-squares estimate. σ 2. σ Estimate 1. Statistically test the difference between θ 1 and θ 2

Distributed Estimation, Information Loss and Exponential Families. Qiang Liu Department of Computer Science Dartmouth College

Descriptive Data Summarization

Affine Normalization of Symmetric Objects

Expectation Maximization Algorithm

1.1. Fields Partial derivatives

Transcription:

Lesson 04 KAZE, Non-linear diffusion filtering, ORB, MSER Ing. Marek Hrúz, Ph.D. Katedra Kybernetiky Fakulta aplikovaných věd Západočeská univerzita v Plzni Lesson 04

KAZE ORB: an efficient alternative to SIFT and SURF MSER - Maximally stable extremal regions Lesson 04 1 / 24

KAZE - wind in Japanese Classical Gaussian scale spaces used in SIFT et.al. have undesirable property of blurring the edges of images This lowers the localization precision of key-points KAZE introduces a new scheme for creating the scale-space using the Nonlinear Diffusion Filtering The NDF has a nice property of preserving the image edges NDF describes the evolution of the luminance of an image through increasing scale levels as the divergence of a certain flow function that controls the diffusion process. (WTF?!?) Lesson 04 2 / 24

Diffusion Diffusion is the net movement of molecules or atoms from a region of high concentration (or high chemical potential) to a region of low concentration (or low chemical potential). NDF is normally described by nonlinear partial differential equations L = div (c (x, y, t) L) (1) t L is the luminance function (the image) div is the divergence operator c(x, y, t) is a conductivity function Lesson 04 3 / 24

Divergence In vector calculus, divergence is a vector operator that produces a signed scalar field giving the quantity of a vector field s source at each point Lesson 04 4 / 24

Divergence In vector calculus, divergence is a vector operator that produces a signed scalar field giving the quantity of a vector field s source at each point div F(p) = lim V {p} S(V ) F n ds (2) V Lesson 04 5 / 24

Divergence div F(p) = lim V {p} S(V ) F n ds (3) V div F(p) = F = ( x, y, ) (U, V, W ) = U z x + V y + W z (4) Lesson 04 6 / 24

Perona and Malik Diffusion Eq. Nonlinear diffusion filtering was introduced in 1990 L t = div (c (x, y, t) L) Perona and Malik proposed to make the conductivity function c dependent on the gradient magnitude c(x, y, t) = g ( L σ (x, y, t)) σ is the blurring parameter - variance of Gaussian More functions have been proposed, KAZE uses: ) g = exp ( Lσ 2 k 2 k is the contrast parameter empirical or estimated Lesson 04 7 / 24

Additive Operator Splitting No analytical solution for PDEs - we need a numerical approciamtion = AOS Lets assume a 1-D case ( ( ) u t = div u σ g x u x ) = ( g ( u σ x x ) u x ) (5) The simplest approximation is u k+1 i ui k τ = j N(i) g k j + g k i 2h 2 ( u k j ui k ) (6) Where u is the image i, j are the locations, τ is the time difference, h is the grid size, k is the time, N(i) is the neighbourhood of location i Lesson 04 8 / 24

Notation Gradient is approximated by central differences ( ) gi k = g 1 u k p uq k 2 (7) 2 2h p,q N(i) The matrix notation: uk+1 u k And matrix A has entries: τ = A(u k )u k This yields a set of linear equations which can be solved Lesson 04 9 / 24

Scheme By arranging the expression we obtain u k+1 = ( I + τa(u k ) ) u k This is the explicit scheme (restrictions on step size => slow) KAZE uses so-called semi-explicit scheme which is uk+1 i ui k τ = A(u k )u k+1 ( I τa(u k ) ) u k+1 = u k which has no explicit solution We have to solve as: u k+1 = ( I τa(u k ) ) 1 u k (8) In the KAZE paper notation: L i+1 = ( I τ m l=1 A l(l i ) ) 1 L i Thu sum in the expression reflects that there are more direction in an image Lesson 04 10 / 24

KAZE scale space, detector, descriptor Contrast parameter k: 70% percentile of the gradient histogram of a smoothed version of the original image Scale σ: has octaves and sub-levels as SIFT σ i (o, s) = σ 0 2 o+s/2 Time step t: is a mapping from scale t i = 1 2 σ2 i Detector as in SIFT Descriptor as in SURF Lesson 04 11 / 24

Comparison of scale-spaces Lesson 04 12 / 24

Comparison of scale-spaces Lesson 04 13 / 24

Example of filtered image Lesson 04 14 / 24

ORB: an efficient alternative to SIFT and SURF SIFT and SURF - impose large computational burden (speed and energy) ORB - Oriented FAST and Rotated BRIEF FAST - Features from Accelerated Segment Test - paper Machine learning for high-speed corner detection in 2006, revisited in 2010 BRIEF - Binary Robust Independent Elementary Features - paper BRIEF: Binary Robust Independent Elementary Features in 2010 Lesson 04 15 / 24

FAST Algorithm for keypoint detection: Select a pixel p with intensity I p Select appropriate threshold t Consider a circle of 16 pixels around the pixel under test A point p is an interest point (in this case a corner) if there are n contiguous pixels brighter than I p + t or darker than I p t High-speed test - check only 4 pixels (1, 9, 5, 13), if at least 3 are brighter/darker Lesson 04 16 / 24

BRIEF It is a binary descriptor of interest points It selects pairs of pixels of a smoothed image around an interest point and compares them binary If I (p) < I (q) then the result is 1, else it is 0 The selection of the pixel pairs will be explained later (details also in the paper) Based on the number of pixel pairs an n-dimensional binary feature vector is obtained which serves as the descriptor of the interest point Distance of the descriptors is calculated as a Hamming distance (which is a XOR operator and bit count) Lesson 04 17 / 24

Oriented FAST The location of keypoints is detected using FAST-9 algorithm (circular radius of 9 px) Since FAST has large response on edges the ofast computes a Harris corner measure for each keypoint The keypoints are ordered according to this measure of cornerness Furthermore a pyramid of the image is built and thus multi-scale FAST keypoints are detected N best keypoints are considered (N is defined by the user) Lesson 04 18 / 24

Oriented FAST - Orientation computation Orientation is computed as intensity centroid m pq = x,y x p y q I (x, y) (9) C = ( m10, m ) 01 m 00 m 00 (10) A vector from corner s center O to the intensity centroid C is computed the orientation is simply: θ = atan2(m 01, m 10 ) (11) To obtain better results the C is computed only from pixels in a circular region with radius r Lesson 04 19 / 24

Classical BRIEF - details A test is defined over a smoothed image patch p of size S S as: { 1 : p(x) < p(y) τ(p; x, y) = (12) 0 : p(x) p(y) Binary feature vector (descriptor) is constructed as f n (p) = 2 i 1 τ(p; x i, y i ) (13) 1 i n How to choose the pairs of pixel for the test τ? The pixels x and y are sampled independently from a Gaussian distribution centered on the analyzed patch center with a variance of 1 25 S2 The smoothing is achieved using an integral image, where each test point is a 5 5 sub-window of a 31 31 pixel patch Lesson 04 20 / 24

Steered BRIEF Steered BRIEF respect the found orientation θ We define a matrix S to represent the binary tests ( ) x1,..., x S = n y 1,..., y n Using the patch orientation θ we construct a rotation matrix R θ [ ] cos θ sin θ R θ = sin θ cos θ New test locations are computed as (14) (15) S θ = R θ S (16) In praxis the test locations are pre-generated Orientations are discretized into 12 degree regions The pre-generated test locations are pre-computed into the 360/12 = 30 different orientations and stored into a look-up-table Lesson 04 21 / 24

rbrief - rotation aware BRIEF Experiments show that Steered BRIEF generate descriptors that are highly correlated (unwanted!) To recover from this an algorithm which yields rbrief is presented: Enumerate all possible binary tests (in their case it s 205590 tests) Take a lot of images, detect keypoints and run each test against all training patches Order the tests by their distance from a mean of 0.5, forming a vector T Greedy search: Put the first test into the result vector R and remove it from T Take the next test from T and compare it against all tests in R. If its absolute correlation is greater than a threshold, discard it; else add it to R Repeat the previous step until there are 256 tests in R. If there are fewer than 256, raise the threshold and try again Lesson 04 22 / 24

MSER - Maximally stable extremal regions Image I is a mapping I : D Z 2 S. External region can be defined if: 1. S is fully ordered 2. adjacency exists A D D Region Q is a connected subset from D - for every p, q Q there exists a sequence p, a 1, a 2,..., a n, q which fulfilsl paa 1, a 1 Aa 2,..., a n Aq (Outer) boundary of a region is defined Q = {q D\Q : p Q : qap} Extremal region Q D is a region which fulfills that for every p Q, q Q : I (p) > I (q) or I (p) < I (q) Maximally stable extremal region (MSER). Let Q 1,..., Q i 1, Q i,... be a sequence of nested extremal regions (ie. Q i Q i+1 ). Extremal region Q i is maximally stable if: q(i) = Q i+ \Q i Q i has a local minimum in i (. means cardinality). S is the parameter of the method. Lesson 04 23 / 24