cv::Mat hsv1(img_rgb.size(), CV_8U, cv::Scalar(0));
cv::Mat tmpH1(img_rgb.size(), CV_8U, cv::Scalar(0));
cv::Mat tmpH4(img_rgb.size(), CV_8U, cv::Scalar(0));
cv::Mat tmpH2(img_rgb.size(), CV_8U, cv::Scalar(0));
cv::Mat tmpH3(img_rgb.size(), CV_8U, cv::Scalar(0));
blur(img_rgb, img_rgb, cv::Size(3, 3)); //高斯模糊
cvtColor(img_rgb, hsv1, CV_BGR2HSV); //顏色轉換
vector<cv::Mat> mv;
split(hsv1, mv); //分爲3個通道
inRange(mv[0], Scalar(10., 0.0, 0, 0), Scalar(100, 0.0, 0, 0), tmpH1);
inRange(mv[1], Scalar(20., 0.0, 0, 0), Scalar(110, 0.0, 0, 0), tmpH2);
inRange(mv[2], Scalar(30., 0.0, 0, 0), Scalar(120.0, 0.0, 0, 0), tmpH3);
bitwise_and(tmpH3, tmpH2, tmpH2);
bitwise_and(tmpH1, tmpH2, tmpH1);
blur(tmpH1,tmpH1,Size(3,3)); //高斯模糊
dsc = tmpH1.clone();
dsc blur(dsc, dsc, Size(3, 3)); //高斯模糊
imshow("", dsc);
Mat srcImg;
Mat imgB,imgG,imgR;
Mat mergeImg;
vector<Mat> channels; //Mat向量容器保存拆分後的數據
assert(srcImg.data!=NULL); //判斷文件加載是否正確
split(srcImg,channels); //通道的拆分
imgB = channels.at(0);
imgG = channels.at(1);
imgR = channels.at(2);
merge(channels,mergeImg); //對拆分的通道數據合併