opencv 灰度图(感兴趣(ROI)区域)_三通道图像融合

在进行图像操作时,为加快图像的处理速度,往往需要对图像的局部进行操作,一般是设置ROI区域,然后对ROI区域进行二值化,在对灰度图进行特征的检测与提取。此方法可以大大加快图像处理的速度。

本博文结合opencv进行编写。程序如下:

cv::Mat GrayROIAddRGB(cv::Mat src) {
    int x = 230;
    int y = 90;
    int width = 160;
    int height = 160;

    Mat imageROI = src(Rect(x, y, width, height));
    //imshow("ROI", imageROI);

    Mat mask = imageROI;
    cvtColor(mask, mask, CV_RGB2GRAY);
    threshold(mask, mask, 80, 255, THRESH_BINARY);
    cvtColor(mask, mask, CV_GRAY2BGR);
    //imshow("threshold", mask); 
    
    for (int i = 0; i < imageROI.rows; ++i){
        Vec3b *p = imageROI.ptr<Vec3b>(i);
        for (int j = 0; j < imageROI.cols; ++j) {
            p[j][0] = 0;
            p[j][1] = 0;
            p[j][2] = 0;
        }
    }

    mask.copyTo(imageROI, mask);
    return src;
}

实验图如下:

1.原图

2.效果图

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值