0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

OpenCV 「画像のグレースケール化」

Last updated at Posted at 2020-11-04

##画像の色変更について
さて、そろそろOpenCVにも慣れてきて楽しくなってきているところではないでしょうか。今回の記事は画像の色変更についてです。そんなに難しくはないですが卒業研究などの研究には非常に使われる技術なのでしっかりと覚えましょう。

##Mark4

#include <opencv2/opencv.hpp>
#include<iostream>

#if _DEBUG
#pragma comment(lib,"opencv_world430d.lib")
#else
#pragma comment(lib,"opencv_world430.lib")
#endif

using namespace cv;	
using namespace std;

int main(void) {


	Mat img = imread("C:\\opencv\\sources\\samples\\data\\lena.jpg");

	cvtColor(img, img, COLOR_BGR2GRAY);																

	imshow("View", img);

	waitKey();

	return 0;


}

このように出てくればOKです。

rena.jpg

######解説①
前回のプログラムと違う点はここです。

cvtColor(img, img, COLOR_BGR2GRAY);

これの引数は

cvtColor(入力画像, 出力画像, グレースケール化);

の意味を持ちます。

######解説②
BGRで色を表現できるのは知っていますか。B(Blue),G(Green),R(Red)の三つです。今回はグレースケールの紹介ですが、GBRを入れ替えたりすることも出来ますので、興味がある人
はいろいろしてみて下さい。

######解説③
さっきはcvtColorであとでグレースケールにしましたが、次のように画像を読み込んだときにグレースケールにしてもいいです。

Mat img = imread("C:\\opencv\\sources\\samples\\data\\lena.jpg", IMREAD_GRAYSCALE);

######cvtColorで可能な変換(例)

COLOR_BGR2RGB   //RGBとBGRの色空間を変更する
COLOR_GRAY2RGB  //グレースケールをRGBまたはBGR色空間に、もしくはアルファチャンネルを追加する。

##最後に
研究ではよく使われる技術なのでしかっり覚えましょう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?