Example #1
0
def means(contours, prev):
  X = []
  means = []
  clusters = {}
  for contour in contours:
    M = moments(contour)
    try:
      X.append((M['m10']/M['m00'],M['m01']/M['m00']))
    except ZeroDivisionError:
      print 'ZERO!'
  if len(X) >= 2:
    means, clusters = kcluster.cluster(np.asarray(X), ROBOTS_COUNT, np.asarray(prev))

  return means, clusters
Example #2
0
def means(contours, prev):
  X = []
  means = []
  clusters = {}
  for contour in contours:
    M = moments(contour)
    try:
      centre = (M['m10']/M['m00'],M['m01']/M['m00'])
      X.append(centre)

    except ZeroDivisionError:
      print 'ZERO!'
  if len(X) >= 2:
    means, clusters = kcluster.cluster(np.asarray(X), ROBOTS_COUNT, np.asarray(prev))
    #km = KMeans(n_clusters = ROBOTS_COUNT,n_init=1, verbose=1, init=np.asarray(prev)).fit(np.asarray(X))
    #means = km.cluster_centers_
    #labels = km.labels_
    #clusters = cluster_points(X,labels)
    
  return means, clusters