概要
彩度はRGB表色系のままだといじりにくい。
HSV表色系にするとSで表される。
このサンプルを通して、OpenCVでの色の扱いを勉強しよう。
このサンプルを通して、OpenCVでの色の扱いを勉強しよう。
実装
int main() { // 画像を読み込む string fileName = "images\\gori.jpg"; Mat originalImage = imread(fileName, CV_LOAD_IMAGE_COLOR); // 元の画像を表示 imshow("out", originalImage); waitKey(0); // BGRからHSVに変換 Mat hsvImage; cvtColor(originalImage, hsvImage, CV_BGR2HSV); // H, S, V にわける vector<Mat> planes; split(hsvImage, planes); // S の値だけ半分にする planes[1] *= 0.5; // HSV画像に戻す merge(planes, hsvImage); // HSVからBGRに変換 cvtColor(hsvImage, originalImage, CV_HSV2BGR); // 表示 imshow("out", originalImage); waitKey(0); return 0; }
解説
とくにない。
画像のパスは各自で変更する。
結果
変換前 |
変換後 |
0 件のコメント:
コメントを投稿