一、图像通道的分离
//图像通道分离
vector<Mat>mv;
split(src, mv);
int size = mv.size();
std::cout << "number of channels:" << size << std::endl;//打印分离的通道数是不是三个
imshow("blue channels", mv[0]);
imshow("green channels", mv[0]);
imshow("red channels", mv[0]);
二、通道的合并
//图像通道合并
merge(mv, dst);
imshow("result", dst);
三、ROI区域
对于roi区域指的是在原图上选取一块区域显示出来,这个区域与原图上的地址是一样的,也就是说改变这个区域,原图上相应区域也会变,但是如果使用
Mat sub = src(roi).clone();
替换
Mat sub = src(roi)
截取roi区域,就不会出现改变roi区域的时候改变原图
//ROI
Rect roi;
roi.x = 50;
roi.y = 50;
roi.width = 100;
roi.height = 100;
rectangle(src, roi, Scalar(255, 255, 0), 1, 8);
Mat sub = src(roi)//替换该位置Mat sub = src(roi).clone();
bitwise_not(sub, sub);
imshow("roi", sub);
imshow("input", src);