我有一个灰度图像我想将所有白色像素(纯白色 - 255)转换为黑色(0)只有那些颜色,而不是所有灰度我该怎么做?谢谢!罗恩
问问题
8870 次
2 回答
6
您可以执行以下操作。
使用
inRange()
.Mat image; // your original image Mat mask; void inRange(image, Scalar(255), Scalar(255), mask)
输出
mask
将是一个二进制掩码,如果相应的像素image
等于 255,则其像素设置为 255(即如果像素值介于 255 和 255 之间,则包括边界)。通过使用将
black_image
(您想要的替代颜色)复制到您的原件中。image
mask
copyTo()
Mat black_image(image.size(), CV_8U, Scalar(0)); // all zeros image black_image.copyTo(image, mask);
于 2013-08-13T14:55:42.620 回答
1
使用 cvThreshold,在此处查看最后一种情况“阈值为零,倒置”:http: //docs.opencv.org/doc/tutorials/imgproc/threshold/threshold.html
将阈值设置为 254,我认为这将解决您的问题。
于 2013-08-13T14:46:10.870 回答