Foreground Extraction Using “GrabCut”

Download Report

Transcript Foreground Extraction Using “GrabCut”

A Gimp Plugin that uses
“GrabCut” to perform image
segmentation
Project Proposal and
Overview
By: Matthew Marsh
What is Image Segmentation?
Divides an image into parts
Easy for humans
Non Trivial for Computers
3 Types of Segmentation
– Thresholding
– Edge Based
– Region Based
An Alpha Matte
All Segmentation Techniques Create an
alpha matte
– This is just a labeling of pixels
– Some methods allow an alpha value between
0 and 1
Origional Image
Alpha Matte Created
After Segmentation
Previous Approaches to
Segmentation
Magic Wand
– User specifies point
– Segmentation based on variable
tolerance level of color statistics.
Intelligent Scissors
– User Draws minimum cost contour
– Various seed points
– Not effective for highly textured areas
e.g long strands of hair
“GrabCut”
Innovative – uses
region and edge
information
Also performs border
matting
Based upon graph cut
Graph cut
For greyscale images
Cost function which depends on Edge and
Region Information
Minimize cost function to obtain best cut
Cost function in minimized by a Max Flow
Algorithm
How Graph Cut Works
To perform segmentation the user
provides ‘seeds’
Pixels labeled as definitely background or
foreground (Hard constraints)
Cost function defined by boundary and
rejoin properties (Soft constraints)
Cutting along the path of least cost
produces best segmentation
Graph cut
How “GrabCut” extends graph cut
Uses GMMs to work with colour images
Alows an iterative approach to
segmentation
Adds Border Matting
“GrabCuts” Interactive Approach to
Segmentation
Initial Selection
Refinement
Final Segmentation
My Project
A Gimp Plugin Using “GrabCut”
Initial Simplifications:
– Use Graph cut approach
– No Max flow algorithm
Later Add:
– Max flow algorithm
– Color functionality using GMMS
– Border matting