Image Segmentation. Ross Whitaker SCI Institute, School of Computing University of Utah

Similar documents
Image Segmentation. Ross Whitaker SCI Institute, School of Computing University of Utah

Image Segmentation. Srikumar Ramalingam School of Computing University of Utah. Slides borrowed from Ross Whitaker

Norbert Schuff VA Medical Center and UCSF

Image Analysis Lecture Segmentation. Idar Dyrdal

Bioimage Informatics

Image Segmentation. Selim Aksoy. Bilkent University

C E N T E R A T H O U S T O N S C H O O L of H E A L T H I N F O R M A T I O N S C I E N C E S. Image Operations II

Image Segmentation. Selim Aksoy. Bilkent University

CS 534: Computer Vision Segmentation and Perceptual Grouping

Image Processing, Analysis and Machine Vision

ECG782: Multidimensional Digital Signal Processing

Feature Extractors. CS 188: Artificial Intelligence Fall Nearest-Neighbor Classification. The Perceptron Update Rule.

Feature Extraction and Image Processing, 2 nd Edition. Contents. Preface

COMPUTER AND ROBOT VISION

EE795: Computer Vision and Intelligent Systems

Fundamentals of Digital Image Processing

EECS490: Digital Image Processing. Lecture #17

Features. Places where intensities vary is some prescribed way in a small neighborhood How to quantify this variability

Applications. Foreground / background segmentation Finding skin-colored regions. Finding the moving objects. Intelligent scissors

Segmentation and Grouping

Topic 6 Representation and Description

EE 701 ROBOT VISION. Segmentation

Lecture: Segmentation I FMAN30: Medical Image Analysis. Anders Heyden

Albert M. Vossepoel. Center for Image Processing

Introduction to Medical Imaging (5XSA0) Module 5

Clustering & Classification (chapter 15)

CS 664 Segmentation. Daniel Huttenlocher

CHAPTER 1 Introduction 1. CHAPTER 2 Images, Sampling and Frequency Domain Processing 37

Digital Image Processing

Image Processing. Bilkent University. CS554 Computer Vision Pinar Duygulu

Mathematical Morphology and Distance Transforms. Robin Strand

Filters. Advanced and Special Topics: Filters. Filters

Segmentation tools and workflows in PerGeos

Babu Madhav Institute of Information Technology Years Integrated M.Sc.(IT)(Semester - 7)

Case-Based Reasoning. CS 188: Artificial Intelligence Fall Nearest-Neighbor Classification. Parametric / Non-parametric.

CS 188: Artificial Intelligence Fall 2008

Combining Top-down and Bottom-up Segmentation

Region-based Segmentation

Carmen Alonso Montes 23rd-27th November 2015

CHAPTER 6 DETECTION OF MASS USING NOVEL SEGMENTATION, GLCM AND NEURAL NETWORKS

Variational Methods II

CITS 4402 Computer Vision

MRI Brain Image Segmentation Using an AM-FM Model

Filtering Images in the Spatial Domain Chapter 3b G&W. Ross Whitaker (modified by Guido Gerig) School of Computing University of Utah

identified and grouped together.

2: Image Display and Digital Images. EE547 Computer Vision: Lecture Slides. 2: Digital Images. 1. Introduction: EE547 Computer Vision


Object-Based Classification & ecognition. Zutao Ouyang 11/17/2015

VC 10/11 T9 Region-Based Segmentation

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

Image Segmentation Based on Watershed and Edge Detection Techniques

Norbert Schuff Professor of Radiology VA Medical Center and UCSF

Chapter 11 Representation & Description

morphology on binary images

09/11/2017. Morphological image processing. Morphological image processing. Morphological image processing. Morphological image processing (binary)

Edges and Binary Image Analysis April 12 th, 2018

Unsupervised Learning: Clustering

Snakes, level sets and graphcuts. (Deformable models)

Today INF How did Andy Warhol get his inspiration? Edge linking (very briefly) Segmentation approaches

CoE4TN4 Image Processing

A Case Study on Mathematical Morphology Segmentation for MRI Brain Image

[ ] Review. Edges and Binary Images. Edge detection. Derivative of Gaussian filter. Image gradient. Tuesday, Sept 16

Segmentation of Images

Morphological Technique in Medical Imaging for Human Brain Image Segmentation

EE 584 MACHINE VISION

Region & edge based Segmentation

6. Object Identification L AK S H M O U. E D U

DIGITAL IMAGE ANALYSIS. Image Classification: Object-based Classification

Applying Catastrophe Theory to Image Segmentation

Image Segmentation Techniques for Object-Based Coding

Engineering Problem and Goal

Bayes Risk. Classifiers for Recognition Reading: Chapter 22 (skip 22.3) Discriminative vs Generative Models. Loss functions in classifiers

Previously. Edge detection. Today. Thresholding. Gradients -> edges 2/1/2011. Edges and Binary Image Analysis

NIH Public Access Author Manuscript Proc Soc Photo Opt Instrum Eng. Author manuscript; available in PMC 2014 October 07.

Clustering CS 550: Machine Learning

Classifiers for Recognition Reading: Chapter 22 (skip 22.3)

ECEN 447 Digital Image Processing

Image segmentation. Stefano Ferrari. Università degli Studi di Milano Methods for Image Processing. academic year

Processing of binary images

Chapter 9 Morphological Image Processing

Dietrich Paulus Joachim Hornegger. Pattern Recognition of Images and Speech in C++

Review on Different Segmentation Techniques For Lung Cancer CT Images

REGION & EDGE BASED SEGMENTATION

Contours & Implicit Modelling 1

Normalized cuts and image segmentation

Robotics Programming Laboratory

Binary Image Processing. Introduction to Computer Vision CSE 152 Lecture 5

Morphological Image Processing

Grouping and Segmentation

Bipartite Graph Partitioning and Content-based Image Clustering

From Pixels to Blobs

Impact of Intensity Edge Map on Segmentation of Noisy Range Images

Image Segmentation and Registration

Tumor Detection and classification of Medical MRI UsingAdvance ROIPropANN Algorithm

Detection of Edges Using Mathematical Morphological Operators

Introduction to Medical Imaging (5XSA0)

Multi-scale Techniques for Document Page Segmentation

Edges and Binary Images

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

Image Analysis Image Segmentation (Basic Methods)

Transcription:

Image Segmentation Ross Whitaker SCI Institute, School of Computing University of Utah

What is Segmentation? Partitioning images/volumes into meaningful pieces Partitioning problem Labels Isolating a specific region of interest ( find the star or bluish thing ) Delineation problem Binary

Why? Detection/recognition Where is the vehicle? What type of vehicle is it? Quantifying object properties How big is the tumor? Is is expanding or shrinking? How much of a radiation do I need to treat this prostate? Statistical analyses of sets of biological volumes

What is The Best Way to Segment Images? Depends Kind of data: type of noise, signal, etc. What you are looking for: shape, size, variability Application specifics: how accurate, how many State of the art Specific data and shapes Train a template or model (variability) Deform to fit specific data General data and shapes So many methods So few good ones in practice: hand contouring

Hand Contouring Quick and easy general-purpose seg tool Time consuming 3D: slice-by-slice with cursor defining boundary User variation (esp. slice to slice) Tools available. E.g. Harvard SPL Slicer

General Purpose Segmentation Strategies Region-based methods (connected) Regions are locally homogeneous (in some property) Regions satisfy some property (to within an tolerance) E.g. Flood fill Edge-based methods Regions are bounded by features Features represent sharp contrast in some property (locally maximal constrast) E.g. Canny Edges

Pixel Classification Simplest: Thresholding Pixels above threshold in class A, below class B Connected components on class label Extension of thresholding > pattern recognition Image intensities not enough Define set of features at each pixel

Options for Pixel Features Intensity Derivatives (at different scales) Also differential invariants (e.g. grad mag) Neighborhood statistics Mean, variance Neighborhood histogram Texture (e.g. band-pass filters) Multivariate data (vector-valued range) Color Spectral MRI

Spectral MRI Classification T1, T2, PD Feature Space Classification Tasdizen et al.

Pattern Recognition Relatively old idea (mid 20th century) Classify an instance based on multiple measurements (features) Statistical decision theory (min. prob. of error) For each set of measurements say which class and (maybe) prob.

Concept Feature Vector Set of measurements Position in feature space Domain Range (Feature Space)

Classification Typical approach: construct a function which tells you the extent to which x is in class I Two types of problems Supervised classified examples are given Unsupervised - only raw data is given

Pattern Recognition What is the form of f()? Could be anything, but Linear Difference of Gaussians *homogeneous coordinates

Finding f() From Examples For each class use prototype Classify instance based on nearest prototype x Neural nets (e.g. perceptron) Learn set of parameters (e.g. Ws) through many examples Statistical Construct probability density functions from examples

Unsupervised Find natural structure in data E.g. clusters K-means alg. Start with k centers (random) Find set of points closest to each center Move center to mean of points Repeat until centers don t move

Hierarchical Grouping Methods Splitting, merging of regions Construct metric on region configurations M(i) Small regions E.g. pixels Statistics of region (average intensity, etc). Are two regions similar enough to be merged? Should they be split? Each node <-> region Larger regions Higher cost

Simple Merging Alogoritm 1. Each pixel -> one region 2. For each region, check merge with each neighbor 3. Cost of merge C(i,j) = M(iUj) - [M(i) + M(j)] + k 4. Sort by cost (e.g. heap) and merge min: region j <- iuj 5. Stop at number of regions or no more merges

Minimum Cut (Shi and Malik `00) Treat image as graph Vertices -> pixels Edges -> neighbors Must define a neighborhood stencil (the neigbhors to which a pixel is connected) Nieghborhood connections Weighted Edges Image Graph

Minimum Cut Edge Weights Edge weights Pixel distance, edges (e.g. Gaussian fall off) Say how many regions you want Cut graph so that flow between regions is minimized (min cut) Min cut

Minimum Cut Solving NxN matrix (N number of pixels) Min eigen value/vector discribes min cut Computationally expensive, but Matrix is sparse because of neighborhood structure I.e. most connections are zero Run recursively to get more regions

Boundary Function (e.g. grad. mag.) Watershed Segmentation Catchment Basin Watershed Regions Generalizes to any dimension or boundary measure

Watershed Segmentation Boundary Function Threshold Watershed Regions Hierarchy

Watershed Saliency Height of water before flooding neighbor Used as cost of merge to build hiearchy Watershed height

Watershed Segmentation Properties General Non-local regions can leak Boundary based Poor in low-contrast data Sensitive to noise Low level (pixel based) Lack of shape model Preprocessing Necessary for reliable boundary measure

Edge/Region-Based Segmentation Pipeline Noise Filtering/smoothing Image/Volume Data Inhomogeneities Correct for them Model them Use edges (local) Filtering Linear scale-space Nonlinear diffusion Feature Extraction Differential Geometry Data Fusion Analysis Build Atlases Analize Variation Segmentation Watersheds Deformable model

Anisotropic Diffusion Raw cryosection data Filtering by anisotropic diffusion

Color Edge Detection Boundary Function Before Filtering After Filtering

Watershed Segmentation Level 1

Watershed Segmentation Level 2

Watershed GUI (Cates `05) Watershed transform Data with overlay Segmentation in progress Sliders manipulate watershed depth and position in the hierarchy. 3D isosurface rendering Watershed Depth Threshold

Interactive Watershed Segmentation

Deformable Model Object segmentation Define a curve that aligns itself with image features to delineate an object Issues: What features? How to represent curve? How does it become aligned with data?

Active Contours ( Snakes ) Cass, Witkin, Terzopoulos 87 Curve Tangent vector Define fitting energy Attraction to features Membrane energy (shrink) Thin-plate energy (stiff) Minimize/grad. descent -> deformable contour

Snakes: Motion First variation gives motion Snake slides downhil on feature image while trying to be smooth Model is attracted to features Model stays smooth

Snakes: Computation Represent curve as polyline Approximate derivatives as finite differences Update with forward differences in time C5 C1 C2 C4 C3

Snakes: Example

Deformable Models Spawned many new ideas in segmentation and surface processing Extensions that include: Many different kinds of features Combined with statistical classification Spectral/color data 3D surfaces segmentation and processing Changing topology (split/merge objects) Ties into other PDE-based image processing Other curve/surface

Morphological Image Processing Serra 1980s Mathematical Morphometry Basic mathematical operations > theory + algorithms Binary images > greyscale Filtering, segmentation, feature detection

Morphometry Concepts Sets in images: Regions of value 1 (everything else is 0) Basic operations Intersection, union, subtraction, complement A A A A B B B B

Morphometry Concepts Translation of set to point z B(z) Reflection of set B Dilation of A by B: Makes objects bigger Erosion of A by B: Makes objects smaller

Opening and Closing B - Structuring Element Opening Generally smoothing by removing material Closing Generally smoothing by adding material Idempotent

General Concepts For smoothing B is normally round Discrete implementation is easy Dilations of A with B tend to make the result look at little more like B (B convex and normalize for size) Openings remove small pieces and connections Closings fill in holes and gaps

Morphological Filtering Thresholding for segmentation white matter of the brain from MRI

Circular Structuring Element Opening Closing Note: lots of options for choosing elements.

Circular Structuring Element Opening Closing

Oriented Structuring Elements Opening

Oriented Structuring Elements Combine with union and close with

Other Useful Algorithms Connected components Find all of the pixels (in A) that are connected to a point (in A) via a 4 or 8 connected path in the set A. Flood fill Change values of a connected component

Applications Work on segmented (e.g. thresholded) regions in images Fill in holes Remove small, isolated pieces (or connections) Smooth boundaries