Advertisement
Guest User

Untitled

a guest
Oct 19th, 2018
70
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.19 KB | None | 0 0
  1. def cut(image):
  2. dim_x, dim_y, colors = image.shape
  3. current_split = colors_center
  4. previous_split = [[0, 0, 0] for i in range(len(curr))]
  5.  
  6. while (current_split != previous_split):
  7. A = [set() for i in range(len(curr))]
  8. #
  9. A[-1] = {(i, j) for i in range(dim_x) for j in range(dim_y)}
  10. for i in range(dim_x):
  11. for j in range(dim_y):
  12. current_pixel_cluster = -1;
  13. current_pixel_cluster_distance = dist(image[i, j], current_cluster[current_pixel_cluster])
  14. for k in range(len(colors_center))
  15. if (dist(image[i, j], current_split[k]) < current_pixel_cluster_distance):
  16. current_pixel_cluster = k
  17. current_pixel_cluster_distance = dist(image[i, j], current_split[k])
  18. flip(i, j, A[-1], A[current_pixel_cluster])
  19.  
  20. previous_split = current_split
  21. for i in range(len(colors_center)):
  22. tmp_sum = [0, 0, 0]
  23. for x in A[i]:
  24. tmp_sum += image[x[0], x[1]]
  25. tmp_sum /= len(A[i])
  26. current_split[i] = tmp_sum
  27.  
  28. return A, B
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement