本發明涉及圖像處理領域以及自動化測試領域,具體涉及一種基于機器視覺的汽車儀表自動化測試系統及測試方法。
背景技術:
隨著汽車工業的快速度發展,人們對汽車儀表盤的依賴程度不斷提高,汽車儀表盤已經成為汽車的一個重要組成部件,經歷了從數字化到智能化、網絡化的發展歷程。時至今日,汽車儀表盤已經不再僅僅是顯示車速、發動機轉速、油量等基本信息,其所能顯示的信息可謂相當龐大。然而系統越是復雜,那么它出現錯誤的可能性就會越大,使得儀表測試已經成為其投放生產線之前的十分重要的步驟。
但是,目前汽車儀表的測試還尚處于人工或半人工的工作狀態,而且由于人力的先天缺陷,從事如此重復的工作極易出現錯誤,而且效率低下。因此設計合理的汽車儀表自動化測試系統是十分必要的。
技術實現要素:
本發明提供了一種基于機器視覺的汽車儀表自動化測試系統及測試方法,可以在無人操作的情況下連續運行數小時,自動生成測試報告及日志,從而解決了以往依靠人力測試效率低、速度慢,易出錯等問題。
為實現上述目的,本發明采取的技術方案為:
一種基于機器視覺的汽車儀表自動化測試系統,包括上位機仿真端、組合儀表盤、機器視覺構件、下位機視覺分析機;
所述上位機仿真端與HIL仿真平臺建立連接,通過HIL仿真平臺發送仿真信號來控制組合儀表盤的動作;
所述機器視覺構件包括:暗箱、設置在暗箱內的用于支撐組合儀表盤以及安放工業攝像機的臺架、工業攝像機、與工業攝像機連接的采集卡;
所述下位機視覺分析機接收上位機仿真端發送的控制命令,驅動所述工業攝像機對組合儀表盤的儀表盤圖像進行采集進而對采集圖像進行識別并向上位機仿真端回傳識別結果,同時保存采集的圖片結果并生成日志;所述上位機仿真端對下位機視覺分析機回傳來的識別結果進行分析,并生成識別報告。
本發明同時提供一種基于機器視覺的汽車儀表自動化測試系統的測試方法,包括如下步驟:
S1、上位機仿真端將識別命令發送給下位機視覺分析機;同時上位機仿真端將仿真的信號發送給HIL仿真平臺,使儀表盤顯示所需識別數據;
S2、下位機視覺分析機在收到上位機仿真端所發出的指令后,驅動工業攝像機開始對組合儀表盤進行圖像采集;
S3、圖像采集完成后,對圖像進行預處理,由下位機視覺分析機進行采集結果的識別和分析,將識別結果回傳上位機仿真端,同時在下位機視覺分析機保存采集的圖片結果并生成日志;
S4、上位機仿真端分析下位機視覺分析機回傳的識別結果,并生成識別報告。
進一步地,所述步驟S3中對圖像進行預處理的方法為:首先利用高斯濾波去除圖像噪聲部分,灰度化后運用禮帽變換分離比鄰近點的斑塊,去除部分噪點;使用OTSU算法對所得的圖像進去閾值分割,方便圖像二值化;采用四連通的種子填充算法,對二值圖像中的大面積噪聲區域填充。
進一步地,所述步驟S3中下位機視覺分析機對組合儀表盤的圖像采集結果的識別包括圖標識別、指針讀數識別和字符識別。
進一步地,所述圖標識別包括以下步驟:
S11、首先建立訓練樣本數據庫,針對各個圖標,抓取它在各種情況下的圖像并保存;
S12、預處理后,分別采用SIFT算法和主成分分析算法提取各個樣本的特征值,并存入數據庫;
S13、對于測試時攝像機抓取的任意圖標樣本圖像,同樣經歷圖像預處理以及特征提取的處理過程;
S14、圖標識別:首先根據圖像的PCA特征進行匹配,計算測試樣本與各個訓練樣本特征值的歐式距離,選取距離值最小的作為最佳匹配目標,如果匹配效果不理想,則采用SIFT特征進行匹配,將特征向量的歐式距離作為兩幅圖像中的特征點相似性判定度量。
進一步地,所述指針讀數識別包括以下步驟:對于組合儀表盤中的指針圖像首先進行預處理,然后利用骨架提取算法將圖像中的指針細化,使其從矩形細化為線形;利用霍夫變換的方法對該直線進行識別后,根據直線所處的角度計算其讀數。
進一步地,所述字符識別包括如下步驟:
S21、選擇字符圖像,截取大量的文字圖像素材,以此作為字庫中的標準數據;
S22、經過圖像預處理后,利用Tesseract OCR引擎對其進行訓練,對于識別效果不理想的文字圖像手動建立其文字識別庫;
S23、將所有的訓練圖片特征信息合并,并手工調整文字大小,核對文字精度,從而建立針對儀表盤的文字識別庫traineddata;測試過程中所抓取的文字圖像,經過相同的處理;
S24、運用Tesseract OCR引擎匹配到文字識別庫中的標準數據,完成字符識別。
本發明具有以下有益效果:
測試人員不必在從事如此重復的、枯燥的測試工作,只需啟動系統測試和查驗測試報告。從而極大的提高了測試效率、節省了人力成本、降低了開發成本、縮短了開發周期、提高了發現錯誤的幾率。
附圖說明
圖1為本發明實施例一種汽車儀表自動化測試系統的結構圖。
圖2為本發明實施例圖像預處理方法。
圖3為本發明實施例儀表盤中圖標識別方法。
圖4為本發明實施例儀表盤中指針讀數的識別方法。
圖5為本發明實施例儀表盤中字符識別方法。
具體實施方式
為了使本發明的目的及優點更加清楚明白,以下結合附圖及實施例對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
如圖1所示,本實施例提供了一種基于機器視覺的汽車儀表自動化測試系統,包括上位機仿真端、組合儀表盤、機器視覺構件、下位機視覺分析機;
所述上位機仿真端與HIL仿真平臺建立連接,通過HIL仿真平臺發送仿真CAN信號來控制組合儀表盤的動作;
所述機器視覺構件包括:
暗箱,用于為儀表盤圖像采集提供密閉穩定的環境,避免外部光線造成補光不均勻及陰影的影響;其材質具有不透光且內壁不形成反射的特性。
臺架,設置在暗箱內,用于支撐組合儀表盤以及安放工業攝像機;
工業攝像機,采用維視的工業相機MV-VS078FC,最高分辨率可達1024*768,幀速率為30fps,幀曝光工作方式;
采集卡,采用MV1394E采集卡,通過1394線與攝像機連接,理論帶寬400M/S;
所述下位機視覺分析機接收上位機仿真端發送的控制命令,驅動工業攝像機對組合儀表盤的儀表盤圖像進行采集進而對采集圖像進行識別并向上位機仿真端回傳識別結果,同時在下位機視覺分析機保存采集的圖片結果并生成日志,以便識別人員對結果進行查驗;所述上位機仿真端對下位機視覺分析機回傳來的識別結果進行分析,并生成識別報告。
所述的上位機仿真端采用WIN7 64位中文操作系統,8G以上內存。通過向HIL仿真平臺和下位機發送命令控制整個系統的工作流程。
所述的下位機視覺分析機采用WIN7 64位中文操作系統,8G以上內存,主板提供PCI插槽、PCIE插槽,同時配有OPENCV計算視覺庫以及SQLite數據庫,通過運用各種圖像處理算法,對儀表盤采集圖像進行識別。
其中,所述的HIL仿真平臺,由實時處理器、IO板卡、機柜、試驗管理軟件等組成的,以實時處理器運行仿真模型來模擬受控對象的運行狀態,通過IO板卡與被測的控制器連接,通過試驗管理軟件進行控制,來對被測控制器進行全方面的、系統的測試,擁有方便易用的實現代碼生成/下載和試驗/調試的軟件環境,用于向組合儀表盤發送仿真信號,驅動組合儀表盤工作。
如圖1所示,本發明實施例還提供了一種基于機器視覺的汽車儀表自動化測試方法,包括如下步驟:
S1、上位機仿真端將識別命令發送給下位機視覺分析機;同時上位機仿真端將仿真的信號發送給HIL仿真平臺,使組合儀表盤顯示所需識別數據;
S2、下位機視覺分析機在收到上位機仿真端所發出的指令后,驅動工業攝像機開始對組合儀表盤進行圖像采集;
S3、圖像采集完成后,對圖像進行預處理,由下位機視覺分析機進行采集結果的識別和分析,將識別結果回傳上位機仿真端,同時在下位機視覺分析機保存采集的圖片結果并生成日志,以便識別人員對結果進行查驗;
S4、上位機仿真端分析下位機視覺分析機回傳的識別結果,并生成識別報告。
如圖2所示,所述圖像預處理的方法為:
首先利用高斯濾波去除圖像噪聲部分,灰度化后運用禮帽變換分離比鄰近點亮一些的斑塊,從而去除部分噪點;使用OTSU算法對所得的圖像進去閾值分割,從而方便圖像二值化;采用四連通的種子填充算法,對二值圖像中的由于反光等原因造成的大面積噪聲區域填充。
所述的下位機視覺分析機對組合儀表盤的圖像采集結果的識別包括圖標識別、指針讀數識別和字符識別。
如圖3所示,所述的圖標識別包括以下步驟:
S11、對儀表盤中的圖標識別首先要建立訓練樣本數據庫,針對各個圖標,抓取它在各種情況下的圖像并保存;
S12、預處理后,分別采用SIFT算法和主成分分析(PCA)算法提取各個樣本的特征值,并存入數據庫;
S13、對于測試時攝像機抓取的任意圖標樣本圖像,同樣經歷圖像預處理以及特征提取的處理過程;
S14、圖標識別,首先根據圖像的PCA特征進行匹配,計算測試樣本與各個訓練樣本特征值的歐式距離,選取距離值最小的作為最佳匹配目標,如果匹配效果不理想,則采用SIFT特征進行匹配,將特征向量的歐式距離作為兩幅圖像中的特征點相似性判定度量。
如圖4所示,所述的指針讀數識別包括以下步驟:對于儀表盤中的指針圖像首先進行預處理,然后利用骨架提取算法將圖像中的指針細化,使其從矩形細化為線形;利用霍夫變換的方法對該直線進行識別后,根據直線所處的角度計算其讀數。
如圖5所示,所述字符識別包括如下步驟:
S21、選擇字符圖像,截取大量的文字圖像素材,以此作為字庫中的標準數據;
S22、經過圖像預處理后,利用Tesseract OCR引擎對其進行訓練,對于識別效果不理想的文字圖像手動建立其文字識別庫;
S23、將所有的訓練圖片特征信息合并,并手工調整文字大小,核對文字精度,從而建立針對儀表盤的文字識別庫traineddata。測試過程中所抓取的文字圖像,經過相同的處理,
S24、運用Tesseract OCR引擎匹配到文字識別庫中的標準數據,完成字符識別。
本實施采用SQLite輕量級嵌入式數據庫存儲數據。數據庫中存儲了圖標樣本、特征值、圖標描述、圖標位置等關鍵信息。同時可以十分方便的對數據庫中的信息進行新增、修改、刪除、查找等操作。
綜上所述,本具體實施測試人員不必在從事如此重復的、枯燥的測試工作,只需啟動系統測試和查驗測試報告。從而極大的提高了測試效率、節省了人力成本、降低了開發成本、縮短了開發周期、提高了發現錯誤的幾率
以上所述僅是本發明的優選實施方式,應當指出,對于本技術領域的普通技術人員來說,在不脫離本發明原理的前提下,還可以作出若干改進和潤飾,這些改進和潤飾也應視為本發明的保護范圍。