上述直方图两峰值没有间距,故未能较好体现双峰法的作用.
OTSU法
不难发现,上述双峰法具有明显的缺陷,因为直方图是不连续的,有非常多尖峰和抖动,要找到准确的极值点十分困难。日本工程师大津展之为这个波谷找到了一个合适的数学表达,并于1979年发表。这个二值化方法称为大津算法(Otsu’s method)。
从大津法的原理上来讲,该方法又称作最大类间方差法,因为按照大津法求得的阈值进行图像二值化分割后,前景与背景图像的类间方差最大。它被认为是图像分割中阈值选取的最佳算法,计算简单,不受图像亮度和对比度的影响,因此在数字图像处理上得到了广泛的应用。它是按图像的灰度特性,将图像分成背景和前景两部分。因方差是灰度分布均匀性的一种度量,背景和前景之间的类间方差越大,说明构成图像的两部分的差别越大,当部分前景错分为背景或部分背景错分为前景都会导致类间差别变小。因此,使类间方差最大的分割意味着错分概率最小。
优化目标
k
∗
=
arg
max
k
∈
L
σ
2
k^* = \mathop { \arg \max } \limits _{k\in L} \sigma ^2
k∗=k∈Largmaxσ2
σ
2
=
(
M
G
∗
p
1
−
m
)
2
p
1
(
1
−
p
1
)
\sigma ^2 = \frac{(MG*p1-m)^2}{p1(1-p1)}
σ2=p1(1−p1)(MG∗p1−m)2
推导
由所选定的阈值
k
k
k 将所有像素分为两类 C1( 小于等于
k
k
k ) 和 C2(大于
k
k
k ),两类像素的均值分别为
m
1
m1
m1、
m
2
m2
m2,全局均值为
M
G
MG
MG.属于 C1、C2 的概率分别为
p
1
p1
p1、
p
2
p2
p2. L 是图像的像素级(0~255)
根据方差定义,得到
σ
2
=
p
1
(
m
1
−
M
G
)
2
p
2
(
m
2
−
M
G
)
2
\sigma ^2 = p1(m1-MG)^2 + p2(m2-MG)^2
σ2=p1(m1−MG)2+p2(m2−MG)2
又
p
1
∗
m
1
p
2
∗
m
2
=
M
G
p1*m1+p2*m2=MG
p1∗m1+p2∗m2=MG
p
1
p
2
=
1
p1+p2=1
p1+p2=1
其中,
p
1
=
∑
i
=
0
k
p
i
p1=\sum _{i=0} ^k p_i
p1=i=0∑kpi
m
1
=
∑
i
=
0
k
i
p
i
p
1
m1 = \frac{\sum _{i=0} ^k ip_i}{p1}
m1=p1∑i=0kipi
m
2
=
∑
i
=
k
1
L
i
p
i
p
2
m2 = \frac{\sum _{i=k+1} ^L ip_i}{p2}
m2=p2∑i=k+1Lipi
p
i
p_i
pi 是灰度值为 i 的像素点出现的频率(或概率)
则
σ
2
=
p
1
p
2
(
m
1
−
m
2
)
2
\sigma ^2 = p1p2(m1-m2)^2
σ2=p1p2(m1−m2)2.
进一步化简上式,
M
G
=
∑
i
=
0
L
i
p
i
MG=\sum _{i=0} ^{L} ip_i
MG=i=0∑Lipi
m
=
∑
i
=
0
k
i
p
i
m=\sum _{i=0} ^{k} ip_i
m=i=0∑kipi
其中,
m
m
m 是灰度阈值
k
k
k 的累加均值(相对整张图片而言的均值,而 m1 是 C1 类的类内均值),
收集整理了一份《2024年最新物联网嵌入式全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升的朋友。
一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人
都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!