SIOX - Simple Interactive Object Extraction
===========================================

0.) Introduction
1.) Purpose of SIOX
2.) Design
3.) Using SIOX
4.) Further Documentation

0.) Introduction
----------------

This package contains a prerelease of the SIOX plug-in for the GIMP 2.2 (http://www.gimp.org). SIOX stands for "Simple Interactive Object Extraction" and is a solution for extracting foreground from still images with little user interaction. The underlying method is quick, noise and motion blur robust and can also be used for the segmentation of objects in videos. SIOX is free (GNU GPL) and is currently being integrated as a core feature into the GIMP 2.4. 

Since the integration of SIOX into GIMP 2.4 is still in progress we have developed this GIMP plug-in that gives a preliminary impression of SIOX.

Please check "http://developer.gimp.org/NEWS" for the current integration status.

1.) Purpose of SIOX
-------------------

Editing images with cut and paste is an essential part of daily image manipulation work. Until now, selecting a specific object from a natural scene - for example the horse that stands on a meadow, the child that plays in a garden, or the blossom of a tree - mostly meant tedious manual border finding with the mouse. SIOX allows a user to extract most objects with very few clicks. The only interaction needed to extract an object is the specification of the region of interest and a few representative foreground samples. Usually, only a few pixels of the resulting segmentation have to be corrected manually.

2.) Design
----------

SIOX is a generic segmentation engine which originates from E-Chalk (http://www.echalk.de) where an instructor standing in front of an electronic chalkboard is segmentated. It can be used for video as well as still-image segmentation. The integration of SIOX into a powerful graphic application
such as GIMP allows a combination with other tools thus making it even more effective. GIMP's plug-in API, however, has several technical restrictions 
that do not allow for optimal user interaction. One of the biggest disadvantages being that the plug-in does not provide a possibility to interactively improve the result by adding further foreground or background samples. Please refer to "docs/faq.html" for further information. We recommend to read all the provided documentation before trying the plug-in, because the user interface is still not as intuitive as it could be.

3.) Using SIOX
--------------

For instructions on compilation and installation see "INSTALL". 

For a more detailed description on the use of the plug-in see "http://www.siox.org".

- Once the plug-in is installed, start the GIMP and open an image. The plug-in takes any RGB(A) image. Gray-scale images do not work. Index-color images (such as GIF) have to be converted to RGB(A) first. However, due to the color reduction the foreground extraction may not be optimal.
- Run the plug-in by right-clicking on the image and from the "Filters/Misc/" menu select "foreground-extraction". 
- Once the SIOX plug-in has started, a dialog appears showing a scaled version of the image. Use your mouse to create rectangular selections in this preview image.
- Please drag a rectangular area to specify the region of interest. The region of interest must contain the entire object and as few background as possible. Click the button "Apply Selection".
- For better results, you must specify one or more representative subsets of the foreground object. These regions must not contain any background pixels. After each selection of a foreground sample, click the "Apply Selection" button. In most cases one or two should be enough, use more for really tricky images.
- To start object extraction, click the "OK" button. Depending on your hardware, the image size, and the image complexity (entropy), the result will be given in a few seconds.

SIOX sets all pixels considered background to transparent. If the segmentation result is not what it should be like, you may try a new extraction with modified advanced settings. Some images are hard to segmentate. Please see the FAQ at "http://www.siox.org for" further details.

4.) Further Documentation
-------------------------

The most recent documentation can always be found at "http://www.siox.org". 

A scientific description and discussion of the algorithm along with a detailed benchmark comparison is available in:
G. Friedland, K. Jantz, L. Knipping, R. Rojas: "Image Segmentation by Uniform Color Clustering -- Approach and Benchmark Results", 
Technical Report B-07-05, Institut fuer Informatik, Freie Universitaet Berlin. 
Available under at: "http://www.inf.fu-berlin.de/inst/pubs/tr-b-05-07.pdf"
