條碼解碼方法
【專利摘要】本發(fā)明提供一種條碼解碼方法,包含:以條碼讀取機(jī)擷取目標(biāo)條碼的目標(biāo)影像;于目標(biāo)影像上設(shè)定目標(biāo)掃描線;根據(jù)編碼規(guī)則分析目標(biāo)掃描線的灰階分布上的至少兩個特征點間的相對關(guān)系以得到至少一個參考特征參數(shù);當(dāng)至少一個參考特征參數(shù)與至少一個第一預(yù)定特征參數(shù)相符時,判斷條碼讀取機(jī)與目標(biāo)條碼間的目前距離為相對遠(yuǎn)距離;當(dāng)判斷目前距離為相對遠(yuǎn)距離時以預(yù)定灰階值將目標(biāo)掃描線的灰階分布劃分為至少一個黑條及白條區(qū);根據(jù)預(yù)定灰階值設(shè)定灰階區(qū)間,自目標(biāo)掃描線的灰階分布找出位于灰階區(qū)間中的至少一個波峰及波谷點;當(dāng)波峰點位于黑條區(qū)中時,于黑條區(qū)中插入對應(yīng)波峰點的白條;當(dāng)波谷點位于白條區(qū)中時,于白條區(qū)中插入對應(yīng)波谷點的黑條。
【專利說明】
條碼解碼方法
技術(shù)領(lǐng)域
[0001] 本發(fā)明關(guān)于一種條碼解碼方法,尤指一種可有效提升解碼成功率的條碼解碼方 法。
【背景技術(shù)】
[0002] 條碼(barcode)是將寬度不等的多個黑條和空白,按照一定的編碼規(guī)則排列,用以 表達(dá)一組資訊的圖形識別元。條碼可以標(biāo)出物品的生產(chǎn)國、制造廠家、商品名稱、生產(chǎn)日期、 圖書分類號、郵件起止地點、類別、日期等資訊,因而在商品流通、圖書管理、郵政管理、銀行 系統(tǒng)等許多領(lǐng)域都得到了廣泛的應(yīng)用。
[0003] 在以條碼讀取機(jī)讀取條碼時,景深、影像感測器像素以及光學(xué)鏡頭特性等都會影 響條碼讀取機(jī)可分辨最小寬度的條碼黑白元素。當(dāng)條碼讀取機(jī)距離條碼越遠(yuǎn)時,所讀取的 條碼密度就越高且越細(xì)。此時,條碼讀取機(jī)所擷取到的條碼影像將越模糊。特別是不可變焦 的條碼讀取機(jī)更容易發(fā)生擷取到的條碼影像有模糊問題,進(jìn)而導(dǎo)致解碼能力降低。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明的目的之一在于提供一種可有效提升解碼成功率的條碼解碼方法,以解決 上述問題。
[0005] 為了達(dá)到上述目的,本發(fā)明提供一種條碼解碼方法,包含下列步驟:
[0006] 以條碼讀取機(jī)擷取目標(biāo)條碼的目標(biāo)影像;
[0007] 于該目標(biāo)影像上設(shè)定目標(biāo)掃描線;
[0008] 根據(jù)編碼規(guī)則分析該目標(biāo)掃描線的灰階分布上的至少兩個特征點間的相對關(guān)系, 以得到至少一個參考特征參數(shù);
[0009] 當(dāng)該至少一個參考特征參數(shù)與至少一個第一預(yù)定特征參數(shù)相符時,判斷該條碼讀 取機(jī)與該目標(biāo)條碼間的目前距離為一相對遠(yuǎn)距離;
[0010] 當(dāng)判斷該目前距離為該相對遠(yuǎn)距離時,以預(yù)定灰階值將該目標(biāo)掃描線的灰階分布 劃分為至少一個黑條區(qū)以及至少一個白條區(qū);
[0011] 根據(jù)該預(yù)定灰階值設(shè)定灰階區(qū)間,且自該目標(biāo)掃描線的灰階分布找出位于該灰階 區(qū)間中的至少一個波峰點以及至少一個波谷點;
[0012] 當(dāng)波峰點位于該至少一個黑條區(qū)中時,于該至少一個黑條區(qū)中插入對應(yīng)該波峰點 的一白條;以及
[0013] 當(dāng)波谷點位于該至少一個白條區(qū)中時,于該至少一個白條區(qū)中插入對應(yīng)該波谷點 的一黑條。
[0014] 較佳的,另包含下列步驟:
[0015] 針對該目標(biāo)掃描線的灰階分布于每兩相鄰像素點之間增加一內(nèi)插點;
[0016] 當(dāng)該波峰點位于該至少一個黑條區(qū)中時,以該波峰點以及與該波峰點相鄰的該內(nèi) 插點的寬度作為該白條的寬度;以及
[0017] 當(dāng)該波谷點位于該至少一個白條區(qū)中時,以該波谷點以及與該波谷點相鄰的該內(nèi) 插點的寬度作為該黑條的寬度。
[0018] 較佳的,另包含下列步驟:以該目標(biāo)掃描線的灰階分布的平均灰階值作為該預(yù)定 灰階值。
[0019] 較佳的,另包含下列步驟:
[0020] 當(dāng)該至少一個參考特征參數(shù)與至少一個第二預(yù)定特征參數(shù)相符時,判斷該條碼讀 取機(jī)與該目標(biāo)條碼間的該目前距離為相對中距離;以及
[0021] 當(dāng)判斷該目前距離為該相對中距離時,根據(jù)該預(yù)定灰階值對該目標(biāo)掃描線的灰階 分布進(jìn)行二值化。
[0022] 較佳的,另包含下列步驟:
[0023] 當(dāng)該至少一個參考特征參數(shù)與至少一個第三預(yù)定特征參數(shù)相符時,判斷該條碼讀 取機(jī)與該目標(biāo)條碼間的該目前距離為相對近距離;
[0024]當(dāng)判斷該目前距離為該相對近距離時,對該目標(biāo)影像進(jìn)行濾波與向下取樣;以及 [0025]根據(jù)該預(yù)定灰階值對該目標(biāo)掃描線的灰階分布進(jìn)行二值化。
[0026]較佳的,另包含下列步驟:
[0027] 以該條碼讀取機(jī)于多個預(yù)定距離下擷取一樣本條碼的多個樣本影像,其中每一預(yù) 定距離分別屬于該相對遠(yuǎn)距離、該相對中距離與該相對近距離的其中之一;
[0028] 于每一樣本影像上設(shè)定一樣本掃描線;以及
[0029] 根據(jù)該編碼規(guī)則分析每一該樣本掃描線的灰階分布上的至少兩個特征點間的相 對關(guān)系,以得到對應(yīng)該相對遠(yuǎn)距離的該至少一個第一預(yù)定特征參數(shù)、對應(yīng)該相對中距離的 該至少一個第二預(yù)定特征參數(shù)與對應(yīng)該相對近距離的該至少一個第三預(yù)定特征參數(shù)。
[0030] 較佳的,該至少兩個特征點間的相對關(guān)系為像素距離、灰階差異值或其組合。
[0031] 較佳的,該至少兩個特征點為兩相鄰波峰點與波谷點、兩相鄰波峰點、兩相鄰波谷 點或其組合。
[0032] 較佳的,當(dāng)該至少一個參考特征參數(shù)與該至少一個第一預(yù)定特征參數(shù)中的N個相 符,且與該至少一個第二預(yù)定特征參數(shù)中的Μ個相符時,該條碼解碼方法另包含下列步驟: [0033]當(dāng)Ν大于Μ時,判斷該目前距離為該相對遠(yuǎn)距離;以及
[0034]當(dāng)Ν小于或等于Μ時,判斷該目前距離為該相對中距離;
[0035] 其中,Ν與Μ皆為正整數(shù)。
[0036]較佳的,當(dāng)該至少一個參考特征參數(shù)與該至少一個第二預(yù)定特征參數(shù)中的Ν個相 符,且與該至少一個第三預(yù)定特征參數(shù)中的Μ個相符時,該條碼解碼方法另包含下列步驟: [0037]當(dāng)Ν大于Μ時,判斷該目前距離為該相對中距離;以及 [0038]當(dāng)Ν小于或等于Μ時,判斷該目前距離為該相對近距離;
[0039] 其中,Ν與Μ皆為正整數(shù)。
[0040]與現(xiàn)有技術(shù)相比,本發(fā)明提供的條碼解碼方法,當(dāng)本發(fā)明判斷條碼讀取機(jī)與目標(biāo) 條碼間的目前距離為相對遠(yuǎn)距離時,本發(fā)明是先將目標(biāo)掃描線的灰階分布劃分為黑條區(qū)與 白條區(qū),再根據(jù)灰階區(qū)間中的波峰點于黑條區(qū)中插入對應(yīng)的白條及/或根據(jù)灰階區(qū)間中的 波谷點于白條區(qū)中插入對應(yīng)的黑條,以有效還原目標(biāo)條碼的黑條與白條的分布。藉此,即可 在條碼讀取機(jī)與目標(biāo)條碼間的目前距離為相對遠(yuǎn)距離時,有效提升目標(biāo)條碼的解碼成功 率。
【附圖說明】
[0041 ]圖1為本發(fā)明的條碼解碼方法建立條碼影像特征與相對距離的對照表的流程圖;
[0042]圖2為條碼讀取機(jī)與樣本條碼的示意圖;
[0043]圖3為條碼讀取機(jī)與樣本條碼間的預(yù)定距離為相對中距離時取得的灰階分布的示 意圖;
[0044]圖4為條碼讀取機(jī)與樣本條碼間的預(yù)定距離為相對遠(yuǎn)距離時取得的灰階分布的示 意圖;
[0045]圖5為條碼讀取機(jī)與樣本條碼間的預(yù)定距離為相對近距離時取得的灰階分布的示 意圖;
[0046]圖6A至圖6C為根據(jù)本發(fā)明一實施例的條碼解碼方法的流程圖;
[0047]圖7為目標(biāo)條碼的示意圖;
[0048]圖8為目標(biāo)影像上的目標(biāo)掃描線的灰階分布的示意圖,其中目標(biāo)掃描線的灰階分 布劃分為黑條區(qū)以及白條區(qū);
[0049] 圖9為自目標(biāo)掃描線的灰階分布找出位于灰階區(qū)間中的波峰點以及波谷點的示意 圖;
[0050] 圖10為針對目標(biāo)掃描線的灰階分布于每兩相鄰像素點的間增加內(nèi)插點的示意圖;
[0051] 圖11為于黑條區(qū)中插入對應(yīng)波峰點的白條,且于白條區(qū)中插入對應(yīng)波谷點的黑條 的示意圖。
【具體實施方式】
[0052] 為使對本發(fā)明的目的、構(gòu)造、特征、及其功能有進(jìn)一步的了解,茲配合實施例詳細(xì) 說明如下。
[0053]請參閱圖1至圖5,圖1為本發(fā)明的條碼解碼方法建立條碼影像特征與相對距離的 對照表的流程圖,圖2為條碼讀取機(jī)10與樣本條碼12的示意圖,圖3為條碼讀取機(jī)10與樣本 條碼12間的預(yù)定距離為相對中距離時取得的灰階分布的示意圖,圖4為條碼讀取機(jī)10與樣 本條碼12間的預(yù)定距離為相對遠(yuǎn)距離時取得的灰階分布的示意圖,圖5為條碼讀取機(jī)10與 樣本條碼12間的預(yù)定距離為相對近距離時取得的灰階分布的示意圖。
[0054] 本發(fā)明是藉由條碼讀取機(jī)(barcode readerHO取得樣本條碼12的影像特征,再估 測條碼讀取機(jī)10與樣本條碼12的相對距離,以提供沒有距離感測器或變焦能力的條碼讀取 機(jī)在解碼時需要的相對距離資訊,進(jìn)而有效提升解碼成功率。因此,在對條碼進(jìn)行解碼前, 本發(fā)明的條碼解碼方法需先建立條碼影像特征與相對距離的對照表。
[0055]首先,執(zhí)行步驟S10,提供一樣本條碼12。于此實施例中,樣本條碼12的編碼符合特 定的編碼規(guī)則。如圖2所示,樣本條碼12的編碼可符合Code 39的編碼規(guī)則,因此,在解碼樣 本條碼12后,即可得到"*3A*"的編碼。由于在樣本條碼12前后都會有固定的起始與結(jié)束字 元"*",因此,本發(fā)明可利用此一特殊區(qū)間,建立條碼影像特征與相對距離的對照表。需說明 的是,樣本條碼12的編碼亦可根據(jù)實際需求而選擇其它編碼規(guī)則,不以Code 39的編碼規(guī)則 為限。
[0056]接著,執(zhí)行步驟S12,以條碼讀取機(jī)10于多個預(yù)定距離下擷取樣本條碼12的多個樣 本影像,其中每一個預(yù)定距離分別屬于相對遠(yuǎn)距離、相對中距離與相對近距離的其中之一。 [0057]接著,執(zhí)行步驟S14,于每一個樣本影像上設(shè)定樣本掃描線14。樣本掃描線14可設(shè) 定為樣本條碼12的樣本影像上的一條水平線,如圖2所示。
[0058]接著,執(zhí)行步驟S16,根據(jù)編碼規(guī)則分析每一個樣本掃描線14的灰階分布上的至少 兩個特征點間的相對關(guān)系,以得到對應(yīng)相對遠(yuǎn)距離的至少一個第一預(yù)定特征參數(shù)、對應(yīng)相 對中距離的至少一個第二預(yù)定特征參數(shù)與對應(yīng)相對近距離的至少一個第三預(yù)定特征參數(shù)。 [0059]于此實施例中,圖3為條碼讀取機(jī)10與樣本條碼12間的預(yù)定距離為相對中距離時 取得的灰階分布,圖4為條碼讀取機(jī)10與樣本條碼12間的預(yù)定距離為相對遠(yuǎn)距離時取得的 灰階分布,且圖5為條碼讀取機(jī)10與樣本條碼12間的預(yù)定距離為相對近距離時取得的灰階 分布,其中三角形與正方形分別為灰階分布的波峰點與波谷點。
[0060] 本發(fā)明可取如圖3至圖5所示的兩相鄰波峰點A與波谷點B、兩相鄰波峰點C、E以及 兩相鄰波谷點D與波峰點E作為三組特征點來進(jìn)行分析。需說明的是,本發(fā)明可根據(jù)實際應(yīng) 用選擇兩相鄰波峰與波谷、兩相鄰波峰、兩相鄰波谷或其組合作為特征點來進(jìn)行分析,不以 圖3至圖5所示的實施例為限。
[0061] 舉例而言,可將條碼讀取機(jī)10與樣本條碼12間的預(yù)定距離為7公分時定義為相對 中距離,且以此相對中距離取得圖3所示的灰階分布,其中兩相鄰波峰點A與波谷點B相距5 個像素距離,兩相鄰波峰點C、E相距5個像素距離,且兩相鄰波谷點D與波峰點E的灰階差異 值為35。此外,可將條碼讀取機(jī)10與樣本條碼12間的預(yù)定距離為13公分時定義為相對遠(yuǎn)距 離,且以此相對遠(yuǎn)距離取得圖4所示的灰階分布,其中兩相鄰波峰點A與波谷點B相距3個像 素距離,兩相鄰波峰點C、E相距1個像素距離,且兩相鄰波谷點D與波峰點E的灰階差異值為 7。再者,可將條碼讀取機(jī)10與樣本條碼12間的預(yù)定距離為4公分時定義為相對近距離,且以 此相對近距離取得圖5所示的灰階分布,其中兩相鄰波峰點A與波谷點B相距8個像素距離, 兩相鄰波峰點C、E相距7個像素距離,且兩相鄰波谷點D與波峰點E的灰階差異值為14。需說 明的是,可根據(jù)實際應(yīng)用選擇兩特征點間的像素距離、灰階差異值或其組合作為兩特征點 間的相對關(guān)系,不以上述的實施例為限。
[0062] 在以條碼讀取機(jī)10于多個不同的預(yù)定距離下擷取樣本條碼12的多個樣本影像,且 對每一個樣本影像的樣本掃描線14的灰階分布進(jìn)行如上的分析后,即可建立如下表1所示 的條碼影像特征與相對距離的對照表。
[0063] 表 1
[0064]
[0065] 請參閱圖6A至圖11,圖6A至圖6C為根據(jù)本發(fā)明一實施例的條碼解碼方法的流程 圖,圖7為目標(biāo)條碼32的示意圖;圖8為目標(biāo)掃描線34的灰階分布的示意圖,其中目標(biāo)掃描線 34的灰階分布劃分為黑條區(qū)BA以及白條區(qū)SA;圖9為自目標(biāo)掃描線34的灰階分布找出位于 灰階區(qū)間GTHmax-GTHmin中的波峰點P1-P5以及波谷點V1-V4的示意圖;圖10為針對目標(biāo)掃 描線34的灰階分布于每兩相鄰像素點之間增加內(nèi)插點的示意圖;圖11為于黑條區(qū)BA中插入 對應(yīng)波峰點P1-P5的白條S1-S5,且于白條區(qū)SA中插入對應(yīng)波谷點VI的黑條B1的示意圖。 [0066]在建立如上表1所示的條碼影像特征與相對距離的對照表后,即可根據(jù)表1對圖7 所示的目標(biāo)條碼32進(jìn)行解碼。需說明的是,由于表1是根據(jù)Code 39的編碼規(guī)則而建立,因 此,目標(biāo)條碼32亦需符合Code 39的編碼規(guī)則。換言之,目標(biāo)條碼32的編碼規(guī)則需符合用以 建立表1的編碼規(guī)則。
[0067]首先,執(zhí)行步驟S30,以條碼讀取機(jī)10擷取目標(biāo)條碼32的目標(biāo)影像。
[0068]接著,執(zhí)行步驟S32,于目標(biāo)影像上設(shè)定目標(biāo)掃描線34,如圖7所示。
[0069]接著,執(zhí)行步驟S34,根據(jù)目標(biāo)條碼32的編碼規(guī)則分析目標(biāo)掃描線34的灰階分布上 的至少兩個特征點間的相對關(guān)系,以得到至少一個參考特征參數(shù)。由于表1是以圖3至圖5所 示的兩相鄰波峰點A與波谷點B、兩相鄰波峰點C、E以及兩相鄰波谷點D與波峰點E作為三組 特征點而建立,因此,本發(fā)明可根據(jù)目標(biāo)掃描線34的灰階分布上的兩相鄰波峰點A與波谷點 B、兩相鄰波峰點C、E以及兩相鄰波谷點D與波峰點E的相對關(guān)系(如圖8所示),得到三個參考 特征參數(shù),亦即,兩相鄰波峰點A與波谷點B的像素距離,兩相鄰波峰點C、E的像素距離,與兩 相鄰波谷點D與波峰點E的灰階差異值。
[0070]接著,根據(jù)步驟S34得到的參考特征參數(shù)與表1判斷條碼讀取機(jī)10與目標(biāo)條碼32間 的目前距離為何。當(dāng)步驟S34得到的參考特征參數(shù)與表1中的第一預(yù)定特征參數(shù)相符時,執(zhí) 行步驟S36,判斷條碼讀取機(jī)10與目標(biāo)條碼32間的目前距離為相對遠(yuǎn)距離。
[0071]當(dāng)判斷條碼讀取機(jī)10與目標(biāo)條碼32間的目前距離為相對遠(yuǎn)距離時,執(zhí)行步驟S38, 以預(yù)定灰階值PG對目標(biāo)掃描線34的灰階分布進(jìn)行二值化,以將目標(biāo)掃描線34的灰階分布劃 分為至少一個黑條區(qū)BA以及至少一個白條區(qū)SA。如圖8所示,預(yù)定灰階值PG將目標(biāo)掃描線34 的灰階分布劃分為一個黑條區(qū)Μ以及一個白條區(qū)SA。需說明的是,根據(jù)不同條碼的讀取結(jié) 果,黑條區(qū)ΒΑ或白條區(qū)SA的數(shù)量亦可為多個,不以一個為限。于此實施例中,可以目標(biāo)掃描 線34的灰階分布的平均灰階值作為預(yù)定灰階值PG,但不以此為限。預(yù)定灰階值PG亦可根據(jù) 實際應(yīng)用而有不同的設(shè)定。
[0072]接著,執(zhí)行步驟S40,根據(jù)預(yù)定灰階值PG設(shè)定一灰階區(qū)間GTHmax-GTHmin,且自目標(biāo) 掃描線34的灰階分布找出位于灰階區(qū)間GTHmax-GTHmin中的至少一個波峰點P1-P5以及至 少一個波谷點V1-V4。于此實施例中,可根據(jù)預(yù)定灰階值PG上下取一預(yù)定比率(例如,正負(fù) 25%)得到灰階區(qū)間GTHmax-GTHmin。如圖9所示,有五個波峰點P1-P5與四個波谷點V1-V4位 于灰階區(qū)間GTHmax-GTHmin中。需說明的是,根據(jù)不同條碼的讀取結(jié)果與不同灰階區(qū)間的設(shè) 定,位于灰階區(qū)間GTHmax-GTHmin中的波峰點或波谷點的數(shù)量可為一或多個,不以圖9所示 的實施例為限。
[0073]接著,判斷波峰點P1-P5是否位于黑條區(qū)Μ中,且判斷波谷點V1-V4是否位于白條 區(qū)SA中。接著,執(zhí)行步驟S42當(dāng)波峰點位于黑條區(qū)ΒΑ中時,于黑條區(qū)ΒΑ中插入對應(yīng)波峰點的 一白條;當(dāng)波谷點位于白條區(qū)SA中時,于白條區(qū)SA中插入對應(yīng)波谷點的一黑條。
[0074] 于此實施例中,本發(fā)明可先針對目標(biāo)掃描線34的灰階分布于每兩相鄰像素點之間 增加一內(nèi)插點。因此,目標(biāo)掃描線34的灰階分布會由圖9所示的32個像素點增加為圖10所示 的63個像素點。假設(shè)兩相鄰像素點的灰階值為χ[η]與χ[η+1],且內(nèi)插點的灰階值為χ[η+ 0. 5 ],則內(nèi)插點的灰階值可由下列公式一計算得到。
[0075] 公式一 :χ[η+0 · 5] = (χ[η+1 ]-χ[η] )/2+χ[η]。
[0076] 當(dāng)波峰點位于黑條區(qū)ΒΑ中時,本發(fā)明可以波峰點以及與波峰點相鄰的內(nèi)插點的寬 度作為白條的寬度。當(dāng)波谷點位于白條區(qū)SA,本發(fā)明可以波谷點以及與波谷點相鄰的內(nèi)插 點的寬度作為黑條的寬度。
[0077] 如圖11所示,波峰點Ρ1-Ρ5皆位于黑條區(qū)Μ中。因此,本發(fā)明可以波峰點Ρ1以及與 波峰點Ρ1相鄰的后一個內(nèi)插點ΙΡ1的寬度作為白條S1的寬度,以波峰點Ρ2以及與波峰點Ρ2 相鄰的后一個內(nèi)插點ΙΡ2的寬度作為白條S2的寬度,以波峰點Ρ3以及與波峰點Ρ3相鄰的后 一個內(nèi)插點ΙΡ3的寬度作為白條S3的寬度,以波峰點Ρ4以及與波峰點Ρ4相鄰的后一個內(nèi)插 點ΙΡ4的寬度作為白條S4的寬度,且以波峰點Ρ5以及與波峰點Ρ5相鄰的后一個內(nèi)插點ΙΡ5的 寬度作為白條S5的寬度,進(jìn)而于黑條區(qū)Μ中插入對應(yīng)波峰點Ρ1-Ρ5的白條S1-S5。需說明的 是,本發(fā)明亦可以波峰點以及與波峰點相鄰的前一個內(nèi)插點的寬度作為白條的寬度,視實 際應(yīng)用而定。
[0078]如圖11所示,只有一個波谷點VI位于白條區(qū)SA中。因此,本發(fā)明可以波谷點VI以及 與波谷點VI相鄰的后一個內(nèi)插點IV1的寬度作為黑條Β1的寬度,進(jìn)而于白條區(qū)SA中插入對 應(yīng)波谷點VI的黑條Β1。需說明的是,本發(fā)明亦可以波谷點以及與波谷點相鄰的前一個內(nèi)插 點的寬度作為黑條的寬度,視實際應(yīng)用而定。
[0079] 在于黑條區(qū)Μ中插入白條S1-S5且于白條區(qū)SA中插入黑條B1后,即可對目標(biāo)條碼 32進(jìn)行解碼,進(jìn)而有效提升解碼成功率。
[0080] 當(dāng)步驟S34得到的參考特征參數(shù)與表1中的第二預(yù)定特征參數(shù)相符時,執(zhí)行步驟 S44,判斷條碼讀取機(jī)10與目標(biāo)條碼32間的目前距離為相對中距離。當(dāng)判斷條碼讀取機(jī)10與 目標(biāo)條碼32間的目前距離為相對中距離時,執(zhí)行步驟S46,根據(jù)預(yù)定灰階值PG對目標(biāo)掃描線 34的灰階分布進(jìn)行二值化,即可對目標(biāo)條碼32進(jìn)行解碼。
[0081] 當(dāng)步驟S34得到的參考特征參數(shù)與表1中的第三預(yù)定特征參數(shù)相符時,執(zhí)行步驟 S48,判斷條碼讀取機(jī)10與目標(biāo)條碼32間的目前距離為相對近距離。當(dāng)判斷條碼讀取機(jī)10與 目標(biāo)條碼32間的目前距離為相對近距離時,執(zhí)行步驟S50,對目標(biāo)影像進(jìn)行濾波與向下取 樣。于此實施例中,本發(fā)明可利用兩點取一點或是多點取一點的方式對所有的像素點做縮 減像素的向下取樣(Down-Sampling),以剔除冗長不必要的像素點(例如,舍棄目標(biāo)掃描線 34的偶數(shù)點或隔三點取一點),讓后續(xù)運算反應(yīng)時間加快。接著,再利用移動平均濾波器 (moving average filters)的方式濾除雜訊點。假設(shè)目標(biāo)掃描線34的像素點的灰階值為X [η],濾波后輸出的像素點的灰階值為y[n],則可以下列公式二進(jìn)行移動平均濾波。
[0082] 公式二:y[n] = (x[n-2]+x[n_l ]+x[n]+x[n+l ]+x[n+2] )/5。
[0083] 接著,執(zhí)行步驟S52,根據(jù)預(yù)定灰階值PG對目標(biāo)掃描線34的灰階分布進(jìn)行二值化, 即可對目標(biāo)條碼32進(jìn)行解碼。
[0084]于此實施例中,表1系以三個第一預(yù)定特征參數(shù)、三個第二預(yù)定特征參數(shù)與三個第 三預(yù)定特征參數(shù)來說明本發(fā)明的技術(shù)特點。然而,本發(fā)明的預(yù)定特征參數(shù)的數(shù)量并不以三 個為限。此外,步驟S34得到的參考特征參數(shù)與表1中的第一預(yù)定特征參數(shù)、第二預(yù)定特征參 數(shù)或第三預(yù)定特征參數(shù)有可能不完全相符。當(dāng)參考特征參數(shù)與第一預(yù)定特征參數(shù)中的N個 相符,且與第二預(yù)定特征參數(shù)中的Μ個相符時,本發(fā)明的條碼解碼方法可以下列方式判斷條 碼讀取機(jī)10與目標(biāo)條碼32間的目前距離為相對遠(yuǎn)距離或相對中距離,其中Ν與Μ皆為正整 數(shù)。當(dāng)Ν大于Μ時,判斷目前距離為相對遠(yuǎn)距離;當(dāng)Ν小于或等于Μ時,判斷目前距離為相對中 距離。同理,當(dāng)參考特征參數(shù)與第二預(yù)定特征參數(shù)中的Ν個相符,且與第三預(yù)定特征參數(shù)中 的Μ個相符時,本發(fā)明的條碼解碼方法亦可以上述方式判斷條碼讀取機(jī)10與目標(biāo)條碼32間 的目前距離為相對中距離或相對近距離。
[0085] 需說明的是,本發(fā)明的條碼解碼方法的控制邏輯可以軟件設(shè)計來實現(xiàn)。此軟體可 于條碼讀取機(jī)或其它有提供條碼讀取功能的電子裝置中執(zhí)行。當(dāng)然,控制邏輯中的各個部 分或功能皆可通過軟件、硬件或軟硬件的組合來實現(xiàn)。此外,本發(fā)明的條碼解碼方法的控制 邏輯可以儲存于電腦可讀取儲存媒體中的資料而具體化,其中電腦可讀取儲存媒體所儲存 的代表指令的資料系可被電子裝置執(zhí)行以產(chǎn)生控制命令,進(jìn)而執(zhí)行對應(yīng)的功能。
[0086] 綜上所述,本發(fā)明提供的條碼解碼方法,當(dāng)本發(fā)明判斷條碼讀取機(jī)與目標(biāo)條碼間 的目前距離為相對遠(yuǎn)距離時,本發(fā)明是先將目標(biāo)掃描線的灰階分布劃分為黑條區(qū)與白條 區(qū),再根據(jù)灰階區(qū)間中的波峰點于黑條區(qū)中插入對應(yīng)的白條及/或根據(jù)灰階區(qū)間中的波谷 點于白條區(qū)中插入對應(yīng)的黑條,以有效還原目標(biāo)條碼的黑條與白條的分布。藉此,即可在條 碼讀取機(jī)與目標(biāo)條碼間的目前距離為相對遠(yuǎn)距離時,有效提升目標(biāo)條碼的解碼成功率。此 外,當(dāng)本發(fā)明判斷條碼讀取機(jī)與目標(biāo)條碼間的目前距離為相對中距離時,本發(fā)明可根據(jù)預(yù) 定灰階值對目標(biāo)掃描線的灰階分布進(jìn)行二值化,以對目標(biāo)條碼進(jìn)行解碼。再者,當(dāng)本發(fā)明判 斷條碼讀取機(jī)與目標(biāo)條碼間的目前距離為相對近距離時,本發(fā)明可先對目標(biāo)影像進(jìn)行濾波 與向下取樣,再根據(jù)預(yù)定灰階值對目標(biāo)掃描線的灰階分布進(jìn)行二值化,以對目標(biāo)條碼進(jìn)行 解碼。
[0087]本發(fā)明已由上述相關(guān)實施例加以描述,然而上述實施例僅為實施本發(fā)明的范例。 必需指出的是,已揭露的實施例并未限制本發(fā)明的范圍。相反地,在不脫離本發(fā)明的精神和 范圍內(nèi)所作的更動與潤飾,均屬本發(fā)明的專利保護(hù)范圍。
【主權(quán)項】
1. 一種條碼解碼方法,其特征在于,包含下列步驟: 以條碼讀取機(jī)擷取目標(biāo)條碼的目標(biāo)影像; 于該目標(biāo)影像上設(shè)定目標(biāo)掃描線; 根據(jù)編碼規(guī)則分析該目標(biāo)掃描線的灰階分布上的至少兩個特征點間的相對關(guān)系,以得 到至少一個參考特征參數(shù); 當(dāng)該至少一個參考特征參數(shù)與至少一個第一預(yù)定特征參數(shù)相符時,判斷該條碼讀取機(jī) 與該目標(biāo)條碼間的目前距離為相對遠(yuǎn)距離; 當(dāng)判斷該目前距離為該相對遠(yuǎn)距離時,以預(yù)定灰階值將該目標(biāo)掃描線的灰階分布劃分 為至少一個黑條區(qū)以及至少一個白條區(qū); 根據(jù)該預(yù)定灰階值設(shè)定灰階區(qū)間,且自該目標(biāo)掃描線的灰階分布找出位于該灰階區(qū)間 中的至少一個波峰點以及至少一個波谷點; 當(dāng)波峰點位于該至少一個黑條區(qū)中時,于該至少一個黑條區(qū)中插入對應(yīng)該波峰點的一 白條;以及 當(dāng)波谷點位于該至少一個白條區(qū)中時,于該至少一個白條區(qū)中插入對應(yīng)該波谷點的一 黑條。2. 如權(quán)利要求1所述的條碼解碼方法,其特征在于,另包含下列步驟: 針對該目標(biāo)掃描線的灰階分布于每兩相鄰像素點之間增加一內(nèi)插點; 當(dāng)該波峰點位于該至少一個黑條區(qū)中時,以該波峰點以及與該波峰點相鄰的該內(nèi)插點 的寬度作為該白條的寬度;以及 當(dāng)該波谷點位于該至少一個白條區(qū)中時,以該波谷點以及與該波谷點相鄰的該內(nèi)插點 的寬度作為該黑條的寬度。3. 如權(quán)利要求1所述的條碼解碼方法,其特征在于,另包含下列步驟: 以該目標(biāo)掃描線的灰階分布的平均灰階值作為該預(yù)定灰階值。4. 如權(quán)利要求1所述的條碼解碼方法,其特征在于,另包含下列步驟: 當(dāng)該至少一個參考特征參數(shù)與至少一個第二預(yù)定特征參數(shù)相符時,判斷該條碼讀取機(jī) 與該目標(biāo)條碼間的該目前距離為相對中距離;以及 當(dāng)判斷該目前距離為該相對中距離時,根據(jù)該預(yù)定灰階值對該目標(biāo)掃描線的灰階分布 進(jìn)行二值化。5. 如權(quán)利要求4所述的條碼解碼方法,其特征在于,另包含下列步驟: 當(dāng)該至少一個參考特征參數(shù)與至少一個第三預(yù)定特征參數(shù)相符時,判斷該條碼讀取機(jī) 與該目標(biāo)條碼間的該目前距離為相對近距離; 當(dāng)判斷該目前距離為該相對近距離時,對該目標(biāo)影像進(jìn)行濾波與向下取樣;以及 根據(jù)該預(yù)定灰階值對該目標(biāo)掃描線的灰階分布進(jìn)行二值化。6. 如權(quán)利要求5所述的條碼解碼方法,其特征在于,另包含下列步驟: 以該條碼讀取機(jī)于多個預(yù)定距離下擷取一樣本條碼的多個樣本影像,其中每一預(yù)定距 離分別屬于該相對遠(yuǎn)距離、該相對中距離與該相對近距離的其中之一; 于每一樣本影像上設(shè)定一樣本掃描線;以及 根據(jù)該編碼規(guī)則分析每一該樣本掃描線的灰階分布上的至少兩個特征點間的相對關(guān) 系,以得到對應(yīng)該相對遠(yuǎn)距離的該至少一個第一預(yù)定特征參數(shù)、對應(yīng)該相對中距離的該至 少一個第二預(yù)定特征參數(shù)與對應(yīng)該相對近距離的該至少一個第三預(yù)定特征參數(shù)。7. 如權(quán)利要求1或6所述的條碼解碼方法,其特征在于,該至少兩個特征點間的相對關(guān) 系為像素距離、灰階差異值或其組合。8. 如權(quán)利要求1或6所述的條碼解碼方法,其特征在于,該至少兩個特征點為兩相鄰波 峰點與波谷點、兩相鄰波峰點、兩相鄰波谷點或其組合。9. 如權(quán)利要求4所述的條碼解碼方法,其特征在于,當(dāng)該至少一個參考特征參數(shù)與該至 少一個第一預(yù)定特征參數(shù)中的N個相符,且與該至少一個第二預(yù)定特征參數(shù)中的Μ個相符 時,該條碼解碼方法另包含下列步驟: 當(dāng)Ν大于Μ時,判斷該目前距離為該相對遠(yuǎn)距離;以及 當(dāng)Ν小于或等于Μ時,判斷該目前距離為該相對中距離; 其中,Ν與Μ皆為正整數(shù)。10. 如權(quán)利要求5所述的條碼解碼方法,其特征在于,當(dāng)該至少一個參考特征參數(shù)與該 至少一個第二預(yù)定特征參數(shù)中的Ν個相符,且與該至少一個第三預(yù)定特征參數(shù)中的Μ個相符 時,該條碼解碼方法另包含下列步驟: 當(dāng)Ν大于Μ時,判斷該目前距離為該相對中距離;以及 當(dāng)Ν小于或等于Μ時,判斷該目前距離為該相對近距離; 其中,Ν與Μ皆為正整數(shù)。
【文檔編號】G06K7/10GK105868667SQ201610183387
【公開日】2016年8月17日
【申請日】2016年3月28日
【發(fā)明人】林奇成, 黃敏雄, 吳壯為
【申請人】蘇州佳世達(dá)電通有限公司, 佳世達(dá)科技股份有限公司