Right now we are exploring alternatives to k-means for segmentation. We
are primarily looking at the mean-shift algorithm and a graph based
approach. Both are explained well in these slides:
Using k-means with our algorithm
We currently have an idea how to assist k-means segmentation with basic
object recognition, but we're not sure how we will do that with the
graph based approach or mean shift. With k-means, at each iteration we
loop through all the pixels and decide whether to put them in a certain
cluster. Normally this is done simply by finding the closest cluster to
the pixel in feature-vector space. But if we make estimates at each
iteration on what object the cluster corresponds to, then we can also
weigh in the likelihood that the pixel belongs to that object.
For example, let's say we want to find the probability that pixel p
belongs in cluster A, given that we estimate the following probabilities
for what object cluster A corresponds to
Cluster A:
Label Probability
Apple 30%
Strawberry 20%
Raspberry 10%
We will use marginalization to find the likelihood that pixel p belongs to cluster A
P (p is in cluster A) = P(p is part of an apple | cluster A is an apple) * P (cluster A is an apple)
+ P(p is part of a strawberry | cluster A is a strawberry) * P (cluster A is a strawberry)
+ P(p is part of a raspberry | cluster A is a raspberry) * P (cluster A is a raspberry)
If this probability is high, then we are more likely to put p in cluster
A, even if the feature vector distance to the current mean of A is not
the minimum.
Using other approaches for segmentation with our algorithm
With the mean-shift and graph based approaches, it isn't exactly clear
yet how we will incorporate labeling guesses in assisting the
segmentation. However, we do want to explore these other methods before
we commit to using k-means.
Graph based approach (in more detail)
Velu, how do you plan on computing P(p is part of an apple)?
ReplyDeleteWhat we are going to do will evolve over time and become more complicated, but right now we are planning to use histogram comparisons. We will talk about this in more detail in the next blog post.
Delete