在OpenCV中,adaptiveThreshold函数用于自适应阈值化处理。下面是使用C++编写的示例代码:
#include <opencv2/opencv.hpp>
using namespace cv;
int main()
{
Mat image = imread("image.jpg", 0); // 读取灰度图像
Mat dst;
adaptiveThreshold(image, dst, 255, ADAPTIVE_THRESH_MEAN_C, THRESH_BINARY, 11, 2);
imshow("Original Image", image);
imshow("Adaptive Thresholded Image", dst);
waitKey(0);
return 0;
}
在上述示例中,我们首先读取了一个灰度图像(可以替换为你自己的图像路径)。然后使用adaptiveThreshold函数进行自适应阈值化处理。该函数接受以下参数:
- 输入图像
- 输出图像
- 最大阈值(通常设置为255)
- 自适应方法(ADAPTIVE_THRESH_MEAN_C表示基于均值的自适应方法)
- 阈值类型(THRESH_BINARY表示二进制阈值化)
- 块大小(指定计算每个小块的阈值时要考虑的邻域大小,必须为奇数)
- 均值或加权平均减去常数
最后,我们显示原始图像和经过自适应阈值化处理后的图像。
希望这个示例能对你有所帮助!
内容由零声教学AI助手提供,问题来源于学员提问




