一種基于機器視覺系統的條碼檢測識別方法及系統的制作方法
【專利摘要】本發明公開了一種基于機器視覺系統的條碼檢測識別方法及系統,所述方法應用于機器視覺系統主機中,所述機器視覺系統主機連接有光源模塊和圖像采集模塊,所述方法包括以下步驟:S1、圖像數據采集步驟,S2、圖像數據預處理步驟,S3、條碼區域定位步驟,S3A、條碼區域調整步驟,S4、條碼識別步驟。利用本發明,無需進行人工操作,即可對具有條碼的產品進行自動掃描并對條碼進行識別,其具有自動化程度高、識別速度快,工作效率高等優點。
【專利說明】
一種基于機器視覺系統的條碼檢測識別方法及系統
技術領域
[0001] 本發明涉及機器視覺系統的條碼檢測技術領域,尤其涉及一種基于機器視覺系統 的條碼檢測識別方法及系統。
【背景技術】
[0002] 隨著"工業4.0"的概念的不斷深化,機器視覺在工業自動化中的廣泛應用,部分制 造企業開始進入自動化生產階段,在生產控制管理過程中,條碼及其識別讀取技術已經成 為主要的產品標識與跟蹤手段。傳統的掃描槍需要手工近距離對準條碼區域進行操作,其 效率低、速度慢,自動化程度低,人工成本高等弊端已經無法滿足大規模自動化工業生產的 需求。目前,條碼標簽的區域定位,國內外學者進行了研究并提出了相應的解決方案,主要 有基于DCT的方法、基于差分的方法和數學形態學的方法等。DCT算法的條碼區域自動定位, 該算法可以定位任意旋轉角度的條碼,但當圖像中其他區域的紋理比重大于條碼區域時, 該算法會失效;基于差分的方法對條碼進行定位,此方法實現比較簡單,對垂直和水平的條 碼定位效果較好,但是對于復雜背景的魯棒性較差;采用數學形態學的膨脹操作來定義條 碼區域,很容易使條碼區域與其他區域連在一起,容易出現誤檢和漏檢的情況。因此,有必 要提供一種新的條碼檢測方法,以克服現有的條碼的檢測識別方法存在的不足。
【發明內容】
[0003] 為了克服現有技術中的不足,本發明提供一種基于機器視覺系統的條碼檢測識別 方法及系統,利用本發明,無需進行人工操作,即可對具有條碼的產品進行自動掃描并對條 碼進行識別,其具有自動化程度高、識別速度快,工作效率高等優點。
[0004] 本發明是通過以下技術方案實現的:
[0005] -種基于機器視覺系統的條碼檢測識別方法,所述方法應用于機器視覺系統主機 中,所述機器視覺系統主機連接有光源模塊和圖像采集模塊,所述方法包括以下步驟: [0006] S1、圖像數據采集步驟,通過所述圖像采集模塊與光源模塊的配合,對具有多條條 碼的標簽進行圖像數據采集,并將采集到的圖像數據傳輸至所述器視覺系統主機;
[0007] S2、圖像數據預處理步驟,所述機器視覺系統主機對所述圖像數據進行預處理,以 將獲取的圖像數據進行標簽與背景的分離,從而過濾背景的干擾;
[0008] S3、條碼區域定位步驟,所述機器視覺系統主機對圖像數據預處理步驟處理后的 圖像數據進行條碼特征提取,并對條碼進行區域定位,以確定所述標簽上所有條碼的所在 區域,該所在區域即為具有所述標簽上所有條碼的條碼區域;
[0009] 其中,所述條碼區域包括條碼上下區域和條碼左右區域,所述條碼區域定位包括 條碼上下區域定位和條碼左右區域定位,分別利用所述條碼上下區域定位、條碼左右區域 定位來確定條碼的行數、同一行條碼中存在的條碼數,以實現對所述標簽上所有條碼的區 域定位;
[0010] S4、條碼識別步驟,對所述條碼區域內的每一條碼進行條碼識別。
[0011] 進一步地,在所述條碼區域定位步驟S3之后、所述條碼識別步驟S4之前還包括以 下步驟:
[0012] S3A、條碼區域調整步驟,對所述條碼區域的左右邊界分別進行擴展K個像素的調 整處理,并對所述條碼區域的上下邊界分別進行縮小P個像素的調整處理,最后對調整處理 后的條碼區域作為最終的條碼區域,其中所述K、P為正整數,具體取值根據需要選取。
[0013] 優選地,所述條碼區域定位步驟S3中,在所述條碼上下區域定位過程中,采用歸一 化互相關匹配算法與霍夫變換直線檢測算法來確定所述條碼上下區域;所述條碼區域定位 步驟S3中,在進行所述條碼左右區域定位過程中,對預處理后的圖像的灰度圖上對各條碼 的中心線1進行直線灰度值掃描,以獲得每個條碼的中心線1的灰度值分布圖,對灰度值分 布圖上的像素數據進行累加運算,設中心線1灰度值數組為LineA,累加運算后產生一個新 的數組為LineB,根據所述數組LineA與數據LineB建立條碼的中心線灰度值累加分布圖,通 過所述中心線灰度值累加分布圖中的水平部分的直線來確定所述條碼左右區域定位。 [0014]優選地,所述圖像數據預處理步驟S2中,所述機器視覺系統主機對所述圖像數據 進行的預處理,包括濾波、去噪、增強和/或二值化處理;較佳地,所述圖像采集模塊為工業 相機。
[0015] 基于上述方法的發明構思,本發明還提供了一種基于機器視覺系統的條碼檢測識 別系統,所述系統包括機器視覺系統主機,所述機器視覺系統主機連接有光源模塊和圖像 采集模塊,所述圖像采集模塊用于與光源模塊配合,對具有多條條碼的標簽進行圖像數據 采集,并將采集到的圖像數據傳輸至所述器視覺系統主機中,所述機器視覺系統主機包括:
[0016] 圖像數據預處理模塊,用于對所述圖像數據進行預處理,以將獲取的圖像數據進 行標簽與背景的分離,從而過濾背景的干擾;
[0017] 條碼區域定位模塊,用于將圖像數據預處理模塊進行所預處理后的圖像數據進行 條碼特征提取,并對條碼進行區域定位,以確定所述標簽上所有條碼的所在區域,該所在區 域即為具有所述標簽上所有條碼的條碼區域;
[0018] 其中,所述條碼區域包括條碼上下區域和條碼左右區域,所述條碼區域定位包括 條碼上下區域定位和條碼左右區域定位,分別利用所述條碼上下區域定位、條碼左右區域 定位來確定條碼的行數、同一行條碼中存在的條碼數,以實現對所述標簽上所有條碼的區 域定位;
[0019] 條碼識別模塊,用于對所述條碼區域內的每一條碼進行條碼識別。
[0020] 進一步地,所述機器視覺系統主機還包括:
[0021] 條碼區域調整模塊,用于對所述條碼區域的左右邊界分別進行擴展K個像素的調 整處理,并對所述條碼區域的上下邊界分別進行縮小P個像素的調整處理,最后對調整處理 后的條碼區域作為最終的條碼區域,其中所述K、P為正整數,具體取值根據需要選取。
[0022] 優選地,所述條碼區域定位模塊,在進行所述條碼上下區域定位過程中,采用歸一 化互相關匹配算法與霍夫變換直線檢測算法來確定所述條碼上下區域;所述條碼區域定位 模塊,在進行所述條碼左右區域定位過程中,對預處理后的圖像的灰度圖上對各條碼的中 心線1進行直線灰度值掃描,以獲得每個條碼的中心線1的灰度值分布圖,對灰度值分布圖 上的像素數據進行累加運算,設中心線1灰度值數組為LineA,累加運算后產生一個新的數 組為LineB,根據所述數組LineA與數據LineB建立條碼的中心線灰度值累加分布圖,通過所 述中心線灰度值累加分布圖中的水平部分的直線來確定所述條碼左右區域定位。
[0023] 較佳地,所述圖像數據預處理模塊對所述圖像數據進行的預處理,包括濾波、去 噪、增強和/或二值化處理;所述圖像采集模塊為工業相機。
[0024] 利用本發明提供的基于機器視覺系統的條碼檢測識別方法及系統,可有效代替傳 統的條碼識讀器,即使是對傾斜條碼、單標簽多條碼、單行多條碼、部分缺失的條碼、具有污 漬的等都可以得到較滿意的識別效果,并可實現任意方向條碼和多條碼的自動化識別,而 且識別速度快、識別效率高等優點,從而可有效滿足企業大規模自動化工業生產的需求。
【附圖說明】
[0025] 附圖1為本發明實施例所述方法的流程示意圖;
[0026] 附圖2為本發明實施例所述系統的結構模塊框圖;
[0027] 附圖3為利用霍夫變換算法對標簽上的條碼進行直線檢測獲得的直線,并將各直 線的兩端點進行坐標標記的示意圖;
[0028] 附圖4為具有一個條碼的中心線的灰度值分布圖;
[0029]附圖5為同一行中具有兩個條碼的中心線的灰度值分布圖;
[0030]附圖6為附圖4中的條碼中心線對應的灰度值累加分布圖;
[0031]附圖7為附圖5中的條碼中心線對應的灰度值累加分布圖。
【具體實施方式】
[0032] 為了便于本領域技術人員的理解,下面結合附圖對本發明作進一步的描述。
[0033] 如附圖1所示,一種基于機器視覺系統的條碼檢測識別方法,所述方法應用于機器 視覺系統主機中,所述機器視覺系統主機連接有光源模塊和圖像采集模塊,本實施例中,所 述圖像采集模塊優選為工業相機,所述方法包括以下步驟:
[0034] S1、圖像數據采集步驟,通過所述圖像采集模塊與光源模塊的配合,對具有多條條 碼的標簽進行圖像數據采集,并將采集到的圖像數據傳輸至所述器視覺系統主機;
[0035] S2、圖像數據預處理步驟,所述機器視覺系統主機對所述圖像數據進行預處理,以 將獲取的圖像數據進行標簽與背景的分離,從而過濾背景的干擾;可采用一種基于類內方 差的自適應閾值分割方法對圖像數據進行預處理,所述的預處理,包括濾波、去噪、增強和/ 或二值化處理;
[0036] S3、條碼區域定位步驟,所述機器視覺系統主機對圖像數據預處理步驟處理后的 圖像數據進行條碼特征提取,并對條碼進行區域定位,以確定所述標簽上所有條碼的所在 區域,該所在區域即為具有所述標簽上所有條碼的條碼區域;由于存在著傾斜的條碼的情 況,因此在條碼特征提取后,若存在著條碼傾斜的圖像,則對傾斜的條碼的圖像進行旋轉校 正后再對條碼進行區域定位;
[0037]其中,所述條碼區域包括條碼上下區域和條碼左右區域,所述條碼區域定位包括 條碼上下區域定位和條碼左右區域定位,分別利用所述條碼上下區域定位、條碼左右區域 定位來確定條碼的行數、同一行條碼中存在的條碼數,以實現對所述標簽上所有條碼的區 域定位;
[0038] S4、條碼識別步驟,對所述條碼區域內的每一條碼進行條碼識別。
[0039] 作為優選的實施例,在所述條碼區域定位步驟S3之后、所述條碼識別步驟S4之前 還包括以下步驟:
[0040] S3A、條碼區域調整步驟,對所述條碼區域的左右邊界分別進行擴展K個像素的調 整處理,以防止左右漏碼的情況出現,并對所述條碼區域的上下邊界分別進行縮小P個像素 的調整處理,以確保條碼識別的穩定性,最后對調整處理后的條碼區域作為最終的條碼區 域,通過將調整處理后的條碼作為最終的條碼區域,并對該最終的條碼區域進行條碼識別, 可有效防止漏碼的情況出現和有效提高條碼識別的穩定性。其中,所述K、P為正整數,具體 取值根據需要選取,本實施例中,所述K = P = 15,
[0041] 作為優選的實施例,在條碼區域定位步驟S3,先通過條碼特征提取,并對圖像進行 傾斜校正,然后再對條碼進行區域定位,條碼區域定位包括條碼上下區域定位和條碼左右 區域定位;在所述條碼上下區域定位過程中,采用歸一化互相關匹配算法(NCC)與霍夫變換 直線檢測算法來確定所述條碼上下區域;所述條碼區域定位步驟S3中,在進行所述條碼左 右區域定位過程中,對預處理后的圖像的灰度圖上對各條碼的中心線1進行直線灰度值掃 描,以獲得每個條碼的中心線1的灰度值分布圖,對灰度值分布圖上的像素數據進行累加運 算,設中心線1灰度值數組為LineA,累加運算后產生一個新的數組為LineB,根據所述數組 LineA與數據LineB建立條碼的中心線灰度值累加分布圖,通過所述中心線灰度值累加分布 圖中的水平部分的直線來確定所述條碼左右區域定位。
[0042] 以下對本發明實施例中的條碼區域定位步驟S3作進一步的詳細說明:
[0043] 條碼是將寬度不等的多個黑條和空白,按照一定的編碼規則排列,用以表達一組 信息的圖形標識符。如果把條碼看作一組有規律排列的直線,那么只要檢測出來標簽上的 所有直線即可。本發明實施例中優選采用直線檢測法來對條碼進行區域定位,采用直線檢 測的方法來對條碼進行區域定位,可以有效處理條碼質量外觀顯著退化情形,即使條碼角 度、尺寸和陰影出現變化,甚至在條碼出現缺損的情況下仍然可以有效的定位出條碼所在 位置,從而可實現條碼區域定位;而且,利用直線檢測法,只需讀取一個條形碼的部分黑條 即可以確定條碼的位置,無需精確讀取所有黑條即可粗略定位條碼位置。
[0044] 本發明實施例中,根據條碼的條形排列的特點,采用霍夫變換算法對標簽上的條 碼進行直線檢測,其主要原理是運用直線的極坐標公式:P=xc 〇S(9)+ysin(0);p、0是一 對參數(請對P、θ的具體參數定義進行補充說明,謝謝),在平面內取一個定點0,叫極點,弓丨 一條射線〇χ,叫做極軸,再選定一個長度單位和角度的正方向(通常取逆時針方向)。對于平 面內任何一點Μ,用P表示線段OM的長度,Θ表示從Ox到OM的角度,P叫做點M的極徑,Θ叫做點M 的極角,有序數對(P,Θ)就叫點M的極坐標,這樣建立的坐標系叫做極坐標系。通過對圖像中 的像素點運用這個公式處理就可以得到二維的Ρ,θ參數空間,在參數空間會形成峰值,從而 利用峰值就可以檢測出直線。任意一條檢測出來的直線的兩個端點記做:Pi =(Xi,yi ),qi = (ΠΗ,ΙΗΚ? = ^...k),如圖3所示。通過對每條直線兩個端點的位置坐標計算,得到所有能 檢測到的條碼黑條的長度與斜率,任意直線的長度和傾斜角度分別為:
[0045]
[0046] 若Xi-nu = 0,則該直線為垂直方向,無需做逆時針旋轉;若Xi-HU乒0,基于在同一個 標簽上的條碼旋轉的角度一致這個事實,如果檢測到的直線屬于條形碼區域則直線的傾斜 角度應該非常接近,受前述所述的預處理中的二值化處理等的影響,式(2)計算得到的直線 的傾斜角度與真實角度會存在一定的誤差,故選取所有檢測到的直線的傾斜角度的中位值 作為參考值,只要91屬于中位值正負1度范圍之內,則保留該傾斜角度。計算所有保留下來 的傾斜角度的平均值作為標簽的傾斜矯正度數,據此對原始標簽圖像進行逆時針旋轉矯 正,并保留這些條碼作為條碼的粗定位區域。
[0047] 在對多條碼標簽中的所有條碼進行區域定位時,由于實際噪聲的影響,如果僅用 線檢測的方法來確定直線的條碼的上下區域,則誤差比較大。通過分析可以,非條碼區域的 空白比較明顯,可以根據上述檢測得出的大部分條碼線條端點位置坐標,保留長度相當的 直線,所有保留的直線的平均值記做同時得到每條直線的中點位S
獲 Ji 取每個條碼的中心線1,并進行傾斜角度旋轉,以中心線1的上作為條碼的粗定位區 域。
[0048] 為了精確地定位出條碼上下區域,在所述粗定位區域采用歸一化互相關匹配 (NCC)算法來進行精確定位。NCC算法是通過比較兩列數據的相關性,來衡量其匹配的程度, 其中相關系數最大的位置就是最佳匹配位置。假設f( Xl),g(Xl)為條碼的任意兩行,它們對 應的均值和方差分別記做和在條碼區域任意選擇兩行分別向上向下平移, 則歸一化互相關系數定義為:
[0049]
[0050] 設定閾值T,則當R>T時,否則為條碼上下區域。由于NCC算法具有很高的準確性、 適應性,但運算量比較大,因此采用霍夫變換直線檢測算法對原始圖像進行感興趣區域的 提取,對每個條碼區域的上下邊界進行粗定位,非條碼區域得到了有效的剔除,減少了運算 量。通過上述NCC算法和霍夫變換直線檢測算法,可以精確的確定條碼所在區域的邊緣線。
[0051] 條碼左右區域定位,包括同一行中存在的條碼數的檢測和每個條碼的條碼左右區 域定位,從而可實現多條碼標簽中所有條碼的區域定位。在灰度圖上對中心線1進行直線灰 度值掃描,可得到每個條碼的中心線1的灰度值分布圖。由于在圖像二值化過程中,條碼的 左右邊界很容易因為質量、噪聲等原因而缺損,如果直接在二值圖像上進行掃描,這種缺損 將直接導致條碼左右區域定位的不準確,所以采用灰度圖進行條碼區域的左右區域進行定 位。
[0052] 根據條碼的特征可知,條碼的左右邊界處會有一段空白區域,如圖4(圖4中為具有 一個條碼的中心線的灰度值分布圖)中灰度值為〇的地方;如在同一行出現多個條碼,條碼 間的空白區域會更大,如圖5(圖5中為同一行中具有兩個條碼的中心線的灰度值分布圖)所 示。為進一步確定條碼區域的左右邊緣,對分布圖上的像素數據進行累加運算,設中心線灰 度值數組為LineA,累加運算后產生一個新的數組為LineB,即:
[0053]
[0054] 其中,LineB[0] =LineA[0]。
[0055] 圖6為圖4中的條碼中心線灰度值累加分布圖,圖7為圖6中的條碼中心線灰度值累 加分布圖;其中,圖6與圖7中水平部分(即斜率為0)即為條碼區域間的分界處,據此即可實 現對條碼的左右區域的定位。
[0056]其余的步驟SI、S2、S3A、S4等步驟可采用現有技術來實現,在此不再詳述。
[0057]利用本實施例提供的基于機器視覺系統的條碼檢測識別方法,在對具有的標簽進 行條碼的識別過程中,即使是傾斜條碼、單標簽多條碼、單行多條碼,部分缺失的條碼、具有 污漬的條碼等都可以獲得較滿意的識別效果,同時還可實現任意方向條碼和多條碼的自動 化識別,而且識別速度快、識別效率高等優點,從而可有效滿足企業大規模自動化工業生產 的需求。
[0058]基于上述實施例中所述方法的發明構思,本發明的實施例還提供了一種基于機器 視覺系統的條碼檢測識別系統,如附圖2所示,所述系統包括機器視覺系統主機,所述機器 視覺系統主機連接有光源模塊和圖像采集模塊,所述圖像采集模塊用于與光源模塊配合, 對具有多條條碼的標簽進行圖像數據采集,并將采集到的圖像數據傳輸至所述器視覺系統 主機中,所述機器視覺系統主機包括:
[0059]圖像數據預處理模塊,用于對所述圖像數據進行預處理,以將獲取的圖像數據進 行標簽與背景的分離,從而過濾背景的干擾;所述的預處理,優選包括濾波、去噪、增強和/ 或二值化處理;
[0060] 條碼區域定位模塊,用于將圖像數據預處理模塊進行所預處理后的圖像數據進行 條碼特征提取,并對條碼進行區域定位,以確定所述標簽上所有條碼的所在區域,該所在區 域即為具有所述標簽上所有條碼的條碼區域;
[0061] 其中,所述條碼區域包括條碼上下區域和條碼左右區域,所述條碼區域定位包括 條碼上下區域定位和條碼左右區域定位,分別利用所述條碼上下區域定位、條碼左右區域 定位來確定條碼的行數、同一行條碼中存在的條碼數,以實現對所述標簽上所有條碼的區 域定位;
[0062] 條碼識別模塊,用于對所述條碼區域內的每一條碼進行條碼識別。
[0063] 作為優選的實施例,所述機器視覺系統主機還包括:
[0064] 條碼區域調整模塊,用于對所述條碼區域的左右邊界分別進行擴展K個像素的調 整處理,并對所述條碼區域的上下邊界分別進行縮小P個像素的調整處理,最后對調整處理 后的條碼區域作為最終的條碼區域。通過增加所述條碼區域調整模塊,可有效防止漏碼的 情況出現和有效提高條碼識別的穩定性。其中,所述K、P為正整數,具體取值根據需要選取, 本實施例中,所述K = P = 15。
[0065] 在本實施例中,所述條碼區域定位模塊包括條碼特征提取模塊、傾斜校正模塊,條 碼左右區域定位模塊以及條碼上下區域定位模塊,各功能模塊的連接關系如圖2所示,在此 不再詳述。
[0066]在本實施例中,所述圖像采集模塊優選為具有GIGE接口的工業相機,相應地,所述 機器視覺系統主機具有GIGE接口,機器視覺系統主機通過GIGE接口與工業相機連接。另外, 所述機器視覺系統主機還設置有光源控制模塊,所述機器視覺系統主機通過該光源控制模 塊與光源模塊連接。
[0067]本實施例中的基于機器視覺系統的條碼檢測識別系統,其各功能模塊的工作原 理/工作過程如上述實施例中所述的基于機器視覺系統的條碼檢測識別方法相對應的步驟 所述,在此不再贅述。
[0068]需要說明的是,上述各功能模塊,可以將將它們中的多個功能模塊集成一個電路 功能模塊來實現,也可以將其中的一個功能模塊分別制作成多個功能模塊來實現。
[0069] 利用本發明實施例提供的基于機器視覺系統的條碼檢測識別方法及系統,無需進 行人工操作,即可對具有條碼的產品進行自動掃描并對條碼進行識別,其具有自動化程度 高、識別速度快,工作效率高等優點;在條碼的識別過程中,即使是傾斜條碼、單標簽多條 碼、單行多條碼,部分缺失的條碼、具有污漬的條碼等都可以獲得較滿意的識別效果,同時 還可實現任意方向條碼和多條碼的自動化識別,而且識別速度快、識別效率高等優點,從而 可有效滿足企業大規模自動化工業生產的需求。
[0070] 上述實施例中提到的內容為本發明較佳的實施方式,并非是對本發明的限定,在 不脫離本發明構思的前提下,任何顯而易見的替換均在本發明的保護范圍之內。
【主權項】
1. 一種基于機器視覺系統的條碼檢測識別方法,所述方法應用于機器視覺系統主機 中,所述機器視覺系統主機連接有光源模塊和圖像采集模塊,其特征在于,所述方法包括以 下步驟: 51、 圖像數據采集步驟,通過所述圖像采集模塊與光源模塊的配合,對具有多條條碼的 標簽進行圖像數據采集,并將采集到的圖像數據傳輸至所述器視覺系統主機; 52、 圖像數據預處理步驟,所述機器視覺系統主機對所述圖像數據進行預處理,以將獲 取的圖像數據進行標簽與背景的分離,從而過濾背景的干擾; 53、 條碼區域定位步驟,所述機器視覺系統主機對圖像數據預處理步驟處理后的圖像 數據進行條碼特征提取,并對條碼進行區域定位,以確定所述標簽上所有條碼的所在區域, 該所在區域即為具有所述標簽上所有條碼的條碼區域; 其中,所述條碼區域包括條碼上下區域和條碼左右區域,所述條碼區域定位包括條碼 上下區域定位和條碼左右區域定位,分別利用所述條碼上下區域定位、條碼左右區域定位 來確定條碼的行數、同一行條碼中存在的條碼數,以實現對所述標簽上所有條碼的區域定 位; 54、 條碼識別步驟,對所述條碼區域內的每一條碼進行條碼識別。2. 根據權利要求1所述的方法,其特征在于:在所述條碼區域定位步驟S3之后、所述條 碼識別步驟S4之前還包括以下步驟: S3A、條碼區域調整步驟,對所述條碼區域的左右邊界分別進行擴展K個像素的調整處 理,并對所述條碼區域的上下邊界分別進行縮小P個像素的調整處理,最后對調整處理后的 條碼區域作為最終的條碼區域,其中所述K、P為正整數,具體取值根據需要選取。3. 根據權利要求2所述的方法,其特征在于:所述條碼區域定位步驟S3中,在所述條碼 上下區域定位過程中,采用歸一化互相關匹配算法與霍夫變換直線檢測算法來確定所述條 碼上下區域。4. 根據權利要求3所述的方法,其特征在于:所述條碼區域定位步驟S3中,在進行所述 條碼左右區域定位過程中,對預處理后的圖像的灰度圖上對各條碼的中心線進行直線灰度 值掃描,以獲得每個條碼的中心線的灰度值分布圖,對灰度值分布圖上的像素數據進行累 加運算,設中心線灰度值數組為LineA,累加運算后產生一個新的數組為LineB,根據所述數 組LineA與數據LineB建立條碼的中心線灰度值累加分布圖,通過所述中心線灰度值累加分 布圖中的水平部分的直線來確定所述條碼左右區域定位。5. 根據權利要求1~4中任一項所述的方法,其特征在于:所述圖像數據預處理步驟S2 中,所述機器視覺系統主機對所述圖像數據進行的預處理,包括濾波、去噪、增強和/或二值 化處理。6. -種基于機器視覺系統的條碼檢測識別系統,所述系統包括機器視覺系統主機,所 述機器視覺系統主機連接有光源模塊和圖像采集模塊,所述圖像采集模塊用于與光源模塊 配合,對具有多條條碼的標簽進行圖像數據采集,并將采集到的圖像數據傳輸至所述器視 覺系統主機中,其特征在于,所述機器視覺系統主機包括: 圖像數據預處理模塊,用于對所述圖像數據進行預處理,以將獲取的圖像數據進行標 簽與背景的分離,從而過濾背景的干擾; 條碼區域定位模塊,用于將圖像數據預處理模塊進行所預處理后的圖像數據進行條碼 特征提取,并對條碼進行區域定位,以確定所述標簽上所有條碼的所在區域,該所在區域即 為具有所述標簽上所有條碼的條碼區域; 其中,所述條碼區域包括條碼上下區域和條碼左右區域,所述條碼區域定位包括條碼 上下區域定位和條碼左右區域定位,分別利用所述條碼上下區域定位、條碼左右區域定位 來確定條碼的行數、同一行條碼中存在的條碼數,以實現對所述標簽上所有條碼的區域定 位; 條碼識別模塊,用于對所述條碼區域內的每一條碼進行條碼識別。7. 根據權利要求6所述的系統,其特征在于:所述機器視覺系統主機還包括: 條碼區域調整模塊,用于對所述條碼區域的左右邊界分別進行擴展K個像素的調整處 理,并對所述條碼區域的上下邊界分別進行縮小P個像素的調整處理,最后對調整處理后的 條碼區域作為最終的條碼區域,其中所述K、P為正整數,具體取值根據需要選取。8. 根據權利要求7所述的系統,其特征在于:所述條碼區域定位模塊,在進行所述條碼 上下區域定位過程中,采用歸一化互相關匹配算法與霍夫變換直線檢測算法來確定所述條 碼上下區域。9. 根據權利要求8所述的系統,其特征在于:所述條碼區域定位模塊,在進行所述條碼 左右區域定位過程中,對預處理后的圖像的灰度圖上對各條碼的中心線進行直線灰度值掃 描,以獲得每個條碼的中心線的灰度值分布圖,對灰度值分布圖上的像素數據進行累加運 算,設中心線灰度值數組為LineA,累加運算后產生一個新的數組為LineB,根據所述數組 LineA與數據LineB建立條碼的中心線灰度值累加分布圖,通過所述中心線灰度值累加分布 圖中的水平部分的直線來確定所述條碼左右區域定位。10. 根據權利要求6~9中任一項所述的系統,其特征在于:所述圖像數據預處理模塊對 所述圖像數據進行的預處理,包括濾波、去噪、增強和/或二值化處理。
【文檔編號】G06K7/10GK106056020SQ201610389625
【公開日】2016年10月26日
【申請日】2016年6月1日
【發明人】林盛鑫, 陳雪芳, 趙曉芳, 劉華珠
【申請人】東莞理工學院