Afficher les couleurs dominantes
Nous avons chargé l’image suivante avec la fonction imread() de la classe image de matplotlib.

Pour afficher les couleurs dominantes, convertissez les couleurs des centres de clusters en leurs valeurs brutes puis ramenez-les dans l’intervalle 0-1 à l’aide de la formule suivante :
converted_pixel = standardized_pixel * pixel_std / 255
Les valeurs RVB sont stockées dans un DataFrame, batman_df. Les valeurs RVB mises à l’échelle sont stockées dans les colonnes scaled_red, scaled_blue et scaled_green. Les centres de clusters sont stockés dans la variable cluster_centers, générés avec la fonction kmeans() avec trois clusters.
Cet exercice fait partie du cours
Analyse de clusters en Python
Instructions
- Récupérez les écarts types de chaque couleur depuis le DataFrame et stockez-les dans
r_std,g_std,b_std. - Pour chaque centre de cluster, convertissez les valeurs RVB standardisées en valeurs mises à l’échelle dans l’intervalle 0-1.
- Affichez les couleurs des centres de clusters.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Get standard deviations of each color
____, ____, ____ = batman_df[['red', 'green', 'blue']].___()
for cluster_center in cluster_centers:
scaled_r, scaled_g, scaled_b = cluster_center
# Convert each standardized value to scaled value
colors.append((
scaled_r * ____ / ____,
scaled_g * ____ / ____,
scaled_b * ____ / ____
))
# Display colors of cluster centers
plt.____(____)
plt.show()