曹力寧 蔡克新 王起飛
摘要:本文描述了通過對OpenCV的環境配置,實現液晶面板對位MARK標的圖像采集、加載和邊緣檢測等功能,實現了液晶面板切割的精確對位,并給出了具體代碼。
關鍵詞:OpenCV;液晶面板;圖像處理
中圖分類號:TP319 文獻標識碼:A 文章編號:1007-9416(2018)06-0119-02
液晶面板已經用于人們日常生活的方方面面,液晶面板的尺寸也越來越大。通常,我們所說的液晶面板都是從一塊巨大的液晶基板上切割而來的,液晶面板切割精度需達到0.001mm,才能實現面板的精確切割,保證切割的良率。在切割時,需要通過CCD查找液晶基板上的對位MARK標,來實現切割刀輪對液晶面板的精確對位。與此同時,機器視覺和圖像處理技術已經廣泛應用于工業技術、醫學治療、軍事航空等各個領域[1]。由于視頻圖像處理程序的數據量大,要求實時性等特點,如果開發人員自主開發程序必定耗費大量時間和精力。所以本文通過OpenCV技術 ,實現了對液晶面板上的對位MARK標的精確檢測。
1 OpenCV簡介
OpenCV(Open Source Computer Vision Library)是Intel 公司面向應用程序開發者開發的計算機視覺庫。它簡單并且方便,由一系列C函數和少量C++類構成,同時可以跨平臺使用,具有很好的兼容性,提供了大量的圖像和機器視覺的處理函數,因此極大地方便了圖像處理和視頻技術的二次開發[2]。在VC環境下進行程序開發,可以大大縮短開發周期,節約開發的成本。本文使用BFLY-PGE-13S2M-CS相機,GIGE-PCIE2-2P02采集板卡,板卡附帶的二次開發包(sdk)中提供了用于圖像視頻采集的函數,實現了精確采集液晶面板上的MARK標,從而達到面板的精確定位,MARK標識別的一般步驟如圖1所示。
2 基于OpenCV的液晶面板MARK標識別程序設計
2.1 環境配置
2.2 圖像的加載
不同的圖像,其內部的結構也不完全相同,所以通過不同的方法將圖像中的數據讀取到計算機的內存里。OpenCV的API函數cvLoadImage可以將圖像數據從文件中加載進來,而且不論加載前圖像是什么類型,加載后它返回的都是一個指向IplImage結構體的指針,方便了后續處理。cvLoadImage的函數原型為:IplImage* cvLoadImage(const char*filename,int flags=CV_LOAD_ IMAGE_COLOR);返回值為一個指向IplImage結構體的指針。由于圖像數據可以當作一個二維矩陣,所以,相應的邊緣處理可以當作是對一個二維矩陣的處理。圖像加載程序如下,圖像加載結果如圖2所示。
2.3 對位MARK標的圖像邊緣檢測
對位MARK標的圖像邊緣是MARK標上灰度變化最為明顯的地方,其包含了大量的原始圖像信息。邊緣檢測利用對位MARK標的這個特點,對圖像的像素點進行求微分,從而可以定位邊緣的像素點,這些點的灰度值變化比較大,把這些點連接起來,就構成了線條,這些線條就是圖像的邊緣。對位MARK標的圖像邊緣檢測的基本步驟:
(1)濾波。邊緣的檢測主要通過一階導數和二階導數的計算,但由于可能會受到噪聲的影響,所以采用濾波器來降低噪聲。
(2)增強。將圖像中灰度值有明顯變化的點突出顯示。這里通過計算梯度幅值來完成。
(3)檢測。在對位MARK標的圖像顯示中,有很多梯度幅值較大點,但并不是我們要找的邊緣點,我們通過閾值化的方法來確定和剔除不需要的點。
(4)定位。精確確定邊緣的位置。
對位MARK標圖像邊緣的確定和提取對于整個MARK標的識別和定位是非常重要的。其中,常用的邊緣檢測的經典算子有:Sobel算子、Log算子、和Canny算子等。OpenCV提供了cvSobel函數和vCanny函數等進行邊緣檢測。其中,Canny邊緣檢測算法的特點如下:1)高準確率;2)定位性好;3)響應性小。基于以上特點,本程序使用Canny 邊緣檢測算法實現MARK模板的邊緣檢測。Canny算法步驟如圖3所示,圖4為MARK模板邊緣檢測結果。
3 結語
本文論述了基于 OpenCV圖像處理算法庫對于液晶面板的對位MARK標的圖像采集、存儲和邊緣檢測過程。 使用了采集卡自帶的二次開發包中的API函數采集和處理了液晶面板的MARK對位標,程序運行可靠,易于維護,圖像采集程序已在實際項目中使用。
參考文獻
[1]馮偉興,梁洪,王臣業.Visual C++數字圖像模式識別典型案例詳解[M].機械工業出版社,2012.
[2]賈小軍.基于開源計算機視覺庫OpenCV的圖像處理[J].計算機應用與軟件,2008,25(4)276-278.
Abstract:This paper describes the functions of the image collection, loading and edge detection of the LCD panel against the position of MARK by the configuration of the OpenCV environment, and realizes the precise alignment of the LCD panel cutting, and gives the specific code.
Key words:OpenCV; LCD panel; image processing