美文网首页
[图像增强][灰度变换]4. 二值化

[图像增强][灰度变换]4. 二值化

作者: 砥砺前行的人 | 来源:发表于2021-11-08 18:16 被阅读0次

1. 基本原理

二值化,属于非线性变换,变换关系可如下:


简单二值化

\begin{equation} f(x)=\left\{ \begin{array}{rcl} 0 & & { x \leq T} \\ 255 & & { x > T} \end{array} \right. \end{equation}

多段二值化

\begin{equation} f(x)=\left\{ \begin{array}{rcl} 0 & & { x \leq T_1} \\ 255 & & { T_2 > x > T_1} \\ 0 & & { T_2 \leq x } \\ \end{array} \right. \end{equation}

使用二值化,最大的难点是确定阈值,例如想要通过阈值突出ROI,则需要确定一个合适的阈值,将其他区域变黑或者变白,使ROI的轮廓可以更清晰。而二值化本身并不难理解。

2. 使用场景

突出 ROI。

3. 代码示例

考虑如下灰度图像:


代码如下:

import cv2 as cv
import numpy as np
from math import *
import matplotlib.pyplot as plt


# 按灰度读取一张图片
img = cv.imread("dog.jpeg",cv.IMREAD_GRAYSCALE)
ret,img = cv.threshold(img,255,255,cv.THRESH_TRUNC)
ret,thresh1 = cv.threshold(img,140,255,cv.THRESH_BINARY)
ret,thresh2 = cv.threshold(img,140,255,cv.THRESH_BINARY_INV)
ret,thresh3 = cv.threshold(img,140,255,cv.THRESH_TRUNC)
ret,thresh4 = cv.threshold(img,140,255,cv.THRESH_TOZERO)
ret,thresh5 = cv.threshold(img,140,255,cv.THRESH_TOZERO_INV)
titles = ['img','BINARY','BINARY_INV','TRUNC','TOZERO','TOZERO_INV']
images = [img,thresh1,thresh2,thresh3,thresh4,thresh5]
for i in range(6):
    plt.subplot(2,3,i+1),plt.imshow(images[i],'gray')
    plt.title(titles[i])
    plt.xticks([]),plt.yticks([])
plt.show()

输出结果如下:


结果图

各种 flag 关系图如下:


关系图
Flag 描述
THRESH_BINARY 低于阈值设置为0,高于则设置为maxValue
THRESH_BINARY_INV 低于阈值设置为 maxValue,高于则设置为 0
THRESH_TRUNC 高于阈值则设定为指定值
THRESH_TOZERO 低于阈值则设置为0
THRESH_TOZERO_INV 高于阈值则设置为0

相关文章

  • [图像增强][灰度变换]4. 二值化

    1. 基本原理 二值化,属于非线性变换,变换关系可如下: 使用二值化,最大的难点是确定阈值,例如想要通过阈值突出R...

  • exp1-空间域图像增强

    图像灰度变换 计算显示图像直方图、直方图均衡化 空间域图像平滑、锐化

  • 2019-05-23 OpenCV学习

    16图像二值化 17超大图像二值化 将超大图像,分块,用局部二值化,或者将图片resize后进行二值化。 或者使用...

  • 二值图像分析之轮廓分析

    图像的二值化 在先前的文章二值图像分析:案例实战(文本分离+硬币计数)中已经介绍过,什么是图像的二值化以及二值化的...

  • 直方图

    画出图像直方图 直方图归一化 这种归一化直方图的操作被称作灰度变换(Grayscale Transformatio...

  • 日更挑战(2)-空间域图像增强

    直方图处理 直方图均衡化,直方图规定化,局部增强 图像算术/逻辑操作增强 数乘:增加平均灰度值 减法:去除背景 空...

  • openCV:图像的阈值处理

    阈值处理 定义 阈值处理即图像二值化。是图像分割的一种最简单的方法。二值化可以把灰度图像转换成二值图像。把大于某个...

  • 阈值处理

    阈值处理 阈值处理即图像二值化。是图像分割的一种最简单的方法。二值化可以把灰度图像转换成二值图像。把大于某个临界灰...

  • [图像增强][灰度变换]5. 直方图均衡化

    1. 基本原理 灰度直方图,表示图像中不同灰度值所出现的频数,通过坐标轴绘制成直方图用以表示。考虑如下图片: 灰度...

  • Android 图像灰度化、线性灰度变化、二值化处理方法

    1、图像灰度化: 2、对图像进行线性灰度变化 3、对图像进行二值化

网友评论

      本文标题:[图像增强][灰度变换]4. 二值化

      本文链接:https://www.haomeiwen.com/subject/ifguzltx.html