opencv - Java OpenCV:如何将彩色图像转换为黑白图像?

标签 opencv opencv3.0

我已经将图像加载为gray sclae,我知道我需要使用阈值对其进行二值化。但是,如何用Java做到这一点呢?

Mat imageMat = Imgcodecs.imread(picDir + "color_console.tif",
Imgcodecs.CV_LOAD_IMAGE_GRAYSCALE);

//then what API?

最佳答案

我建议您阅读有关阈值设置的本教程:http://docs.opencv.org/doc/tutorials/imgproc/threshold/threshold.html

Java中threshold函数的文档是hereTHRESH_BINARYTHRESH_BINARY_INV模式适用于二值化。

例如:
Mat binarized; threshold(imageMat, binarized, 100, 255, THRESH_BINARY);
如果结果不满意,可以尝试adaptivehreshold function。它更仔细地执行阈值处理,但是在计算上非常昂贵。 Java的文档是here

关于opencv - Java OpenCV:如何将彩色图像转换为黑白图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30250950/

相关文章:

c++ - 在使用opencv和eclipse的facedetect程序中使用 'CvHaarClassifierCascade*'

visual-studio - 如何在 Visual Studio 中使用 OpenCV 设置 Allied Vision Camera Manta

c++ - OpenCV 3/神经网络/预测错误/Ptr< ANN_MLP >/C++

c++ - undefined symbol 引用但库已链接

Android:手机摄像头分辨率会影响预处理结果吗

c++ - 在 C++ 中计算单 channel 直方图的均值和标准差

opencv - OpenCV 中的人脸识别

opencv - 如何在OpenCV/JavaCV中找到亮度均衡的图像?

c++ - 使用 opencv 3.0 beta 校准鱼眼镜头

python - 使用适用于Python的OpenCV功能裁剪图像