how to define the starting point in gmmdistribution

2 views (last 30 days)
Hi, I do not want to use the random sample as a starting point in gmmdistribution. Rather i want to define my initial guess. But when i am trying to do as per Mathworks instructions,it gives me erro. This is what my situation is:
  • pixelList is 40*2 matrix
  • k is equal to 2
C is a 2*2 integer matrix with initial guess. I believe,since i am fitting 2 clusters,i should define 2 starting points.Right?
ob = gmdistribution.fit(pixelList,k,'Start',C,'Options',options,'Regularize',1e-5);
It gives me error:
Error using gmcluster (line 158)
'Start' must be 'randSample', a struct or a vector of integers.
Error in gmdistribution.fit (line 174)
[S,NlogL,optimInfo] =...
Please reply and help

Accepted Answer

kittu
kittu on 7 Oct 2013
Edited: kittu on 7 Oct 2013
In your case the 'Start' should be a vector of 40 entries. These vector points define whether the corresponding pixel value is in cluster 1 or cluster 2. So it would look something like [1,2,2,1,2,1,2,1,2,1...]
  1 Comment
Niraj
Niraj on 7 Oct 2013
Thanks for the answer. But how do I generate this vector? Please reply.

Sign in to comment.

More Answers (1)

kittu
kittu on 7 Oct 2013
you can generate this vector for instance by using Kmeans.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!