how to define the starting point in gmmdistribution

3 次查看(过去 30 天)
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

采纳的回答

kittu
kittu 2013-10-7
编辑:kittu 2013-10-7
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 个)

kittu
kittu 2013-10-7
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