Grid-Based Genetic Algorithm Approach to Colour Image Segmentation - - PowerPoint PPT Presentation
Grid-Based Genetic Algorithm Approach to Colour Image Segmentation - - PowerPoint PPT Presentation
Grid-Based Genetic Algorithm Approach to Colour Image Segmentation Marco Gallotta Keri Woods Supervised by Audrey Mbogho Image Segmentation Identifying and extracting distinct, homogeneous regions from an image Simplifies the image
Image Segmentation
Identifying and extracting distinct,
homogeneous regions from an image
Simplifies the image for further processing:
− shape recognition, medical imaging, face detection
Image Segmentation
Problem: How do we
segment the following?
− Each petal as a
region?
− Stigma as a region? − Group flowers as
single region?
− Segment the
background?
Human Segmentation
Segmentation
by human candidates
Results confirm
no single solution
Genetic Algorithms
Optimisation technique that works on large
search spaces
Biological evolution
Genetic Algorithms: Chromosome
Chromosome encodes a potential solution Contains parameters The chromosome is optimised using:
− mutation
crossover
Genetic Algorithms: Fitness
Fitness function evaluates an individual and
assigns a numerical value
Used to select fittest individuals for next
iteration
Crucial in producing good results
Grid Computing
A system that coordinates resources that are
not subject to centralized control
Dedicated and non-dedicated resources Multiple organisations pooling their unused
resources
Lots of computing power
Grid Computing
Problem: Segmentation
Segmentation of great importance No general method of image segmentation Wide variety of images Parameters need to be tuned to get optimal
results
Problem: Genetic Algorithms
Segmentation involves much uncertainty GA cope well with uncertainty Alter parameters to optimise segmentation
results
Problem: Computating Requirements
Image segmentation and genetic algorithms
computationally intensive
Combined VERY computationally expensive Solution?
− Work harder − Work smarter − Get help
Problem: GA For The Grid
Genetic algorithms easily parallelisable Grid supplies “free” computational resources
Problem: Research Existing Techniques
Edge detection Histogram thresholding Watershed Region based techniques Clustering techniques Model based techniques Many others
Segmentation Method Implemented
Chose to implement:
− Watershed − Region Growing − Region Merging
Watershed Transformation
Calculate a gradient magnitude image Consider this as a topographic surface Consider dropping water at each pixel and
- bserving where the trickle ends
Pixels with the same end point form a region
Watershed Transformation
(a) Example gradient magnitude image (b) The two regions that are identified
Watershed Transformation: Example
Region Growing
Start off with small regions and grow them Each iteration considers all pixels neighbouring
the regions
Pixel with the minimum δ is added to the region This continues until all pixels are assigned to a
region
Region Growing
The above method requires manual seeds To automate we introduce a threshold T If the minimum δ exceeds T then a new region
is created
Start with an arbitrary pixel as the first region
and iterate as above
Region Growing: Example
Region Merging
Initially each pixel a region Adjacent regions merged if criteria met Continue until no regions meet criteria
Merging Criterion
Merge if fusion factor less than scale parameter Fusion factor: change in heterogeneity if
regions merged
Heterogeneity: colour, compactness,
smoothness
Scale parameter controls size of resulting
regions
Region Merging: Example
Segmentation Results
- Berkeley Segmentation Dataset
- Watershed fastest
- Performance results:
58.059 Region Merging 2.106 Watershed Transformation 71.806 Region Growing Time (seconds) Segmentation
Segmentation Results
Segmentation Results
Segmentation Results
All successful but different results Effect of scale parameter on region merging
− Large scale parameter => large regions
Segmentation Results: Effect of Scale Parameter
Segmentation Results
[Can get some results off website at
http://people.cs.uct.ac.za/~mgallott/honsproj/]
Genetic Algorithm
- Modify parameters of region merging algorithm
- Scale parameter, weights of components of
heterogeneity
GA: Fitness Function
Drives evolution of chromosomes Evaluate quality of segmentation Unsupervised segmentation
− No external information − Properties of image itself
How much colour within each region varies Low fitness = good segmentation
GA: Fitness Function
For each region standard deviation multiplied
by area
Sum all regions Add 1 Multiply by number of regions
Genetic Algorithm Results
- Inconclusive
- Sometimes improvement
Genetic Algorithm Results
GA with segmentation very computationally
intensive
Unable to explore full potential Extremely slow Therefore grid
Parallel Genetic Algorithms
Two common models:
− master-slave (left) − Island model (right)
Grid Computing + Genetic Algorithms
With the Grid, communication between nodes
is expensive (“impossible” in a true Grid)
Even with communication, building a topology
for the Island model is difficult
All existing research has used the master-slave
model
Grid Model
Our model uses ideas
from both master-slave and Island models
Root node (dedicated
resource) stores a super population
No direct communication
between sub-nodes
Grid Model: Results
We were heavily restricted in testing and could
- nly test with eight nodes
Tests showed the communication overhead
had negligible impact as fitness function increased in complexity
Results were positive when testing on simple
problems
Unsuccessful at migrating the segmentation
algorithm to the Grid
Conclusion
Experimented with 3 segmentation algorithms Selected region merging for our genetic
algorithm solution
Genetic algorithm provides potential for
improvement but results inconclusive
Grid computing showed positive results
however limited resources did not allow for thorough testing
Future Work: Grid
As we only tested on
a small Grid, we never had scalability issues
Most Grids are very
large and having a single root node is a bottleneck
The next stage is to
test out a hierarchical model
Future Work: GA
Watershed with genetic algorithm Investigate different fitness functions Genetic programming to evolve fitness function
− Train for each desired application
Questions
?
http://people.cs.uct.ac.za/~mgallott/honsproj/