0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

简单图像处理:用用二值化吧!

新机器视觉 来源:ScutRobot 作者:ScutRobot 2021-06-01 14:29 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

引入

一张图像显示在显示屏上的时候,它斑斓多彩,轮廓分明(可你放的明明是张灰度图!),而当它被转化到数字设备当中的时候,我们看到的就将会是下面的情形:

61c7eb94-c22e-11eb-9e57-12bb97331649.png

是的,所有的色彩最后都会被变为一个个数字,在0到255之间来回徘徊,在一个个矩阵中被围困(突然诗意起来)。可以这样说,矩阵就是图像在数码设备中的表现形式。而正是因为他们由这些数字组成,才给了我们机会去用数字的方法来支配他们。

对于一张图片,我们往往不会对每一个地方都相同地感兴趣,总有一些特殊东西才是我们的目标。将目标区域和不想要的背景区域区分开我们就可以对这些数字下手。下面我们就说道说道二值化的那些事儿~

二值化

说起二值化,我们可以先来看看二值图像

二值图像(Binary Image)是指图像上的每一个像素只有两种可能的取值或灰度等级状态的图像。通常来讲就是我们常常看见的“非黑即白”的图像,也就是说,图像像素的灰度值无论在什么数据类型中都只有最大值和最小值两种取值。这种图像色彩类型少,可以进行高度的压缩,利于节省储存空间。

相应的,二值化就是把非二值图像经过计算变成二值图像。

在openCV4中有threshold()和adaptiveThreshold()可以来实现图像的二值化。

那么下面就先来介绍前一种啦

61f2b306-c22e-11eb-9e57-12bb97331649.png

输入输出的图像以及阈值和最大值大家都应该和好理解,那么什么是二值化方法的标志参数呢?

下面的表中大致就是可能会用的的一些标志参数和它们的含义:

61fff2fa-c22e-11eb-9e57-12bb97331649.png

下图是前五种方法做二值化之后的信号示意图:

620a8fda-c22e-11eb-9e57-12bb97331649.png

如同标志参数的作用介绍中说的,前五中标志参数都需要人为地设定一个阈值,之后才能进行二值化。人们进行二值化的目的往往是为了把目标物体和其他的东西分离开,形成图像的分割,但是有的时候为了分别这两者而设定的阈值往往不是那么简单就可以分得出来的,或者说,在对原始图像的灰度值分布不是那么了解的情况下是很难设定到自己想要的那种阈值的。

于是就有了下面的两个标志参数可以用来获取阈值:THRESH_OTSU(大津法)THRESH_TRIANGLE(三角形法)

那么什么是大津法呢

百度百科教我的:大津法也就是最大类间方差法是由日本学者大津(Nobuyuki Otsu)于1979年提出的,是一种自适合于双峰情况的自动求取阈值的方法,简称OTSU。它是按图像的灰度特性,将图像分成背景和目标两部分。背景和目标之间的类间方差越大,说明构成图像的两部分的差别越大,当部分目标错分为背景或部分背景错分为目标都会导致两部分差别变小。因此,使类间方差最大的分割意味着错分概率最小。

6214b528-c22e-11eb-9e57-12bb97331649.png

这是某一张图像的灰度直方图,我们可以看到它其实很明显地呈现出了适合利用大津法求阈值的双峰情况(灰度大都集中在某两个分离的区域之间),对某一假设的灰度值阈值将图像的灰度值分成背景和目标两部分,计算两组灰度值之间的类间方差,得到的方差值大致如图中的红色点所示。于是理所当然的,方差最高点所对应的灰度值正是我们能够合理分开目标和背景的阈值。

但是由于这两种方法往往是基于全局阈值,当图像中有一部分过度曝光或者说有阴影遮挡时,用这样的阈值选取方法就会显得有点不太好。

比如说,当你晚上写下一篇英语作文,想要拍照上传给老师批改,而在上传到某扫描王软件时,往往就会发生这样的事情:

62285c72-c22e-11eb-9e57-12bb97331649.png

6239df60-c22e-11eb-9e57-12bb97331649.png

于是我们就理所当然地想:有没有可以让这整张图中的字母大多数都能看清的方法呢?

很高兴,有的!

我们就要用到adaptiveThreshold(),它可以帮助我们得到局部自适应的阈值。(当然,先把图像分割,再用全局函数也不失为一种方法,不过相对比来说还是直接用adaptiveThreshold()来得更加方便快捷。

adaptive_mean是均值法自适应计算blockSize×blockSize邻域内的阈值,在这之后就可以进行二值化了。

6280c5ec-c22e-11eb-9e57-12bb97331649.png

因为是局部的阈值,所以就可以更加明确地在每一个地方都有比较好的区分,可以把大部分范围内的内容都更好地分割开来。

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 显示屏
    +关注

    关注

    30

    文章

    4671

    浏览量

    78685
  • 二值图像
    +关注

    关注

    0

    文章

    14

    浏览量

    8903
  • OpenCV
    +关注

    关注

    33

    文章

    651

    浏览量

    44411

原文标题:科普 | 简单图像处理:用用二值化吧!

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    使用Otsu阈值算法将灰度图像

    Otsu 算法是由日本学者OTSU于1979年提出的一种对图像进行的高效算法,又称“最大类间方差法”。当我们对一个图象进行
    发表于 10-28 06:49

    机语音控制方案设计2025新版

    一套高效、稳定且易用的茶机语音控制体系。通过集成先进的语音识别与处理技术,旨在实现用户对茶机各项功能的语音操控,全面提升用户的使用体验,充分满足家庭和办公等不同场景下的多样需求。
    的头像 发表于 07-22 17:02 555次阅读
    茶<b class='flag-5'>吧</b>机语音控制方案设计2025新版

    谐波怎么处理简单的方法

    ,如变频器、UPS电源、LED照明、计算机等电子设备。这些设备在工作时会产生非正弦波电流,从而在电网中形成谐波。常见的谐波次数为3次、5次、7次等奇次谐波。 、最简单的谐波处理方法 1. 增加系统短路容量    提高系统的短路
    的头像 发表于 07-13 16:35 1815次阅读
    谐波怎么<b class='flag-5'>处理</b>最<b class='flag-5'>简单</b>的方法

    使用k230,可以使用pipeline库,将输入的视频流进行处理吗?

    关于使用k230,可以使用pipeline库,将输入的视频流进行处理
    发表于 06-16 06:46

    K230 yolo识别例程中,怎么修改摄像头参数及AI推理输入图片参数,使其采集图像并将图像推给AI进行推理呢

    我尝试修改pipeline中的初始函数和getframe函数均没有办法在ide上显示图像,有没有办法修改呢? 设置为Sens
    发表于 04-25 07:51

    慧视图像处理板+VizSDK 为你拓展丰富的应用场景

    成都慧视能够深度定制RV1126、RK3399Pro、RK3588系列图像处理板,其中一个很重要的特点就是支持次开发,使用者能够根据我司自研的SDK结合应用场景打造专属的功能以更好地为项目服务
    的头像 发表于 03-04 17:45 757次阅读
    慧视<b class='flag-5'>图像</b><b class='flag-5'>处理</b>板+VizSDK   为你拓展丰富的应用场景

    OptiSystem应用:真实图像在光纤中传输后的恢复

    本案例的目的是仿真图像经过图像处理转化成进制信号之后,在光纤系统中进行传输,最后经过图像恢复得到传输后的
    发表于 03-03 09:26

    请问DLP471TE在投影图像(1bit图像)的时候,能达到的最高投影速率是多少?

    你好! 请问 DLP471TE 在投影图像(1bit图像)的时候,能达到的最高投影速率是多少? 产品手册上面写着 DLP471TE 支持60Hz的4K UHD 和 240Hz 的
    发表于 02-26 06:56

    图像采集卡:现代图像处理技术的关键组件

    在现代科技快速发展的背景下,图像处理技术已成为信息技术领域不可或缺的一部分。图像采集卡,作为连接计算机与各种图像采集设备的重要硬件组件,扮演着至关重要的角色。它不仅涉及
    的头像 发表于 02-20 10:42 922次阅读
    <b class='flag-5'>图像</b>采集卡:现代<b class='flag-5'>图像</b><b class='flag-5'>处理</b>技术的关键组件

    FPGA图像处理基础----实现缓存卷积窗口

    像素行与像素窗口 一幅图像是由一个个像素点构成的,对于一幅480*272大小的图片来说,其宽度是480,高度是272。在使用FPGA进行图像处理时,最关键的就是使用FPGA内部的存储资源对像
    的头像 发表于 02-07 10:43 1414次阅读
    FPGA<b class='flag-5'>图像</b><b class='flag-5'>处理</b>基础----实现缓存卷积窗口

    国产图像处理板 RV1126和RK3588该怎么选?

    很多人在选择智能图像处理板时,总是对不同性能级别的板卡十分纠结,像国产方面,有低端高性价比的RV1126,也有旗舰工业级性能的RK3588。很多时候大家都留言问,究竟该怎么选?其实还是那句话,要想
    的头像 发表于 01-21 17:53 2432次阅读
    国产<b class='flag-5'>化</b><b class='flag-5'>图像</b><b class='flag-5'>处理</b>板  RV1126和RK3588该怎么选?

    CMOS传感器的图像处理能力

    随着科技的飞速发展,图像处理技术已经成为我们日常生活中不可或缺的一部分。CMOS传感器作为图像捕捉的核心,其图像处理能力直接影响到成像质量。
    的头像 发表于 01-20 15:19 1274次阅读

    labview视觉助手 - machine vision - map defects,输出float图像,像素0.89*39496中的0.89是啥意思?

    labview视觉助手 - machine vision - map defects,输出float图像,像素0.89*39496中的0.89是啥意思? 无论是
    发表于 01-04 21:20

    TMS320C3x通用应用用户指南

    电子发烧友网站提供《TMS320C3x通用应用用户指南.pdf》资料免费下载
    发表于 12-24 16:18 1次下载
    TMS320C3x通用应<b class='flag-5'>用用</b>户指南

    DFT在图像处理中的作用 DFT在音频信号处理中的应用

    DFT在图像处理中的作用 离散傅里叶变换(Discrete Fourier Transform,简称DFT)是一种将信号从时域转换到频域的数学工具,它在图像处理领域有着广泛的应用。以下
    的头像 发表于 12-20 09:18 1843次阅读