def nbColors(img, contour): lesion = cv2.cvtColor(img, cv2.COLOR_BGR2HSV) lesion = Caracteristics.extractLesion(lesion, contour) lesion, centers = Preprocess.KMEANS(lesion, K=7) distances = np.array([]) for i in range(0, len(centers) - 1): for j in range(i + 1, len(centers)): center = centers[i] center2 = centers[j] r = (float(center[0]) - float(center2[0]))**2 + (float( center[1]) - float(center2[1]))**2 + (float(center[2]) - float(center2[2]))**2 d = math.sqrt(r) distances = np.append(distances, d) # for i, center in enumerate(centers): # for j, center2 in enumerate(centers): # if(i != j): # r = (float(center[0])-float(center2[0]))**2 + (float(center[1])-float(center2[1]))**2 + (float(center[2])-float(center2[2]))**2 # d = math.sqrt(r) # distances = np.append(distances, d) s = np.sum(distances) print(s) # cv2.imshow('nb colors', lesion) return s