天天看點

模式識别從0建構—大津法

⌛️本文狀态:已完結✔️

¶一、算法原理

大津法是一種自适應的灰階圖像門檻值算法。可以用該算法實作圖像分割。

圖像有L階灰階,n_i 是灰階為 i 的像素數,圖像總像素數 N=n_1+n_2+…+n_L

灰階為 i 的像素機率:p_i=\dfrac{n_i}{N} 。

類間方差:

$$ \sigma^2_B(k)=\omega_1(\mu_1-\mu)^2+\omega_2(\mu_2-\mu)^2 $$

其中:

$$ \mu_1=\sum_{i=0}^ki\cdotp p(i|C_1)=\sum_{i=0}^ki\cdotp\dfrac{p_i}{\sum^k_{i=0}p_i}=\dfrac{\sum_{i=0}^ki\cdotp p_i}{\omega_1} $$ $$ \mu_2=\dfrac{\sum^L_{i=k+1}ip_i}{\omega_2} $$ $$ \mu=\sum_{i=1}^Li\cdotp p_i $$ $$ \omega_1=\sum_{i=1}^kp_i $$ $$ \omega_2=\sum_{i=k+1}^Lp_i=1-\omega_1 $$

其中,選取前k個像素等級為背景,\mu_1 為背景均值,\mu_2 為前景均值,\mu 為總均值。\omega_1 為背景機率,\omega_2 為前景機率。

做實驗時,隻需周遊k,選取可以使類間方差最大的k為最終的門檻值即可。

¶二、實驗結果

使用MATLAB完成實驗,源代碼及圖檔已上傳到Github。

實驗結果如下圖所示,第一張圖檔為原始圖檔,第二張圖檔為原始圖檔的灰階分布。第三張圖檔為大津法分割後的二進制圖檔。第四張為第三張圖檔經過5*5的核卷積之後,得到的均值濾波後的結果。

模式識别從0建構—大津法