本發(fā)明實(shí)施例涉及圖像處理技術(shù),尤其涉及一種圖像二值化處理方法、裝置、設(shè)備和存儲介質(zhì)。
背景技術(shù):
圖像二值化是光學(xué)字符識別的重要步驟,通常情況下二值化圖像的效果對于圖像的其他處理起著重要的作用,二值化圖像的質(zhì)量不高時,會影響圖像處理的準(zhǔn)確性,其中,圖像的處理包括字符識別、字符切割、字符。在二值化處理中,確定二值化閾值是關(guān)鍵。
通常確定二值化閾值的方法有百分比法和otsu(最大類間方差)法。但是這兩種方法確定的二值化閾值不準(zhǔn)確,導(dǎo)致二值化的處理效果差。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明實(shí)施例提供一種圖像二值化處理方法、裝置、設(shè)備和存儲介質(zhì),提高了二值化閾值計(jì)算的準(zhǔn)確性,增強(qiáng)了二值化的處理效果。
第一方面,本發(fā)明實(shí)施例提供了一種圖像二值化處理方法,所述方法包括:
從預(yù)設(shè)二值化閾值范圍選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像;
對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,將每個所述二值化圖像求和得到的最大值作為該二值化圖像的特征值;
判斷所述特征值是否大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值,若是,則計(jì)算所述特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值;
將所述比值最大的二值化圖像對應(yīng)的二值化閾值作為目標(biāo)二值化閾值。
進(jìn)一步的,從預(yù)設(shè)二值化閾值范圍選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像,包括:
從預(yù)設(shè)二值化閾值范圍的第一端值開始,按預(yù)設(shè)步長取值直到所述預(yù)設(shè)二值化閾值范圍的第二端值,得到多個二值化閾值;
從所述多個二值化閾值中選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像。
進(jìn)一步的,對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,將每個所述二值化圖像求和得到的最大值作為該二值化圖像的特征值包括:
計(jì)算每個所述二值化圖像中每行的黑點(diǎn)個數(shù);
對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,得到多個求和結(jié)果;
選取所述多個求和結(jié)果中的最大值,作為所述最大值對應(yīng)的二值化圖像的特征值。
進(jìn)一步的,根據(jù)樣本圖像的像素點(diǎn)個數(shù)和/或樣本圖像的黑點(diǎn)個數(shù)確定所述預(yù)設(shè)的黑點(diǎn)數(shù)閾值,其中,所述樣本圖像的黑點(diǎn)為灰度值小于樣本圖像二值化閾值的點(diǎn)。
第二方面,本發(fā)明實(shí)施例提供了一種圖像二值化處理裝置,所述裝置包括:
處理模塊,用于從預(yù)設(shè)二值化閾值范圍選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像;
特征值計(jì)算模塊,用于對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,將每個所述二值化圖像求和得到的最大值作為該二值化圖像的特征值;
判斷模塊,用于判斷所述特征值是否大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值,若是,則計(jì)算所述特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值;
目標(biāo)二值化閾值確定模塊,用于將所述比值最大的二值化圖像對應(yīng)的二值化閾值作為目標(biāo)二值化閾值。
進(jìn)一步的,所述處理模塊具體用于:
從預(yù)設(shè)二值化閾值范圍的第一端值開始,按預(yù)設(shè)步長取值直到所述預(yù)設(shè)二值化閾值范圍的第二端值,得到多個二值化閾值;
從所述多個二值化閾值中選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像。
進(jìn)一步的,所述特征值計(jì)算模塊具體用于:
計(jì)算每個所述二值化圖像中每行的黑點(diǎn)個數(shù);
對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,得到多個求和結(jié)果;
選取所述多個求和結(jié)果中的最大值,作為所述最大值對應(yīng)的二值化圖像的特征值。
進(jìn)一步的,根據(jù)樣本圖像的像素點(diǎn)個數(shù)和/或樣本圖像的黑點(diǎn)個數(shù)確定所述預(yù)設(shè)的黑點(diǎn)數(shù)閾值,其中,所述樣本圖像的黑點(diǎn)為灰度值小于樣本圖像二值化閾值的點(diǎn)。
第三方面,本發(fā)明實(shí)施例提供了一種計(jì)算機(jī)設(shè)備,包括:
一個或多個處理器;
存儲器,用于存儲一個或多個程序;
所述一個或多個程序被所述一個或多個處理器執(zhí)行,使得所述一個或多個處理器實(shí)現(xiàn)如本發(fā)明實(shí)施例中任一所述的圖像二值化處理方法。
第四方面,本發(fā)明實(shí)施例提供了一種計(jì)算機(jī)可讀存儲介質(zhì),其上存儲有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時實(shí)現(xiàn)如本發(fā)明實(shí)施例中任一所述的圖像二值化處理方法。
本發(fā)明實(shí)施例中,通過從預(yù)設(shè)二值化閾值范圍選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像,然后根據(jù)每個二值化圖像中的連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和計(jì)算每個二值化圖像的特征值,當(dāng)所述特征值大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值時,計(jì)算所述特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值,將所述比值最大的二值化圖像對應(yīng)的二值化閾值作為目標(biāo)二值化閾值。提高了二值化閾值計(jì)算的準(zhǔn)確性,增強(qiáng)了二值化的處理效果。
附圖說明
圖1a是本發(fā)明實(shí)施例一中的一種圖像二值化處理方法的流程圖;
圖1b是本發(fā)明實(shí)施例一中所適用的一種紙幣冠字號區(qū)域的二值化圖像;
圖1c是本發(fā)明實(shí)施例一中所適用的一種紙幣冠字號區(qū)域的二值化圖像;
圖1d是本發(fā)明實(shí)施例一中所適用的一種紙幣冠字號區(qū)域的二值化圖像;
圖1e是本發(fā)明實(shí)施例一中所適用的一種紙幣冠字號區(qū)域的二值化圖像;
圖2是本發(fā)明實(shí)施例二中的一種圖像二值化處理方法的流程圖;
圖3是本發(fā)明實(shí)施例三中的一種圖像二值化處理方法的流程圖;
圖4是本發(fā)明實(shí)施例四中的一種圖像二值化處理裝置的結(jié)構(gòu)示意圖;
圖5是本發(fā)明實(shí)施例五中的一種計(jì)算機(jī)設(shè)備的結(jié)構(gòu)示意圖。
具體實(shí)施方式
下面結(jié)合附圖和實(shí)施例對本發(fā)明作進(jìn)一步的詳細(xì)說明??梢岳斫獾氖?,此處所描述的具體實(shí)施例僅僅用于解釋本發(fā)明,而非對本發(fā)明的限定。另外還需要說明的是,為了便于描述,附圖中僅示出了與本發(fā)明相關(guān)的部分而非全部結(jié)構(gòu)。
實(shí)施例一
圖1a是本發(fā)明實(shí)施例一提供的一種圖像二值化處理方法的流程圖,本實(shí)施例可適用于對圖像進(jìn)行二值化處理的情況,該方法可以由本發(fā)明實(shí)施例中的二值化處理裝置來執(zhí)行,該裝置可以由軟件和/或硬件的方式實(shí)現(xiàn)。如圖1a所示,該方法具體可以包括如下步驟:
s110、從預(yù)設(shè)二值化閾值范圍選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像。
具體的,在對圖像二值化處理的過程中,首先需要將彩色圖像轉(zhuǎn)換為灰度圖像,然后選擇合適的二值化閾值對灰度圖進(jìn)行處理,得到二值化圖像。二值化閾值的確定直接影響二值化的處理效果。預(yù)設(shè)二值化閾值范圍可以給定滿足預(yù)設(shè)條件的二值化閾值的最小值和最大值,介于最小值和最大值之間的二值化閾值構(gòu)成了預(yù)設(shè)二值化閾值范圍。
在一個具體的例子中,待測圖像以包含紙幣冠字號的區(qū)域?yàn)槔?,將待測圖像的該區(qū)域稱為特征區(qū)域。按照待測圖像獲取過程中分辨率的大小,將特征區(qū)域按60×120進(jìn)行劃分,即將特征區(qū)域在行方向上分為60個像素點(diǎn),在列方向上分為120個像素點(diǎn)。可選的,冠字號字樣的高度為30,需要說明的是,冠字號是紙幣的特有屬性,其高度是固定不變的,在此用像素點(diǎn)來表示,并不代表冠字號的實(shí)際高度數(shù)值。在待測圖像中,統(tǒng)計(jì)各個灰度值的像素點(diǎn)的個數(shù),若灰度值為0的像素點(diǎn)的個數(shù)記為n0、灰度值為1的像素點(diǎn)的個數(shù)記為n1、灰度值為2的像素點(diǎn)的個數(shù)記為n2……灰度值為n的像素點(diǎn)的個數(shù)記為nn,其中,n取正整數(shù),0≤n≤255,開發(fā)人員根據(jù)經(jīng)驗(yàn)設(shè)定該特征區(qū)域的冠字號的黑點(diǎn)個數(shù)一般在1100到1300之間。示例性的,統(tǒng)計(jì)n0+n1+…+n20的和,記為a,統(tǒng)計(jì)n0+n1+…+n19的和,記為a1,統(tǒng)計(jì)n0+n1+…+n30的和,記為b,統(tǒng)計(jì)n0+n1+…+n29的和,記為b1,若a大于1100且a1小于1100(即灰度值≤20的像素點(diǎn)的個數(shù)之和大于1100,灰度值≤19的像素點(diǎn)的個數(shù)之和小于1100),則將20作為預(yù)設(shè)二值化閾值范圍中最小的二值化閾值,若b大于3000且b1小于3000(即灰度值≤30的像素點(diǎn)的個數(shù)之和大于3000,灰度值≤29的像素點(diǎn)的個數(shù)之和小于3000),則將30作為預(yù)設(shè)二值化閾值范圍中最大的二值化閾值,由此確定的二值化閾值的范圍是20~30。
在確定了預(yù)設(shè)的二值化閾值范圍后,從預(yù)設(shè)的二值化閾值范圍中選取至少兩個二值化閾值對待測圖像進(jìn)行二值化處理,將小于二值化閾值的點(diǎn)灰度值用0表示,記為黑點(diǎn),大于二值化閾值的點(diǎn)灰度值用255表示,記為白點(diǎn)。示例性的,圖1b、圖1c、圖1d和圖1e分別示出了用四種不同的二值化閾值對紙幣冠字號區(qū)域進(jìn)行二值化處理后的二值化圖像,需要說明的是,上述四個二值化圖像僅作為示意所用,僅為了說明利用不同的二值化閾值對相同的圖像進(jìn)行處理會得到不同的二值化圖像,且二值化圖像的清晰程度和選取的二值化閾值有關(guān),選取不同的二值化閾值則會有不同效果的二值化圖像。如圖1b和圖1e所示的二值化圖像中除了冠字號字符的黑點(diǎn)外,圖像背景中包含了其他黑點(diǎn),其他黑點(diǎn)可以是待測圖像中存在的背景圖案等,該背景圖案二值化處理后得到的黑點(diǎn)稱為噪聲。通過圖1b和圖1e可以看出,在得到二值化圖像圖1b和圖1e的過程中應(yīng)用的二值化閾值的處理結(jié)果產(chǎn)生的噪聲較多。如圖1c所示的二值化圖像中,可以看出,冠字號并不能清晰的顯示,造成了二值化模糊的情形。如圖1d所示的二值化圖像中,可以看出,冠字號能清晰顯示,且沒有噪聲。通過圖1b、圖1c、圖1d和圖1e可以看出,應(yīng)用本發(fā)明實(shí)施例提供的計(jì)算方法得到的二值化閾值去處理待測圖像,得到的圖1d的二值化圖像的效果與其他三個二值化圖像相比,噪聲少且避免了二值化模糊。
s120、對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,將每個所述二值化圖像求和得到的最大值作為該二值化圖像的特征值。
其中,任意連續(xù)預(yù)設(shè)行數(shù)可以根據(jù)待測圖像的具體特性來設(shè)定,示例性的,若待測圖像為紙幣冠字號區(qū)域,連續(xù)預(yù)設(shè)行可以是恰好包含冠字號字符的縱向的區(qū)域。對每個二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,將每個二值化圖像求和結(jié)果的最大值最為該二值化圖像的特征值。
在一個具體的例子中,以待測圖像為紙幣冠字號區(qū)域?yàn)槔鶕?jù)分辨率的設(shè)定將二值化圖像分為60×120個像素點(diǎn),即在行方向上分為60個像素點(diǎn),在列方向上分為120個像素點(diǎn)。冠字號字符高度為30,連續(xù)預(yù)設(shè)行數(shù)可以取冠字號字符的高度30,例如分別計(jì)算行1至行30、行2至行31、行3至行32、……、行31至行60的黑點(diǎn)個數(shù)的和,將各個求和結(jié)果中得到的黑點(diǎn)個數(shù)的最大值作為該二值化圖像的特征值。示例性的,若行16至行45的黑點(diǎn)數(shù)的和最大為1200個,則將1200作為該二值化圖像的特征值。
s130、判斷所述特征值是否大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值,若是,則執(zhí)行s140,否則,繼續(xù)執(zhí)行s130。
相應(yīng)的,判斷特征值是否大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值,其中,預(yù)設(shè)的黑點(diǎn)數(shù)閾值可以是測試人員根據(jù)待測圖像的具體特性設(shè)定。在一個具體的例子中,若待測圖像為2015版100元紙幣正面左下角的冠字號,在經(jīng)過合適的二值化閾值進(jìn)行二值化處理后得到的二值化圖像中,冠字號字符的黑點(diǎn)個數(shù)通常為1100到1300之間,則在1100到1300之間選取預(yù)設(shè)的黑點(diǎn)數(shù)閾值。
可選的,根據(jù)樣本圖像的像素點(diǎn)個數(shù)和/或樣本圖像的黑點(diǎn)個數(shù)確定所述預(yù)設(shè)的黑點(diǎn)數(shù)閾值,其中,所述樣本圖像的黑點(diǎn)為灰度值小于樣本圖像二值化閾值的點(diǎn)。
其中,確定黑點(diǎn)數(shù)閾值可以根據(jù)樣本圖像的像素點(diǎn)個數(shù)和/或樣本圖像的黑點(diǎn)個數(shù)來確定。
在一個具體的例子中,為了保證計(jì)算結(jié)果的準(zhǔn)確性,選取的樣本要和待測圖像屬于同種性質(zhì)的圖像,例如,若待測圖像是2015版100元紙幣正面左下角的冠字號區(qū)域,則選取的樣本圖像也應(yīng)該是2015版100元紙幣正面左下角的冠字號,這樣選擇會排除例如背景圖案或背景顏色的干擾。樣本圖像的選取可以是多個,例如1000個。統(tǒng)計(jì)樣本圖像的像素點(diǎn)的個數(shù),取所有樣本像素點(diǎn)個數(shù)的最小值,然后取該最小值的20%作為黑點(diǎn)數(shù)閾值,以樣本圖像像素點(diǎn)個數(shù)的最小值是7200個為例,則選取7200的20%,即1440作為黑點(diǎn)數(shù)閾值;統(tǒng)計(jì)樣本圖像的黑點(diǎn)個數(shù),其中,灰度值小于樣本圖像二值化閾值的點(diǎn)記為黑點(diǎn),樣本圖像的二值化閾值依樣本圖像自身的特性設(shè)定,取所有樣本圖像中的黑點(diǎn)數(shù)的總和除以樣本數(shù),得到一個均值,然后取該均值的90%,作為黑點(diǎn)數(shù)閾值,若該均值為1300,則選取1300的90%,即1170作為黑點(diǎn)數(shù)閾值。
s140、計(jì)算所述特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值。
當(dāng)特征值大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值時,計(jì)算所述特征值與對應(yīng)的二值化圖像中的黑點(diǎn)總數(shù)的比值。
在一個具體的例子中,特征值為1200,預(yù)設(shè)的黑點(diǎn)數(shù)閾值為1170時,則滿足特征值大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值的條件。其中,仍以將二值化圖像分為60×120個像素點(diǎn)為例,特征值取的是任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)和的最大值,此時,黑點(diǎn)總數(shù)指的是60行的黑點(diǎn)總數(shù),計(jì)算特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值。示例性的,若黑點(diǎn)總數(shù)為1320,則該比值為90.9%。
需要說明的是,每個二值化圖像均對應(yīng)著這樣一個比值,均是通過計(jì)算特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比獲得。
s150、將所述比值最大的二值化圖像對應(yīng)的二值化閾值作為目標(biāo)二值化閾值。
其中,由于選取了至少兩個二值化閾值對待測圖像進(jìn)行處理,得到了至少兩個二值化圖像,所以得到的特征值占對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值至少為兩個。選取比值最大的二值化圖像對應(yīng)的二值化閾值作為目標(biāo)二值化閾值。在一個具體的例子中,若選取二值化閾值25對待測圖像進(jìn)行二值化處理后的二值化圖像中對應(yīng)的比值最大,則將25作為目標(biāo)二值化閾值。
本發(fā)明實(shí)施例中,通過從預(yù)設(shè)二值化閾值范圍選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像,然后根據(jù)每個二值化圖像中的連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和計(jì)算每個二值化圖像的特征值,當(dāng)所述特征值大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值時,計(jì)算所述特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值,將所述比值最大的二值化圖像對應(yīng)的二值化閾值作為目標(biāo)二值化閾值。提高了二值化閾值計(jì)算的準(zhǔn)確性,增強(qiáng)了二值化的處理效果。
實(shí)施例二
圖2是本發(fā)明實(shí)施例二提供的一種圖像二值化處理方法的流程圖,本實(shí)施例在上述實(shí)施例的基礎(chǔ)上,對“預(yù)設(shè)二值化閾值范圍選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像”進(jìn)行了優(yōu)化。如圖2所示,該方法具體可以包括如下步驟:
s210、從預(yù)設(shè)二值化閾值范圍的第一端值開始,按預(yù)設(shè)步長取值直到所述預(yù)設(shè)二值化閾值范圍的第二端值,得到多個二值化閾值。
具體的,預(yù)設(shè)二值化閾值范圍可以是一個區(qū)間,從預(yù)設(shè)二值化閾值范圍的第一端開始,該第一端值可以取區(qū)間下限,按照預(yù)設(shè)步長進(jìn)行取值,預(yù)設(shè)步長可以根據(jù)具體情況取值,在這里不做具體限定。按照預(yù)設(shè)步長取值直到預(yù)設(shè)二值化閾值范圍的第二端值,該第二端值可以取區(qū)間上限。
在一個具體的例子中,若預(yù)設(shè)二值化閾值范圍是20~30,預(yù)設(shè)步長取2,則預(yù)設(shè)二值化閾值為20、22、24、26、28和30。
s220、從所述多個二值化閾值中選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像。
具體的,從根據(jù)預(yù)設(shè)步長確定的多個二值化閾值中選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像。
在一個具體的例子中,從多個二值化閾值中選取至少兩個二值化閾值,可以選取22、26和30分別對待測圖像進(jìn)行二值化處理,生成三個二值化圖像,分別與預(yù)設(shè)二值化閾值22、26和30對應(yīng)。
s230、對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,將每個所述二值化圖像求和得到的最大值作為該二值化圖像的特征值。
s240、判斷所述特征值是否大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值,若是,則執(zhí)行s250,否則,繼續(xù)執(zhí)行s240。
s250、則計(jì)算所述特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值。
s260、將所述比值最大的二值化圖像對應(yīng)的二值化閾值作為目標(biāo)二值化閾值。
本發(fā)明實(shí)施例中,通過從預(yù)設(shè)二值化閾值范圍的第一端值開始,按預(yù)設(shè)步長取值直到所述預(yù)設(shè)二值化閾值范圍的第二端值,得到多個二值化閾值,然后從所述多個二值化閾值中選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像。通過預(yù)設(shè)步長獲得多個二值化閾值,應(yīng)用多個二值化閾值得到多個二值化圖像,提高了確定了二值化閾值的精確度。
實(shí)施例三
圖3是本發(fā)明實(shí)施例三提供的一種圖像二值化處理方法的流程圖,本實(shí)施例在上述實(shí)施例的基礎(chǔ)上,對“對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,將每個所述二值化圖像求和得到的最大值作為該二值化圖像的特征值”進(jìn)行了優(yōu)化。如圖3所示,該方法具體可以包括如下步驟:
s310、從預(yù)設(shè)二值化閾值范圍選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像。
s320、計(jì)算每個所述二值化圖像中每行的黑點(diǎn)個數(shù)。
具體的,在對每個二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和時,可以以行為單位,分別計(jì)算每個二值化圖像中每行的黑點(diǎn)個數(shù)。
s330、對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,得到多個求和結(jié)果。
在計(jì)算出了每個二值化圖像中每行的黑點(diǎn)個數(shù)后,對每個二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,得到多個求和結(jié)果。需要說明的是,在計(jì)算任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和時,也可以不計(jì)算每個二值化圖像中每行的黑點(diǎn)個數(shù),直接計(jì)算任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)之和;也可以在計(jì)算過某行的黑點(diǎn)個數(shù)的和后進(jìn)行存儲,在需要進(jìn)行黑點(diǎn)個數(shù)求和時直接應(yīng)用,這樣避免了對已經(jīng)計(jì)算過某些行的黑點(diǎn)個數(shù)的重復(fù)計(jì)算,節(jié)約了計(jì)算量。
在一個具體的例子中,在計(jì)算行1至行30的黑點(diǎn)個數(shù)的和時,可以計(jì)算分別計(jì)算出行1至行30(共30行)中每行的黑點(diǎn)個數(shù),根據(jù)這30行中每行的黑點(diǎn)個數(shù)計(jì)算出行1至行30的黑點(diǎn)個數(shù)的總和。在計(jì)算行2至行31的黑點(diǎn)個數(shù)的和時,只需計(jì)算行31的黑點(diǎn)個數(shù)即可,另行2至行30(共29行)中每行的黑點(diǎn)個數(shù)已經(jīng)計(jì)算過,可以直接應(yīng)用。
s340、選取所述多個求和結(jié)果中的最大值,作為所述最大值對應(yīng)的二值化圖像的特征值。
具體的,在若干個求和結(jié)果中,選取最大值,作為最大值對應(yīng)的二值化圖像的特征值。
s350、判斷所述特征值是否大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值,若是,則執(zhí)行s360,否則,繼續(xù)執(zhí)行s350。
s360、則計(jì)算所述特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值。
s370、將所述比值最大的二值化圖像對應(yīng)的二值化閾值作為目標(biāo)二值化閾值。
本發(fā)明實(shí)施例中,通過計(jì)算每個所述二值化圖像中每行的黑點(diǎn)個數(shù),對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,從所述求和結(jié)果中選取其中的最大值,作為所述最大值對應(yīng)的二值化圖像的特征值。實(shí)現(xiàn)了對二值化圖像對應(yīng)的特征值的確定。
實(shí)施例四
圖4是本發(fā)明是實(shí)施例四提供的一種圖像二值化處理裝置的結(jié)構(gòu)示意圖,該裝置適用于執(zhí)行本發(fā)明實(shí)施例提供給的一種圖像二值化處理方法。如圖4所示,該裝置具體可以包括:
處理模塊410,用于從預(yù)設(shè)二值化閾值范圍選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像;
特征值計(jì)算模塊420,用于對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,將每個所述二值化圖像求和得到的最大值作為該二值化圖像的特征值;
判斷模塊430,用于判斷所述特征值是否大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值,若是,則計(jì)算所述特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值;
目標(biāo)二值化閾值確定模塊440,用于將所述比值最大的二值化圖像對應(yīng)的二值化閾值作為目標(biāo)二值化閾值。
進(jìn)一步的,處理模塊410具體用于:
從預(yù)設(shè)二值化閾值范圍的第一端值開始,按預(yù)設(shè)步長取值直到所述預(yù)設(shè)二值化閾值范圍的第二端值,得到多個二值化閾值;
從所述多個二值化閾值中選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像。
進(jìn)一步的,特征值計(jì)算模塊420具體用于:
計(jì)算每個所述二值化圖像中每行的黑點(diǎn)個數(shù);
對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,得到多個求和結(jié)果;
選取所述多個求和結(jié)果中的最大值,作為所述最大值對應(yīng)的二值化圖像的特征值。
進(jìn)一步的,根據(jù)樣本圖像的像素點(diǎn)個數(shù)和/或樣本圖像的黑點(diǎn)個數(shù)確定所述預(yù)設(shè)的黑點(diǎn)數(shù)閾值,其中,所述樣本圖像的黑點(diǎn)為灰度值小于樣本圖像二值化閾值的點(diǎn)。
本發(fā)明實(shí)施例提供的一種圖像二值化處理裝置可執(zhí)行本發(fā)明任意實(shí)施例所提供的圖像二值化處理方法,具備執(zhí)行方法相應(yīng)的功能模塊和有益效果。
實(shí)施例五
圖5為本發(fā)明實(shí)施例五提供的一種計(jì)算機(jī)設(shè)備的結(jié)構(gòu)示意圖。圖5示出了適于用來實(shí)現(xiàn)本發(fā)明實(shí)施方式的示例性計(jì)算機(jī)設(shè)備12的框圖。圖5顯示的計(jì)算機(jī)設(shè)備12僅僅是一個示例,不應(yīng)對本發(fā)明實(shí)施例的功能和使用范圍帶來任何限制。
如圖5所示,計(jì)算機(jī)設(shè)備12以通用計(jì)算設(shè)備的形式表現(xiàn)。計(jì)算機(jī)設(shè)備12的組件可以包括但不限于:一個或者多個處理器或者處理單元16,系統(tǒng)存儲器28,連接不同系統(tǒng)組件(包括系統(tǒng)存儲器28和處理單元16)的總線18。
總線18表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲器總線或者存儲器控制器,外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉例來說,這些體系結(jié)構(gòu)包括但不限于工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(isa)總線,微通道體系結(jié)構(gòu)(mac)總線,增強(qiáng)型isa總線、視頻電子標(biāo)準(zhǔn)協(xié)會(vesa)局域總線以及外圍組件互連(pci)總線。
計(jì)算機(jī)設(shè)備12典型地包括多種計(jì)算機(jī)系統(tǒng)可讀介質(zhì)。這些介質(zhì)可以是任何能夠被計(jì)算機(jī)設(shè)備12訪問的可用介質(zhì),包括易失性和非易失性介質(zhì),可移動的和不可移動的介質(zhì)。
系統(tǒng)存儲器28可以包括易失性存儲器形式的計(jì)算機(jī)系統(tǒng)可讀介質(zhì),例如隨機(jī)存取存儲器(ram)30和/或高速緩存存儲器32。計(jì)算機(jī)設(shè)備12可以進(jìn)一步包括其它可移動/不可移動的、易失性/非易失性計(jì)算機(jī)系統(tǒng)存儲介質(zhì)。僅作為舉例,存儲系統(tǒng)34可以用于讀寫不可移動的、非易失性磁介質(zhì)(圖5未顯示,通常稱為“硬盤驅(qū)動器”)。盡管圖5中未示出,可以提供用于對可移動非易失性磁盤(例如“軟盤”)讀寫的磁盤驅(qū)動器,以及對可移動非易失性光盤(例如cd至rom,dvd至rom或者其它光介質(zhì))讀寫的光盤驅(qū)動器。在這些情況下,每個驅(qū)動器可以通過一個或者多個數(shù)據(jù)介質(zhì)接口與總線18相連。存儲器28可以包括至少一個程序產(chǎn)品,該程序產(chǎn)品具有一組(例如至少一個)程序模塊,這些程序模塊被配置以執(zhí)行本發(fā)明各實(shí)施例的功能。
具有一組(至少一個)程序模塊42的程序/實(shí)用工具40,可以存儲在例如存儲器28中,這樣的程序模塊42包括但不限于操作系統(tǒng)、一個或者多個應(yīng)用程序、其它程序模塊以及程序數(shù)據(jù),這些示例中的每一個或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實(shí)現(xiàn)。程序模塊42通常執(zhí)行本發(fā)明所描述的實(shí)施例中的功能和/或方法。
計(jì)算機(jī)設(shè)備12也可以與一個或多個外部設(shè)備14(例如鍵盤、指向設(shè)備、顯示器24等)通信,還可與一個或者多個使得用戶能與該計(jì)算機(jī)設(shè)備12交互的設(shè)備通信,和/或與使得該計(jì)算機(jī)設(shè)備12能與一個或多個其它計(jì)算設(shè)備進(jìn)行通信的任何設(shè)備(例如網(wǎng)卡,調(diào)制解調(diào)器等等)通信。這種通信可以通過輸入/輸出(i/o)接口22進(jìn)行。并且,計(jì)算機(jī)設(shè)備12還可以通過網(wǎng)絡(luò)適配器20與一個或者多個網(wǎng)絡(luò)(例如局域網(wǎng)(lan),廣域網(wǎng)(wan)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖所示,網(wǎng)絡(luò)適配器20通過總線18與計(jì)算機(jī)設(shè)備12的其它模塊通信。應(yīng)當(dāng)明白,盡管圖5中未示出,可以結(jié)合計(jì)算機(jī)設(shè)備12使用其它硬件和/或軟件模塊,包括但不限于:微代碼、設(shè)備驅(qū)動器、冗余處理單元、外部磁盤驅(qū)動陣列、raid系統(tǒng)、磁帶驅(qū)動器以及數(shù)據(jù)備份存儲系統(tǒng)等。
處理單元16通過運(yùn)行存儲在系統(tǒng)存儲器28中的程序,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,例如實(shí)現(xiàn)本發(fā)明實(shí)施例所提供的圖像二值化處理方法。
也即,所述處理單元執(zhí)行所述程序時實(shí)現(xiàn):從預(yù)設(shè)二值化閾值范圍選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像;對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,將每個所述二值化圖像求和得到的最大值作為該二值化圖像的特征值;判斷所述特征值是否大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值,若是,則計(jì)算所述特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值;將所述比值最大的二值化圖像對應(yīng)的二值化閾值作為目標(biāo)二值化閾值。
實(shí)施例六
本發(fā)明實(shí)施例六提供了一種計(jì)算機(jī)可讀存儲介質(zhì),其上存儲有計(jì)算機(jī)程序,該程序被處理器執(zhí)行時實(shí)現(xiàn)如本申請所有發(fā)明實(shí)施例提供的圖像二值化處理方法:
也即,該程序被處理器執(zhí)行時實(shí)現(xiàn):從預(yù)設(shè)二值化閾值范圍選取至少兩個二值化閾值對待測圖像分別進(jìn)行二值化處理,生成對應(yīng)的二值化圖像;對每個所述二值化圖像中任意連續(xù)預(yù)設(shè)行數(shù)的黑點(diǎn)個數(shù)求和,將每個所述二值化圖像求和得到的最大值作為該二值化圖像的特征值;判斷所述特征值是否大于預(yù)設(shè)的黑點(diǎn)數(shù)閾值,若是,則計(jì)算所述特征值與對應(yīng)的二值化圖像中黑點(diǎn)總數(shù)的比值;將所述比值最大的二值化圖像對應(yīng)的二值化閾值作為目標(biāo)二值化閾值。
可以采用一個或多個計(jì)算機(jī)可讀的介質(zhì)的任意組合。計(jì)算機(jī)可讀介質(zhì)可以是計(jì)算機(jī)可讀信號介質(zhì)或者計(jì)算機(jī)可讀存儲介質(zhì)。計(jì)算機(jī)可讀存儲介質(zhì)例如可以是——但不限于——電、磁、光、電磁、紅外線、或半導(dǎo)體的系統(tǒng)、裝置或器件,或者任意以上的組合。計(jì)算機(jī)可讀存儲介質(zhì)的更具體的例子(非窮舉的列表)包括:具有一個或多個導(dǎo)線的電連接、便攜式計(jì)算機(jī)磁盤、硬盤、隨機(jī)存取存儲器(ram)、只讀存儲器(rom)、可擦式可編程只讀存儲器(eprom或閃存)、光纖、便攜式緊湊磁盤只讀存儲器(cd至rom)、光存儲器件、磁存儲器件、或者上述的任意合適的組合。在本文件中,計(jì)算機(jī)可讀存儲介質(zhì)可以是任何包含或存儲程序的有形介質(zhì),該程序可以被指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用。
計(jì)算機(jī)可讀的信號介質(zhì)可以包括在基帶中或者作為載波一部分傳播的數(shù)據(jù)信號,其中承載了計(jì)算機(jī)可讀的程序代碼。這種傳播的數(shù)據(jù)信號可以采用多種形式,包括但不限于電磁信號、光信號或上述的任意合適的組合。計(jì)算機(jī)可讀的信號介質(zhì)還可以是計(jì)算機(jī)可讀存儲介質(zhì)以外的任何計(jì)算機(jī)可讀介質(zhì),該計(jì)算機(jī)可讀介質(zhì)可以發(fā)送、傳播或者傳輸用于由指令執(zhí)行系統(tǒng)、裝置或者器件使用或者與其結(jié)合使用的程序。
計(jì)算機(jī)可讀介質(zhì)上包含的程序代碼可以用任何適當(dāng)?shù)慕橘|(zhì)傳輸,包括——但不限于無線、電線、光纜、rf等等,或者上述的任意合適的組合。
可以以一種或多種程序設(shè)計(jì)語言或其組合來編寫用于執(zhí)行本發(fā)明操作的計(jì)算機(jī)程序代碼,所述程序設(shè)計(jì)語言包括面向?qū)ο蟮某绦蛟O(shè)計(jì)語言—諸如java、smalltalk、c++,還包括常規(guī)的過程式程序設(shè)計(jì)語言—諸如“c”語言或類似的程序設(shè)計(jì)語言。程序代碼可以完全地在用戶計(jì)算機(jī)上執(zhí)行、部分地在用戶計(jì)算機(jī)上執(zhí)行、作為一個獨(dú)立的軟件包執(zhí)行、部分在用戶計(jì)算機(jī)上部分在遠(yuǎn)程計(jì)算機(jī)上執(zhí)行、或者完全在遠(yuǎn)程計(jì)算機(jī)或服務(wù)器上執(zhí)行。在涉及遠(yuǎn)程計(jì)算機(jī)的情形中,遠(yuǎn)程計(jì)算機(jī)可以通過任意種類的網(wǎng)絡(luò)——包括局域網(wǎng)(lan)或廣域網(wǎng)(wan)—連接到用戶計(jì)算機(jī),或者,可以連接到外部計(jì)算機(jī)(例如利用因特網(wǎng)服務(wù)提供商來通過因特網(wǎng)連接)。
注意,上述僅為本發(fā)明的較佳實(shí)施例及所運(yùn)用技術(shù)原理。本領(lǐng)域技術(shù)人員會理解,本發(fā)明不限于這里所述的特定實(shí)施例,對本領(lǐng)域技術(shù)人員來說能夠進(jìn)行各種明顯的變化、重新調(diào)整和替代而不會脫離本發(fā)明的保護(hù)范圍。因此,雖然通過以上實(shí)施例對本發(fā)明進(jìn)行了較為詳細(xì)的說明,但是本發(fā)明不僅僅限于以上實(shí)施例,在不脫離本發(fā)明構(gòu)思的情況下,還可以包括更多其他等效實(shí)施例,而本發(fā)明的范圍由所附的權(quán)利要求范圍決定。