opencv - 我们如何从图像中删除一种纯色?

标签 opencv

使用 cvSet 方法,我们可以轻松地用纯色填充图像。 有什么方法可以帮助您从图像中去除一些颜色 (例如,我有一个森林的图像。基本上它会有很多绿色成分、树叶等。我可以去除绿色保持其他一切不变吗。)

最佳答案

    char* inputPath = "TEST.png";

    Mat src = imread(inputPath);
    Mat BGRChannels[3];
    split(src,BGRChannels); // split the BGR channesl
    BGRChannels[1]=Mat::zeros(src.rows,src.cols,CV_8UC1);// removing Green channel
    merge(BGRChannels,3,src); // pack the image 
    namedWindow("B0R",1);
    imshow("B0R",src);
    waitKey(0);

结果如下:
main image

removed green channel image

关于opencv - 我们如何从图像中删除一种纯色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34918503/

相关文章:

使用 CMake 和 MinGW 的 OpenCV 2.4.2 库文件 - 目标 IDE 代码块

openCV H检测

python - 检测闭合轮廓

OpenCV 2.4.3 Haar 分类器错误 AdaBoost misclass

c++ - OpenCV 安装问题窗口

c++ - 如何在 C++ 中实现拉普拉斯滤波器

python - 无法使用 [OpenCV] cv2.VideoCapture.set() 设置帧宽度和高度

python - 找到 map 中每个像素的最近邻居

c++ - 读取直方图后未处理的异常(使用 calcHist 创建)

opencv - 使用 SURF 描述符检测一个对象的多个实例。 (在 OpenCV 中)