iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python数字图像处理之图像自动阈值分割示例
  • 194
分享到

python数字图像处理之图像自动阈值分割示例

2024-04-02 19:04:59 194人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

目录引言1、threshold_otsu2、threshold_yen3、threshold_li4、threshold_isodata5、threshold_adaptive引言

引言

图像阈值分割是一种广泛应用的分割技术,利用图像中要提取的目标区域与其背景在灰度特性上的差异,把图像看作具有不同灰度级的两类区域(目标区域和背景区域)的组合,选取一个比较合理的阈值,以确定图像中每个像素点应该属于目标区域还是背景区域,从而产生相应的二值图像。

在skimage库中,阈值分割的功能是放在filters模块中。

我们可以手动指定一个阈值,从而来实现分割。也可以让系统自动生成一个阈值,下面几种方法就是用来自动生成阈值。

1、threshold_otsu

基于Otsu的阈值分割方法,函数调用格式:

skimage.filters.threshold_otsu(image, nbins=256)

参数image是指灰度图像,返回一个阈值。

from skimage import data,filters
import matplotlib.pyplot as plt
image = data.camera()
thresh = filters.threshold_otsu(image)   #返回一个阈值
dst =(image <= thresh)*1.0   #根据阈值进行分割
plt.figure('thresh',figsize=(8,8))
plt.subplot(121)
plt.title('original image')
plt.imshow(image,plt.cm.gray)
plt.subplot(122)
plt.title('binary image')
plt.imshow(dst,plt.cm.gray)
plt.show()

返回阈值为87,根据87进行分割得下图:

2、threshold_yen

使用方法同上:

thresh = filters.threshold_yen(image)

返回阈值为198,分割如下图:

3、threshold_li

使用方法同上:

thresh = filters.threshold_li(image)

返回阈值64.5,分割如下图:

4、threshold_isodata

阈值计算方法:

threshold = (image[image <= threshold].mean() +image[image > threshold].mean()) / 2.0

使用方法同上:

thresh = filters.threshold_isodata(image)

返回阈值为87,因此分割效果和threshold_otsu一样。

5、threshold_adaptive

调用函数为:

skimage.filters.threshold_adaptive(image, block_size, method='gaussian')

block_size: 块大小,指当前像素的相邻区域大小,一般是奇数(如3,5,7。。。)

method: 用来确定自适应阈值的方法,有'mean', 'generic', 'gaussian' 和 'median'。

省略时默认为gaussian

该函数直接访问一个阈值后的图像,而不是阈值。

from skimage import data,filters
import matplotlib.pyplot as plt
image = data.camera()
dst =filters.threshold_adaptive(image, 15) #返回一个阈值图像
plt.figure('thresh',figsize=(8,8))
plt.subplot(121)
plt.title('original image')
plt.imshow(image,plt.cm.gray)
plt.subplot(122)
plt.title('binary image')
plt.imshow(dst,plt.cm.gray)
plt.show()

大家可以修改block_size的大小和method值来查看更多的效果。如:

dst1 =filters.threshold_adaptive(image,31,'mean') 
dst2 =filters.threshold_adaptive(image,5,'median')

两种效果如下:

以上就是python数字图像处理之图像自动阈值分割示例的详细内容,更多关于Python数字图像自动阈值分割的资料请关注编程网其它相关文章!

--结束END--

本文标题: python数字图像处理之图像自动阈值分割示例

本文链接: https://www.lsjlt.com/news/118917.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python数字图像处理之图像自动阈值分割示例
    目录引言1、threshold_otsu2、threshold_yen3、threshold_li4、threshold_isodata5、threshold_adaptive引言 ...
    99+
    2022-11-11
  • python怎么实现图像自动阈值分割
    本文小编为大家详细介绍“python怎么实现图像自动阈值分割”,内容详细,步骤清晰,细节处理妥当,希望这篇“python怎么实现图像自动阈值分割”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。引言图像阈值分割是一种...
    99+
    2023-07-02
  • Python图像运算之图像阈值化处理详解
    目录一.图像阈值化二.固定阈值化处理1.二进制阈值化2.反二进制阈值化3.截断阈值化4.阈值化为05.反阈值化为0三.自适应阈值化处理四.总结一.图像阈值化 图像阈值化(Binari...
    99+
    2022-11-10
  • python 图像处理——图像分割及经典案例篇之基于颜色的图像分割
    前言 作者在第一部分向大家介绍了图像处理的基础知识,第二部分介绍了图像运算和图像增强,接下来第三部分我们将详细讲解图像分割及图像处理经典案例,该部分属于高阶图像处理知识,能进一步加深我们的理解和实践能...
    99+
    2023-09-04
    图像处理 python 计算机视觉
  • python数字图像处理之图像的批量处理
    目录正文图片集合函数批量读取批量转换为灰度图批量保存正文 有些时候,我们不仅要对一张图片进行处理,可能还会对一批图片处理。这时候,我们可以通过循环来执行处理,也可以调用程序自带的图片...
    99+
    2022-11-11
  • python数字图像处理之图像简单滤波实现
    目录引言1、sobel算子2、roberts算子3、scharr算子4、prewitt算子5、canny算子6、gabor滤波7、gaussian滤波8、median9、水平、垂直边...
    99+
    2022-11-11
  • python之数字图像处理方式
    目录基本概念图像增强整体代码线性变换分段线性变换对数变换幂律变换直方图图像滤波平滑图像锐化图像总结基本概念 数字图像定义 对于一幅图像,我们可以将其放入坐标系中,这里取图像左上定点为...
    99+
    2023-05-19
    python数字图像处理 python数字图像 python图像处理
  • python数字图像处理像素的访问与裁剪示例
    目录引言彩色图片访问方式为:灰度图片访问方式为:例1:输出小猫图片的G通道中的第20行30列的像素值例2:显示红色单通道图片例3:对小猫图片随机添加椒盐噪声例4:对小猫图片进行裁剪例...
    99+
    2022-11-11
  • Python+OpenCV图像处理之直方图统计的示例分析
    这篇文章主要为大家展示了“Python+OpenCV图像处理之直方图统计的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Python+OpenCV图像处理之直方图统计的示例分析”这篇文章...
    99+
    2023-06-22
  • python数字图像处理之对比度与亮度调整示例
    目录skimage包的exposure模块1、gamma调整2、log对数调整3、判断图像对比度是否偏低4、调整强度skimage包的exposure模块 图像亮度与对比度的调整,是...
    99+
    2022-11-11
  • Python实现数字图像处理染色体计数示例
    目录一、实验内容 二、实验步骤三、代码四、结果一、实验内容  对于下面这幅图像,编程实现染色体计数,并附简要处理流程说明。 二、实验步骤 1.中值滤波 2.图像...
    99+
    2022-11-11
  • python数字图像处理之基本图形的绘制
    目录引言1、画线条2、画圆3、多边形4、椭圆5、贝塞儿曲线6、画空心圆7、空心椭圆引言 图形包括线条、圆形、椭圆形、多边形等。 在skimage包中,绘制图形用的是draw模块,不要...
    99+
    2022-11-11
  • Python中图像量化处理的示例分析
    小编给大家分享一下Python中图像量化处理的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一.图像量化处理原理量化(Quantization)旨在将图像...
    99+
    2023-06-29
  • Python线性点运算数字图像处理示例详解
    目录点运算定义分类线性点运算分段线性点运算非线性点运算对数变换幂次变换点运算 定义 分类 线性点运算 例子: 分段线性点运算 非线性点运算 对数变换 幂次变换 ...
    99+
    2022-11-12
  • python数字图像处理之估计噪声参数
    估计噪声参数 周期噪声的参数通常是通过检测图像的傅里叶谱来估计的。 只能使用由传感器生成的图像时,可由一小片恒定的背景灰度来估计PDF的参数。 来自图像条带的数据的最简单用途是,计算...
    99+
    2022-11-12
  • Python基本运算几何运算处理数字图像示例
    目录平移镜像水平镜像垂直镜像旋转以图像左上角为旋转中心以图像中心为旋转中心缩放插值算法最近邻插值算法双线性插值算法三次内插法改变图像中物体对象(像素)之间的空间关系。 平移 #...
    99+
    2022-11-12
  • python数字图像处理之边缘轮廓检测
    目录引言1、查找轮廓(find_contours)2、逼近多边形曲线引言 在前面的python数字图像处理简单滤波 中,我们已经讲解了很多算子用来检测边缘,其中用得最多的c...
    99+
    2022-11-11
  • educoder之Python数值计算库Numpy图像处理详解
    目录NumPy   Python数值计算重要库读取和显示图像图像的大小调整图像的翻转图像缩放和裁剪颜色通道处理图像滤波NumPy   Pyth...
    99+
    2023-05-17
    Python 数值计算库Numpy Python Numpy图像处理
  • Python数字图像处理代数之加减乘运算
    目录代数运算定义加法运算减法运算乘法运算代数运算 定义 加法运算 图像叠加需要满足该条件:两幅图像的像素必须相同(尺寸,形状) 减法运算 乘法运算 1、图像的局部显...
    99+
    2022-11-12
  • python数字图像处理skimage读取显示与保存图片
    目录引言一、从外部读取图片并显示二、程序自带图片三、保存图片四、图片信息引言 skimage提供了io模块,顾名思义,这个模块是用来图片输入输出操作的。为了方便练习,也提供一个dat...
    99+
    2022-11-11
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作