王夢(mèng)斐,余厚云
(南京航空航天大學(xué) 機(jī)電學(xué)院,江蘇 南京 210016)
游標(biāo)卡尺是用于測(cè)量長(zhǎng)度、內(nèi)徑、外徑和深度等尺寸的計(jì)量器具,其操作簡(jiǎn)單、精度高,在機(jī)械行業(yè)應(yīng)用極為廣泛。示值誤差是游標(biāo)卡尺最重要的計(jì)量特性之一,在游標(biāo)卡尺使用前和使用過(guò)程中都需要定期對(duì)其進(jìn)行檢定,以確保測(cè)量結(jié)果的準(zhǔn)確性。傳統(tǒng)的人工目視檢定方法暴露出明顯的缺點(diǎn),包括檢定精度和效率低、工作量大、可靠性差以及檢定過(guò)程自動(dòng)化程度低且檢定結(jié)果缺乏數(shù)據(jù)化管理等。
目前,國(guó)內(nèi)外關(guān)于帶表卡尺和數(shù)顯卡尺的自動(dòng)讀數(shù)研究較多,但在游標(biāo)卡尺示值讀數(shù)方面的研究卻十分匱乏。重慶大學(xué)郭永彩等[1]設(shè)計(jì)了一種雙刻線儀表自動(dòng)讀數(shù)系統(tǒng),采用移位寄存式線性逼近法和特征窗平移法分別識(shí)別對(duì)準(zhǔn)刻線和字符,降低了人眼讀數(shù)的主觀誤差。中國(guó)計(jì)量大學(xué)鮑承德等[2]設(shè)計(jì)了一種用于檢定游標(biāo)卡尺示值的裝置,測(cè)量標(biāo)準(zhǔn)采用高精度光柵尺代替檢定用標(biāo)準(zhǔn)量塊,利用步進(jìn)電機(jī)驅(qū)動(dòng)方式代替人工移動(dòng)游標(biāo)卡尺,提高了檢定效率。
為了解決人工目視檢定存在的弊端,本文提出一種基于機(jī)器視覺(jué)檢測(cè)和誤差補(bǔ)償技術(shù)的游標(biāo)卡尺示值誤差自動(dòng)檢定方法,極大地降低了人工檢定的工作量,提高了檢定精度和效率,增強(qiáng)了檢定數(shù)據(jù)管理的有效性和實(shí)時(shí)性。
游標(biāo)卡尺示值誤差檢定系統(tǒng)由工作臺(tái)基座、安裝夾持機(jī)構(gòu)、直線運(yùn)動(dòng)模組、量塊抓取機(jī)構(gòu)、機(jī)器視覺(jué)模塊、信號(hào)采集模塊、運(yùn)動(dòng)控制模塊、計(jì)算機(jī)和顯示記錄模塊等組成。系統(tǒng)功能組成如圖1所示。
圖1 游標(biāo)卡尺示值誤差自動(dòng)檢定系統(tǒng)組成示意圖
首先將被檢卡尺定位裝夾好,然后夾持拖動(dòng)機(jī)構(gòu)拖動(dòng)卡尺尺身將量爪拉開(kāi),量塊抓取機(jī)構(gòu)根據(jù)卡尺受檢點(diǎn)要求抓取指定規(guī)格的量塊放置于兩量爪之間,作為示值誤差檢定的尺寸標(biāo)準(zhǔn)。接下來(lái),夾持拖動(dòng)機(jī)構(gòu)推動(dòng)量爪夾緊量塊,機(jī)器視覺(jué)模塊在直線運(yùn)動(dòng)模組的驅(qū)動(dòng)下運(yùn)動(dòng)到檢測(cè)位置并采集卡尺特征圖像。最后,計(jì)算機(jī)通過(guò)圖像處理與識(shí)別得到卡尺讀數(shù),并與尺寸標(biāo)準(zhǔn)比較計(jì)算出示值誤差。
首先根據(jù)與游標(biāo)尺0刻線所對(duì)應(yīng)主尺上的位置確定示值的整數(shù)部分,再找到主尺與游標(biāo)尺上對(duì)齊的刻線,讀取示值的小數(shù)部分,將這兩部分相加得到最終的讀數(shù)結(jié)果。為了滿足檢定規(guī)程[3]提出的精度要求,本系統(tǒng)的機(jī)器視覺(jué)模塊采用分辨率為2448×2048的CMOS黑白工業(yè)相機(jī)和放大倍率為0.3x的鏡頭,視場(chǎng)范圍覆蓋游標(biāo)尺的1/2區(qū)域(約30 mm×22 mm)。檢定時(shí)每個(gè)受檢點(diǎn)采集兩幅圖像,分別進(jìn)行整數(shù)和小數(shù)部分的自動(dòng)讀數(shù)。
示值整數(shù)部分讀數(shù)圖像如圖2所示。首先在圖像中確定游標(biāo)尺0刻線的位置,然后定位主尺上與游標(biāo)尺0刻線距離最近的長(zhǎng)刻線的相對(duì)位置,即可得到整數(shù)部分的個(gè)位讀數(shù)。十位和百位讀數(shù)則通過(guò)識(shí)別主尺長(zhǎng)刻線對(duì)應(yīng)的數(shù)字來(lái)確定。整數(shù)部分讀數(shù)的算法流程如圖3所示。
圖2 游標(biāo)卡尺示值整數(shù)部分讀數(shù)圖像
圖3 示值整數(shù)部分讀數(shù)的算法流程圖
首先對(duì)圖2所示的圖像進(jìn)行閾值分割以更加清楚地凸顯出被測(cè)對(duì)象的特征輪廓[4]。由于圖像中主尺和游標(biāo)尺區(qū)域的灰度差異明顯,因此采用最大類(lèi)間方差閾值分割方法(大津法)[5]進(jìn)行二值化,得到圖4所示的分割結(jié)果。然后對(duì)二值圖像沿垂直方向進(jìn)行灰度投影得到圖5。
圖4 二值化圖像
圖5 垂直投影圖
在圖5中可以很容易定位到主尺數(shù)字所對(duì)應(yīng)的長(zhǎng)刻線位置,從而進(jìn)一步精確框定圖6所示的感興趣區(qū)域(region of interest,ROI)[6]。接下來(lái),對(duì)新的ROI區(qū)域內(nèi)的圖像沿水平方向進(jìn)行灰度投影得到圖7。在圖7中,水平方向灰度和最小的位置即為主尺和游標(biāo)尺的分界線。
圖6 精確ROI圖像
圖7 水平灰度投影圖
分割主尺和游標(biāo)尺后,首先識(shí)別游標(biāo)尺上的數(shù)字“0”,并記錄下該數(shù)字中心點(diǎn)橫坐標(biāo)x,接下來(lái)分別對(duì)主尺和游標(biāo)尺刻線進(jìn)行直線檢測(cè)處理。由于主尺部分的目標(biāo)刻線與背景灰度對(duì)比較大,屬于灰度方差單峰圖像,而游標(biāo)尺則存在較多的背景噪聲,因此對(duì)主尺和游標(biāo)尺分別采用大津法和灰度均值迭代法兩種不同的閾值分割方法。二值化結(jié)果如圖8所示,取得了較為理想的分割效果。
圖8 主尺與游標(biāo)卡尺二值化分割圖像
通過(guò)直線檢測(cè)可以提取游標(biāo)卡尺的刻線,從二值圖中看出其目標(biāo)刻線很清晰,因此可以采用Hough變換[7]進(jìn)行直線段的檢測(cè)。游標(biāo)尺最左端且距離數(shù)字“0”最近的刻線即為0刻線,從主尺中找到距離0刻線最近的長(zhǎng)刻線,并計(jì)算游標(biāo)尺0刻線與主尺長(zhǎng)刻線之間的刻線數(shù)量n。若長(zhǎng)刻線位于0刻線左側(cè),則個(gè)位數(shù)讀數(shù)為n,否則為9-n。十位數(shù)和百位數(shù)的讀數(shù)通過(guò)識(shí)別長(zhǎng)刻線上方對(duì)應(yīng)的數(shù)字得到。
示值小數(shù)部分讀數(shù)圖像如圖9所示,首先定位到對(duì)齊刻線的位置,然后通過(guò)字符識(shí)別找到對(duì)齊刻線與游標(biāo)尺數(shù)字的相對(duì)位置,即可通過(guò)計(jì)算得到示值小數(shù)部分的讀數(shù)值,具體的算法流程如圖10所示。
圖9 游標(biāo)卡尺示值小數(shù)部分讀數(shù)圖像
圖10 示值小數(shù)部分自動(dòng)讀數(shù)的算法流程圖
與整數(shù)部分讀數(shù)相似,首先進(jìn)行閾值分割等圖像預(yù)處理操作,然后通過(guò)水平方向灰度統(tǒng)計(jì)的方法確定主尺刻線、游標(biāo)尺刻線和游標(biāo)尺數(shù)字3部分的ROI區(qū)域,再分別進(jìn)行二值化、濾波、直線檢測(cè)和字符識(shí)別等處理。主尺刻線和游標(biāo)尺刻線的二值化分別采用最大類(lèi)間方差法和灰度均值迭代法。濾波均采用面積去噪法進(jìn)行去噪處理,此方法不會(huì)破壞區(qū)域間的連續(xù)性。由于刻線清晰規(guī)整,采用最小二乘法進(jìn)行直線擬合,得到直線方程,并對(duì)其從左到右進(jìn)行排序,便于后續(xù)對(duì)齊刻線的定位。
人工檢定游標(biāo)卡尺示值誤差時(shí),從左向右搜索刻線區(qū)域中主尺刻線和游標(biāo)尺刻線水平間距最小的刻線。間距先是呈遞減趨勢(shì),直到間距為0,即到達(dá)對(duì)齊刻線,之后間距呈遞增趨勢(shì)。根據(jù)這個(gè)規(guī)律,首先找到間距最小的刻線,再判斷其兩邊的刻線水平間距是否遵循遞減和遞增,以此來(lái)進(jìn)一步確認(rèn)對(duì)齊刻線定位的正確性。
識(shí)別到對(duì)齊刻線后,接下來(lái)需要對(duì)游標(biāo)尺上的數(shù)字進(jìn)行識(shí)別,以確定示值小數(shù)的十分位讀數(shù)值。游標(biāo)卡尺上的數(shù)字較為規(guī)整統(tǒng)一,可以采用特征匹配的方法進(jìn)行字符識(shí)別[8]。只需識(shí)別距離對(duì)齊刻線最近的數(shù)字即可,從而可以確定對(duì)齊刻線與該數(shù)字對(duì)應(yīng)長(zhǎng)刻線的相對(duì)位置,即可通過(guò)計(jì)算得到示值小數(shù)讀數(shù)值。
以分度值為0.02 mm、量程為150 mm且經(jīng)檢定各受檢點(diǎn)示值誤差均為0.00 mm的游標(biāo)卡尺為被檢對(duì)象,通過(guò)對(duì)示值誤差做人工檢定和自動(dòng)檢定的對(duì)比實(shí)驗(yàn)。檢定結(jié)果如表1所示。
表1 游標(biāo)卡尺示值誤差人工與系統(tǒng)自動(dòng)檢定對(duì)比實(shí)驗(yàn)結(jié)果
從表1的檢定結(jié)果可以看出,通過(guò)本系統(tǒng)自動(dòng)檢定比人工檢定具有更高的精度和更好的可靠性。
本文研究了基于機(jī)器視覺(jué)的游標(biāo)卡尺示值誤差自動(dòng)檢定方法,并設(shè)計(jì)了游標(biāo)卡尺自動(dòng)檢定系統(tǒng),該系統(tǒng)根據(jù)對(duì)0~300 mm量程范圍內(nèi)不同廠家各種類(lèi)型卡尺產(chǎn)品的分析,設(shè)計(jì)了專(zhuān)用的裝夾定位和夾持拖動(dòng)機(jī)構(gòu),實(shí)現(xiàn)了游標(biāo)卡尺的快速裝夾和尺身的移動(dòng),且卡尺合并和推緊量塊的力由直線電機(jī)反饋電壓精確控制,提高了檢定精度。本文還提出了整數(shù)、小數(shù)分離的示值自動(dòng)讀數(shù)方法,在滿足檢定規(guī)程精度要求的情況下,進(jìn)一步提高了示值誤差檢定的準(zhǔn)確性。實(shí)驗(yàn)結(jié)果表明,與人工目視檢定相比,本文提出的檢定方法解決了人工檢定的工作量大、可靠性差、自動(dòng)化程度低的弊端。