当前位置: 首页 > news >正文

加强版 第一节图像二值化定义

本节课介绍了图像又彩色图像转变为彩色图像转变为灰度图像转变为黑色图像的转化过程。

灰度图像-单通道-取值范围为0-255

二值图像-单通道-取值0(黑色)-255(白色)

二值分割

有五种分割方式

如图所示

第一种:大于阈值T则为255,else为0

第二种:小于阈值T则为255,else为0

第三种:小于阈值T则为保留原值,else为0

第四种:小于阈值T则为0,else为保留原值

第五种:大于阈值T则为0,else为原值

这意味着将会有五种方式来改变灰色图像的不同阈值的二值图像

THRESH_BINARY(二值化)

 THRESH_BINARY_INV(二值化)

THRESH_TRUNC(阈值化)

THRESH_TOZERO(阈值化)

THRESH_TOZERO_INV(阈值化



#include<opencv2/opencv.hpp>
#include<iostream>
using namespace cv;
using namespace std;
int main(int argc,char**argv)
{
    Mat src = imread("C:/newword/image/1.jpg");
    if (src.empty())
    {
        printf("没有识别到图像" );
        return -1;
    }
    namedWindow("原图", WINDOW_AUTOSIZE);
    imshow("原图",src );
    Mat dst, gcc;
    cvtColor(src, dst, COLOR_BGR2GRAY);
    imshow("灰度图像", dst);
    threshold(dst, gcc, 127, 255, THRESH_BINARY);
    imshow("阈值图像", gcc);
    threshold(dst, gcc, 127, 255, THRESH_BINARY_INV);
    imshow("THRESH_BINARY_INV", gcc);
    threshold(dst, gcc, 127, 255, THRESH_TRUNC);
    imshow("THRESH_TRUNC", gcc);
    threshold(dst, gcc, 127, 255, THRESH_TOZERO);
    imshow("THRESH_TOZERO", gcc);
    threshold(dst, gcc, 127, 255, THRESH_TOZERO_INV);
    imshow("THRESH_TOZERO_INV", gcc);
    //预设阈值
    waitKey(0);
    destroyAllWindows();
    return -1;


}


http://www.mrgr.cn/news/60757.html

相关文章:

  • Chromium 中chrome.topSites扩展接口定义c++
  • 51单片机之蜂鸣器驱动
  • 正则表达式使用举例一(Python下)
  • 使用Vue.js构建响应式Web应用
  • 软考:常用协议和端口号
  • 自动发现-实现运维管理自动化
  • 四、常量指针其他
  • 信创认证(信创人才考评证书)的含金量?到底有多少?
  • 【Flask】三、Flask 常见项目架构
  • IPV6扩展头部
  • SQL进阶技巧:Hive如何进行更新和删除操作?
  • 自修室预约系统|基于java和小程序的自修室预约系统设计与实现(源码+数据库+文档)
  • 代码随想录第46天|
  • 前端:遇到的面试题
  • Oracle 第10章:触发器
  • Spring MVC介绍
  • Spring Boot 3项目创建与示例(Web+JPA)
  • 江协科技STM32学习- P23 DMA 直接存储器存取
  • CSS.选择器
  • Java性能调优与垃圾回收机制(4/5)
  • 当代AI大模型产品经理现状,及产品经理转型方向?
  • QT 机器视觉 (3. 虚拟相机SDK、测试工具)
  • 在没有 TIA Portal 的情况下,使用存储卡向 S7-1200 /S7-1500CPU 传输程序
  • Halcon 3D模型筛选操作
  • 如何通过AI提升产品经理效率!助产品经理工作效率翻倍
  • #Js篇:Date日期梳理