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

域名例子济南优化seo公司

域名例子,济南优化seo公司,沈阳网站建设方案模板,国际军事形势分析【Opencv–adaptiveThreshold】自适应阈值图像二值化 文章目录【Opencv--adaptiveThreshold】自适应阈值图像二值化1. 介绍2. adaptiveThreshold函数2.1 函数调用2.2 补充说明3. 代码示例4. 效果4.1 原图(ori.img)4.2 处理后5. 参考1. 介绍 在这里 cv2.…

【Opencv–adaptiveThreshold】自适应阈值图像二值化

文章目录

  • 【Opencv--adaptiveThreshold】自适应阈值图像二值化
    • 1. 介绍
    • 2. adaptiveThreshold函数
      • 2.1 函数调用
      • 2.2 补充说明
    • 3. 代码示例
    • 4. 效果
      • 4.1 原图(ori.img)
      • 4.2 处理后
    • 5. 参考

1. 介绍

在这里 cv2.threshold函数 介绍了普通的opencv图像阈值处理函数。但threshold 的图像阈值处理对于某些光照不均的图像,这种全局阈值分割的方法并不能得到好的效果。

图像阈值化操作中,我们更关心的是从二值化图像中分离目标区域和背景区域,仅仅通过固定阈值很难达到理想的分割效果。在图片中的灰度是不均匀的,所以通常情况下图片中不同区域的阈值是不一样的。这样就需要一种方法根据图像不同区域亮度或灰度分布,计算其局部阈值来进行阈值处理。这种方法就是自适应阈值化图像处理,实际上这可以称为局部阈值法,在OpenCV中adaptiveThreshold就是这种方法。

2. adaptiveThreshold函数

2.1 函数调用

import cv2
dst = cv2.adaptiveThreshold(src, maxValue, adaptiveMethod, thresholdType, blockSize, C)
  • 参数说明:

    • src:源图像,8位的灰度图。
    • maxValue:用于指定满足条件的像素设定的灰度值
    • adaptiveMethod:使用的自适应阈值算法,有2种类型ADAPTIVE_THRESH_MEAN_C算法(局部邻域块均值)或ADAPTIVE_THRESH_GAUSSIAN_C(局部邻域块高斯加权和)。
      • ADAPTIVE_THRESH_MEAN_C的计算方法是计算出邻域的平均值再减去第六个参数C的值;
      • ADAPTIVE_THRESH_GAUSSIAN_C的计算方法是计算出邻域的高斯均匀值再减去第六个参数C的值。
      • 处理边界时使用BORDER_REPLICATE | BORDER_ISOLATED模式。
    • thresholdType:阈值类型,只能是THRESH_BINARY或THRESH_BINARY_INV二者之一,具体参考上面“图像阈值处理”的表格
    • blockSize:表示邻域块大小,用来计算区域阈值,一般选择3、5、7……
    • C:表示常数,它是一个从均匀或加权均值提取的常数,通常为正数,但也可以是负数或零
  • 返回值:

    • dst:处理后的图像

2.2 补充说明

  1. 亮度较高的图像区域的二值化阈值通常会较高,而亮度较低的图像区域的二值化阈值则会相适应地变小。
  2. 在灰度图像中,灰度值变化明显的区域往往是物体的轮廓,所以将图像分成一小块一小块的去计算阈值往往会得出图像的轮廓。因此函数adaptiveThreshold除了将灰度图像二值化,也可以进行边缘提取。
  3. 之所以能进行边缘提取,是因为当block很小时,如block_size=3 or 5 or 7时,“自适应”的程度很高,即容易出现block里面的像素值都差不多,这样便无法二值化,而只能在边缘等梯度大的地方实现二值化,结果显得它是边缘提取函数。
  4. 当把blockSize设为比较大的值时,如blockSize=21 or 31 or 41时,adaptiveThreshold便是二值化函数
  5. blockSize必须为大于1的奇数(这里解释一下,size为偶数的话,该block的中心点就不确定了,因此为奇数。)
  6. 如果使用平均值方法,平均值mean为180,差值delta为10,maxValue设为255。那么灰度小于170的像素为0,大于等于170的像素为255,如果是反向二值化,灰度小于170的像素为255,大于等于170的像素为0。

3. 代码示例

import cv2img = cv2.imread('ori.jpg', 0)img1 = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY_INV, 3, 5)
cv2.imwrite("new1.jpg", img1)img2 = cv2.adaptiveThreshold(img, 255, cv2.ADAPTIVE_THRESH_MEAN_C, cv2.THRESH_BINARY_INV, 31, 5)
cv2.imwrite("new1.jpg", img2)

4. 效果

4.1 原图(ori.img)

在这里插入图片描述

4.2 处理后

  • new1.img
    在这里插入图片描述
  • new2.jpg
    在这里插入图片描述

可以看到,

  • 当blockSize小时,轮廓识别效果明显,突出边缘区域。
  • 而blockSize大时,就是一个二值化图像。

5. 参考

【1】https://blog.csdn.net/LaoYuanPython/article/details/108558834

http://www.yayakq.cn/news/621918/

相关文章:

  • 网站主机租用多少钱wordpress法律主题
  • 西安网站建设gj贵州省交通工程建设质监局网站
  • 惠州网站制作案例做销售在哪个网站找客户
  • 做调查用哪个网站网站后台设置应注意什么
  • 南浔哪有做网站的普陀区网站建设公司
  • 网站上怎么做艳丽的色湖南长沙seo教育
  • 深圳的网站建设公司有哪些阿里巴巴官方网站
  • 幕墙设计培训乡网站建设广西seo
  • 广州建站工作室江苏省南京市栖霞区
  • 建网站怎么年赚广州万网建网站
  • 大连做网站哪里好全渠道运营平台系统
  • 汉中专业网站建设公司有哪些商业网站
  • 做ppt的软件怎样下载网站怎么自创公众号
  • 大气金融网站湖北长安建设集团股份有限公司网站
  • 做兼职的网站 知乎wordpress支持视频播放
  • 论坛网站怎么做跳转seo提权软件
  • 黄埔做网站要多少钱网站制作一般需要多少钱?
  • 建设一个网站的基本步骤网站建设预付款
  • 网站开发人员 平均工资如乐建站之家
  • 古城网站建设网络营销策划需要包括哪些内容
  • 网站建设哪个公司做得好网站搭建交流群
  • 现在还有网站做校内网吗电子工程有限公司
  • 高校建设思政教育网站案例网站个人备案 企业备案吗
  • 如何做好网站针对搜索引擎的seo怎么做淘宝返利网站
  • 网站开发范本英山建设银行网站
  • 随州网站建设推荐临武县网站建设专业
  • 高水平高职建设网站泉州专业网站建设
  • 2018做网站的软件网站精准ip接口怎么做
  • 揭阳网站建站网站电子商务网站建设目的和意义
  • 龙岗网红基地青岛网站的优化