董小麗,曹鵬章,李安,王天明
中國石油長慶油田分公司 技術監測中心 (陜西 西安710299)
石油化工行業中的運動黏度測量方法有毛細管法、單管落球法和旋轉法等。其中毛細管法因其準確度高、使用簡單一直受到重視,毛細管黏度計也是當前計量檢定部門標定標準黏度的唯一量器。
毛細管法測量液體黏度(標準化操作流程)存在測量油品黏度自動化程度低、檢定誤差大的問題[1],國內外諸多學者和企業都對此進行了改進和提高。美國某儀器公司[2]的全自動運動黏度儀,利用毛細管法測量一定體積的液體在重力作用下流經毛細管所需的時間,其特點是需要油品的樣品少、測量速度快,缺點是溫度變化比較頻繁。Silber-Li設計的自動調溫微管黏度計[3],通過CCD連接立體顯微鏡和計算機觀測液流情況,從而得出黏度值,其特點是測量精度高,但管徑過小,容易被帶雜質的油品堵塞管子。上海某石油化工裝備公司[4]利用熱敏電阻開發了黏度計中的自動液面檢測裝置,當液態通過黏度計上刻度線時熱敏電阻工作開始計時,流過下刻度線時停止計時,得到石油流過毛細管的時間,從而求出石油的黏度。徐海英[5]利用視覺技術設計了一款黏度計智能檢定儀,主要利用OpenCV視覺庫中的一些圖像處理算法實現了毛細管黏度計的刻度線檢測和液面目標移動檢測,并利用微控制器、電磁閥和直流吸氣泵等設計了負壓吸油系統,利用計算機通過串口或者藍牙與硬件系統通信實現連續的4~5次自動化檢定。
為提高油品運動黏度的測量精度和效率,本文設計了一款智能化油品運動黏度計。其主要原理是首先利用攝像頭采集毛細管圖像,確定上下兩刻度線位置,然后全程監控油品黏度測量過程,實時檢測油品液面位置。當油品液面與上下兩刻度線位置重疊時分別記錄相應的時間T1和T2,然后根據時間間隔和油品的相關特性參數即可確定油品的運動黏度,同時將攝像頭采集的測量過程上傳至數字化信息平臺以備數據溯源。
在測量開始前,首先需要確定毛細管上下兩刻度線位置,具體方法是在開始測量前,通過系統發送刻度線標定命令,則攝像頭自動拍攝毛細管的圖像,通過相應的圖像處理方法檢測出上下刻度線位置,流程如圖1所示。在進行刻度線提取前,首先人工提取出毛細管上下2條刻度線的圖像作為后續刻度線提取的匹配模板,并對匹配模板進行顏色空間分解,每條刻度線模板將得到3個顏色分量圖像(R、G、B);然后對開始測量前所采集到的毛細管圖像進行顏色空間分解,并利用每條刻度線的匹配模板顏色分量圖像對其進行匹配,匹配度最高(顏色相差最小)的區域即為刻度線位置。圖2為測量開始前采集的毛細管圖像,其中紅圈所示分別為上刻度線和下刻度線,將其提取出即可作為匹配模板。上下刻度線標定結果如圖3中紅色星號和綠色星號所示。

圖1 刻度線位置提取

圖2 測量前的毛細管圖像

圖3 上下刻度線位置標定
在測量每個油品前,可以進行一次刻度線標定工作以判斷刻度線位置標定是否準確,如果由于恒溫浴中液體渾濁等原因導致刻度線標定不準確,則需要重新提取刻度線匹配模板。
為了在測定過程中確定油品液面流過上刻度線的時刻T1和流過下刻度線的時刻T2,本文設計了油品液面檢測算法,主要有2種:幀間差法[6-7]和形態學法[8-9],其流程分別如圖4和圖5所示。

圖4 幀間差法油品液面檢測流程

圖5 形態學法油品液面檢測流程
1.2.1 幀間差法
鑒于毛細管在測量過程中是靜止不動的,同時攝像頭相對毛細管也幾乎是靜止的,所以用幀間差的方法定位幀間變化區域,即液面區域。實驗發現,儀器所采用的攝像頭拍攝的視頻幀速率為10.96 fps,圖像分辨率為640×480,相鄰兩幀原圖像如圖6(a)和圖6(b)所示,所提取的液面區域二值化后結果如圖6(c)中紅色圈所圈的白色區域所示,以該區域中最底部的點作為液面位置。該方法的主要缺點在于,如果視頻中測量儀器或者攝像頭不慎發生位置變化就會導致幀間差出現大量非目標(液面)的區域,從而使得液面提取難度加大。

圖6 幀間差法提取的液面區域
1.2.2 形態學法
為了避免液面提取過程中需要參考前面的幀信息,形態學法主要采用的技術方案是將每一幀輸入圖像進行二值化處理(圖7(b));然后對二值化圖像進行孔洞填充(圖7(c)),將管中沒有液體的部分剔除掉,接著進行連通分量標記,取連通度最大的區域作為液面提取區域(圖7(d))。對該區域進行邊緣檢測,所提取的底部邊緣線即為液面(圖7(e)中紅色圈所示)。

圖7 形態學法液面提取過程
油品處于上下刻度線中間的毛細管空腔時,上述2種液面檢測方法都能檢測出油品液面。但當油品流出空腔,進入下刻度線部分的細管時,由于管徑非常小,油品流速非???,通常前一時刻油品液面還處于下刻度線之上,下一時刻就已經處于下刻度線之下,因而采用幀間差法所確定的油品流過下刻度線的時間誤差為1/(2×幀速率),如圖8所示。通過實驗發現,當油品液面到達甚至流出毛細管空腔進入下刻度線所處的細管時,形態學法所檢測到的油品液面一直處于空腔底部。根據這一特性,在油品黏度測量過程中,當檢測到油品液面處于空腔底部時(即與下刻度線之間的距離處于一定閾值之內),將視頻按照1/N倍的幀間隔的時間間隔細分(N的取值與黏度測定中要求的時間精度有關)。同時只針對檢測到的油品液面(空腔底部位置)以下的區域進行油品液面檢測,如果檢測到前一幅圖像液面處于下刻度線之上,下一幅圖像液面處于下刻度線之下,則將兩幅圖像所對應的時間取平均作為油品流過下刻度線的時間,此時可將時間精度提高N倍,實驗結果如圖9所示。

圖8 油品流過下刻度線的前后兩幀,時間誤差為0.045 6 s

圖9 高精度幀間隔細分油品流過下刻度線的前后兩楨,時間誤差0.5×10-8 s
在整個測量過程中,如果采用幀間差法檢測油品液面,則默認攝像頭和測量儀器之間是相對靜止的,因而只需要進行一次刻度線標定,記錄下刻度線位置,在測量過程中監控油品液面并與刻度線位置進行比較,即可得到時間間隔。如果采用形態學法檢測油品液面,則每次都需要進行刻度線標定,以防攝像頭與測量儀器相對位置變化等幀間差法失效的情況,然后將檢測到的油品液面與每次得到的刻度線位置進行比對,確定時間間隔。
為了驗證所設計的油品黏度測量中的時間間隔計量方法的有效性,本文在同一測試和觀測環境下對2種不同黏度的油品進行了實驗,分別采用人工秒表計時、幀間差法計時和形態學法計時3種方法,實驗結果見表1。

表1 刻度線位置提取
1)人工秒表計時方法與本文所設計的算法計算出的時間間隔之間有較大的差距,會導致黏度測定存在較大誤差。同時人工秒表計時方法中操作人員的不同操作水平也會導致計時不同,很難達到結果的重復性實現。
2)幀間差法的精度與視頻的幀速率有關,其誤差約為幀速率倒數的一半,算法簡單,程序設計復雜度低;對光線等場景變化不太敏感,能適應各種動態環境,穩定性較好。但存在缺點:不能提取出對象的完整區域,只能提取出邊界;同時依賴于選擇的幀間時間間隔。如果時間選擇不適當,當物體在前后兩幀中幾乎完全重疊時,則檢測不到物體。
3)形態學法是采用二值化算法,在保留圖像特征的情況下減少運算量,提升運算速度,并通過閾值的設置,去掉檢測過程中產生的孤立點集合等圖像噪聲。處理后根據圖像的連通區域分析液面位置,具有較低的計算復雜度,方便利用硬件實現。因此在實際應用中具有快速高效的特點,尤其適合大量圖像數據的處理與分析。但存在每次都需要進行刻度線標定,以防止攝像頭與測量儀器相對位置變化而失效。
實驗數據表明幀間差法和形態學法均能取得較高精度的時間間隔測定,同時能夠實現結果的可重復性,另外由于所拍攝的測定視頻的自動存儲和上傳至數字化信息中心,也為數據的可靠溯源提供了基礎。
本文利用計算機和攝像頭對油品黏度的測定過程進行控制,利用視頻和圖像處理技術設計了上下刻度線的標定算法,設計了幀間差法和形態學法2種方案進行液面的實時檢測。并與上下刻度線進行比對,當液面與刻度線重合時記錄相應的時刻,從而實現了油品黏度測定過程中的時間間隔的精確測量,避免了人工操作的主觀性強、誤差大、操作繁瑣等不足,為油品黏度的自動測定奠定了基礎。