c++ 图像二值化(opencv)

前言

因需要对一张二值图像进行反转操作,即“黑转白,白转黑”操作,因网上资料混杂,在此给出一篇博客记录。
运行环境:ubuntu18 + cmake + opencv4

  • 什么是二值图像?

在一张只有黑色和白色的图像中,这种图像的像素灰度值无论在什么数据类型中只有最大值和最小值两种取值,因此称为二值图像。


例如:
c++ 图像二值化(opencv)_第1张图片

案例


#include 

#include 
#include 
#include 

int main(int argc,char** argv) 
{
   cv::Mat img = cv::imread("/home/qiy/桌面/test02.jpg");
    if(img.empty())
    {
        std::cout<<"error!"<

c++ 图像二值化(opencv)_第2张图片

  • threshold()
***
double cv::threshold(Inputu src,   //src--待二值化的图像cv_8u, cv_32f类型
                                             OutputSrray dst,//二值化后的图像
                                             double thresh,//二值化阈值
                                             double maxval,//二值化过程最大值
                                             int type//二值化方法标志
                                             )

你可能感兴趣的:(c++,opencv,图像识别,c++)