Implementing the By: Matthew Marsh Supervisors: Prof Shaun Bangay Mrs Adele Lobb segmentation technique as a plugin for the GIMP.

Slides:



Advertisements
Similar presentations
New Segmentation Technique
Advertisements

Convolution. Why? Image processing Remove noise from images (e.g. poor transmission (from space), measurement (X-Rays))
Change Detection C. Stauffer and W.E.L. Grimson, “Learning patterns of activity using real time tracking,” IEEE Trans. On PAMI, 22(8): , Aug 2000.
SOFT SCISSORS: AN INTERACTIVE TOOL FOR REALTIME HIGH QUALITY MATTING International Conference on Computer Graphics and Interactive Techniques ACM SIGGRAPH.
Cutting Images: Graphs and Boundary Finding Computational Photography Derek Hoiem, University of Illinois 09/15/11 “The Double Secret”, Magritte.
Graph cut Chien-chi Chen.
Introduction to compositing. What is compositing?  The combination of two images to produce a single image  Many ways we can do this, especially in.
Presenter : Kuang-Jui Hsu Date : 2011/5/12(Tues.).
EDGE DETECTION ARCHANA IYER AADHAR AUTHENTICATION.
Learning Techniques for Video Shot Detection Under the guidance of Prof. Sharat Chandran by M. Nithya.
I Images as graphs Fully-connected graph – node for every pixel – link between every pair of pixels, p,q – similarity w ij for each link j w ij c Source:
Automatic Histogram Threshold Using Fuzzy Measures 呂惠琪.
LING 111 Teaching Demo By Tenghui Zhu Introduction to Edge Detection Image Segmentation.
Human Pose detection Abhinav Golas S. Arun Nair. Overview Problem Previous solutions Solution, details.
Stereo Matching Segment-based Belief Propagation Iolanthe II racing in Waitemata Harbour.
GrabCut Interactive Image (and Stereo) Segmentation Carsten Rother Vladimir Kolmogorov Andrew Blake Antonio Criminisi Geoffrey Cross [based on Siggraph.
GrabCut Interactive Foreground Extraction using Iterated Graph Cuts Carsten Rother Vladimir Kolmogorov Andrew Blake Microsoft Research Cambridge-UK.
A Gimp Plugin that uses “GrabCut” to perform image segmentation
Graph-Based Image Segmentation
Foreground/Background Image Segmentation. What is our goal? To label each pixel in an image as belonging to either the foreground of the scene or the.
Jue Wang Michael F. Cohen IEEE CVPR Outline 1. Introduction 2. Failure Modes For Previous Approaches 3. Robust Matting 3.1 Optimized Color Sampling.
Interactive Image Segmentation using Graph Cuts Mayuresh Kulkarni and Fred Nicolls Digital Image Processing Group University of Cape Town PRASA 2009.
Stephen J. Guy 1. Photomontage Photomontage GrabCut – Interactive Foreground Extraction 1.
Human-Computer Interaction Human-Computer Interaction Segmentation Hanyang University Jong-Il Park.
1 s-t Graph Cuts for Binary Energy Minimization  Now that we have an energy function, the big question is how do we minimize it? n Exhaustive search is.
GrabCut Interactive Image (and Stereo) Segmentation Joon Jae Lee Keimyung University Welcome. I will present Grabcut – an Interactive tool for foreground.
CS448f: Image Processing For Photography and Vision Graph Cuts.
Modeling Pixel Process with Scale Invariant Local Patterns for Background Subtraction in Complex Scenes (CVPR’10) Shengcai Liao, Guoying Zhao, Vili Kellokumpu,
Thresholding Otsu’s Thresholding Method Threshold Detection Methods Optimal Thresholding Multi-Spectral Thresholding 6.2. Edge-based.
Advanced Topics in Computer Vision Spring 2006 Video Segmentation Tal Kramer, Shai Bagon Video Segmentation April 30 th, 2006.
LYU 0102 : XML for Interoperable Digital Video Library Recent years, rapid increase in the usage of multimedia information, Recent years, rapid increase.
MRF Labeling With Graph Cut CMPUT 615 Nilanjan Ray.
Abstract Extracting a matte by previous approaches require the input image to be pre-segmented into three regions (trimap). This pre-segmentation based.
Stereo Computation using Iterative Graph-Cuts
An Iterative Optimization Approach for Unified Image Segmentation and Matting Hello everyone, my name is Jue Wang, I’m glad to be here to present our paper.
Presentation By Michael Tao and Patrick Virtue. Agenda History of the problem Graph cut background Compute graph cut Extensions State of the art Continued.
CS292 Computational Vision and Language Segmentation and Region Detection.
02/14/02(c) University of Wisconsin 2002, CS 559 Last Time Filtering Image size reduction –Take the pixel you need in the output –Map it to the input –Place.
Graph-based Segmentation
Image Segmentation Rob Atlas Nick Bridle Evan Radkoff.
Prakash Chockalingam Clemson University Non-Rigid Multi-Modal Object Tracking Using Gaussian Mixture Models Committee Members Dr Stan Birchfield (chair)
Graph-based Segmentation. Main Ideas Convert image into a graph Vertices for the pixels Vertices for the pixels Edges between the pixels Edges between.
MRFs and Segmentation with Graph Cuts Computer Vision CS 543 / ECE 549 University of Illinois Derek Hoiem 02/24/10.
Filtering and Color To filter a color image, simply filter each of R,G and B separately Re-scaling and truncating are more difficult to implement: –Adjusting.
Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 The Development of Image Completion and Tutorial Plug-ins for the GIMP By: Cathy Irwin Supervisors:
CS654: Digital Image Analysis
Author: Vera Kukić Supervisors: Shaun Bangay Adele Lobb George Wells
GIMP IMAGE PLUGINS FOR GIMP By: Vera Kukić Supervisors: Shaun Bangay and Adele Lobb.
GrabCut Interactive Foreground Extraction Carsten Rother – Vladimir Kolmogorov – Andrew Blake – Michel Gangnet.
Gaussian Mixture Models and Expectation-Maximization Algorithm.
CS654: Digital Image Analysis Lecture 28: Advanced topics in Image Segmentation Image courtesy: IEEE, IJCV.
Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 The Development of Image Completion and Tutorial Plug-ins for GIMP By: Cathy Irwin Supervisors:
Thresholding Foundation:. Thresholding In A: light objects in dark background To extract the objects: –Select a T that separates the objects from the.
AUTOMATING GRAB-CUT FOR SINGLE- OBJECT FOREGROUND IMAGES Eugene Weiss Computer Vision Stanford University December 14, 2011 Eugene Weiss
Cutting Images: Graphs and Boundary Finding Computational Photography Derek Hoiem, University of Illinois 09/20/12 “The Double Secret”, Magritte.
Plug-in and tutorial development for GIMP- Cathy Irwin, 2004 The Development of Image Completion and Tutorial Plug-ins for GIMP By: Cathy Irwin Supervisors:
Student Gesture Recognition System in Classroom 2.0 Chiung-Yao Fang, Min-Han Kuo, Greg-C Lee, and Sei-Wang Chen Department of Computer Science and Information.
Graph-based Segmentation
Basic Principles Photogrammetry V: Image Convolution & Moving Window:
Cutting Images: Graphs and Boundary Finding
GrabCut Interactive Foreground Extraction using Iterated Graph Cuts Carsten Rother Vladimir Kolmogorov Andrew Blake Microsoft Research Cambridge-UK.
Project Progress and Future Plans By: Matthew Marsh
COMP 9517 Computer Vision Segmentation 7/2/2018 COMP 9517 S2, 2017.
DIGITAL SIGNAL PROCESSING
Other Algorithms Follow Up
Graph Cut Weizhen Jing
Lecture 31: Graph-Based Image Segmentation
“grabcut”- Interactive Foreground Extraction using Iterated Graph Cuts
DIGITAL IMAGE PROCESSING Elective 3 (5th Sem.)
Presentation transcript:

Implementing the By: Matthew Marsh Supervisors: Prof Shaun Bangay Mrs Adele Lobb segmentation technique as a plugin for the GIMP

Problem statement: The open source community require a quick, easy to use segmentation tool with matting capabilities. The open source community require a quick, easy to use segmentation tool with matting capabilities. Aim: The GIMP is an open source image editing package that requires such a tool. The GIMP is an open source image editing package that requires such a tool. The GIMP allows extra tools to be added as plugins The GIMP allows extra tools to be added as plugins Implement a quick, easy to use segmentation tool with matting capabilities as a plugin for the GIMP Implement a quick, easy to use segmentation tool with matting capabilities as a plugin for the GIMP

What is image segmentation? The process of separating an image into foreground and background parts. The process of separating an image into foreground and background parts. Foreground = object of interest Foreground = object of interest Background = the rest of the image Background = the rest of the image

Image Segmentation Cont Every pixel has an alpha value, which sets its opacity Every pixel has an alpha value, which sets its opacity Image segmentation labels all foreground pixels with a full alpha value of 1, Image segmentation labels all foreground pixels with a full alpha value of 1, Background pixels labelled with a value of 0 Background pixels labelled with a value of 0 Can cause jagged edges in finely textured objects Can cause jagged edges in finely textured objects Matting smoothes these edges Matting smoothes these edges

Matting Labels pixels with alpha values between the maximum and minimum values Labels pixels with alpha values between the maximum and minimum values Creates edges which vary smoothly from background to foreground. Creates edges which vary smoothly from background to foreground. The image on the right is known as the alpha matte The image on the right is known as the alpha matte

How computers perform segmentation Information encapsulated in the digital image is used to calculate the best segmentation. Information encapsulated in the digital image is used to calculate the best segmentation. Edge detection and region detection methods are most commonly used to segment images. Edge detection and region detection methods are most commonly used to segment images. Boundary information is the edge information in an image which can be gained by noting the difference between the colours of nearby pixels. A large difference in colour will indicate an edge. Boundary information is the edge information in an image which can be gained by noting the difference between the colours of nearby pixels. A large difference in colour will indicate an edge. A region is the area enclosed by an edge, and the colours of neighbouring pixels in a region are similar. A region is the area enclosed by an edge, and the colours of neighbouring pixels in a region are similar.

“GrabCut” Need to decide on a segmentation technique Need to decide on a segmentation technique “GrabCut” has been chosen “GrabCut” has been chosen Uses both region and boundary information Uses both region and boundary information Uses new graph cut technique Uses new graph cut technique Includes a method of border matting Includes a method of border matting

How “GrabCut” Works

Clue Marking Clues are used to build up region models Clues are used to build up region models One model for foreground and one for background One model for foreground and one for background Region models determine weights between pixel and Source and Sink nodes Region models determine weights between pixel and Source and Sink nodes

Types of region models 3 types of region models have been developed 3 types of region models have been developed Greyscale histograms Greyscale histograms Gaussian Mixture Models Gaussian Mixture Models Colour histograms Colour histograms

Greyscale Histograms

Gaussian Mixture Models The 1D Gaussian Function The 2D Gaussian Function

3D Gaussians A Gaussian Mixture Model is the weighted sum of several Gaussians. A Gaussian Mixture Model is the weighted sum of several Gaussians. Encapsulate the concept of a colour Encapsulate the concept of a colour Each Gaussian is centred around a common colour in the image Each Gaussian is centred around a common colour in the image A GMM has several common colours A GMM has several common colours In this plug-in 5 Gaussians in foreground, 5 in background In this plug-in 5 Gaussians in foreground, 5 in background

Colour Histograms The sum of three histograms The sum of three histograms One histogram for each colour channel One histogram for each colour channel Thus a Red, Green and Blue histogram in RGB colour space Thus a Red, Green and Blue histogram in RGB colour space The probability of a pixel lying in the foreground region model is the sum of the probabilities of its red value lying in the red histogram, its blue in the blue etc. The probability of a pixel lying in the foreground region model is the sum of the probabilities of its red value lying in the red histogram, its blue in the blue etc.

Matting Implementation “GrabCut” adopts an approach of border matting “GrabCut” adopts an approach of border matting Assume a smooth alpha profile Assume a smooth alpha profile Defined by the sigmoid function Defined by the sigmoid function

Border Matting Windows

Segmentation Results Greyscale histograms proved to work well Greyscale histograms proved to work well Implementation is fairly fast Implementation is fairly fast Results are good Results are good GMM’s proved to be slow due to the calculation of the initial 5 Gaussians – also the initialization affected the results substantially GMM’s proved to be slow due to the calculation of the initial 5 Gaussians – also the initialization affected the results substantially Colour histograms also work well, and are basically just an extension onto greyscale histograms Colour histograms also work well, and are basically just an extension onto greyscale histograms

Segmentation results cont

Matting results Input image Matting significantly improved the segmentation results in most cases. Matting significantly improved the segmentation results in most cases. Image with matting Image without matting

Conclusion Have completed my project goal – provide open source community with a segmentation tool Have completed my project goal – provide open source community with a segmentation tool Have implemented the “GrabCut” paper and tested their claims Have implemented the “GrabCut” paper and tested their claims The “GrabCut” segmentation technique is definitely usable, and produces good results. The “GrabCut” segmentation technique is definitely usable, and produces good results.