【OpenCV】疑似カラー(カラーマップ)

OpenCVを使ってモノクロ画像に疑似的に色をつけるにはcv::applyColorMap関数が用意されています。

 

【簡単なソースコード】

#include "stdafx.h"
#include <opencv2/opencv.hpp>;

using namespace cv;

int main()
{
 // 画像読込
 Mat img0 = imread("Mandrill.BMP");
 
 Mat cm_img0;
 // 疑似カラー(カラーマップ)変換
 applyColorMap(img0, cm_img0, COLORMAP_JET);

 // 画像表示
 imshow("cm_img0", cm_img0);

 // キー入力待ち
 waitKey(0);

 // 画像保存
 imwrite("Mandrill_COLORMAP_JET.BMP", cm_img0);

 return 0;
}

(参考)

http://docs.opencv.org/3.2.0/d3/d50/group__imgproc__colormap.html

 

【処理結果】

 

applyColorMap関数の書式は、下記の通り

 

void cv::applyColorMap (
InputArray src,
OutputArray dst,
int colormap
)

 

colormapの設定の違いにより、以下のように色変換されます。

 

オリジナル画像

 

COLORMAP_AUTUMN

 

COLORMAP_BONE

 

   
COLORMAP_JET

 

COLORMAP_WINTER

 

   
COLORMAP_RAINBOW

 

COLORMAP_OCEAN

 

   
COLORMAP_SUMMER

 

COLORMAP_SPRING

 

   
COLORMAP_COOL

 

COLORMAP_HSV

 

   
COLORMAP_PINK

 

COLORMAP_HOT

 

 
COLORMAP_PARULA

 

 

個人的に使えそうなのは、COLORMAP_JETとCOLORMAP_HOTぐらいかな?

 

OpenCVへ戻る

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください