OpenCV cvtColor の使い方

はじめに

 OpenCV のcvtColorを使った画像変換についてまとめた。

とりあえず関数を試してみたい方

実験用プログラム OpenCV_test の GitHubリポジトリ
URL
https://github.com/iryachi/OpenCV_test
実行ファイルだけ
https://github.com/iryachi/OpenCV_test/releases
使い方
https://iryachi.stars.ne.jp/opencv_test_imple/

cvtColor 関数について

void cvtColor( InputArray src, OutputArray dst, int code, int dstCn = 0 );

引数

InputArraysrc入力画像変換元の画像 codeのフォーマットに合わせる。
OutputArraydst出力画像変換後の画像 code による。
intcode画像変換の方法後述
intdstCn出力画像のチャンネル数変換後の画像のチャンネル数。 変更できる時だけ効果あり。 0 の時は 入力画像 と code に依存。

画像変換の方法codeについて (enum cv::ColorConversionCodes)

 代表的なもののみ。名前見たらだいたい分かる。
COLOR_BGR2BGRA : BGR から BGRA への拡張変換。
COLOR_BGRA2BGR : BGRA から BGR への変換。アルファ値なくなる。
COLOR_RGBA2BGR : RGB から BGR へのドットの並び方変換。

おわりに

cvtColor の code はたくさん種類あるけど、実際に使うのは数種類。あとはヘルプを見るしかないかな。