本發(fā)明涉及機(jī)器視覺與視頻圖像處理技術(shù)領(lǐng)域,具體為一種快速的基于混合閾值方法的提環(huán)檢測(cè)方法。
背景技術(shù):
傳統(tǒng)大容量(如5l)灌裝瓶身外觀檢測(cè)多為人工肉眼檢測(cè)為主,例如對(duì)提環(huán)的檢測(cè),現(xiàn)有的瓶裝產(chǎn)品提環(huán)在壓到瓶頸上后形成鋸齒,卡在瓶口,便于拎提。然而人工檢測(cè)不僅成本代價(jià)大,而且易疲勞容易出現(xiàn)漏檢或誤檢以及速度慢等情況,導(dǎo)致準(zhǔn)確率和效率都較低,這與大規(guī)模工業(yè)化產(chǎn)線生產(chǎn)極不協(xié)調(diào),利用自動(dòng)化產(chǎn)線檢測(cè)提環(huán),能有效解決這些問題。
針對(duì)提環(huán)檢測(cè)的需求,現(xiàn)有技術(shù)中,部分產(chǎn)線采用了在生產(chǎn)線安裝一個(gè)機(jī)械檢測(cè)裝置,其檢測(cè)手段是設(shè)定好固定寬度的槽型裝置,由于帶有提環(huán)的瓶身與未帶有提環(huán)的瓶身在一般情況下寬度相差較大,通過對(duì)灌裝提環(huán)寬度為依據(jù)檢測(cè)是否有提環(huán)。但是這種方法一方面會(huì)由于機(jī)械長(zhǎng)期使用會(huì)出現(xiàn)老化松動(dòng)會(huì)導(dǎo)致寬度檢測(cè)準(zhǔn)確率大幅降低,另一方面瓶身出現(xiàn)掛標(biāo)等異常情況時(shí)單單使用寬度檢測(cè)會(huì)造成大量誤檢,因?yàn)閽鞓?biāo)是人工進(jìn)行套裝的,會(huì)出現(xiàn)各種形態(tài),時(shí)常出現(xiàn)掛標(biāo)翹起,導(dǎo)致無(wú)提環(huán)卻寬度達(dá)標(biāo)導(dǎo)致漏檢,有無(wú)檢測(cè)正確率不能達(dá)到要求,并且不能檢測(cè)出提環(huán)是否正確壓到位的情況。本發(fā)明利用計(jì)算機(jī)視覺和圖像處理算法來(lái)避免機(jī)械檢測(cè)設(shè)置老化松動(dòng)等問題,同時(shí)通過提環(huán)鋸齒的識(shí)別進(jìn)行提環(huán)檢測(cè),能有效解決寬度檢測(cè)導(dǎo)致的漏檢、誤檢等問題,適用于異常情況處理和是否正確壓到位的檢測(cè)。
對(duì)提環(huán)圖像直接閾值化來(lái)提取鋸齒信息的方法操作簡(jiǎn)單、運(yùn)算較快,但是僅對(duì)鋸齒交錯(cuò)清晰,簡(jiǎn)單明了的情況下有效,且易受鋸齒相互間的干擾。為實(shí)現(xiàn)自動(dòng)提環(huán)檢測(cè)算法的工業(yè)化應(yīng)用,實(shí)時(shí)性和正確率都需滿足。本發(fā)明提出一種基于混合閾值的提環(huán)檢測(cè)方法??焖偬崛′忼X部分的序列化特征信息,作為判定鋸齒有無(wú)依據(jù),并提出大津法與直方圖閾值法相結(jié)合的策略,排除鋸齒之間的交錯(cuò)遮擋導(dǎo)致的干擾,極大提高提環(huán)檢測(cè)準(zhǔn)確率,并滿足提環(huán)檢測(cè)的效率要求。
技術(shù)實(shí)現(xiàn)要素:
本發(fā)明要解決的問題是:現(xiàn)有提環(huán)檢測(cè)系統(tǒng)依賴人眼觀察,效率低下;現(xiàn)有通過機(jī)械設(shè)備完成提環(huán)檢測(cè)的方法耐用性不強(qiáng),不滿足工業(yè)生產(chǎn)的長(zhǎng)期耐用性要求;現(xiàn)有能夠快速檢測(cè)提環(huán)的方法僅能應(yīng)對(duì)簡(jiǎn)單提環(huán)圖像,對(duì)瓶頸掛標(biāo)、壓位檢測(cè)等其他情況效果較差??偠灾F(xiàn)有方法難以做到高實(shí)時(shí)性和高正確率的兼容。
本發(fā)明的技術(shù)方案為:一種基于混合閾值的提環(huán)檢測(cè)方法,對(duì)瓶身上是否有提環(huán)以及提環(huán)是否正確壓到位進(jìn)行檢測(cè),具體步驟包括:
1)利用瓶身的先驗(yàn)知識(shí),使用水平、垂直掃描定位出提環(huán)部分及提環(huán)鋸齒部分;
2)采用大津閾值法對(duì)提取的提環(huán)鋸齒部分進(jìn)行處理,得到鋸齒二值化圖像;
3)根據(jù)得到的鋸齒二值化圖,序列化提取特征信息:
對(duì)圖片寬度為w像素的鋸齒二值化圖從左往右掃描,步長(zhǎng)為k個(gè)像素,設(shè)定圖像中高度值為h,序列值為n,h(x)和n[x]分別表示對(duì)應(yīng)列x的高度以及序列值;如列x的前后列的差值difh達(dá)到高度差閾值,即設(shè)定所在位置x的序列值n[x]為“1”,否則為“0”:
根據(jù)初步得到的n[x]序列進(jìn)行遍歷,對(duì)于出現(xiàn)的孤立的序列值‘1’或者‘0’取反,得到鋸齒序列信息,即序列化特征信息分布規(guī)律;
4)根據(jù)序列化特征信息分布規(guī)律,設(shè)定正常提環(huán)圖片為正樣本,無(wú)提環(huán)或提環(huán)未壓到位的圖片為負(fù)樣本,統(tǒng)計(jì)總結(jié)出正負(fù)樣本序列規(guī)律并通過序列分布、相鄰占空比準(zhǔn)則,實(shí)現(xiàn)判定:
①若序列中“0”“1”交錯(cuò)次數(shù)<4,或“1”序列的長(zhǎng)度為0,或“0”序列的長(zhǎng)度為0,則判定提環(huán)缺失或未正確壓位;
②若連續(xù)“0”序列的長(zhǎng)度大于等于圖片寬度的三分之一,則判定提環(huán)缺失或未正確壓位;
③若連續(xù)為“1”或連續(xù)為“0”的子序列相鄰占空比在(1.25,4)之內(nèi),則判定為找到提環(huán)的一個(gè)突出鋸齒部分;
④如果根據(jù)步驟③查找到的突出鋸齒個(gè)數(shù)大于等于3,則判定提環(huán)存在且正確壓到位;否則提環(huán)缺失或未正確壓位;
5)如若上述判定結(jié)果為真,即提環(huán)存在且正確壓到位,直接輸出結(jié)果;如若上述結(jié)果為假,即可能提環(huán)不存在或者未正確壓到位,則采用直方圖閾值法對(duì)1)得出的提環(huán)鋸齒圖像進(jìn)行處理,進(jìn)行步驟6);
6)重復(fù)3)、4)步驟,將所得檢測(cè)判定結(jié)果作為最終結(jié)果輸出,真表示提環(huán)存在并壓到位,假表示有其他錯(cuò)誤。
步驟1)具體為:先進(jìn)行由上往下水平掃描定位到瓶蓋上方,根據(jù)瓶蓋高度定位到瓶頸位置,再進(jìn)行水平掃描定位至提環(huán)位置上方,根據(jù)提環(huán)高度確定提環(huán)部分;提環(huán)部分定位后,水平掃描得到瓶蓋寬度,根據(jù)寬度和提環(huán)部分最終確定提環(huán)鋸齒部分。
步驟5)中的直方圖閾值法具體為:先對(duì)提環(huán)鋸齒圖像的灰度圖像計(jì)算灰度直方圖,首先通過粗尺度多邊形擬合得到直方圖中的灰度值轉(zhuǎn)折點(diǎn),然后對(duì)轉(zhuǎn)折點(diǎn)以橫坐標(biāo)從大到小排序,最后計(jì)算相鄰點(diǎn)的縱坐標(biāo)差值,第一個(gè)與相鄰的下一點(diǎn)之間縱坐標(biāo)差值絕對(duì)值大于100的點(diǎn)即最后一個(gè)峰結(jié)束點(diǎn)位置,將該位置所對(duì)應(yīng)的坐標(biāo)值作為提環(huán)鋸齒圖像的二值化閾值點(diǎn),從而得到鋸齒圖像的二值化圖。
本發(fā)明提出一種基于混合閾值方法的提環(huán)檢測(cè)方法,既滿足實(shí)時(shí)性又具有較高正確率。其有益效果在于:1)提出利用圖像處理算法快速自動(dòng)化檢測(cè)提環(huán)有無(wú)以及是否正確壓到位的方法,極大提升生產(chǎn)線的效率和準(zhǔn)確性;2)以提環(huán)鋸齒部分為依據(jù),檢測(cè)提環(huán)有無(wú)以及壓到位與否,相對(duì)于機(jī)械裝置寬度檢測(cè)可以去除瓶頸掛標(biāo)的干擾,同時(shí)解決了鋸齒間相互遮擋導(dǎo)致誤檢的情況,進(jìn)一步提高檢測(cè)質(zhì)量;3)本發(fā)明使用大津閾值法結(jié)合直方圖閾值法的混合閾值方法,分割提取鋸齒部分,去除鋸齒間的交錯(cuò)干擾,實(shí)現(xiàn)自動(dòng)、準(zhǔn)確的提環(huán)檢測(cè)。
附圖說(shuō)明
圖1為本發(fā)明方法的流程框圖。
圖2為本發(fā)明實(shí)施例待檢測(cè)提環(huán)圖像。
圖3為本發(fā)明實(shí)施例提環(huán)位置定位圖。
圖4為本發(fā)明方法針對(duì)鋸齒遮擋情況的直方圖閾值圖。
圖5為本發(fā)明實(shí)施例提環(huán)檢測(cè)結(jié)果圖。
具體實(shí)施方式
本發(fā)明提供了一種新的提環(huán)檢測(cè)方法,快速、自動(dòng)化實(shí)現(xiàn)高準(zhǔn)確率的提環(huán)檢測(cè)。本發(fā)明方法主要包括基于圖像處理的提環(huán)位置定位、基于大津閾值和直方圖閾值相結(jié)合的鋸齒序列信息提取、根據(jù)鋸齒序列信息實(shí)現(xiàn)提環(huán)檢測(cè)等三個(gè)部分。
本發(fā)明利用對(duì)提環(huán)上鋸齒的位置定位以及有無(wú)檢測(cè)來(lái)實(shí)現(xiàn)對(duì)提環(huán)有無(wú)以及是否正確壓到位的檢測(cè),如圖1所示,首先對(duì)待處理的提環(huán)檢測(cè)圖像進(jìn)行預(yù)處理操作,如去噪,濾波,形態(tài)化,分割等操作,以便之后位置定位;其次,依據(jù)瓶蓋高度等瓶身方面的先驗(yàn)知識(shí)進(jìn)行掃描,精確定位出提環(huán)以及提環(huán)鋸齒部分所在位置;接著對(duì)提環(huán)鋸齒部分進(jìn)行大津閾值法處理,提取序列化特征,并判斷是否有提環(huán);然后,如果上述處理結(jié)果為假,則需另外采用直方圖閾值法進(jìn)行處理,再使用序列化提取鋸齒特征信息作為判定提環(huán)有無(wú)的依據(jù),避免鋸齒的各個(gè)小鋸齒部分出現(xiàn)相互遮擋導(dǎo)致檢測(cè)錯(cuò)誤的特殊情況;最后根據(jù)序列特征信息的分布判定鋸齒有無(wú),從而確定提環(huán)有無(wú)的最終檢測(cè)結(jié)果。
具體實(shí)施說(shuō)明如下:
1)基于圖像處理的提環(huán)位置定位:
瓶身結(jié)果分為瓶蓋、瓶身、提環(huán)等結(jié)構(gòu)部分,首先截取所要檢測(cè)的部分的邊界,進(jìn)行濾波,以及小顆粒去除,去除圖像的噪點(diǎn)和干擾。為定位出提環(huán)鋸齒位置,先由上往下水平掃描定位到瓶蓋上方,根據(jù)瓶蓋高度定位到瓶頸位置,再水平掃描定位至提環(huán)位置上方,根據(jù)提環(huán)高度確定提環(huán)部分;提環(huán)部分定位后,垂直掃描得到瓶蓋寬度,根據(jù)瓶蓋寬度和提環(huán)部分最終確定提環(huán)鋸齒部分;
2)基于大津閾值和直方圖閾值相結(jié)合的混合閾值方法的鋸齒序列信息提?。?/p>
大津閾值法利用以最大類間方差的差別衡量為標(biāo)準(zhǔn)的閾值將原圖像分成前景,背景兩個(gè)圖像,得到鋸齒二值化圖像。如果大津閾值的結(jié)果為假,則說(shuō)明所測(cè)圖像有可能無(wú)提環(huán),也有可能提環(huán)鋸齒之間相互遮擋導(dǎo)致提環(huán)檢測(cè)錯(cuò)誤。
為排除這樣的誤檢的可能性,本發(fā)明對(duì)定位提取的提環(huán)鋸齒部分重新閾值處理。經(jīng)研究,發(fā)現(xiàn)鋸齒遮擋情況的圖像中前后鋸齒灰度值分布存在差異,同時(shí)同為一排的鋸齒灰度值相似,現(xiàn)有的自適應(yīng)閾值處理不能滿足不同圖像通用處理的要求,本發(fā)明采用直方圖閾值法來(lái)解決這種問題,先對(duì)灰度圖像計(jì)算灰度直方圖,根據(jù)原圖特征可知恰當(dāng)?shù)亩祷撝堤幵谥狈綀D中最后一個(gè)峰的結(jié)束處;為了計(jì)算這個(gè)結(jié)束點(diǎn)位置,首先通過粗尺度多邊形擬合可以得到直方圖中的灰度值轉(zhuǎn)折點(diǎn),然后對(duì)轉(zhuǎn)折點(diǎn)按照x坐標(biāo)從大到小排序,最后計(jì)算相鄰點(diǎn)的y坐標(biāo)差值,第一個(gè)與相鄰的下一個(gè)點(diǎn)之間y坐標(biāo)差值絕對(duì)值大于100的點(diǎn)即為最后一個(gè)峰結(jié)束點(diǎn)位置。
3)根據(jù)鋸齒序列信息實(shí)現(xiàn)提環(huán)檢測(cè):
根據(jù)得到的圖像寬度為w像素的鋸齒二值化圖,通過從左往右對(duì)圖片進(jìn)行步長(zhǎng)k個(gè)像素的方式前后位置高度值進(jìn)行比較,設(shè)定圖像中高度值為h,序列值為n,h(x)和n[x]分別表示對(duì)應(yīng)列x的高度以及序列值;如列x的前后列的差值difh達(dá)到高度差閾值,即設(shè)定所在位置x的序列值n[x]為“1”,否則為“0”:
根據(jù)初步得到的n[x]序列進(jìn)行遍歷,對(duì)于出現(xiàn)的孤立的序列值‘1’或者‘0’取反,得到更準(zhǔn)確的鋸齒序列信息。
4)根據(jù)鋸齒序列信息分布統(tǒng)計(jì)總結(jié)發(fā)現(xiàn),正常帶有提環(huán)的鋸齒部分序列會(huì)呈現(xiàn)連續(xù)1序列、連續(xù)0序列交錯(cuò)分布的情況,且交錯(cuò)次數(shù)大于4,即突出鋸齒部分大于等于3個(gè);但是對(duì)于未正確壓到位的以及無(wú)提環(huán)等鋸齒應(yīng)在部分序列雜亂無(wú)章,或者整個(gè)1序列或0序列,同時(shí)無(wú)提環(huán)的相鄰占空比相較于提環(huán)鋸齒的相鄰占空比要明顯大很多,設(shè)定正常提環(huán)圖片為正樣本,無(wú)提環(huán)或提環(huán)未壓到位的圖片為負(fù)樣本,統(tǒng)計(jì)總結(jié)出正負(fù)樣本序列規(guī)律并通過序列分布、相鄰占空比準(zhǔn)則,進(jìn)行如下判定:
①若序列中“0”“1”交錯(cuò)次數(shù)<4,或“1”序列的長(zhǎng)度為0,或“0”序列的長(zhǎng)度為0,則判定提環(huán)缺失或未正確壓位;
②若連續(xù)“0”序列的長(zhǎng)度大于等于圖片寬度的三分之一,則判定提環(huán)缺失或未正確壓位;
③若連續(xù)為“1”或連續(xù)為“0”的子序列相鄰占空比在(1.25,4)之內(nèi),則判定為找到提環(huán)的一個(gè)突出鋸齒部分;
④如果根據(jù)步驟③查找到的突出鋸齒個(gè)數(shù)大于等于3,則判定提環(huán)存在且正確壓到位;否則提環(huán)缺失或未正確壓位。
5)根據(jù)圖像處理代碼,如若上述判定結(jié)果為真,即提環(huán)存在且正確壓到位,直接輸出結(jié)果;如若上述結(jié)果為假,即可能提環(huán)不存在或者未正確壓到位,則采用直方圖閾值法對(duì)1)得出的提環(huán)鋸齒圖像進(jìn)行處理,進(jìn)行步驟6);也就是如果大津閾值處理后輸出結(jié)果為錯(cuò)誤,才會(huì)調(diào)用直方圖閾值處理模塊。
其中,直方圖閾值法具體為:先對(duì)提環(huán)鋸齒圖像的灰度圖像計(jì)算灰度直方圖,首先通過粗尺度多邊形擬合得到直方圖中的灰度值轉(zhuǎn)折點(diǎn),然后對(duì)轉(zhuǎn)折點(diǎn)以橫坐標(biāo)從大到小排序,最后計(jì)算相鄰點(diǎn)的縱坐標(biāo)差值,第一個(gè)與相鄰的下一點(diǎn)之間縱坐標(biāo)差值絕對(duì)值大于100的點(diǎn)即最后一個(gè)峰結(jié)束點(diǎn)位置,將該位置所對(duì)應(yīng)的坐標(biāo)值作為提環(huán)鋸齒圖像的二值化閾值點(diǎn),從而得到鋸齒圖像的二值化圖。
6)重復(fù)3)、4)步驟,將所得檢測(cè)判定結(jié)果作為最終結(jié)果輸出,真表示提環(huán)存在并壓到位,假表示有其他錯(cuò)誤。
圖2、3、4、5為本發(fā)明實(shí)施效果圖,待檢測(cè)提環(huán)圖像來(lái)源于某灌裝生產(chǎn)線上的提環(huán)圖像數(shù)據(jù)集,其中瓶蓋高度ch和提環(huán)高度lh分別設(shè)置為310、85。圖2顯示了數(shù)據(jù)集中的3幅待檢測(cè)提環(huán)檢測(cè)圖像,分別為(a)、(b)、(c),圖3為對(duì)應(yīng)圖2待測(cè)圖像提取的提環(huán)位置定位圖,圖4為本發(fā)明針對(duì)鋸齒遮擋情況的直方圖,圖中的下方大圓點(diǎn)為查找到的可以區(qū)分前后齒輪的用于二值化的閾值,對(duì)應(yīng)圖2中的(b)圖像。圖3可見,不同提環(huán)圖像的定位后的鋸齒分布情況有不同的差異。圖5為本發(fā)明檢測(cè)結(jié)果圖,圖5(a)、(b)、(c)分別對(duì)應(yīng)于圖2(a)、(b)、(c)的3幅圖像的檢測(cè)結(jié)果。由圖5(b)可見所提直方圖閾值算法圖能夠準(zhǔn)確定位適合的閾值。由圖5可見,本發(fā)明對(duì)各種提環(huán)位置情況的檢測(cè)結(jié)果準(zhǔn)確。對(duì)整個(gè)數(shù)據(jù)集的測(cè)試統(tǒng)計(jì)表明,按照上述系數(shù)設(shè)置,無(wú)漏檢、錯(cuò)檢圖像,正確率達(dá)99%,且在vs平臺(tái)下平均每幅圖像處理時(shí)間僅需20ms以內(nèi),本發(fā)明方法實(shí)現(xiàn)了既高正確率又高實(shí)時(shí)性的檢測(cè)。