图像的二值化分割,最重要的就是计算阈值

阈值的计算方法很多,基本分为两类,全局阈值与自适应阈值

OTSU、Triangle







#include <opencv2/opencv.hpp>
#include <iostream> using namespace cv;
using namespace std; int main(int argc, char** argv)
{
Mat src = imread("f:/images/shuang001.jpg");
if (src.empty())
{
printf("Could not find the image!\n");
return -1;
} namedWindow("input", WINDOW_AUTOSIZE);
imshow("input", src); Mat gray, binary;
cvtColor(src, gray, COLOR_BGR2GRAY);
imshow("gray", gray); // 均值分割
Scalar m = mean(gray);
printf("means: %.2f\n", m[0]);
threshold(gray, binary, m[0], 255, THRESH_BINARY);
imshow("binary", binary); // 直方图
threshold(gray, binary, 0, 255, THRESH_BINARY | THRESH_OTSU);
imshow("THRESH_OTSU", binary); threshold(gray, binary, 0, 255, THRESH_BINARY | THRESH_TRIANGLE);
imshow("THRESH_TRIANGLE", binary); waitKey(0);
destroyAllWindows(); return 0;
}

最新文章

  1. 在 CentOS7 上安装 zookeeper-3.4.9 服务
  2. 代理模式(Proxy Pattern)
  3. HDU 2795 Billboard(线段树)
  4. Intent界面跳转与传递数据
  5. Power-BI 主要城市商品房销售分析
  6. UNIX内核的文件数据结构 -- v 节点与 i 节点
  7. open()函数
  8. JavaScript元素的创建、添加、删除
  9. UESTC_Little Deer and Blue Cat CDOJ 1025
  10. _beginThreadex创建多线程解读
  11. UVa 11879 - Multiple of 17
  12. Vertx eventbus模块解析
  13. Java 初始化、final、清理
  14. 【源】ensp 绑定本地网卡与仿真设备进行通信 场景下 仿真设备ping 不通 本机IP 问题
  15. 匿名内部类可以访问的变量---静态成员变量和final修饰的局部变量
  16. Redis入门到高可用(二十一)——缓存的使用和设计
  17. 【转载】JAVA消息服务JMS规范及原理详解
  18. java读写操作心得
  19. css汇总
  20. 谷歌推出新型强化学习框架Dopamine

热门文章

  1. java - 虚拟机性能监控与故障处理工具
  2. SVN之TortoiseSVN使用02
  3. Numpy | ndarray数组基本操作
  4. Wannafly Camp 2020 Day 1E 树与路径 - 树上差分,LCA
  5. AspxGridView 客户端点击获取对应的列值
  6. MFC在子线程中创建窗口(PostMessage方法)
  7. ETag使用
  8. Oracle11g配置监听
  9. SpringBoot整合WEB开发--(六)CROS支持
  10. 网易云信Duilib开发实践和Windows应用界面开发框架源码开源介绍