how to define the starting point in gmmdistribution

2 visualizzazioni (ultimi 30 giorni)
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

Risposta accettata

kittu
kittu il 7 Ott 2013
Modificato: kittu il 7 Ott 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 Commento
Niraj
Niraj il 7 Ott 2013
Thanks for the answer. But how do I generate this vector? Please reply.

Accedi per commentare.

Più risposte (1)

kittu
kittu il 7 Ott 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!

Translated by