OpenCV 阈值法

server/2024/9/22 19:46:23/

1.概述

在深度学习出现之前,图像中的阈值法处理主要有二值阈值法、自适应阈值法、Ostu阈值法。

2.理论对比

3.代码实现

#include <iostream>
#include <opencv2/opencv.hpp>int main(int argc, char** argv) {if(argc != 2) {std::cerr << "Usage: " << argv[0] << " <image_path>" << std::endl;return -1;}// Load the imagecv::Mat image = cv::imread(argv[1], cv::IMREAD_GRAYSCALE);if(image.empty()) {std::cerr << "Error: Couldn't read the image. Check the path and try again." << std::endl;return -1;}cv::imshow("Original Image", image);// Binary Thresholdingcv::Mat binaryThresholded;cv::threshold(image, binaryThresholded, 127, 255, cv::THRESH_BINARY);cv::imshow("Binary Thresholding", binaryThresholded);// Adaptive Thresholdingcv::Mat adaptiveThresholded;cv::adaptiveThreshold(image, adaptiveThresholded, 255, cv::ADAPTIVE_THRESH_MEAN_C, cv::THRESH_BINARY, 11, 2);cv::imshow("Adaptive Thresholding", adaptiveThresholded);// Otsu's Thresholdingcv::Mat otsuThresholded;cv::threshold(image, otsuThresholded, 0, 255, cv::THRESH_BINARY | cv::THRESH_OTSU);cv::imshow("Otsu's Thresholding", otsuThresholded);// Wait for a key press and then closecv::waitKey(0);return 0;
}


http://www.ppmy.cn/server/40442.html

相关文章

Multisim 14 常见电子仪器的使用和Multisim的使用

multisim multisim&#xff0c;即电子电路仿真设计软件。Multisim是美国国家仪器&#xff08;NI&#xff09;有限公司推出的以Windows为基础的仿真工具&#xff0c;适用于板级的模拟/数字电路板的设计工作。它包含了电路原理图的图形输入、电路硬件描述语言输入方式&#xff0…

整理好了!2024年最常见 100 道 Java基础面试题(四十二)

上一篇地址&#xff1a;整理好了&#xff01;2024年最常见 100 道 Java基础面试题&#xff08;四十一&#xff09;-CSDN博客 八十三、 两个对象 hashCode 相等&#xff0c;equals 也相等么&#xff1f; 在Java中&#xff0c;如果两个对象的 hashCode() 方法返回相同的散列码&…

【人工智能基础】GAN与WGAN实验

一、GAN网络概述 GAN&#xff1a;生成对抗网络。GAN网络中存在两个网络&#xff1a;G&#xff08;Generator&#xff0c;生成网络&#xff09;和D&#xff08;Discriminator&#xff0c;判别网络&#xff09;。 Generator接收一个随机的噪声z&#xff0c;通过这个噪声生成图片…

外星人笔记本-记一次电脑发热过热缘由

背景 笔记本进行过大修&#xff0c;电池鼓包&#xff0c;还好没炸&#xff0c;因此替换电池。发现内存&#xff08;SSD&#xff09;不足&#xff0c;又增加了内存。完成后使用还算正常。但是过一段时间后&#xff0c;系统自动更新几次&#xff08;window10系统就是恶心&#x…

【消息队列】消息中间件介绍

目录 电商系统引发的思考实现支付业务时使用串行操作&#xff08;同步&#xff09;串行操作存在的问题根据上述的几个问题&#xff0c;在设计系统时可以明确要达到的目标 消息中间件【MQ&#xff08;Message Queue&#xff09;】使用场景1.应用解耦2.异步提速3.流量削峰举个栗子…

基于springboot实现的疫情网课管理系统

开发语言&#xff1a;Java 框架&#xff1a;springboot JDK版本&#xff1a;JDK1.8 服务器&#xff1a;tomcat7 数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09; 数据库工具&#xff1a;Navicat11 开发软件&#xff1a;eclipse/myeclipse/idea Maven…

Python3 笔记:查看数据类型、数据类型转换

1、使用内置函数type(object)可以返回object的数据类型。&#xff1a; num1 5.5 print(type(num1)) # 运行结果&#xff1a;<class float> a python print(type(a)) # 运行结果&#xff1a;<class str> b [1,2,3] print(type(b)) # 运行结果&#xff1a;<cl…

5月8日爬楼梯+使用最小花费爬楼梯

70.爬楼梯 假设你正在爬楼梯。需要 n 阶你才能到达楼顶。 每次你可以爬 1 或 2 个台阶。你有多少种不同的方法可以爬到楼顶呢&#xff1f; 示例 1&#xff1a; 输入&#xff1a;n 2 输出&#xff1a;2 解释&#xff1a;有两种方法可以爬到楼顶。 1. 1 阶 1 阶 2. 2 阶 示…