Python-Pillow-OTSU算法

本文介绍了大津(OTSU)算法,一种用于图像二值化的阈值确定方法,旨在最大化背景和前景之间的类间方差。文章详细阐述了算法的公式推导步骤,并提供了使用Python的Pillow库实现OTSU算法进行图像灰度化和二值化的示例。此外,还提到了利用opencv库进行OTSU算法的实现,以及通过Matplotlib绘制图像像素统计图。
摘要由CSDN通过智能技术生成

OTSU算法介绍

大津法(OTSU),由日本学者大津于1979年提出。
确定图像二值化分割的阈值,将一个灰度图像退化为二值图像。

算法假定该图像根据双模直方图(前景像素和背景像素)把包含两类像素,于是它要计算能将两类分开的最佳阈值,使得它们的类内方差最小;由于两两平方距离恒定,所以即它们的类间方差最大。

按图像的灰度特性,将图像分成背景和前景两部分。
因方差是灰度分布均匀性的一种度量,背景和前景之间的类间方差越大,说明构成图像的两部分的差别越大.

对于图像Image,图像的大小为M×N
前景(即目标)和背景的分割阈值记作T
属于前景的像素点数占整幅图像的比例为w0,其平均灰度u0
属于背景的像素点数占整幅图像的比例为w1,其平均灰度u1
图像中像素的灰度值小于阈值T的像素个数记作n0
图像中像素的灰度值大于阈值T的像素个数记作n1
图像的总平均灰度记为u,类间方差记为g。

–算法公式推导步骤:

(1) w0=n0/ M×N #前景像素比例
(2) w1=n1/ M×N #背景像素比例
(3) n0+n1=M×N #总像素个数
(4) w0+w1=1 #总比例
(5) u=w0 * u0 + w1 * u1 #图像总平均灰度值
(6) g=w0 * (u0-u)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值