how to define the starting point in gmmdistribution

2 vues (au cours des 30 derniers jours)
Niraj
Niraj le 4 Oct 2013
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

Réponse acceptée

kittu
kittu le 7 Oct 2013
Modifié(e) : kittu le 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 commentaire
Niraj
Niraj le 7 Oct 2013
Thanks for the answer. But how do I generate this vector? Please reply.

Connectez-vous pour commenter.

Plus de réponses (1)

kittu
kittu le 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!

Translated by