劉莉莉,苗長(zhǎng)云
(天津工業(yè)大學(xué)電子與信息工程學(xué)院,天津 300387)
帶式輸送機(jī)是一種現(xiàn)代化生產(chǎn)中連續(xù)運(yùn)輸設(shè)備,具有運(yùn)量大、運(yùn)距遠(yuǎn)、能耗小、運(yùn)費(fèi)低、效率高、運(yùn)行平穩(wěn)、裝卸方便、適合于散料運(yùn)輸?shù)葍?yōu)點(diǎn),與汽車、火車一起成為三大主力工業(yè)運(yùn)輸工具,已被廣泛應(yīng)用于煤炭、礦山、港口、電力、冶金、化工等領(lǐng)域[1-2]。
為了保證帶式輸送機(jī)安全運(yùn)行,監(jiān)測(cè)帶式輸送機(jī)的打滑、超速等運(yùn)行狀態(tài)以及調(diào)速控制,需要檢測(cè)帶式輸送機(jī)的帶速。目前常用的帶式輸送機(jī)的帶速檢測(cè)方法采用接觸式滾輪速度傳感器檢測(cè)帶式輸送機(jī)的帶速,接觸式檢測(cè)易損壞、可靠性差,并且易劃傷輸送帶;滾輪打滑、跳動(dòng)或滾輪表面粘有物料周長(zhǎng)發(fā)生變化,帶速檢測(cè)準(zhǔn)確性差。
本文針對(duì)帶式輸送機(jī)帶速檢測(cè)方法中存在可靠性和準(zhǔn)確性差等問(wèn)題,提出了一種基于機(jī)器視覺(jué)的帶式輸送機(jī)帶速檢測(cè)的方法,提高了帶速檢測(cè)的精度、速度和可靠性,在煤炭、礦山、港口、電力和化工等領(lǐng)域具有廣泛的應(yīng)用前景[3]。
基于機(jī)器視覺(jué)的帶式輸送機(jī)帶速檢測(cè)方法如圖1所示。對(duì)序列圖像中每相鄰兩圖像做基于特征粗匹配,利用隨機(jī)抽樣一致算法剔除誤匹配點(diǎn)進(jìn)行精確匹配,讀取兩圖像精確匹配坐標(biāo),計(jì)算輸送帶平均像素位移。根據(jù)圖像坐標(biāo)系與世界坐標(biāo)系的映射關(guān)系,得出圖像中每像素所代表的物理尺寸,即得出輸送帶運(yùn)行的實(shí)際位移與速度。
圖1 帶式輸送機(jī)帶速檢測(cè)軟件設(shè)計(jì)方案框圖
基于機(jī)器視覺(jué)計(jì)算帶式輸送機(jī)輸送帶的位移以像素為單位,若將像素單位轉(zhuǎn)化為物理單位,則需對(duì)相機(jī)進(jìn)行標(biāo)定。相機(jī)標(biāo)定分為線性標(biāo)定與非線性標(biāo)定[4],本文選用面陣CCD相機(jī),鏡頭畸變較小,故可簡(jiǎn)化標(biāo)定流程,選用線性標(biāo)定方法。將相機(jī)垂直于輸送帶固定,在較短時(shí)間內(nèi),相鄰幀圖像受光照變化、運(yùn)動(dòng)狀態(tài)等影響可忽略不計(jì),每幀圖像成像大小固定不變。根據(jù)針孔成像模型,二維圖像尺寸與三維空間物體實(shí)際尺寸之間存在線性關(guān)系。設(shè)輸送帶上有2點(diǎn)A、B,在三維空間中對(duì)應(yīng)其實(shí)際物理距離為d0(mm),在二維成像空間對(duì)應(yīng)的像素距離為d1(pixel)。則d0、d1存在一定的線性關(guān)系,設(shè)參數(shù)k為二者的放大倍數(shù),即
d0=kd1
(1)
相機(jī)標(biāo)定的主要目的是獲取k值,通過(guò)多次標(biāo)定實(shí)驗(yàn),獲得k值,進(jìn)而建立二維空間像面位移與三維空間實(shí)際位移之間的關(guān)系。
針對(duì)帶式輸送機(jī)輸送帶圖像特征不顯著、重疊區(qū)域不明顯等缺點(diǎn),提出一種適用于帶式輸送機(jī)圖像的匹配算法,該算法結(jié)合了SURF算法檢測(cè)特征點(diǎn)的穩(wěn)定性、高效性與ORB算法快速的優(yōu)越性。并通過(guò)定義圖像感興趣區(qū)域以加快算法運(yùn)行速度。本文匹配算法大致分為4個(gè)部分:定義圖像感興趣區(qū)域、SURF特征提取、基于SURF特征點(diǎn)構(gòu)建ORB特征描述、相似性度量。
感興趣區(qū)域ROI是從圖像中選擇一個(gè)圖像區(qū)域作為關(guān)注的焦點(diǎn),圖像從大圖像變成小圖像區(qū)域。由于相機(jī)視角FOV較大,每幀圖像間存在無(wú)效區(qū)域,增加了圖像處理時(shí)間。根據(jù)輸送帶圖像特點(diǎn),定義輸送帶圖像特征顯著部分作為感興趣區(qū)域,僅對(duì)感興趣區(qū)域特征匹配,縮減圖像匹配搜索范圍,顯著地減少了圖像配準(zhǔn)的運(yùn)行時(shí)間。
SURF具有很強(qiáng)的魯棒性以及更高的運(yùn)算速度,比SIFT算法快3倍以上[5],SURF是基于Hessian矩陣進(jìn)行特征點(diǎn)檢測(cè)。Hessian矩陣行列式局部最大值是圖像特征點(diǎn)所在的位置。設(shè)圖像I中的某點(diǎn)x=(x,y),在該點(diǎn)x處,尺度為σ的Hessian矩陣H(x,σ)定義為
(2)
Hessian矩陣行列式的極大值點(diǎn)處即為特征點(diǎn),用盒狀濾波器(Dxx、Dxy、Dyy)近似替代高斯二階微分算子(Lxx、Lxy、Lxy)得到Hessian矩陣行列式為
det(Happrox)=DxxDyy-(ωDxy)2
(3)
式中ω為權(quán)值,用以平衡因近似所帶來(lái)的誤差,其值約為0.9。
為保證尺度不變性,通過(guò)建立圖像堆,在每一層圖像上應(yīng)用不同尺寸大小的盒狀濾波器模板得到濾波響應(yīng)值,通過(guò)式(3)得到所有像素的Hessian矩陣的行列式,基于這些行列式找出特征點(diǎn),首先選取閾值,去掉行列式值低的像素,保留最強(qiáng)的響應(yīng)值。然后使用3×3×3模板在三維空間進(jìn)行非極大值抑制,最后應(yīng)用插值法找到亞像素精度的特征點(diǎn)位置。
SURF特征描述運(yùn)用的是浮點(diǎn)數(shù),通過(guò)歐式距離進(jìn)行匹配,大量的浮點(diǎn)數(shù)運(yùn)算增加了更大的內(nèi)存開(kāi)銷,導(dǎo)致匹配時(shí)間長(zhǎng),耗費(fèi)資源。為彌補(bǔ)這些缺點(diǎn),二進(jìn)制描述子被提出,二進(jìn)制描述子采用二進(jìn)制的特征向量,節(jié)省了大量的存儲(chǔ)空間。ORB特征描述子便是一種二進(jìn)制碼串形式的描述子,經(jīng)研究表明,其算法效率比SIFT快2個(gè)數(shù)量級(jí),比SURF快1個(gè)數(shù)量級(jí)。計(jì)算速度上是SIFT的100倍,是SURF的10倍[6]。它的主要思想是圖像特征點(diǎn)鄰域可以用相對(duì)少量的灰度對(duì)比來(lái)表達(dá),首先以特征點(diǎn)為中心定義一個(gè)大小為S×S(31×31)的補(bǔ)丁區(qū)域,在該區(qū)域內(nèi),以某種特定的方式選擇nd個(gè)像素點(diǎn)對(duì)。然后比較每個(gè)像素點(diǎn)對(duì)之間的灰度值:
(4)
式中p(x)為在圖像塊x處的灰度值。
最后把補(bǔ)丁區(qū)域內(nèi)所有點(diǎn)對(duì)的比較結(jié)果串成一個(gè)二值位字符串的形式,從而形成該特征點(diǎn)的描述符B:
(5)
當(dāng)n=128、256、512時(shí)(通常選擇256),在運(yùn)算速度,空間占位和準(zhǔn)確性上可以達(dá)到最佳效果。ORB中,為實(shí)現(xiàn)旋轉(zhuǎn)不變性,使用了steered BRIEF算子,特征點(diǎn)鄰域構(gòu)成圖像塊的主方向?yàn)棣龋鋵?duì)應(yīng)的旋轉(zhuǎn)矩陣Rθ與以特征點(diǎn)為中心的鄰域內(nèi)的n對(duì)點(diǎn)集D為
(6)
旋轉(zhuǎn)矩陣為
(7)
經(jīng)旋轉(zhuǎn)后得到新的點(diǎn)對(duì)Dθ=RθD,最終得到變換后的描述子為
fn(p,θ)=B(p)|(xi,yi)∈Dθ
(8)
經(jīng)上述過(guò)程可知,圖像中提取到的特征點(diǎn)由二值化的位符號(hào)串描述,用漢明距離測(cè)量?jī)蓚€(gè)描述符的相似程度,兩個(gè)字符串按位進(jìn)行異或操作,統(tǒng)計(jì)1的個(gè)數(shù),該數(shù)即為兩個(gè)字符串的漢明距離。其公式為
(9)
式中n為描述符的位數(shù);x與y分別為兩圖像的某個(gè)特征點(diǎn);x[i]和y[i]分別為特征點(diǎn)描述符的第i位。
通過(guò)設(shè)定閾值h(0.8),當(dāng)相似度大于h時(shí),代表匹配成功。由于基于漢明距離進(jìn)行匹配可能存在誤匹配,利用RANSAC算法[7]對(duì)粗匹配進(jìn)行提純,將正確匹配的點(diǎn)稱為內(nèi)點(diǎn),錯(cuò)誤匹配的點(diǎn)稱為外點(diǎn),該算法即是剔除外點(diǎn)的過(guò)程。通過(guò)找到一個(gè)最佳的3×3的單應(yīng)性矩陣,獲得兩幀圖像之間的坐標(biāo)變換關(guān)系。其關(guān)系式為
(10)
式中:(x,y)和(x′,y′)分別為匹配圖像與待匹配圖像的特征點(diǎn)坐標(biāo)。
單應(yīng)性矩陣有8個(gè)未知參數(shù),至少需要4個(gè)不共線的匹配點(diǎn)對(duì)。RANSAC算法具體步驟:
(1)隨機(jī)抽取樣本集中4個(gè)不共線的點(diǎn)對(duì),計(jì)算變換矩陣H;
(2)利用變換矩陣H計(jì)算剩余匹配點(diǎn)之間的距離d;
(3)設(shè)閾值e,當(dāng)d小于閾值則為內(nèi)點(diǎn),否則為外點(diǎn);
(4)設(shè)定最大迭代次數(shù)N,當(dāng)?shù)螖?shù)大于N,則退出,否則,重復(fù)上述步驟。
對(duì)序列圖像每相鄰兩幀圖像進(jìn)行精確匹配后,讀取每個(gè)匹配點(diǎn)對(duì)的坐標(biāo),設(shè)有n個(gè)正確匹配點(diǎn)對(duì),兩圖像對(duì)應(yīng)的特征點(diǎn)坐標(biāo)分別為(xi,yi)和(xi′,yi′),輸送帶的平均像素位移l為
(11)
設(shè)每?jī)蓭瑘D像拍攝間隔為Δt,輸送帶速度為v,由相機(jī)標(biāo)定結(jié)果可知輸送帶實(shí)際物理位移與像素位移的線性關(guān)系,則輸送帶速度計(jì)算公式為
(12)
式中k為相機(jī)標(biāo)定中獲取的放大倍數(shù)。
本文算法的準(zhǔn)確性需進(jìn)行實(shí)驗(yàn)驗(yàn)證[8],搭建實(shí)驗(yàn)環(huán)境,設(shè)置拍攝時(shí)間間隔為100 ms,采集帶式輸送機(jī)輸送帶上表面序列圖像,進(jìn)行實(shí)驗(yàn),并將機(jī)器視覺(jué)測(cè)量的帶式輸送機(jī)速度與帶式輸送機(jī)監(jiān)控系統(tǒng)終端傳感器顯示的速度作對(duì)比。重點(diǎn)分析圖像匹配結(jié)果以及該算法測(cè)速的穩(wěn)定性和可靠性。
經(jīng)大量實(shí)驗(yàn)表明,本文算法可精確對(duì)輸送帶序列圖像進(jìn)行匹配。隨機(jī)選取序列圖像中的兩幅圖像,如圖2(a)與圖2(b),運(yùn)用本文算法對(duì)輸送帶圖像進(jìn)行實(shí)驗(yàn),匹配結(jié)果如圖2(c)所示。
(a)帶式輸送機(jī)圖像1
(b)帶式輸送機(jī)圖像2
(c)本文算法匹配結(jié)果
將改進(jìn)后的算法與ORB算法作對(duì)比,以圖2(a)、圖2(b)為例,匹配算法比較結(jié)果如表1所示,當(dāng)ORB算法進(jìn)行匹配時(shí)無(wú)正確匹配點(diǎn)對(duì),本文提出的算法匹配結(jié)果有57對(duì)正確匹配點(diǎn),且耗時(shí)與ORB算法相當(dāng)。
表1 匹配算法比較
本文選用面陣相機(jī),對(duì)采集的3種不同速度下的序列圖像進(jìn)行實(shí)驗(yàn)。當(dāng)帶式輸送機(jī)穩(wěn)定工作后,采集運(yùn)動(dòng)的帶式輸送機(jī)輸送帶上表面圖像,應(yīng)用本文算法計(jì)算帶式輸送機(jī)帶速,選取實(shí)驗(yàn)室?guī)捷斔蜋C(jī)終端監(jiān)控系統(tǒng)中傳感器測(cè)量的平均速度作對(duì)比,計(jì)算其測(cè)速誤差。非接觸式機(jī)器視覺(jué)測(cè)速與傳感器平均速度值對(duì)比如表2所示,基于機(jī)器視覺(jué)的測(cè)量方法與傳統(tǒng)的速度傳感器方法誤差統(tǒng)計(jì)圖如圖3所示。
表2 機(jī)器視覺(jué)測(cè)速與傳感器速度對(duì)比 m/s
圖3 本文測(cè)量速度與傳感器顯示速度的誤差
由實(shí)驗(yàn)可知,表2選取的3組序列圖像測(cè)量帶速的平均誤差分別是-4.344 、35.78 、-15.56mm/s。經(jīng)多次實(shí)驗(yàn)驗(yàn)證,整體平均誤差控制在-50~50mm/s之間。圖3為傳感器測(cè)量與機(jī)器視覺(jué)測(cè)量結(jié)果瞬時(shí)誤差,在速度較大時(shí),瞬時(shí)誤差可控制在-0.2~0.2之間。在采集圖像的過(guò)程中,兩幀圖像由于亮度差異等不可控因素導(dǎo)致匹配失敗,使得測(cè)速結(jié)果誤差較大,針對(duì)此問(wèn)題,本文采用最小二乘法對(duì)測(cè)量速度進(jìn)行擬合,將誤測(cè)的速度剔除。綜上所述,本文測(cè)速方法與傳感器測(cè)速方法保持了較好的一致性,其穩(wěn)定性與可靠性強(qiáng)于速度傳感器,具有很高的精確度,彌補(bǔ)了傳感器測(cè)速易受外界環(huán)境影響的缺陷。
對(duì)于帶式輸送機(jī)傳感器測(cè)速的局限性,提出一種基于機(jī)器視覺(jué)的測(cè)速方法,該方法具有非接觸式、不干擾帶式輸送機(jī)運(yùn)行過(guò)程、精確度高等特點(diǎn),充分利用帶式輸送機(jī)運(yùn)行狀態(tài)的連續(xù)性與序列圖像成像特點(diǎn),高精度計(jì)算出帶式輸送機(jī)的速度,通過(guò)理論分析與實(shí)驗(yàn)結(jié)果表明,該測(cè)速算法在輸送帶領(lǐng)域運(yùn)用的可行性與可靠性,具有較好的實(shí)用推廣價(jià)值。