CommencerCommencer gratuitement

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

Afficher le cours

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()
Modifier et exécuter le code