Les images sont très courantes sur Internet et lors du traitement des images, il est courant d’obtenir la couleur thématique de l’image. La couleur du thème fait référence à la couleur qui représente la plus grande proportion de l’image et est généralement la couleur qui représente le mieux le style général de l’image.
En tant que langage de programmation côté serveur populaire, PHP peut exploiter des images via la bibliothèque d'extensions de traitement d'images. Cet article utilise la bibliothèque tierce Intervention Image pour implémenter la fonction d'obtention de la couleur du thème de l'image.
La bibliothèque d'images d'intervention peut être installée via Composer avec la commande suivante :
le compositeur nécessite une intervention/une image
Une fois l'installation terminée, vous pouvez référencer la bibliothèque dans votre code PHP pour le traitement des images.
//Présentez la bibliothèque d'images d'intervention require 'vendor/autoload.php';
utilisez InterventionImageImageManagerStatic comme image ;
fonction getImageMainColor($imagePath) {
// Utilisez l'image d'intervention pour ouvrir l'image $image = Image::make($imagePath);
// Récupère les données des pixels de l'image $pixels = $image->limitColors(16)->colors();
// Calcule le nombre de pixels de chaque couleur dans l'image $colorCount = array_count_values($pixels);
// Recherche la couleur avec le plus grand nombre de pixels $mainColor = array_search(max($colorCount), $colorCount);
// Renvoie la couleur du thème return $mainColor;
}
// Exemple d'utilisation $imagePath = 'path/to/image.jpg'; // Chemin de l'image $mainColor = getImageMainColor($imagePath);
echo 'La couleur du thème de l'image est :' . $couleurmain;Dans le code ci-dessus, la fonction getImageMainColor accepte le chemin de l'image comme paramètre et renvoie la couleur du thème. Ouvrez d'abord l'image via la bibliothèque d'images d'intervention, puis utilisez la méthode limitColors pour compresser l'image dans une palette de 16 couleurs, puis obtenez les données de pixels via la méthode des couleurs. Enfin, utilisez array_count_values pour compter le nombre d'occurrences de chaque couleur et trouver la couleur qui en a le plus comme couleur de thème.
Remplacez la variable $imagePath dans le code par le chemin de votre image, puis exécutez le script PHP pour obtenir la couleur du thème de l'image.
L’exemple fourni est l’implémentation de base. Dans les applications pratiques, vous pouvez optimiser davantage en fonction de vos besoins, par exemple en utilisant des algorithmes plus complexes pour extraire les couleurs des caractéristiques, supprimer le bruit ou échantillonner de grandes images.
L'utilisation de PHP pour obtenir la couleur du thème d'une image peut être facilement réalisée grâce à la bibliothèque d'images d'intervention. Grâce à cette méthode, vous pouvez obtenir rapidement la couleur principale de l'image, ce qui facilite la conception Web, la visualisation de données ou d'autres tâches de traitement d'image.