色婷婷AⅤ一区二区三区|亚洲精品第一国产综合亚AV|久久精品官方网视频|日本28视频香蕉

          "); //-->

          博客專欄

          EEPW首頁 > 博客 > LabVIEW儀表盤識別(實(shí)戰(zhàn)篇—6)

          LabVIEW儀表盤識別(實(shí)戰(zhàn)篇—6)

          發(fā)布人:美男子玩編程 時(shí)間:2022-06-22 來源:工程師 發(fā)布文章

          機(jī)器視覺系統(tǒng)中常需要從各類儀表的顯示屏圖像中提取其讀數(shù)。這些儀表的顯示屏可以分為模擬指針顯示屏、LCD顯示屏和LED顯示屏等。


          圖片


          觀察模擬儀表可以發(fā)現(xiàn),它們的刻度被標(biāo)記在一個(gè)由初始值和滿量程值限定的圓弧范圍內(nèi),儀表的指針基于圓弧的圓心旋轉(zhuǎn)以指示當(dāng)前值。由此不難想到先使用兩條標(biāo)記初始值和滿量程值的線段,加上一個(gè)標(biāo)記圓心位置的點(diǎn)來校準(zhǔn)儀表,然后就可以檢測指針的位置,并通過該位置占滿量程的比例來確定當(dāng)前讀數(shù)。三點(diǎn)法是另一種校準(zhǔn)此類儀表的方法。它在儀表初始值、滿量程值位置上分別選擇一點(diǎn),再選擇指針旋轉(zhuǎn)的圓心,這樣圓心點(diǎn)即可與其他兩點(diǎn)分別構(gòu)成線段來實(shí)現(xiàn)儀表校準(zhǔn)。

          指針型顯示屏常用于速度表、流量表、電壓和電流表等,如下所示:


          圖片


          儀表讀取功能還能從具有LCD/LED顯示屏的儀表中檢測包含單個(gè)或多個(gè)七段數(shù)碼管類型數(shù)字的區(qū)域,并讀取包括小數(shù)點(diǎn)等分隔符的數(shù)值。


          LCD/LED顯示屏則常采用7段數(shù)碼管來顯示數(shù)據(jù),如下所示:


          圖片


          Nl Vision提供了讀取上述幾種儀表顯示的函數(shù),它們對復(fù)雜的算法進(jìn)行了封裝,位于LabVIEW的視覺與運(yùn)動→Machine Vision→Instrument Readers函數(shù)選板中,如下圖所示:


          圖片


          其中IMAQ Get Meter、IMAQ Get Meter 2和IMAQ ReadMeter用于讀取模擬儀表的讀數(shù),IMAQ Get LCD ROI、IMAQ Read LCD和IMAQRead Single Digit用于讀取使用7段數(shù)碼管類型的LCD/LED儀表的讀數(shù)。


          函數(shù)說明及使用可參見幫助手冊: 


          圖片


          1、模擬儀表識別


          基于NI Vision的儀表讀取函數(shù)可快速構(gòu)建需要讀取儀表值的機(jī)器視覺系統(tǒng)。通過一個(gè)儀表讀取函數(shù)讀取油表顯示值的實(shí)例,了解模擬儀表識別的應(yīng)用。


          整個(gè)過程可分為學(xué)習(xí)和讀數(shù)兩個(gè)階段。在學(xué)習(xí)階段,程序先使用兩個(gè)IMAQ Convert Line to ROI函數(shù)指定了儀表的初始值和滿量程值位置。隨后IMAQ Group ROI對兩個(gè)線段ROI進(jìn)行組合,作為儀表學(xué)習(xí)函數(shù)IMAQ Get Meter的輸入。學(xué)習(xí)過程完成后,會輸出儀表指針的旋轉(zhuǎn)中心位置和一個(gè)數(shù)組。其中數(shù)組元素代表儀表初始值和滿量程值之間一條沿著刻度的弧線上各點(diǎn)的位置,這些點(diǎn)將用于在讀數(shù)階段計(jì)算儀表的讀數(shù)。


          讀數(shù)階段基于學(xué)習(xí)階段的輸出來完成,IMAQ Read Meter可以通過檢測儀表指針的位置來確定當(dāng)前讀數(shù)所在位置占滿量程的百分比。而基于該百分比和滿量程值,就可以計(jì)算儀表的真實(shí)讀數(shù)。


          程序設(shè)計(jì)如下所示:


          圖片


          程序運(yùn)行結(jié)果中,除了顯示讀數(shù)值,還在圖像中顯示了ROI、學(xué)習(xí)過程所返回?cái)?shù)組中的各點(diǎn)以及指針指向的位置,效果如下所示:


          圖片


          2、LCD/LED顯示屏識別


          IMAQ Get LCDROI、IMAQ Read LCD可檢測包含多個(gè)七段數(shù)碼管類型數(shù)字的區(qū)域,并讀取包括小數(shù)點(diǎn)等分隔符在內(nèi)的數(shù)值。IMAQ Read Single Digit則用于讀取單個(gè)七段數(shù)碼管類型的數(shù)值。與讀取模擬儀表數(shù)值的過程類似,讀取LCD儀表數(shù)值的過程也包括學(xué)習(xí)和讀數(shù)兩個(gè)階段。


          學(xué)習(xí)階段需要基于所有數(shù)字的七段數(shù)碼管全部打開時(shí)的圖像(全部為數(shù)字8)來定位各個(gè)數(shù)字所在的矩形范圍。讀數(shù)階段則通過分析7段數(shù)碼管數(shù)字各段的線灰度分布以確定讀數(shù)結(jié)果。


          下圖顯示了儀表讀取函數(shù)基于線灰度分布識別LCD/LED數(shù)碼管顯示的原理,其中數(shù)字為各段數(shù)碼管的索引。


          圖片


          上圖(a)顯示了背景為白色且七段數(shù)碼管全部打開時(shí)的情況,其中數(shù)字為各段數(shù)碼管的索引。假定已在學(xué)習(xí)階段從圖像中確定了各個(gè)數(shù)字所在的矩形位置,就可以在水平和豎直方向上設(shè)置與各段數(shù)碼管交叉的線段型ROI,用于后續(xù)分析。


          由于數(shù)碼管關(guān)閉時(shí),其圖像灰度與背景灰度接近,因此線ROI灰度曲線上的像素值分布較為集中。而數(shù)碼管打開時(shí),因數(shù)碼段圖像灰度與背景反差較大,線ROI灰度曲線上的像素值分布較為分散,如上圖(b)所示。


          標(biāo)準(zhǔn)差可用來衡量一組數(shù)據(jù)的分散程度,因此通過計(jì)算線ROI上像素灰度的標(biāo)準(zhǔn)差,并為其設(shè)置閾值即可判斷數(shù)碼管的開閉。綜合考慮7個(gè)數(shù)碼管的各種開閉組合,就能得到其顯示的數(shù)值。而重復(fù)該過程就能讀取LCD顯示屏中的多個(gè)數(shù)字。

          由于LCD/LED儀表讀取函數(shù)基于線灰度分布來判斷數(shù)碼管的開閉,因此圖像的亮度漂移(Light Drift)、對比度、噪聲和分辨率將直接影響其讀數(shù)的準(zhǔn)確性。


          圖片


          通過一個(gè)讀取LCD儀表顯示值的實(shí)例,了解LCD/LED顯示屏識別的應(yīng)用方法,程序設(shè)計(jì)思路如下所示:

          • 程序總體上可分為使用IMAQ Get LCDROI的學(xué)習(xí)和使用IMAQ Read LCD的讀數(shù)兩大部分。

          • 程序開始先讀入儀表所有數(shù)字均為8時(shí)的圖像LCD0.jpg,并調(diào)用IMAQ Get LCD ROI,從指定的矩形ROI中搜索各個(gè)7段數(shù)碼管數(shù)字所在的矩形位置;

          • 一旦獲得各個(gè)數(shù)字位置所在的范圍,程序就讀取待測圖像LCD1.jpg,調(diào)用IMAQ Read LCD分析各個(gè)數(shù)字所在的范圍內(nèi)7個(gè)數(shù)碼管的顯示情況,以判斷最終讀數(shù);

          • 儀表學(xué)習(xí)和讀取過程均使用線灰度分布的標(biāo)準(zhǔn)差閾值Threshold來判斷數(shù)碼管的開閉,而且IMAQ Read LCD還支持?jǐn)?shù)字的+/-符號和小數(shù)點(diǎn)的讀取;

          • IMAQ Read LCD以浮點(diǎn)數(shù)、字符串以及元素為圖形的數(shù)組返回所讀取到的值,其中字符串中的每個(gè)字符用小數(shù)點(diǎn)進(jìn)行分割。


          程序?qū)崿F(xiàn)如下所示:


          圖片


           程序運(yùn)行效果如下所示:


          圖片


          儀表和條碼讀取是機(jī)器視覺系統(tǒng)的常用功能。常見的各類儀表可按顯示方式分為模擬指針顯示屏、LCD顯示屏和LED顯示屏等幾大類。


          機(jī)器視覺系統(tǒng)可以使用雙線法或三點(diǎn)法,對模擬顯示屏類型的儀表進(jìn)行校準(zhǔn)和讀取。對七段數(shù)碼管類型顯示數(shù)字的LCD/LED儀表的讀取,可以通過分析數(shù)字所在區(qū)域的線灰度分布來實(shí)現(xiàn)。數(shù)碼管關(guān)閉時(shí),灰度曲線上的像素值分布較為集中,反之則分布較為分散。在讀取儀表過程中,應(yīng)考慮圖像的亮度漂移、對比度、噪聲和分辨率對讀數(shù)準(zhǔn)確性的影響。



          *博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請聯(lián)系工作人員刪除。

          汽車防盜機(jī)相關(guān)文章:汽車防盜機(jī)原理


          關(guān)鍵詞: LabVIEW

          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉