OpenCV-カラーマップ

OpenCVでは、この方法を使用して、画像にさまざまなカラーマップを適用できます。 applyColorMap() クラスの Imgproc。このメソッドの構文は次のとおりです-

applyColorMap(Mat src, Mat dst, int colormap)

それは3つのパラメータを受け入れます-

  • src −クラスのオブジェクト Mat ソース(入力)画像を表します。

  • dst −クラスのオブジェクト Mat 宛先(出力)イメージを表します。

  • colormap −適用するカラーマップのタイプを表す整数タイプの変数。

次のプログラムは、適用方法を示しています color map 画像に。

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");
   }
}

以下が入力画像であると仮定します color_input.jpg 上記のプログラムで指定されています。

出力

上記のプログラムを実行すると、次の出力が得られます-

Image Processed

指定したパスを開くと、次のように出力画像を確認できます。

その他の操作

に加えて COLORMAP_HOT前の例で示したように、OpenCVは他のさまざまなタイプのカラーマップに対応しています。これらのタイプはすべて、Imgprocクラスの事前定義された静的フィールド(固定値)によって表されます。

それぞれの事前定義された値を名前の付いたパラメータに渡すことにより、必要なカラーマップのタイプを選択できます。 colormapapplyColorMap() 方法。

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

以下は、さまざまなタイプのカラーマップとそれぞれの出力を表す値です。

操作と説明 出力
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