HALCON中級篇:條碼識別


HALCON中級篇:條碼識別

條碼

條碼讀取時相當容易的,你初始化一個條碼模型,然後執行讀條碼的算子。在這個算子中,你需要制定期望的條碼類型,那樣,你可以通過不斷的應用不同參數的這個算子就可以讀取不同的條碼類型,但是沒有必要為每一個條碼類型去創建一個單獨的模型。讀取的結果是一個包含條碼的區域和解碼的字符串。

HALCON讀碼器的優勢就是它的易用性,沒有在編程或者圖像處理方面先進經驗的要求,僅僅是幾個清除簡單排序的算子的應用。還有,讀碼器是非常強且靈活的,其變現在能夠讀取任意數量任意方向,即使部分缺失的相同類型的條碼。

基本概念

條碼讀取由四個主要步驟組成,即獲取圖像、創建條碼模型、讀取條碼、摧毀條碼模型。

HALCON中級篇:條碼識別

獲取圖像

對於在線部分,例如在僅僅讀取期間,圖像必須被獲取。

創建條碼模型

你可以用create_bar_code_mode去創建一個條碼模型,返回的句柄提供了所有有關條碼結構必要的信息。在大多數情況下,你不必去調整任何參數。

讀條碼

用算子find_bar_code去讀條碼,在這個算子中,你指定模型和你要尋找的條碼類型。算子會在圖像或者指定的感興趣區域去尋找指定類型的條碼,並返回所有被找到條碼的區域和解碼的字符串。

毀掉條碼模型

當你不在需要條碼模型的時候,你可以用算子clear_bar_code_model去毀掉它。

第一個例子

作為基本概念的例子,這有一個讀EAN13條碼的簡單程序。

測試圖片從文件中獲取,用create_bar_code_model取創建條碼模型,然後算子find_bar_code(條碼類型設置為‘EAN-13’)返回被發現條碼的區域和解碼的字符串。在程序的最後,條碼模型被用算子clear_bar_code_model毀掉。

HALCON中級篇:條碼識別

條碼識別的效果圖為:


HALCON中級篇:條碼識別


分享到:


相關文章: