LoslegenKostenlos loslegen

Dominante Farben anzeigen

Wir haben das folgende Bild mit der Funktion imread() aus der Klasse image von matplotlib geladen.

Um die dominanten Farben anzuzeigen, wandel die Farben der Cluster-Zentren zunächst in ihre Rohwerte um und skaliere sie dann in den Bereich 0–1, mit der folgenden Formel: converted_pixel = standardized_pixel * pixel_std / 255

Die RGB-Werte sind in einem DataFrame batman_df gespeichert. Die skalierten RGB-Werte stehen in den Spalten scaled_red, scaled_blue und scaled_green. Die Cluster-Zentren sind in der Variablen cluster_centers gespeichert und wurden mit der Funktion kmeans() mit drei Clustern erzeugt.

Diese Übung ist Teil des Kurses

Cluster Analysis in Python

Kurs anzeigen

Anleitung zur Übung

  • Ermittle die Standardabweichungen jeder Farbe aus dem DataFrame und speichere sie in r_std, g_std, b_std.
  • Wandle für jedes Cluster-Zentrum die standardisierten RGB-Werte in skalierte Werte im Bereich 0–1 um.
  • Zeige die Farben der Cluster-Zentren an.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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()
Code bearbeiten und ausführen