TW201339975A - 條碼辨識方法及其電腦程式產品 - Google Patents

條碼辨識方法及其電腦程式產品 Download PDF

Info

Publication number
TW201339975A
TW201339975A TW101110616A TW101110616A TW201339975A TW 201339975 A TW201339975 A TW 201339975A TW 101110616 A TW101110616 A TW 101110616A TW 101110616 A TW101110616 A TW 101110616A TW 201339975 A TW201339975 A TW 201339975A
Authority
TW
Taiwan
Prior art keywords
pattern
card
image
barcode card
template
Prior art date
Application number
TW101110616A
Other languages
English (en)
Other versions
TWI455034B (zh
Inventor
Chi-Chen Wang
Chien-Chung Tseng
Jenn-Jier Lien
Original Assignee
Visionatics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Visionatics Inc filed Critical Visionatics Inc
Priority to TW101110616A priority Critical patent/TWI455034B/zh
Priority to US13/802,591 priority patent/US8590794B2/en
Publication of TW201339975A publication Critical patent/TW201339975A/zh
Application granted granted Critical
Publication of TWI455034B publication Critical patent/TWI455034B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1456Methods for optical code recognition including a method step for retrieval of the optical code determining the orientation of the optical code with respect to the reader and correcting therefore
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1443Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • General Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

一種條碼辨識方法及其電腦程式產品。在此條碼辨識方法中,首先進行前景萃取步驟,以獲得條碼卡影像的二值化影像。接著,進行定向步驟,以根據條碼卡影像、二值化影像以及樣板條碼卡影像來計算出條碼卡圖案的中心點座標、角落座標、偏移向量以及旋轉角度。接著,根據此中心點座標、角落座標、偏移向量以及旋轉角度來判斷出目標條碼卡的排列態樣、資料間隔圖案和資料邊界圖案的位置。然後,根據目標條碼卡之排列態樣、資料間隔圖案和資料邊界圖案的位置來判斷條碼數值。當電腦載入上述之電腦程式產品,此電腦可執行此條碼辨識方法。

Description

條碼辨識方法及其電腦程式產品
本揭露是有關於一種條碼辨識方法及其電腦程式產品,特別是有關於一種微型條碼之辨識方法及其電腦程式產品。
微型條碼(micro bead)技術是一種用於基因實驗和化學實驗之標示技術,以提供彈性化的資訊標示。由於微型條碼具有非常小的體積(每個條碼的體積約為1立方奈米),因此數以千計的條碼可以置放於一個非常小的實驗試劑容器中,以標示此實驗試劑容器的相關資訊,例如試劑成分等。
為了讀取這些微型條碼上的資料,需要透過顯微鏡來拍攝這些條碼的影像,並利用電腦來對條碼的影像進行分析,以判讀條碼上的數值圖案。然而,由於微型條碼本身為透明材質,且散亂地分佈於試劑容器中,目前所採用的條碼辨識方法無法高速地判讀出條碼上的數值圖案,而且所判讀出來數值正確率也不高。
因此,有需要一種新的條碼辨識方法來提高微型條碼的辨識率和辨識速度。
本發明之一方面是在提供一種條碼辨識方法及其電腦程式產品,其可排除互相重疊或無法辨識的微型條碼,並對其他的微型條碼進行排列態樣和資訊有效性的分析判斷,以提高微型條碼的辨識率和辨識速度。
根據本發明之一實施例,在此條碼辨識方法中,首先提供複數個條碼卡樣板影像,其中這些條碼卡樣板影像係包含複數個條碼卡樣板圖案,這些條碼卡樣板圖案具有複數個空白區域圖案,這些條碼卡樣板圖案之空白區域樣板圖案之位置係彼此不同而使條碼卡樣板圖案一對一對應至複數個不同的條碼卡排列態樣,每一條碼卡樣板圖案具有複數個資料邊界圖案以及至少一個資料間隔樣板圖案。接著,進行一前景萃取步驟,以從條碼卡影像萃取出前景影像,其中此前景萃取步驟係對前景影像進行二值化處理。
然後,進行定向前處理步驟。在此定向前處理步驟中,首先進行單一條碼卡尋找步驟,以利用相連元件標示演算法(Connected Component Labeling;CCL)和邊框樣板圖案之樣板幾何條件來從前景影像中找出至少一個單一條碼卡圖案,其中此邊框樣板圖案係位於邊框樣板影像中,且此邊框樣板圖案為條碼卡樣板圖案之一者之邊框圖案。然後,從這些單一條碼卡中選取出二值化目標條碼卡圖案。接著,從條碼卡影像中擷取出此二值化目標條碼卡圖案之二值化目標條碼卡影像。然後,進行旋轉角度計算步驟,以計算二值化目標條碼卡圖案之排列方向與邊框樣板圖案之排列方向間之一旋轉夾角之角度值。接著,進行旋轉步驟,以利用邊框樣板圖案之樣板圖案中心點為中心來將邊框樣板圖案旋轉此旋轉夾角之角度值,並獲得旋轉後邊框樣板圖案和旋轉後樣板影像,其中此旋轉後邊框樣板圖案係位於旋轉後樣板影像中。然後,根據二值化目標條碼卡圖案於前景影像中之位置,從條碼卡影像中擷取目標條碼卡圖案之目標條碼卡影像,其中此目標條碼卡影像包含與二值化目標條碼卡圖案相應之目標條碼卡圖案。接著,進行校正步驟,以根據旋轉後邊框樣板圖案之複數個角落座標值、旋轉後邊框樣板圖案之中心點座標值以及旋轉夾角之角度值來校正目標條碼卡影像之目標條碼卡圖案,以獲得校正後目標條碼卡圖案和校正後目標條碼卡影像,其中此校正後目標條碼卡圖案係位於校正後目標條碼卡影像中,且此校正後目標條碼卡圖案之排列方向和尺寸係與邊框樣板圖案之排列方向和尺寸相同。
在定向前處理步驟之後,接著進行定向步驟。在此定向步驟中,首先對校正後目標條碼卡影像進行二值化處理,以獲得校正二值化條碼卡影像,其中此校正二值化目標條碼卡影像包含校正二值化目標條碼卡圖案。然後,利用條碼卡樣板圖案之一者之資料邊界圖案以及相連元件標示演算法,來找出校正二值化目標條碼卡圖案之複數個資料邊界圖案。接著,進行有效性判斷步驟,以判斷校正二值化目標條碼卡圖案之每一資料邊界圖案之幾何條件是否符合第一預設幾何條件,並提供第一判斷結果。當第一判斷結果為是時,根據校正二值化目標條碼卡影像之資料邊界圖案之座標值來計算校正二值化目標條碼卡圖案之中心點的座標值。然後,根據旋轉後邊框樣板圖案之中心點的座標值和校正二值化目標條碼卡圖案之中心點的座標值來計算偏移向量。接著,根據偏移向量來移動校正二值化目標條碼卡影像中之校正二值化目標條碼卡圖案,以獲得偏移後目標條碼卡圖案,其中偏移後目標條碼卡圖案包含複數個偏移後資料邊界圖案以及複數個偏移後資料間隔圖案。然後,根據條碼卡樣板圖案之空白區域圖案的座標值來於偏移後目標條碼卡圖案上定義出複數個第一虛擬區域。接著,從這些第一虛擬區域中選取最大背景區域,其中此最大背景區域為第一虛擬區域中具有最大背景物件面積之一者。然後,進行排列態樣決定步驟,以根據此最大背景區域之位置來從條碼卡樣板圖案中選取出匹配圖案。根據匹配圖案之一資料間隔圖案的座標值來於偏移後目標條碼卡圖案上定義出至少一個第二虛擬區域。接著,進行資料區檢查步驟,以判斷這些第二虛擬區域是否為偏移後目標條碼卡圖案之至少一個資料間隔圖案,並提供第二判斷結果。當第二判斷結果為是時,根據偏移後目標條碼卡圖案之資料間隔圖案和該些資料邊界圖案來於偏移後目標條碼卡圖案上定義出複數個數值資料區域,並進行條碼數值辨識步驟,以根據位於該些數值資料區域中的圖案來辨識該目標條碼卡圖案之數值。
由以上說明可知,本發明實施例可將互相重疊或無法辨識的微型條碼排除,並對剩餘的微型條碼進行排列態樣和資訊有效性的分析判斷,如此可提高微型條碼的辨識率和辨識速度。
請照第1圖,其係繪示根據本發明實施例之微型條碼100的圖案結構示意圖。在本實施例中,微型條碼100為EAN條碼,其包含資料邊界圖案110、資料間隔圖案120、數值圖案132和134、數字圖案140。數值圖案132和134係位於資料邊界圖案110中,且以資料間隔圖案120來分隔。數字圖案140係位於數值圖案132和134下方且包含多個數字組142、144和146,其中數字組142包含1個數字,此數字為區碼的一部份。數字組142與資料間隔圖案120之間具有空白區域圖案150,在本發明實施例之條碼辨識方法中,將會利用空白區域圖案150來辨識微型條碼100的排列態樣,因此空白區域圖案150亦可稱為態樣辨識圖案。
值得注意的是,雖然本實施例係以EAN條碼來舉例說明,但本發明之實施例並不受限於EAN條碼的辨識。
請參照第2圖,其係繪示根據本發明實施例之試劑容器的條碼卡影像200的示意圖,其中條碼卡影像200為影像擷取裝置(例如:電子顯微鏡)所拍攝之試劑容器影像,條碼卡影像200可為灰階影像或彩色影像。條碼卡影像200包含複數個條碼卡圖案,這些條碼卡圖案可為互相相連(或重疊)的條碼卡圖案210a或是未相連的單一條碼卡圖案210b。
請參照第3圖,其係繪示根據本發明實施例之條碼辨識方法300的流程示意圖。條碼辨識方法300係用以辨識微型條碼100之數值圖案132和134,並根據數值圖案132和134來讀出微型條碼100的數值。在條碼辨識方法300中,首先進行樣板提供步驟310,以提供複數個條碼樣板影像。這些樣板影像係根據微型條碼100在試劑容器中可能出現的排列態樣來決定。例如,針對微型條碼100的數值圖案132和134,微型條碼100共有兩種排列態樣,如第3a圖和第3b圖所示。
每一樣板影像ITemp包含一個條碼卡樣板圖案PTemp,此條碼卡樣板圖案PTemp之圖案結構係類似於微型條碼100。例如,條碼卡樣板圖案PTemp包含資料邊界圖案PT110、資料間隔圖案PT120以及空白區域圖案PT150,其中每個條碼卡樣板圖案PT的空白區域圖案PT150的位置皆不同。例如,第3a圖之空白區域圖案PT150係位於樣板影像ITEMP的左下角,而第3b圖之空白區域圖案PT150係位於樣板影像ITEMP的右下角,此係因為第3b圖之樣板影像ITEMP為第3a圖之樣板影像ITEMP的鏡射(mirror)。
在本實施例中,每張影像皆會對應至X-Y座標平面,以使影像中的各個點對應到一個座標值,其中X-Y座標平面的原點係設定於影像的左上角,X軸為影像的水平邊緣,Y軸為影像的垂直邊緣。
另外,值得注意的是,雖然本實施例之條碼卡樣板圖案PTEMP包含有數值圖案,但在本發明之其他實施例中,條碼卡樣板圖案PTEMP可不包含數值圖案。
在樣板提供步驟310後,接著進行前景萃取步驟320,以從條碼卡影像200萃取出前景影像。在本實施例中,前景萃取步驟320係對條碼卡影像200進行二值化處理,以得到條碼卡影像200的前景影像200f,如第3c圖所示。接著,進行定向前處理(pre-alignment processing)步驟330和定向(alignment)步驟340,以濾除無法處理的條碼卡圖案,並決定欲處理之目標條碼卡圖案的排列態樣。
請參照第4圖,其係繪示根據本發明實施例之向前處理步驟330的流程示意圖。在定向前處理步驟330中,首先進行單一條碼卡尋找步驟331,以從前景影像200f中,濾除相連(或重疊)的條碼卡圖案,如此即可找出未相連的單一條碼卡圖案。在本實施例中,單一條碼卡尋找步驟331先利用相連元件標示演算法(Connected Component Labeling;CCL)來找出前景物件的大致外形S。這些前景物件可能為相連的條碼卡圖案或單一條碼卡圖案。接著,再利用條碼卡樣板圖案PTEMP的邊框圖案(以下稱為邊框樣本圖案)來尋找單一條碼卡圖案,例如,判斷前景物件的幾何條件是否滿足邊框樣本圖案的幾何條件,若判斷結果為是,則代表此前景物件為單一條碼卡圖案。在本實施例中,此幾何條件為邊框樣本圖案的長度容許範圍、寬度容許範圍以及寬長比容許範圍,且分別比較邊框樣本圖案與前景物件的長度、寬度和寬長比來決定。
在單一條碼卡尋找步驟331後,接著進行目標條碼卡選取步驟332,以從前景影像200f中的單一條碼卡圖案中選取出欲處理(辨識)的目標條碼卡圖案。然後,進行影像擷取步驟333,以從前景影像200f中擷取(或切割)出目標條碼卡圖案的二值化影像(以下稱為“二值化目標條碼卡影像”)IB,如第4a圖所示,其中“二值化目標條碼卡影像”IB包含“二值化目標條碼卡圖案”PB。在本實施例中,影像擷取步驟333所擷取的“二值化目標條碼卡影像”IB具有與樣板影像ITEMP實質相同的尺寸,以利後續步驟之進行。
然後,進行旋轉角度計算步驟334,以計算二值化標條碼卡圖案PB的排列方向(圖案的長軸延伸方向)與樣板影像ITEMP的水平邊緣(以下稱為旋轉夾角)角度值。
在本實施例中,邊框樣板圖案(即條碼卡樣板圖案PTEMP的邊框圖案)之排列方向係平行於樣板影像ITEMP的水平邊緣,因此本實施例利用霍夫轉換(Hough Transform)演算法來計算出“二值化標條碼卡圖案”PB之排列方向與“二值化目標條碼卡影像”之水平邊緣的夾角θ,即可求得旋轉夾角的角度值。在求得旋轉夾角的角度值後,接著進行旋轉步驟335,以利用邊框樣板圖案之中心點為中心,來將邊框樣板圖案轉動旋轉夾角之角度值,如此可獲得一張新的影像IR,如第4b圖所示。在以下的敘述中,此影像IR稱為“旋轉後樣板影像”,而此影像IR即包含“旋轉後邊框樣板圖案”PR
然後,進行影像擷取步驟336,以根據“二值化目標條碼卡圖案”於前景影像200f中之位置,來從條碼卡影像200中擷取(或切割)出目標條碼卡影像。此目標條碼卡影像即包含與“二值化目標條碼卡圖案”相應的目標條碼卡圖案。在本實施例中,影像擷取步驟336所擷取的目標條碼卡影像具有與樣板影像ITEMP實質相同的尺寸,以利後續步驟之進行。
接著,進行校正步驟337,以根據“旋轉後邊框樣板圖案”PR之角落座標值、“旋轉後邊框樣板圖案”PR中心點座標值以及旋轉夾角θ來利用仿射變換(Affine Transform)演算法或影像扭曲(Image Warp)演算法校正目標條碼卡影像之目標條碼卡圖案。
在本實施例中,由於條碼卡為矩形,因此“旋轉後邊框樣板圖案”PR有四個角落,且在旋轉後樣板影像IR中會對應有四個角落座標值,而本實施例即利用此四個角落座標值來校正(或對應)目標條碼卡圖案之四個角落在目標條碼卡影像中的座標值。類似地,“旋轉後邊框樣板圖案”PR之中心點在條碼卡樣本影像ITEMP中會對應有一個中心點座標值,而本實施例即利用此中心點座標值來校正(或對應)目標條碼卡圖案之中心點在目標條碼卡影像中的座標值。校正後之目標條碼卡圖案的排列方向和尺寸係與邊框樣板圖案之排列方向和尺寸相同。
在定向前處理步驟330結束後,接著進行定向步驟340。請參照第5a-5b圖,其係繪示根據本發明實施例之定向步驟340的流程示意圖。在定向步驟340中,首先進行二值化處理步驟341,以對“校正後目標條碼卡影像”進行二值化處理來獲得影像Itar_B,其中影像Itar_B包含條碼卡圖案Ptar_B。在以下的敘述中,影像Itar_B稱為“校正二值化目標條碼卡影像”,而條碼卡圖案Ptar_B稱為“校正二值化目標條碼卡圖案”如第5c圖所示。
接著,進行資料邊界圖案尋找步驟342,以找出目標條碼卡圖案之資料邊界圖案。在資料邊界圖案尋找步驟342中,首先利用相連元件標示演算法來獲得“校正二值化目標條碼卡影像”Itar_B中之前景物件的大致外形,接著再根據條碼卡樣板圖案PTEMP之邊界圖案PT110的位置(或座標值)來找出“校正二值化目標條碼卡影像”Itar_B之資料邊界圖案Sb,如第5d圖所示。
然後,進行有效性判斷步驟343,以判斷“校正二值化目標條碼卡影像”Itar_B之資料邊界圖案Sb是否有效。本實施例之有效性判斷步驟343係根據資料邊界圖案Sb的幾何尺寸來判斷資料邊界圖案是否有效。例如,在有效性判斷步驟343中,首先計算每一個資料邊界圖案Sb之面積值。接著,再判斷每一個資料邊界圖案Sb之面積值是否大於一預設面積閥值。若“校正二值化目標條碼卡影像”Itar_B之所有資料邊界圖案Sb的面積都大於預設面積閥值,則代表“校正二值化目標條碼卡影像”Itar_B之資料邊界圖案Sb有較高的有效性。反之,若“校正二值化目標條碼卡影像”Itar_B之所有資料邊界圖案中有一個資料邊界圖案Sb的面積小於預設面積閥值,則代表“校正二值化目標條碼卡影像”Itar_B的資料邊界圖案Sb有較低的有效性,故將此目標條碼卡圖案濾除。
然後,進行中心點計算步驟344,以根據“校正二值化目標條碼卡影像”Itar_B的資料邊界圖案來計算目標條碼卡圖案的中心點座標。在本實施例中,中心點計算步驟344係將“校正二值化目標條碼卡影像”Itar_B之資料邊界圖案的角落座標值進行平均,以獲得“校正二值化目標條碼卡影像”Itar_B之中心點座標。
接著,進行偏移向量計算步驟345,以計算“旋轉後邊框樣板圖案”PR與“校正二值化目標條碼卡圖案”Ptar_B之間的偏移向量。在本實施例中,偏移向量計算步驟345係根據“旋轉後邊框樣板圖案”PR之中心點的座標和“校正二值化目標條碼卡圖案”Ptar_B之中心點的座標來計算出偏移向量。
然後,進行移動步驟346,以將“校正二值化目標條碼卡圖案”Ptar_B移動上述之偏移向量,如此“校正二值化目標條碼卡圖案”Ptar_B之位置便會與條碼卡樣板圖案PTEMP相同。在以下的敘述中,移動後的“校正二值化目標條碼卡圖案”稱為“偏移後目標條碼卡圖案”Pshift_tar_B。而包含此圖案Pshift_tar_B之影像為“偏移後目標條碼卡影像”Ishift_tar_B
接著,進行態樣辨識圖案尋找步驟347,以尋找目標條碼卡圖案之態樣辨識圖案。在本實施例中,態樣辨識圖案尋找步驟347係根據所有條碼卡樣板圖案PTEMP之空白區域圖案PT150的位置與大小來於“偏移後目標條碼卡圖案”Pshift_tar_B上定義出複數個虛擬區域VA。例如,如第5e圖所示,本實施例之態樣辨識圖案(空白區域圖案)可能位於條碼卡樣板圖案PTEMP的左下角或右下角,因此態樣辨識圖案尋找步驟347係根據條碼卡樣板圖案PTEMP的空白區域圖案PT150位置與大小,來於“偏移後目標條碼卡圖案”Pshift_tar_B上定出4個虛擬區域VA1、VA2、VA3以及VA4,其中虛擬區域VA3以及VA4係代表空白區域圖案PT150在條碼卡樣板圖案PTEMP上下倒置時可能出現的位置,而VA1、VA2係代表空白區域圖案PT150在條碼卡樣板圖案PTEMP未上下倒置時可能出現的位置。
然後,進行區域選取步驟348,以從虛擬區域中選取出最大背景區域,其中此最大背景區域為這些虛擬區域中具有最大背景物件面積(例如,圖中的白色背景)的虛擬區域。在本實施例中,具有最大背景物件面積的虛擬區域為VA1和VA3。
接著,進行排列態樣決定步驟349,以根據最大背景區域VA1和VA3的位置來從所有的條碼卡樣板圖案中選取出匹配的條碼卡樣板圖案。例如,本實施例之最大背景區域VA1和VA3的位置係位於影像的左邊,則選取第3a圖之條碼卡樣板圖案來作為匹配圖案,而此匹配圖案的排列態樣即為目標條碼卡圖案的排列態樣。另外,在本發明之其他實施例中,排列態樣決定步驟349可先判斷最大背景區域VA1和VA3中之前景物件(第5e圖之黑色區塊)的面積是否小於預設之面積閥值(例如,最大背景區域面積的40%)。若判斷結果為是,才挑選條碼卡樣板圖案來作為匹配圖案。反之,若判斷結果為否,則濾除此目標條碼卡圖案。
值得注意的是,針對EAN條碼而言,其數值圖案是屬於上下對稱的型態,因此本實施例也可僅使用虛擬區域VA1、VA2來決定目標條碼卡圖案的排列態樣。然而,在本發明之其他實施例中,若欲判斷其他不屬於上下對稱型態之條碼卡的排列態樣(例如上下左右皆不對稱的圖案),則仍需使用4個虛擬區域VA1、VA2、VA3以及VA4來判斷其排列態樣。
然後,進行資料區尋找步驟351,以尋找目標條碼卡圖案的數值資料區。在本實施例中,資料區尋找步驟351係根據匹配之條碼卡樣板圖案PTEMP的資料間隔圖案PT120之位置和大小來於偏移後之“校正二值化目標條碼卡圖案”上定義出虛擬區域VA5和VA6,如第5f圖所示。
接著,進行資料區檢查步驟352,以判斷虛擬區域VA5和VA6中的前景物件是否為目標條碼卡圖案之資料間隔圖案。在本實施例中,資料區檢查步驟352係判斷虛擬區域VA5和VA6中之前景物件的面積是否大於預設之面積閥值(例如,虛擬區域面積的40%)。若虛擬區域VA5和VA6中之前景物件的面積皆大於預設閥值,則將虛擬區域VA5和VA6中之前景物件視為目標條碼卡圖案之資料間隔圖案。由於目標條碼卡圖案之資料間隔圖案和資料邊界圖案的位置皆已求得,因此可根據目標條碼卡圖案之資料間隔圖案和資料邊界圖案的位置來定義數值資料區域。定義數值資料區域即代表數值圖案的所在區域。
然後,進行條碼數值辨識步驟360,以辨識目標條碼卡圖案之數值。。例如,本實施例之資料間隔圖案係將資料邊界圖案間的區域分成兩個數值資料區域,故條碼數值辨識步驟360可根據位在兩個條碼資料區域中之前景物件(黑色條紋)與背景(白色條紋)的比例來辨識目標條碼卡圖案之數值。又例如,條碼數值辨識步驟360可根據資料庫中所儲存的條碼數值資料圖案來對“偏移後目標條碼卡圖案”Pshift_tar_B之目標條碼卡圖案(位於資料間隔圖案和資料邊界圖案之間)進行判讀,以獲得目標條碼卡圖案之數值。
由以上說明可知本發明實施例之條碼辨識方法可排除互相重疊的微型條碼,並對其他的微型條碼進行排列態樣和資訊有效性的分析判斷,以提高微型條碼的辨識率和辨識速度。另外,本發明實施例之條碼辨識方法並不受限於應用在EAN條碼上。針對其他種類的微型條碼,本發明實施例之條碼辨識方法亦有很高的辨識率和辨識速度。
另外,在上述實施例中,邊框樣本影像(或圖案)係以樣板影像ITEMP(或條碼卡樣板圖案PTEMP)來替代使用。然而,在本發明之其他實施例中,亦可另外提供只有條碼外框圖案之影像來供條碼辨識方法300使用。
請參照第6圖,其係繪示根據本發明實施例之亮度檢查步驟600的流程示意圖。亮度檢查步驟600係用以檢查試劑容器的亮度,以使條碼卡影像200的亮度符合條碼辨識方法300的需求。在亮度檢查步驟600中,首先進行檢查點定義步驟610,以在條碼卡影像200中定義出複數個亮度檢查點710,如第6a圖所示,其中檢查點定義步驟610以等間距之方式來於條碼卡影像200上定義亮度檢查點710,如此每兩相鄰之亮度檢查點710之間距係彼此相等。然後,不合格檢查點移除步驟620,以將位於前景物件(即條碼卡圖案)上之亮度檢查點710移除,如第6b圖所示。接著,進行亮度值取得步驟630,以獲取亮度檢查點710上的影像亮度值。然後,進行加權處理步驟640,以根據每個亮度檢查點710的位置來依高斯分佈關係對影像亮度值進行加權處理,其中距離影像中央較近之亮度檢查點710會對應至較大的加權係數,而距離影像中央之亮度檢查點710會對應至較小的加權係數。將每一個亮度檢查點710所對應的影像亮度值和加權係數相乘,即可獲得複數個加權亮度值。接著,進行判斷步驟650,以判斷加權亮度的總值是否大於一預設亮度閥值,此預設亮度閥值係根據條碼辨識方法300的需求來設定。然後,當這些加權亮度值其中之一者小於預設亮度閥值時,則進行警告步驟660,以發出警告訊息來告知使用者。此警告訊息可為燈光、聲音或文字等形式。
當條碼辨識方法300進行時,本實施例之亮度檢查步驟600會自動地對條碼卡影像200的亮度值進行檢查。當條碼卡影像200上的亮度值不足時,亮度檢查步驟600會告知使用者照明設備的亮度不足。
值得注意的是,前述之條碼辨識方法300和亮度檢查步驟600可應用於電腦程式產品中,當電腦載入此電腦程式產品後,此電腦即可執行條碼辨識方法300和亮度檢查步驟600。
雖然本發明已以實施例揭露如上,然其並非用以限定本發明,任何熟習此技藝者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100...微型條碼
110...資料邊界圖案
120...資料間隔圖案
132、134...數值圖案
140...數字圖案
142、144、146...數字組
150...空白區域圖案
200...條碼卡影像
200f...前景影像
210a...相連的條碼卡圖案
210b...單一條碼卡圖案
300...條碼辨識方法
310...樣板提供步驟
320...前景萃取步驟
330...定向前處理步驟
331...單一條碼卡尋找步驟
332...目標條碼卡選取步驟
333...影像擷取步驟
334...旋轉角度計算步驟
335...旋轉步驟
336...影像擷取步驟
337...校正步驟
340...定向步驟
360...條碼數值辨識步驟
341...二值化處理步驟
342...資料邊界圖案尋找步驟
343...有效性判斷步驟
344...中心點計算步驟
345...偏移向量計算步驟
346...移動步驟
347...態樣辨識圖案尋找步驟
348...區域選取步驟
349...排列態樣決定步驟
351...資料區尋找步驟
352...資料區檢查步驟
360...條碼數值辨識步驟
600...亮度檢查步驟
610...檢查點定義步驟
620...不合格檢查點移除步驟
630...亮度值取得步驟
640...加權處理步驟
650...判斷步驟
660...警告步驟
710...亮度檢查點
IB...二值化目標條碼卡影像
IR...旋轉後樣板影像
ITEMP...樣板影像
Itar_B...校正二值化目標條碼卡影像
Ishift_tar_B...偏移後目標條碼卡影像
Pshift_tar_B...偏移後目標條碼卡圖案
Ptar_B...校正二值化目標條碼卡圖案
PT150...空白區域圖案
PTEMP...條碼卡樣板圖案
PT120...資料間隔圖案
PT110...資料邊界圖案
PB...二值化目標條碼卡圖案
PR...旋轉後條碼卡樣板圖案
S...前景物件外形
VA1、VA2...虛擬區域
Sb...資料邊界圖案
VA3、VA4...虛擬區域
VA5、VA6...虛擬區域
為讓本發明之上述和其他目的、特徵、和優點能更明顯易懂,上文特舉數個較佳實施例,並配合所附圖式,作詳細說明如下:
第1圖係繪示根據本發明實施例之微型條碼的圖案結構示意圖。
第2圖係繪示根據本發明實施例之試劑容器的條碼卡影像。
第3圖係繪示根據本發明實施例之條碼辨識方法的流程示意圖。
第3a圖和第3b圖係繪示根據本發明實施例之條碼卡樣板圖案的結構示意圖。
第3c圖係繪示根據本發明實施例之條碼卡影像的前景影像。
第4圖係繪示根據本發明實施例之向前處理步驟的流程示意圖。
第4a圖係繪示根據本發明實施例之目標條碼卡圖案的二值化影像。
第4b圖係繪示根據本發明實施例之旋轉步驟將樣板圖案旋轉的示意圖。
第5a圖至第5b圖係繪示根據本發明實施例之定向步驟的流程示意圖。
第5c圖係繪示根據本發明實施例之“校正二值化目標條碼卡影像”的示意圖。
第5d圖係繪示根據本發明實施例之相連元件標示演算法於“校正二值化目標條碼卡影像”上尋找邊界圖案的示意圖。
第5e圖和第5f圖係繪示根據本發明實施例之虛擬區域的結構示意圖。
第6圖係繪示根據本發明實施例之亮度檢查步驟的流程示意圖。
第6a圖係繪示根據本發明實施例之亮度檢查點在條碼卡影像中的分布示意圖。
第6b圖係繪示根據本發明實施例之檢查點移除步驟將亮度檢查點移除示意圖。
300...條碼辨識方法
310...樣板提供步驟
320...前景萃取步驟
330...定向前處理步驟
340...定向步驟
360...條碼數值辨識步驟

Claims (14)

  1. 一種條碼辨識方法,用以辨識複數個條碼卡圖案之複數個條碼資料之數值,其中該些條碼卡圖案係位於一條碼卡影像中,該條碼辨識方法包含:提供複數個條碼卡樣板影像,其中該些條碼卡樣板影像係包含複數個條碼卡樣板圖案,該些條碼卡樣板圖案具有複數個空白區域圖案,該些條碼卡樣板圖案之該些空白區域樣板圖案之位置係彼此不同而使該些條碼卡樣板圖案一對一對應至複數個不同的條碼卡排列態樣,每一該些條碼卡樣板圖案具有複數個資料邊界圖案以及至少一資料間隔樣板圖案;進行一前景萃取步驟,以從該條碼卡影像萃取出一前景影像,其中該前景萃取步驟係對該前景影像進行二值化處理;進行一定向前處理步驟,包含:進行一單一條碼卡尋找步驟,以利用一相連元件標示演算法(Connected Component Labeling;CCL)和一邊框樣板圖案之一樣板幾何條件來從該前景影像中找出至少一單一條碼卡圖案,其中該邊框樣板圖案係位於一邊框樣板影像中,且該邊框樣板圖案為該些條碼卡樣板圖案之一者之邊框圖案;從該至少一單一條碼卡中選取一二值化目標條碼卡圖案;從該條碼卡影像中擷取出該二值化目標條碼卡圖案之一二值化目標條碼卡影像;進行一旋轉角度計算步驟,以計算該二值化目標條碼卡圖案之排列方向與該邊框樣板圖案之排列方向間之一旋轉夾角之角度值;進行一旋轉步驟,以利用該邊框樣板圖案之一樣板圖案中心點為中心來將該邊框樣板圖案旋轉該旋轉夾角之角度值,以獲得一旋轉後邊框樣板圖案和一旋轉後樣板影像,其中該旋轉後邊框樣板圖案係位於該旋轉後樣板影像中;根據該二值化目標條碼卡圖案於該前景影像中之位置,從該條碼卡影像中擷取該目標條碼卡圖案之一目標條碼卡影像,其中該目標條碼卡影像包含與該二值化目標條碼卡圖案相應之一目標條碼卡圖案;以及進行一校正步驟,以根據該旋轉後邊框樣板圖案之複數個角落座標值、該旋轉後邊框樣板圖案之中心點座標值以及該旋轉夾角之角度值來校正該目標條碼卡影像之該目標條碼卡圖案,以獲得一校正後目標條碼卡圖案和一校正後目標條碼卡影像,其中該校正後目標條碼卡圖案係位於該校正後目標條碼卡影像中,且該校正後目標條碼卡圖案之排列方向和尺寸係與該邊框樣板圖案之排列方向和尺寸相同;進行一定向步驟,包含:對該校正後目標條碼卡影像進行二值化處理,以獲得一校正二值化條碼卡影像,其中該校正二值化目標條碼卡影像包含一校正二值化目標條碼卡圖案;利用該些條碼卡樣板圖案之一者之該些資料邊界圖案以及該相連元件標示演算法,來找出該校正二值化目標條碼卡圖案之複數個資料邊界圖案;進行一有效性判斷步驟,以判斷該校正二值化目標條碼卡圖案之每一該些資料邊界圖案之幾何條件是否符合一第一預設幾何條件,並提供一第一判斷結果;當該第一判斷結果為是時,根據該校正二值化目標條碼卡影像之該些資料邊界圖案之座標值來計算該校正二值化目標條碼卡圖案之中心點的座標值;根據該旋轉後邊框樣板圖案之中心點的座標值和該校正二值化目標條碼卡圖案之中心點的座標值來計算一偏移向量;根據該偏移向量來移動該校正二值化目標條碼卡影像中之該校正二值化目標條碼卡圖案,以獲得一偏移後目標條碼卡圖案,其中該偏移後目標條碼卡圖案包含複數個偏移後資料邊界圖案以及複數個偏移後資料間隔圖案;根據該些條碼卡樣板圖案之該些空白區域圖案的座標值來於該偏移後目標條碼卡圖案上定義出複數個第一虛擬區域;從該些第一虛擬區域中選取一最大背景區域,其中該最大背景區域為該些第一虛擬區域中具有最大背景物件面積之一者;進行一排列態樣決定步驟,以根據該最大背景區域之位置來從該些條碼卡樣板圖案中選取一匹配圖案;根據該匹配圖案之該至少一資料間隔圖案的座標值來於該偏移後目標條碼卡圖案上定義出至少一第二虛擬區域;進行資料區檢查步驟,以判斷該些第二虛擬區域是否為該偏移後目標條碼卡圖案之至少一資料間隔圖案,並提供一第二判斷結果;當該第二判斷結果為是時,根據該偏移後目標條碼卡圖案之該至少一資料間隔圖案和該些資料邊界圖案來於該偏移後目標條碼卡圖案上定義出複數個數值資料區域;以及進行一條碼數值辨識步驟,以根據位於該些數值資料區域中的圖案來辨識該目標條碼卡圖案之數值。
  2. 如申請專利範圍第1項所述之條碼辨識方法,其中該相連條碼卡濾除步驟包含:利用該相連元件標示演算法來從該前景影像中找出至少一個前景物件;判斷該至少一前景物件之幾何條件是否符合該樣板幾何條件;以及當該至少一前景物件之幾何條件符合該樣板幾何條件時,決定該至少一前景物件為該至少一單一條碼卡。
  3. 如申請專利範圍第2項所述之條碼辨識方法,其中該至少一前景物件幾何條件為該至少一前景物件之寬長比,而該樣板幾何條件為一寬長比容許範圍,該寬長比容許範圍係根據該邊框樣板圖案之寬長比來決定。
  4. 如申請專利範圍第1項所述之條碼辨識方法,其中該旋轉角度計算步驟係利用霍夫轉換(Hough Transform)演算法來計算該旋轉夾角之角度值。
  5. 如申請專利範圍第1項所述之條碼辨識方法,其中該校正步驟係利用仿射變換(Affine Transform)演算法或影像扭曲(Image Warp)演算法來校正該目標條碼卡影像之該目標條碼卡圖案。
  6. 如申請專利範圍第1項所述之條碼辨識方法,其中該些條碼卡圖案為EAN條碼。
  7. 如申請專利範圍第1項所述之條碼辨識方法,其中該有效性判斷步驟包含:計算每一該些資料邊界圖案之面積值;判斷每一該些資料邊界圖案之面積值是否大於一預設面積閥值;以及當每一該些資料邊界圖案之面積值大於該預設面積閥值時,決定該第一判斷結果為是。
  8. 如申請專利範圍第7項所述之條碼辨識方法,其中該邊框樣板圖案包含複數個資料邊界樣板圖案,而該預設面積閥值為該資料邊界樣板圖案之面積的40%。
  9. 如申請專利範圍第1項所述之條碼辨識方法,其中該排列態樣決定步驟包含:判斷該最大背景區域中之前景物件的面積是否小於一預設面積閥值;以及當該最大背景區域中之前景物件的面積小於該預設面積閥值時,根據該些條碼卡樣板圖案之該些空白區域樣板圖案之位置以及該最大背景區域之位置,來從該些條碼卡樣板圖案中挑選出該匹配圖案,以將該目標條碼卡圖案之排列態樣決定為該匹配圖案所對應之條碼卡之排列態樣。
  10. 如申請專利範圍第9項所述之條碼辨識方法,其中該預設面積閥值為該最大背景區域之面積的40%。
  11. 如申請專利範圍第1項所述之條碼辨識方法,其中該資料區檢查步驟包含:判斷每一該至少一第二虛擬區域中之前景物件的面積是否大於一預設面積閥值;以及當每一該至少一第二虛擬區域中之前景物件的面積大於一預設面積閥值時,決定該至少一第二虛擬區域中的前景物件為該偏移後目標條碼卡圖案之至少一資料間隔圖案。
  12. 如申請專利範圍第11項所述之條碼辨識方法,其中該預設面積閥值為每一該至少一第二虛擬區域之面積的40%。
  13. 如申請專利範圍第1項所述之條碼辨識方法,更包含一亮度檢查步驟,其中該亮度檢查步驟包含:於該條碼卡影像中定義複數個亮度檢查點,其中該些亮度檢查點之間之間距係彼此相等;將該些亮度檢查點中之複數個不合格檢查點移除,以獲得複數個合格檢查點,其中該些不合格檢查點係位於該些條碼卡圖案上;根據該些亮度檢查點之位置來取得複數個影像亮度值;根據該些影像亮度值所對應之該些該些亮度檢查點之位置來依高斯分佈關係來對該些影像亮度值進行加權處理,以獲得複數個加權亮度值;判斷該些加權亮度值之總值是否大於一預設亮度閥值,並提供一第三判斷結果;當該第三判斷結果為否時,發出一警告訊息。
  14. 一種電腦程式產品,經由一電腦載入該程式並執行後,該電腦可進行如申請專利範圍第1項所述之條碼辨識方法。
TW101110616A 2012-03-27 2012-03-27 條碼辨識方法及其電腦程式產品 TWI455034B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW101110616A TWI455034B (zh) 2012-03-27 2012-03-27 條碼辨識方法及其電腦程式產品
US13/802,591 US8590794B2 (en) 2012-03-27 2013-03-13 Barcode recognion method and computer product thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW101110616A TWI455034B (zh) 2012-03-27 2012-03-27 條碼辨識方法及其電腦程式產品

Publications (2)

Publication Number Publication Date
TW201339975A true TW201339975A (zh) 2013-10-01
TWI455034B TWI455034B (zh) 2014-10-01

Family

ID=49233551

Family Applications (1)

Application Number Title Priority Date Filing Date
TW101110616A TWI455034B (zh) 2012-03-27 2012-03-27 條碼辨識方法及其電腦程式產品

Country Status (2)

Country Link
US (1) US8590794B2 (zh)
TW (1) TWI455034B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI502515B (zh) * 2013-10-30 2015-10-01 Ind Tech Res Inst 產生及認證彩色條碼的方法、裝置與系統
US9311652B2 (en) 2013-10-30 2016-04-12 Industrial Technology Research Institute Method, apparatus and system for generating and verifying color barcode
TWI560620B (en) * 2016-01-20 2016-12-01 Qisda Corp Barcode decoding method

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9098764B2 (en) * 2009-07-20 2015-08-04 The Regents Of The University Of California Image-based barcode reader
US10235546B2 (en) * 2014-10-23 2019-03-19 Lockheed Martin Corporation Systems and methods for detecting and decoding barcodes with bar dilation
US10198648B1 (en) 2015-04-10 2019-02-05 Digimarc Corporation Decoding 1D-barcodes in digital capture systems
US9501681B1 (en) * 2015-07-14 2016-11-22 A9.Com, Inc. Decoding visual codes
US10235585B2 (en) 2016-04-11 2019-03-19 The Nielsen Company (US) Methods and apparatus to determine the dimensions of a region of interest of a target object from an image using target object landmarks
US9950345B2 (en) 2016-09-15 2018-04-24 Lockheed Martin Corporation Systems and methods for shear and warp detection and correction
US10275663B2 (en) * 2017-05-11 2019-04-30 Passion Mobility Ltd. Indoor navigation method and system
CN109508572B (zh) * 2017-09-15 2021-10-26 杭州海康威视数字技术股份有限公司 一种物体位姿检测方法、装置、电子设备及存储介质
CN109711508B (zh) * 2017-10-25 2020-06-05 北京京东尚科信息技术有限公司 图像处理方法和装置
ES2784029T3 (es) * 2018-03-01 2020-09-21 Sick Ag Lector de códigos optoelectrónico y método para leer códigos
CN109685764B (zh) * 2018-11-19 2020-10-30 深圳市维图视技术有限公司 产品定位方法、装置及终端设备
CN111832328A (zh) * 2019-04-15 2020-10-27 北京京东尚科信息技术有限公司 条形码检测方法、装置、电子设备及介质
CN117632278A (zh) * 2022-08-29 2024-03-01 神基科技股份有限公司 应用程序的环境参数的分享方法与具有多个电子装置的系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7017816B2 (en) * 2003-09-30 2006-03-28 Hewlett-Packard Development Company, L.P. Extracting graphical bar codes from template-based documents
TWI248584B (en) * 2004-07-14 2006-02-01 Culture Com Technology Macau Ltd Mini-type barcode and its identification system and method
US8150163B2 (en) * 2006-04-12 2012-04-03 Scanbuy, Inc. System and method for recovering image detail from multiple image frames in real-time
TW201025152A (en) * 2008-12-31 2010-07-01 Icp Electronics Inc Method for fast locating pattern
US20110007955A1 (en) * 2009-07-08 2011-01-13 Applied Biocode Inc. Apparatus and Method for Barcoded Magnetic Beads Analysis

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI502515B (zh) * 2013-10-30 2015-10-01 Ind Tech Res Inst 產生及認證彩色條碼的方法、裝置與系統
US9311652B2 (en) 2013-10-30 2016-04-12 Industrial Technology Research Institute Method, apparatus and system for generating and verifying color barcode
TWI560620B (en) * 2016-01-20 2016-12-01 Qisda Corp Barcode decoding method

Also Published As

Publication number Publication date
US20130256416A1 (en) 2013-10-03
US8590794B2 (en) 2013-11-26
TWI455034B (zh) 2014-10-01

Similar Documents

Publication Publication Date Title
TWI455034B (zh) 條碼辨識方法及其電腦程式產品
CN111474184B (zh) 基于工业机器视觉的aoi字符缺陷检测方法和装置
CN110210409B (zh) 表格单据中表格框线检测方法及系统
CN106960208B (zh) 一种仪表液晶数字自动切分和识别的方法及系统
Garz et al. Binarization-free text line segmentation for historical documents based on interest point clustering
CN108596166A (zh) 一种基于卷积神经网络分类的集装箱箱号识别方法
CN104680161A (zh) 一种身份证数字识别方法
Garz et al. Layout analysis for historical manuscripts using sift features
CN104751187A (zh) 抄表图像自动识别方法
Diem et al. Text line detection for heterogeneous documents
CN111738271B (zh) 自然环境中被遮挡果实的识别方法
CN109426814A (zh) 一种发票图片特定板块的定位、识别方法、系统、设备
TW201506800A (zh) 光學文字識別裝置
CN111222507A (zh) 数字式仪表读数的自动识别方法、计算机可读存储介质
CN103413141A (zh) 环形光源及利用环形光源照明基于刀具形状纹理重量的融合识别方法
Garz et al. A binarization-free clustering approach to segment curved text lines in historical manuscripts
CN113011426A (zh) 一种识别证件的方法和装置
CN110288040B (zh) 一种基于拓扑验证的图像相似评判方法及设备
Choi et al. Localizing slab identification numbers in factory scene images
CN110046618B (zh) 基于机器学习和最大极值稳定区域的车牌识别方法
Deb et al. Automatic vehicle identification by plate recognition for intelligent transportation system applications
EP4171051A1 (en) Collation device, program, and collation method
Deb et al. An efficient method for correcting vehicle license plate tilt
CN110969612A (zh) 二维码印刷缺陷检测方法
CN112434543B (zh) 一种针对畸变彩色直接部件标记的图像重构方法及系统

Legal Events

Date Code Title Description
MM4A Annulment or lapse of patent due to non-payment of fees