opencv图像二值化c++
时间: 2023-07-19 08:25:19 浏览: 109
OpenCV图像二值化
4星 · 用户满意度95%
以下是使用OpenCV和C++进行图像二值化的示例代码:
```c++
#include <opencv2/opencv.hpp>
using namespace cv;
int main() {
Mat image = imread("image.jpg");
// 将图像转为灰度图
cvtColor(image, image, CV_BGR2GRAY);
// 应用自适应阈值二值化
Mat binary_image;
adaptiveThreshold(image, binary_image, 255, ADAPTIVE_THRESH_GAUSSIAN_C, THRESH_BINARY, 11, 2);
// 显示二值化后的图像
imshow("Binary Image", binary_image);
waitKey(0);
return 0;
}
```
上述代码中,我们首先读取了一张图像,并将其转化为灰度图。然后,我们使用adaptiveThreshold()函数进行自适应阈值二值化,其中第三个参数255表示最大值,第四个参数ADAPTIVE_THRESH_GAUSSIAN_C表示使用高斯加权平均法,第五个参数THRESH_BINARY表示二值化类型,第六个参数11表示邻域大小,第七个参数2表示从加权平均值中减去的常量。最后,我们将二值化后的图像显示出来。
阅读全文