打开CV访问并有条件地设置像素

时间:2015-03-25 02:44:37

标签: c++ opencv colors pixels mat

您好,我的文字图片上有边框。我给了所有的坐标,我想要将任何不在边界框中的东西变成白色或黑色(背景材料)。到目前为止,我在OpenCV中有类似的东西

    for (int i = 0; i < image.rows; i++)
{   
    for (int j = 0; j < image.cols; j++)
    {
        for (int k = 0; k < coor.size(); k++)
        {   
            if (!((j >= coor[k][0].x) && (j <= coor[k][2].x) && (i >= coor[k][0].y) && (i <= coor[k][1].y)))
            {
                image.at<Vec3b>(i, j) = 0;
            }
        }
    }
}

Coor是一个包含所有角点的矢量矢量,现在我正在检查是否存在一个点并改变颜色。如果我从条件中删除NOT,我可以更改框内的什么像素颜色,如果我删除了不是,每个像素都会改变:/。知道发生了什么事吗?

0 个答案:

没有答案