OpenCv图像通道分离 合并
程序员文章站
2022-04-01 09:37:18
...
#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <opencv2\opencv.hpp>
using namespace std;
using namespace cv;
int main()
{
Mat img = imread("E:/test/MySource/OpenCV/1.jpg");
Mat dst;
vector<Mat> channels;//定义Mat类型的向量
split(img, channels);//通道分离
Mat blue = channels.at(0);
Mat green = channels.at(1);
Mat red = channels.at(2);
threshold(blue, blue, 150, 255, THRESH_BINARY);//二值化:大于200的赋值255 小于200的赋值0
threshold(green, green, 150, 255, THRESH_BINARY);
threshold(red, red, 150, 255, THRESH_BINARY);
merge(channels, dst);//通道合并
imshow("原图", img);
imshow("blue", blue);
imshow("green", green);
imshow("red", red);
imshow("dst", dst);
waitKey(0);
//std::cout << "Hello World!\n";
}