python图像处理(二值化)

Posted 嵌入式-老费

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python图像处理(二值化)相关的知识,希望对你有一定的参考价值。

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        边缘检测之后,一般需要对图像进行二值化处理。简单地说,所谓的二值化,就是小于阈值的像素点全部设置为0,也就是黑色点;大于阈值的点,全部设置为255,也就是白色,逻辑还是比较简单的。大家也许会说,为什么要做这个操作?主要还是为了对相似的像素点进行归类使用,让相同属性的像素点靠在一起。

        我们不妨挑一个像素值120作为阈值,看看二值化后的lena图像是什么样子的,

         如图所示,做了二值化后的lena,只有白色和黑色两种像素点。除了一些噪声点之外,大部分临近的点都被组合到了一起,这样比较有利于后期的分割处理。

1、二值化算法

        单看二值化算法,还是比较简单的。本身就是对所有的像素点遍历下,小于某一个阈值,设置为0;大于某一个阈值,设置为255。代码如下所示,

\'\'\'
binary image
\'\'\'

def generate_binary_image(picture, threshold):
    for i in range(picture.shape[0]):
        for j in range(picture.shape[1]):
      

以上是关于python图像处理(二值化)的主要内容,如果未能解决你的问题,请参考以下文章

如何用matlab计算二值化图中白色区域的像素点个数

Python使用openCV把原始彩色图像转化为灰度图使用OpenCV把图像二值化(仅仅包含黑色和白色的简化版本)基于自适应阈值预处理(adaptive thresholding)方法

图像二值化处理Java

Python机器视觉--OpenCV进阶(核心)--图像二值化

opencv python:图像二值化

图像验证码识别——灰度化和二值化