科普 | 簡單圖像處理:用用二值化吧!
引入
一張圖像顯示在顯示屏上的時候,它斑斕多彩,輪廓分明(可你放的明明是張灰度圖?。?,而當(dāng)它被轉(zhuǎn)化到數(shù)字設(shè)備當(dāng)中的時候,我們看到的就將會是下面的情形:

是的,所有的色彩最后都會被變?yōu)橐粋€個數(shù)字,在0到255之間來回徘徊,在一個個矩陣中被圍困(突然詩意起來)??梢赃@樣說,矩陣就是圖像在數(shù)碼設(shè)備中的表現(xiàn)形式。而正是因為他們由這些數(shù)字組成,才給了我們機會去用數(shù)字的方法來支配他們。
對于一張圖片,我們往往不會對每一個地方都相同地感興趣,總有一些特殊東西才是我們的目標(biāo)。將目標(biāo)區(qū)域和不想要的背景區(qū)域區(qū)分開我們就可以對這些數(shù)字下手。下面我們就說道說道二值化的那些事兒~
二值化
說起二值化,我們可以先來看看二值圖像(百度上截的圖片)

二值圖像(Binary Image)是指圖像上的每一個像素只有兩種可能的取值或灰度等級狀態(tài)的圖像。通常來講就是我們常??匆姷摹胺呛诩窗住钡膱D像,也就是說,圖像像素的灰度值無論在什么數(shù)據(jù)類型中都只有最大值和最小值兩種取值。這種圖像色彩類型少,可以進(jìn)行高度的壓縮,利于節(jié)省儲存空間。
相應(yīng)的,二值化就是把非二值圖像經(jīng)過計算變成二值圖像。
在openCV4中有threshold()和adaptiveThreshold()可以來實現(xiàn)圖像的二值化。
那么下面就先來介紹前一種啦

輸入輸出的圖像以及閾值和最大值大家都應(yīng)該和好理解,那么什么是二值化方法的標(biāo)志參數(shù)呢?
下面的表中大致就是可能會用的的一些標(biāo)志參數(shù)和它們的含義:

下圖是前五種方法做二值化之后的信號示意圖:

如同標(biāo)志參數(shù)的作用介紹中說的,前五中標(biāo)志參數(shù)都需要人為地設(shè)定一個閾值,之后才能進(jìn)行二值化。人們進(jìn)行二值化的目的往往是為了把目標(biāo)物體和其他的東西分離開,形成圖像的分割,但是有的時候為了分別這兩者而設(shè)定的閾值往往不是那么簡單就可以分得出來的,或者說,在對原始圖像的灰度值分布不是那么了解的情況下是很難設(shè)定到自己想要的那種閾值的。
于是就有了下面的兩個標(biāo)志參數(shù)可以用來獲取閾值:THRESH_OTSU(大津法)THRESH_TRIANGLE(三角形法)
問
那么什么是大津法呢
百度百科教我的:大津法也就是最大類間方差法是由日本學(xué)者大津(Nobuyuki Otsu)于1979年提出的,是一種自適合于雙峰情況的自動求取閾值的方法,簡稱OTSU。它是按圖像的灰度特性,將圖像分成背景和目標(biāo)兩部分。背景和目標(biāo)之間的類間方差越大,說明構(gòu)成圖像的兩部分的差別越大,當(dāng)部分目標(biāo)錯分為背景或部分背景錯分為目標(biāo)都會導(dǎo)致兩部分差別變小。因此,使類間方差最大的分割意味著錯分概率最小。

這是某一張圖像的灰度直方圖,我們可以看到它其實很明顯地呈現(xiàn)出了適合利用大津法求閾值的雙峰情況(灰度大都集中在某兩個分離的區(qū)域之間),對某一假設(shè)的灰度值閾值將圖像的灰度值分成背景和目標(biāo)兩部分,計算兩組灰度值之間的類間方差,得到的方差值大致如圖中的紅色點所示。于是理所當(dāng)然的,方差最高點所對應(yīng)的灰度值正是我們能夠合理分開目標(biāo)和背景的閾值。
但是由于這兩種方法往往是基于全局閾值,當(dāng)圖像中有一部分過度曝光或者說有陰影遮擋時,用這樣的閾值選取方法就會顯得有點不太好。
比如說,當(dāng)你晚上寫下一篇英語作文,想要拍照上傳給老師批改,而在上傳到某掃描王軟件時,往往就會發(fā)生這樣的事情:


于是我們就理所當(dāng)然地想:有沒有可以讓這整張圖中的字母大多數(shù)都能看清的方法呢?
很高興,有的!
我們就要用到adaptiveThreshold(),它可以幫助我們得到局部自適應(yīng)的閾值。(當(dāng)然,先把圖像分割,再用全局函數(shù)也不失為一種方法,不過相對比來說還是直接用adaptiveThreshold()來得更加方便快捷。
adaptive_mean是均值法自適應(yīng)計算blockSize×blockSize鄰域內(nèi)的閾值,在這之后就可以進(jìn)行二值化了。


因為是局部的閾值,所以就可以更加明確地在每一個地方都有比較好的區(qū)分,可以把大部分范圍內(nèi)的內(nèi)容都更好地分割開來。
End 
聲明:部分內(nèi)容來源于網(wǎng)絡(luò),僅供讀者學(xué)術(shù)交流之目的。文章版權(quán)歸原作者所有。如有不妥,請聯(lián)系刪除。

