在opencv中单独的hsv通道

时间:2014-01-09 07:59:56

标签: c++ opencv hsv

我在opencv中有一个hsv ma​​t文件,我想分开这些频道。我找到了cvSplit(hsv,h,s,v,NULL),但它不适用于Mat文件。那怎么样,只保留Mat图像文件的第一个通道? 我的结果如上。基本上是我转换的图像,我可以看到脸,但是用奇怪的色调。

h channel

使用的代码:

    cvtColor(cropped_rgb, cropped_hsv, CV_BGR2HSV);
    split(cropped_hsv, channels);
    cropped_hsv = channels[0]; 
    imshow("cropped_hsv", cropped_hsv);

1 个答案:

答案 0 :(得分:11)

您只需使用split

即可
Mat hsv;
vector<Mat> channels;
split(hsv, channels);

通道[0],通道[1],通道[2]将分别包含H,S,V。