-1

如何在一定范围内对图像进行阈值处理?我已经这样做了,但它不起作用。

for (int i=0;i<s.size().height;i++)
{
    for(int j=0;j<s.size().width;j++)
    {
        int k=int (s.at<uchar>(j,i));
        if (k>6 &&  k<10)
            k=255;
        else k=0;
            s.at<uchar>(j,i)=k;
    }
}
4

1 回答 1

1

你得到一个 uchar 值,并将其转换为整数。尝试这个 :

    uchar k= s.at<uchar>(j,i);
    if (k>6 &&  k<10) {
        k=255;
     }else {
        k=0;
     }
     s.at<uchar>(j,i)=k;

我认为它可能会奏效。

于 2013-08-10T12:04:35.517 回答