緑色のピクセルを数える

画像を表示する

まず画像を表示することから始めましょう。これは画像へのパスは各々で画像の置いてある場所に合わせてください。

#include "opencv/cv.h"
#include "opencv/highgui.h"
using namespace cv;
int main(){
    Mat img = imread("newyork.jpg", IMREAD_UNCHANGED);
    imshow("IMAGE",img);
    waitKey(10000);
    return 0;
}

GBR座標からHSV座標に変換する

「緑色」というような色によって場合分けをして処理をしたい場合にはGBR座標は明るさなどの影響を受けやすいため不向きです。そこでHSV座標に変換してしまいます。ここで使う関数はcvtColor関数です。グレースケール化のときにも使った関数ですが、2つ目の引数をCV_BGR2HSVに変更することでBGRからHSVに変換することができます。

#include "opencv/cv.h"
#include "opencv/highgui.h"
using namespace cv;

int main(){
    Mat img = imread("newyork.jpg", IMREAD_UNCHANGED);
    Mat hsv_img;
    cvtColor(img, hsv_img, CV_BGR2HSV);
    return 0;
}

画像処理でお困りのことはありませんか?


様々なご相談に応じることができます。様々なデータに関して解析の実績がありますので、処理方法について少しだけ相談に乗って欲しいという方も、実装までお願いしたいという方も、お気軽にお問い合わせください!