`
yingyingol
  • 浏览: 769058 次
文章分类
社区版块
存档分类
最新评论

OpenCV学习笔记-阈值化

 
阅读更多

需要的几个函数:

Threshold

對數組元素進行固定閾值操作

void cvThreshold( const CvArr* src, CvArr* dst, double threshold,
                  double max_value, int threshold_type );
src
原始數組 (單通道 , 8-bit of 32-bit 浮點數).
dst
輸出數組,必須與 src 的類型一致,或者為 8-bit.
threshold
閾值
max_value
使用 CV_THRESH_BINARY 和 CV_THRESH_BINARY_INV 的最大值.
threshold_type
閾值類型 (見討論)

函數 cvThreshold 對單通道數組應用固定閾值操作。該函數的典型應用是對灰度圖像進行閾值操作得到二值圖像。(cvCmpS 也可以達到此目的) 或者是去掉噪聲,例如過濾很小或很大象素值的圖像點。本函數支持的對圖像取閾值的方法由 threshold_type 確定:

threshold_type=CV_THRESH_BINARY:
dst(x,y) = max_value, if src(x,y)>threshold
           0, otherwise

threshold_type=CV_THRESH_BINARY_INV:
dst(x,y) = 0, if src(x,y)>threshold
           max_value, otherwise

threshold_type=CV_THRESH_TRUNC:
dst(x,y) = threshold, if src(x,y)>threshold
           src(x,y), otherwise

threshold_type=CV_THRESH_TOZERO:
dst(x,y) = src(x,y), if (x,y)>threshold
           0, otherwise

threshold_type=CV_THRESH_TOZERO_INV:
dst(x,y) = 0, if src(x,y)>threshold
           src(x,y), otherwise

下面是圖形化的閾值描述:






具体实现例题为:


运算结果为:


另外一种实现方式为,该种实现方式目标图像与原图像一致,再次采用cvConvertScale实现,

还需要用到cvAcc函数,为



具体实现代码:


该运算结果有问题,显示结果为白色,还没找到原因。

如图,

参考文献:

1.学习OpenCV,于仕祺,刘瑞祯,清华大学出版社,pp.155-159

2.http://www.opencv.org.cn/index.php/Cxcore%E6%95%B0%E7%BB%84%E6%93%8D%E4%BD%9C

3.http://www.opencv.org.cn/index.php/Cv%E5%9B%BE%E5%83%8F%E5%A4%84%E7%90%86#Threshold

4.http://blog.csdn.net/cartoonface/article/details/5998827

分享到:
评论

相关推荐

    OpenCV-python 学习笔记 OpenCV图像阈值1

    OpenCV-python 学习笔记 OpenCV图像阈值 OpenCV 提供了两种阈值处理方法:简单阈值和自适应阈值。阈值处理是指将图像分割成不同的区域,以便后续处理和分析。 简单阈值 简单阈值处理使用 `cv2.threshold()` 函数...

    OpenCV学习笔记(基础概念,归纳总结)

    OpenCV 学习笔记(基础概念,归纳总结) OpenCV 是计算机视觉领域中最流行的开源库之一,用于图像和视频处理。作为一名 IT 行业大师,我将从基础概念出发,向您介绍 OpenCV 的学习笔记,涵盖图像处理的基础概念、...

    OpenCV-python 学习笔记 OpenCV颜色空间转换1

    不同软件间的HSV值可能有所不同,因此在比较时需要进行归一化。 2. 物体跟踪 在HSV颜色空间中,我们可以通过设置颜色的阈值来更容易地定位特定颜色的物体。例如,如果我们要追踪蓝色物体,可以遵循以下步骤: - ...

    OpenCV3编程学习笔记+OpenCV实例程序源代码(20个).zip

    OpenCV3编程学习笔记+OpenCV实例程序源代码(20个): 20170417_用前置摄像头录制视频.c 20170417_用前置摄像头拍照.c 20170419_用滑条实现亮度调节.c 20170419_用滑条实现线性混合.c 20170419_用鼠标来绘制矩形.c ...

    OpenCV笔记: 查找轮廓

    OpenCV(开源计算机视觉库)是一个强大的图像处理和计算机视觉工具,被广泛应用于图像分析、图像识别、机器学习等领域。这篇“OpenCV笔记:查找轮廓”可能是关于如何在OpenCV中提取图像中的轮廓,这对于物体识别、...

    学习笔记(32):Python+OpenCV计算机视觉-canny边缘检测

    本篇学习笔记将深入探讨Canny边缘检测的原理和实现过程。 1. **去噪** 在边缘检测之前,首先需要对图像进行去噪处理,因为噪声会干扰边缘检测的准确性。常用的方法是高斯滤波器,它可以有效地平滑图像,同时保留...

    opencv3_学习笔记+自己整理的程序小代码.zip

    opencv3_学习笔记+自己整理的程序小代码 20170417_用前置摄像头录制视频.c 20170417_用前置摄像头拍照.c 20170419_用滑条实现亮度调节.c 20170419_用滑条实现线性混合.c 20170419_用鼠标来绘制矩形.c 20170421_使用...

    【opencv学习笔记 16图像二值化】代码详细注释

    在OpenCV中,图像二值化是一种将图像转化为只有黑白两色(通常0代表黑色,255代表白色)的处理方法,它简化了图像,便于后续的分析和处理。这个过程通过设置阈值来实现,低于阈值的像素被设为黑色,高于阈值的像素则...

    【opencv学习笔记 23轮廓发现】

    本篇学习笔记将详细介绍如何在OpenCV中进行轮廓发现,并提供了一段Python代码作为示例。 首先,边缘检测是轮廓发现的前提步骤。在提供的代码中,使用了高斯模糊(GaussianBlur)函数来平滑图像,减少噪声。接着,将...

    Opencv3编程入门

    OpenCV是一个开源的计算机视觉和机器学习软件库,它提供了丰富的函数用于处理图像、视频、进行特征提取、物体识别等。OpenCV3作为其中的一个版本,包含了大量模块和函数,适合进行图像处理和计算机视觉项目。本入门...

    【opencv学习笔记 21 直线检测】

    本篇学习笔记将探讨如何使用霍夫变换(Hough Transform)来检测图像中的直线。霍夫变换是一种参数空间搜索算法,它可以将图像中的直线转换为极坐标系中的点,从而找出图像中的所有直线。 首先,霍夫直线变换的前提...

    python opencv学习笔记之数米粒,并返回每一个米粒的位置面积及总个数平均面积

    在本篇《Python OpenCV学习笔记之数米粒》中,我们将探讨如何使用Python和OpenCV库来识别并计算图像中的米粒数量、位置及平均面积。首先,我们需要理解整个程序的基本流程,它包含了以下几个主要步骤: 1. **读取...

    OpenCV.js中文教程

    通过这个中文教程,开发者可以逐步学习并掌握 OpenCV.js 的核心概念和实用技巧,利用其强大的功能开发出创新的Web应用程序。同时,官方文档提供了详细的示例代码,便于实践和调试。尽管OpenCV.js不包含完整的OpenCV...

    OpenCV实现二值图像的边缘光滑处理

    本文实例为大家分享了OpenCV学习笔记之针对二值图像的边缘光滑处理(突出部消除),供大家参考,具体内容如下 处理代码分为两部分,第一部分用于去除边缘的突出部,第二部分用于边缘光滑。具体如下所示 1.去除边缘...

    opencv的封装emgu使用笔记

    Emgu CV是一个跨平台的开源计算机视觉库,它为.NET开发者提供了与OpenCV相同的功能,包括图像处理、模式识别和机器学习算法。本文将重点介绍在C#中使用Emgu CV时的一些关键知识点,如二值化、灰度化、卷积、高斯模糊...

    【opencv学习笔记 24对象测量】

    `cv.THRESH_BINARY_INV | cv.THRESH_OTSU`参数组合使用了Otsu的二值化方法,该方法可以自动选择最佳阈值,将图像背景与前景分离。 接下来,`cv.findContours()`函数用于寻找图像中的轮廓。这个函数返回一个轮廓列表...

    基于Vs2008+opencv2.3.1的MFC笔记本摄像头操作

    在本项目中,我们主要探讨如何使用Visual Studio 2008(Vs2008)结合OpenCV ...对于想要学习OpenCV和MFC的初学者来说,这是一个很好的起点,可以帮助他们理解这两个工具的协同工作方式,并进一步探索计算机视觉的世界。

    python OpenCV学习笔记直方图反向投影的实现

    在OpenCV中,直方图反向投影是一种常见的图像分析工具,它可以帮助我们理解和分析图像的色彩分布。本文主要介绍如何使用Python语言结合OpenCV库实现直方图反向投影的完整流程。 首先,直方图反向投影的过程一般包括...

    《多传感器融合感知技术笔记》之 -1.图像处理灰度化/二值化-Akaxi

    在IT领域,尤其是在计算机视觉和图像处理中,"《多传感器融合感知技术笔记》之 -1.图像处理灰度化/二值化-Akaxi"这个主题涉及到两个关键概念:灰度化和二值化。这两个过程是图像预处理的重要步骤,常用于提升图像...

Global site tag (gtag.js) - Google Analytics