OpenCV - Cartes de couleurs

Dans OpenCV, vous pouvez appliquer différentes cartes de couleurs à une image en utilisant la méthode applyColorMap() de la classe Imgproc. Voici la syntaxe de cette méthode -

applyColorMap(Mat src, Mat dst, int colormap)

Il accepte trois paramètres -

  • src - Un objet de la classe Mat représentant l'image source (entrée).

  • dst - Un objet de la classe Mat représentant l'image de destination (sortie).

  • colormap - Une variable de type entier représentant le type de la palette de couleurs à appliquer.

Exemple

Le programme suivant montre comment postuler color map à une image.

import org.opencv.core.Core;
import org.opencv.core.Mat;

import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;

public class ColorMapTest {
   public static void main(String args[]) {
      // Loading the OpenCV core library
      System.loadLibrary(Core.NATIVE_LIBRARY_NAME);

      // Reading the Image from the file and storing it in to a Matrix object
      String file ="E:/OpenCV/chap25/color_input.jpg";
      Mat src = Imgcodecs.imread(file);

      // Creating an empty matrix to store the result
      Mat dst = new Mat();

      // Applying color map to an image
      Imgproc.applyColorMap(src, dst, Imgproc.COLORMAP_HOT);

      // Writing the image
      Imgcodecs.imwrite("E:/OpenCV/chap25/colormap_hot.jpg", dst);
      System.out.println("Image processed");
   }
}

Supposons que ce qui suit est l'image d'entrée color_input.jpg spécifié dans le programme ci-dessus.

Production

Lors de l'exécution du programme ci-dessus, vous obtiendrez la sortie suivante -

Image Processed

Si vous ouvrez le chemin spécifié, vous pouvez observer l'image de sortie comme suit -

Plus d'opérations

En plus de COLORMAP_HOTdémontré dans l'exemple précédent, OpenCV convient à divers autres types de cartes de couleurs. Tous ces types sont représentés par des champs statiques prédéfinis (valeurs fixes) de la classe Imgproc.

Vous pouvez choisir le type de palette de couleurs dont vous avez besoin, en passant sa valeur prédéfinie respective au paramètre nommé colormap du applyColorMap() méthode.

Imgproc.applyColorMap(src, dst, Imgproc.COLORMAP_HOT);

Voici les valeurs représentant divers types de cartes de couleurs et leurs sorties respectives.

Fonctionnement et description Production
COLORMAP_AUTUMN
COLORMAP_BONE
COLORMAP_COOL
COLORMAP_HOT
COLORMAP_HSV
COLORMAP_JET
COLORMAP_OCEAN
COLORMAP_PARULA
COLORMAP_PINK
COLORMAP_RAINBOW
COLORMAP_SPRING
COLORMAP_SUMMER
COLORMAP_WINTER