專利名稱:掃描儀裝置以及計算機程序產(chǎn)品的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及掃描儀裝置以及計算機程序產(chǎn)品。
背景技術(shù):
目前,已知使用激光掃描I維條形碼的掃描儀裝置。該掃描儀裝置使用預(yù)定的閾值,對橫向擺動地射出激光并接收由條形碼反射的反射光而得到的圖像數(shù)據(jù)進(jìn)行解碼,由此來掃描條形碼。在條形碼的讀取中,要求提高讀取響應(yīng)使其成為高速,以及提高解碼的正確性。為了提高解碼的讀取響應(yīng),在具有防止二次讀取功能的掃描儀裝置中,已知在由加速度計檢測到的加速度變化到預(yù)定值時故意地判斷為二次讀取,進(jìn)行圖像數(shù)據(jù)的解碼的結(jié)構(gòu)(例如 參照日本特開平8-147403號公報)。此外,已知為了提高解碼的讀取響應(yīng),將圖像數(shù)據(jù)變更為比特數(shù)少的B⑶碼來進(jìn)行解碼的掃描儀裝置(例如參照日本特開平7-49919號公報)。此外,已知為了提高解碼的正確性,針對每個字符(character)修正閾值,并使用修正后的閾值來對圖像數(shù)據(jù)進(jìn)行解碼的掃描儀裝置(例如參照日本特開平9-6885號公報)。此外,已知為了提高解碼的正確性,在條(bar)寬度小于預(yù)定寬度、讀取距離遠(yuǎn)時不進(jìn)行圖像數(shù)據(jù)的解碼的掃描儀裝置(例如參照日本特開平6-12514號公報)。這是由于當(dāng)讀取距離遠(yuǎn)時,解碼的正確性降低。但是,在現(xiàn)有的掃描儀裝置中,無法對應(yīng)于符號的讀取距離,使讀取響應(yīng)以及解碼的正確性變得恰當(dāng)。
發(fā)明內(nèi)容
本發(fā)明的課題在于能夠?qū)?yīng)于符號的讀取的距離,使讀取響應(yīng)以及解碼的正確性變得恰當(dāng)。本發(fā)明的掃描儀裝置具備掃描儀部,其掃描符號來取得圖像數(shù)據(jù);判別部,其判別從所述掃描儀部到所述符號的讀取距離是否為近距離;以及解碼部,其在所述讀取距離被判別為近距離時,設(shè)定增大圖像數(shù)據(jù)相對于用于判定所述符號的尺寸的閾值的誤差的允許度和減少解碼結(jié)果的對照次數(shù)中的至少一方,在所述讀取距離被判別為遠(yuǎn)距離時,設(shè)定降低圖像數(shù)據(jù)相對于所述閾值的誤差的允許度和增加所述對照次數(shù)中的至少一方,根據(jù)所述設(shè)定來進(jìn)行所述圖像數(shù)據(jù)的解碼。本發(fā)明的計算機程序產(chǎn)品,能夠由在掃描儀裝置中使用的計算機讀取,對執(zhí)行計算機處理的命令進(jìn)行編碼,所述計算機處理包含以下步驟掃描步驟,其掃描符號來取得圖像數(shù)據(jù);判別步驟,其判別從所述掃描儀部到所述符號的讀取距離是否為近距離;以及解碼步驟,其在所述讀取距離被判別為近距離時,設(shè)定增大圖像數(shù)據(jù)相對于用于判定所述符號的尺寸的閾值的誤差的允許度和減少解碼結(jié)果的對照次數(shù)中的至少一方,在所述讀取距離被判別為遠(yuǎn)距離時,設(shè)定降低圖像數(shù)據(jù)相對于所述閾值的誤差的允許度和增加所述對照次數(shù)中的至少一方,根據(jù)所述設(shè)定來進(jìn)行所述圖像數(shù)據(jù)的解碼。根據(jù)本發(fā)明,能夠?qū)?yīng)于符號的讀取距離,使讀取響應(yīng)以及解碼的正確性變得恰當(dāng)。
圖I是表示本發(fā)明第一實施方式的掃描儀裝置的結(jié)構(gòu)的框圖。圖2是表示掃描儀部的結(jié)構(gòu)的框圖。圖3是表不第一掃描處理的流程圖。圖4是表示圖3后續(xù)的第一掃描處理的流程圖。
圖5是表示第一掃描處理的條形碼開始位置解析處理的流程圖。圖6是表示第一掃描處理的條形碼結(jié)束位置解析處理的流程圖。圖7是表示第一掃描處理的最小單元寬度解析處理的流程圖。圖8是表示第一掃描處理的解碼處理的流程圖。圖9是表不解碼處理的4值化處理的流程圖。圖10是表示第二實施方式的掃描儀裝置的功能結(jié)構(gòu)的框圖。圖11是表示第二掃描處理的流程圖。
具體實施例方式以下,參照附圖按順序詳細(xì)說明本發(fā)明的第一以及第二實施方式。本發(fā)明不限于圖示的例子。(第一實施方式)參照圖I 圖9說明本發(fā)明的第一實施方式。首先,參照圖I以及圖2說明本實施方式的裝置結(jié)構(gòu)。圖I是表示本實施方式的掃描儀裝置10的結(jié)構(gòu)的框圖。圖2是表示掃描儀部18的結(jié)構(gòu)的框圖。如圖I所示,本實施方式的掃描儀裝置10是讀取管理作為讀取對象物的符號、即一維條形碼的手持終端。掃描儀裝置10例如在倉庫或小商店的店鋪中使用。例如對在倉庫或店鋪等中排列的商品附加了條形碼。掃描儀裝置10具備判別部、作為解碼部的CPU (Central Processing Unit) 11、操作部 12、RAM (Random Access Memory) 13、顯不部 14、ROM (Read Only Memory) 15、無線通信部16、閃速存儲器17、掃描儀部18、報知部19、電源部20。除了電源部20以外的掃描儀裝置10的各部經(jīng)由總線21相互連接。CPUll控制掃描儀裝置10的各部。CPUll從R0M15中讀出各種程序中的指定的程序然后將其在RAM13中展開,通過與展開的程序的協(xié)作來執(zhí)行各種處理。CPUll按照第一掃描程序151判別從掃描儀部18到條形碼的讀取距離是否為近距離,在判別所述讀取距離為近距離時,提高圖像數(shù)據(jù)相對于用于判定所述條形碼的單元(element)寬度的閾值的誤差的允許度,并且減少解碼結(jié)果的對照次數(shù)。此外,CPUll在判別所述讀取距離為遠(yuǎn)距離時,降低圖像數(shù)據(jù)相對于所述閾值的誤差的允許度,并且增多所述對照次數(shù)。然后,CPUll根據(jù)所述設(shè)定進(jìn)行所述圖像數(shù)據(jù)的解碼。操作部12具備由文字輸入鍵等各種鍵構(gòu)成的鍵組,向CPUll輸出與用戶對各鍵進(jìn)行的按動輸入相對應(yīng)的操作信息。操作部12至少具有使用掃描儀部18的條形碼掃描的觸發(fā)鍵。RAM13是易失性的半導(dǎo)體存儲器,具有存儲各種數(shù)據(jù)以及各種程序的工作區(qū)域。顯不部14 是具備 LCD (Liquid Crystal Display) > EL (Electro Luminescent)顯示器等顯示面板的顯示部,根據(jù)從CPUll輸入的顯示信息在顯示面板上進(jìn)行各種顯示。ROMl5是存儲各種數(shù)據(jù)以及各種程序的只讀的半導(dǎo)體存儲器。在R0M15中存儲了掃描程序151。
無線通信部16是移動電話通信方式的無線通信部。無線通信部16具有天線、調(diào)制部、解調(diào)部、信號處理部等,與基站進(jìn)行無線通信。無線通信部16通過信號處理部對要發(fā)送的信息的信號進(jìn)行信號處理,通過調(diào)制部對其進(jìn)行調(diào)制后從天線作為無線電波發(fā)送給基站。該基站經(jīng)由通信網(wǎng)絡(luò)與通信目的地的設(shè)備連接。此外,無線通信部16通過解調(diào)部對通過天線從基站接收到的無線電波的接收信號進(jìn)行解調(diào),通過信號處理部進(jìn)行信號處理來得到接收信息。如此,無線通信部16經(jīng)由基站與通信目的地的設(shè)備進(jìn)行通信。無線通信部16可以采用無線LAN (Local Area Network)方式的無線通信部,經(jīng)由接入點與通信目的地的設(shè)備進(jìn)行通信。閃速存儲器17是以能夠讀出以及寫入的方式存儲信息的非易失性的半導(dǎo)體存儲器。掃描儀部18是按照CPUll的控制信號掃描一維條形碼,取得條形碼的圖像數(shù)據(jù),并將該圖像數(shù)據(jù)輸出給CPUll的激光掃描儀部。如圖2所示,掃描儀部18具備發(fā)光部181、振鏡182、受光部183、增益電路184和二值化電路185。發(fā)光部181發(fā)出激光L并射出。振鏡182按照CPUll的控制信號,通過電動機(省略圖示)等進(jìn)行振動,由此反射從發(fā)光部18射出的激光L使其向左右擴展。受光部183是接受通過振鏡182反射的激光L實際照射到讀取對象物(條形碼)而產(chǎn)生的反射光,將其變換為電信號的模塊。增益電路184放大通過受光部183接受的反射光的電信號來使波形最佳化。二值化電路185把通過增益電路184最佳化的電信號變換為作為條形碼的圖像數(shù)據(jù)的二值數(shù)據(jù),然后輸出給CPU11。CPUll對從二值化電路185輸入的圖像數(shù)據(jù)進(jìn)行解碼。報知部19是根據(jù)CPUll的控制來輸出蜂鳴音的報知部??刂茍笾?9以便在條形碼掃描成功時輸出蜂鳴聲。電源部20是鋰電池等二次電池,對掃描儀裝置10的各部供給電源。電池部20也可以是堿性電池等一次電池。然后,參照圖3至圖9說明掃描儀裝置10的動作。圖3是表示第一掃描處理的流程圖。圖4是表示圖3后續(xù)的第一掃描處理的流程圖。圖5是表示第一掃描處理的條形碼開始位置解析處理的流程圖。圖6是表示第一掃描處理的條形碼結(jié)束位置解析處理的流程圖。圖7是表示第一掃描處理的最小單元寬度解析處理的流程圖。
圖8是表示第一掃描處理的解碼處理的流程圖。圖9是表不解碼處理的4值化處理的流程圖。掃描儀裝置10執(zhí)行的第一掃描處理是掃描作為讀取對象的條形碼來讀取信息的處理。預(yù)先由用戶調(diào)整掃描儀裝置10的位置以及姿勢,以便將讀取對象的條形碼對準(zhǔn)掃描儀部18的激光的射出方向。更具體地說,將掃描儀部18的激光的振幅方向?qū)?zhǔn)條形碼的長度方向。在此,說明讀取條形碼中包含的各字符由6條單元(3條黑條(black bar)以及3條空白(white space))構(gòu)成的標(biāo)準(zhǔn)、即Codel28的條形碼的例子。但是不限于此,可以讀取在條形碼中包含的各字符由Codel28以外的6條單元構(gòu)成的標(biāo)準(zhǔn)、或各字符由6條以外的條數(shù)的單元構(gòu)成的標(biāo)準(zhǔn)的條形碼。在掃描儀裝置10中,以用戶按下了操作部12的條形碼掃描的觸發(fā)按鈕為觸發(fā),CPUll通過與從R0M15讀出并在RAM13中展開的第一掃描程序151協(xié)作來執(zhí)行第一掃描處 理。CPUll在開始第一掃描處理的同時,開始計時器的計數(shù)。如圖3以及圖4所示,首先,CPUll根據(jù)計時器的計數(shù)值判別是否從掃描處理開始經(jīng)過了預(yù)先設(shè)定的預(yù)定時間而超時(步驟Sll)。該預(yù)定時間是用于結(jié)束掃描處理的超時的時間。在超時的情況下(步驟Sll :是),第一掃描處理結(jié)束。在沒有超時的情況下(步驟Sll :否),CPU11從掃描儀部18完成條形碼的圖像數(shù)據(jù)的取得(步驟S12)。設(shè)圖像數(shù)據(jù)具有從條形碼的圖像的左側(cè)向右側(cè)排列的黑條以及空白
的各數(shù)據(jù)寬度的數(shù)組(array) Dat
,Dat [I],Dat [2].......例如,條形碼的左側(cè)的空白
的數(shù)據(jù)寬度成為數(shù)組Dat
,條形碼最左側(cè)的黑條的數(shù)據(jù)寬度成為數(shù)組Dat [I]。然后,CPUll關(guān)于在步驟S12中取得的條形碼的圖像數(shù)據(jù),開始進(jìn)行條形碼開始位置解析處理(步驟S13)。在此,參照圖5進(jìn)行步驟S13的條形碼開始位置解析處理的說明。首先,CPUll對圖像數(shù)據(jù)的條形碼開始位置(條形碼的左端的黑條位置)的變量Posl設(shè)定I (步驟S41)。然后,CPUll判別變量Posl+1是否小于圖像數(shù)據(jù)的全部單元的條數(shù)DatNum(步驟S42)。在步驟S42中,判別變量Posl+1是沒有超過圖像數(shù)據(jù)的條形碼的右端從而正常,還是超過圖像數(shù)據(jù)的條形碼的右端從而異常。在Posl+1 < DatNum 時(步驟 S42:是)為正常,CPUll 判別數(shù)組 Dat [Posl+1] X 10是否小于數(shù)組Dat [Posl-1](步驟S43)。在步驟S43中,判別是否數(shù)組Dat [Posl+1]的10倍的值小于與其相同顏色的左鄰的數(shù)組Dat[Posl-l],且該相同顏色左鄰的數(shù)組Dat[Posl-1]為圖像數(shù)據(jù)的條形碼的左鄰的大的空白部分。在Dat [Posl+1] XlO 彡 Dat [Posl-1]時(步驟 S42 :否),數(shù)組 Dat [Posl-1]不是大的空白部分,CPUll使變量Posl加1(步驟S44),轉(zhuǎn)移到步驟S42。在Dat [Posl+1] XlO < Dat [Posl-1]時(步驟 S43 :是),數(shù)組 Dat [Posl-1]是大的空白部分,CPUll設(shè)定取得了條形碼開始位置的主旨(步驟S45),結(jié)束條形碼開始位置解析處理。在Posl+1彡DatNum時(步驟S42 :否)為異常,CPUll設(shè)定未取得條形碼開始位置的主旨(步驟S46),結(jié)束條形碼開始位置解析處理。然后,返回圖3,CPUll根據(jù)步驟S13的取得結(jié)果判別是否成功取得了條形碼開始位置Posl (步驟S14)。在條形碼開始位置Posl取得失敗時(步驟S14 :否),轉(zhuǎn)移到步驟Sn。在成功取得條形碼開始位置Posl時(步驟S14 :是),CPU11執(zhí)行條形碼結(jié)束位置解析處理(步驟S15)。在此,參照圖6進(jìn)行步驟S15的條形碼結(jié)束位置解析處理的說明。首先,CPUll對圖像數(shù)據(jù)的條形碼結(jié)束位置(條形碼的右端的黑條位置)的變量Pos2設(shè)定條形碼開始位置Posl+2(步驟S51)。Posl+2成為條形碼開始位置的黑條的右鄰的黑條的位置。然后,CPUll判別變量Pos2+l是否小于條數(shù)DatNum(步驟S52)。在步驟S52中,判別變量Pos2+l是沒有超過圖像數(shù)據(jù)的條形碼的右端從而正常,還是超過圖像數(shù)據(jù)的條形碼的右端從而異常。在Pos2+l < DatNum 時(步驟 S52 :是)為正常,CPUll 判別數(shù)組 Dat [Pos2_l] X 10 是否小于數(shù)組Dat[Pos2+l](步驟S53)。在步驟S53中,判別是否數(shù)組Dat [Pos2_l]的10倍的值小于與其相同顏色的右鄰的數(shù)組Dat[Pos2+l],且該相同顏色的右鄰的數(shù)組Dat[Pos2+l]為圖像數(shù)據(jù)的條形碼的右鄰的大的空白部分。在Dat[Pos2_l] XlO 彡 Dat[Pos2+l]時(步驟 S53 :否),數(shù)組 Dat [Pos2+l]不是大的空白部分,CPUll使變量Pos2加2(步驟S54),轉(zhuǎn)移到步驟S52。在Dat [Pos2-l] X 10 < Dat [Pos2+l]時(步驟 S53 :是),數(shù)組 Dat [Pos2+l]是大的空白部分,CPUll設(shè)定取得了條形碼結(jié)束位置的主旨(步驟S55),結(jié)束條形碼結(jié)束位置解析處理。在Pos2+l彡DatNum時(步驟S52 :否)為異常,CPUll設(shè)定未取得條形碼結(jié)束位置的主旨(步驟S56),結(jié)束條形碼結(jié)束位置解析處理。然后,返回圖3,CPUll根據(jù)步驟S15的取得結(jié)果判別是否成功取得了條形碼結(jié)束位置Pos2 (步驟S16)。在條形碼結(jié)束位置Pos2取得失敗時(步驟S16 :否),轉(zhuǎn)移到步驟Sn。在成功取得了條形碼結(jié)束位置Pos2時(步驟S16 :是),CPUll執(zhí)行最小單元寬度解析處理(步驟S17)。在此,參照圖7說明步驟S17的最小單元寬度解析處理。首先,CPUll對單元位置的變量s代入條形碼開始位置Posl (步驟S61)。然后,CPUll對最小單元寬度的變量Min代入數(shù)組Dat [s](步驟S62)。然后,CPUl I判別變量s是否在條形碼結(jié)束位置Pos2以下(步驟S63)。在s<P0s2時(步驟S63 :是),CPUll判別數(shù)組Dat [s]是否在變量Min以下(步驟S64)。在Dat[s]彡Min時(步驟S64 :是),CPUll向變量Min代入數(shù)組Dat [s](步驟S65)。然后,CPUl I使變量s加I (步驟S66),轉(zhuǎn)移到步驟S63。在Dat[s] > Min時(步驟S64 :否),轉(zhuǎn)移到步驟S66。在s > Pos2時(步驟S63 :否),結(jié)束最小單元寬度解析處理。然后,返回圖3,CPUll判別最小單元寬度Min是否小于預(yù)先設(shè)定的基準(zhǔn)值(步驟S18)。步驟S18的基準(zhǔn)值是用于判別掃描儀部18的條形碼讀取距離是遠(yuǎn)距離還是近距離的基準(zhǔn)值,其包含在第一掃描程序中或者存儲在R0M15中。在最小單元寬度Min <基準(zhǔn)值時(步驟S18 :是),CPU11向變量T代入0. 25,向執(zhí)行對照的次數(shù)的變量C代入3 (步驟S19)。變量T是表示條(bar)的比率誤差允許到何種程度的參數(shù),變量T越小,允許越大誤差來進(jìn)行解析。在最小單元寬度MinS基準(zhǔn)值時(步驟S18 :否),CPUll向變量T代入O,向變量C代入I (步驟S20)。然后,CPUll向循環(huán)次數(shù)的變量i代入0來進(jìn)行清除(步驟S21)。然后,CPUll執(zhí)行解碼處理(步驟S22)。在此,參照圖8說明步驟S22的解碼處理。首先,CPUll向變量Pos中代入條形碼開始位置Posl (步驟S71)。然后,CPUll判別變量Pos+6的值是否小于DatNum(步驟S72)。在步驟S16中相加的6是條形碼的I字符的黑條和空白的數(shù)量。在Pos+6 < DatNum時(步驟S72 :是),CPUll執(zhí)行4值化處理。(步驟S73)。在此,參照圖9說明步驟S73的4值化處理。
在Codel28的標(biāo)準(zhǔn)中,黑條和空白的數(shù)據(jù)寬度設(shè)定了 4種值(粗細(xì))。4值化處理是在I字符的圖像數(shù)據(jù)中,使用閾值以及變量T判定3條黑條中的各個黑條以及三條空白中的各個空白的數(shù)據(jù)寬度是4種值中的哪一種的處理。但是,并非限定于黑條以及空白的數(shù)據(jù)寬度為4種的條形碼的標(biāo)準(zhǔn)。如圖9 所示,首先,CPUll 將數(shù)組 Dat[Po s]、Dat [Pos+1]、Dat [Pos+2]、Dat [Pos+3], Dat [Pos+4], Dat [Pos+5]相加,計算一個字符的圖像數(shù)據(jù)的數(shù)據(jù)寬度的變量Char (步驟 S81)。首先,CPUll把變量Char除以11后的值設(shè)為變量M(步驟S82)。在Codel28的標(biāo)準(zhǔn)中,I字符的圖像數(shù)據(jù)的數(shù)據(jù)寬度恒定為11值。在步驟S82中,通過將I字符的變量Char除以11(值),作為變量M計算出與I值對應(yīng)的圖像數(shù)據(jù)的數(shù)據(jù)寬度。然后,CPUll將變量M的0. 5倍的值設(shè)定為變量B05,將變量M的I. 5倍的值設(shè)定為變量B15,將變量M的2. 5倍的值設(shè)定為變量B25,將變量M的3. 5倍的值設(shè)定為變量B35,將變量M的4. 5倍的值設(shè)定為變量B45 (步驟S83)。變量B05、B15、B25、B35、B45按照順序是與I值的0. 5、I. 5、2. 5、3. 5、4. 5倍對應(yīng)的圖像數(shù)據(jù)的數(shù)據(jù)寬度的變量。在4值化處理中,變量洲5、815、825、835、845作為用于判定(4值化)黑條以及空白的數(shù)據(jù)寬度的閾值而使用。然后,CPUll對循環(huán)計數(shù)器j設(shè)定變量Pos (步驟S84)。然后,CPUll判別循環(huán)計數(shù)器j是否小于變量Pos+6 (步驟S85)。在j < Pos+6時(步驟S85 :是),CPUll判別數(shù)組Dat [j]是否小于變量B15 (步驟S86)。在Dat[j] <B15時(步驟S86 :是),CPUl I對與循環(huán)計數(shù)器j對應(yīng)的黑條或空白的數(shù)據(jù)寬度的4值的數(shù)組R[j]設(shè)定1(步驟S87)。然后,CPUll把從數(shù)組Dat [j]減去變量B05后的值設(shè)定為變量Wl,把從變量B15減去數(shù)組Dat [j]后的值設(shè)定為變量W2 (步驟S88)。變量Wl是數(shù)組Dat [j]與數(shù)組Dat [j]的左側(cè)的閾值(變量B05、B15、B25或B35)之間的距離的變量。變量W2是數(shù)組Dat[j]的右側(cè)的閾值(變量B15、B25、B35或B45)與數(shù)組Dat[j]之間的距離的變量。在Dat[j]彡B15時(步驟S86 :否),CPUll判別數(shù)組Dat [j]是否小于變量B25(步驟S89)。在Dat[j] <B25時(步驟S89 :是),CPUll對數(shù)組R[j]設(shè)定2 (步驟S90)。然后,CPUll把從數(shù)組Dat [j]減去變量B15后的值設(shè)定為變量W1,把從變量B25減去數(shù)組Dat [j]后的值設(shè)定為變量W2 (步驟S91)。
在Dat[j]彡B25時(步驟S89 :否),CPUll判別數(shù)組Dat [j]是否小于變量B35(步驟S92)。在Dat[j] <B35時(步驟S92 :是),CPUll對數(shù)組R[j]設(shè)定3 (步驟S93)。然后,CPUl I把從數(shù)組Dat [j]減去變量B25后的值設(shè)定為變量Wl,把從變量B35減去數(shù)組Dat [j]后的值設(shè)定為變量W2 (步驟S94)。在Dat[j]彡B35時(步驟S92 :否),CPU11對數(shù)組R[j]設(shè)定4(步驟S95)。然后,CPUl I把從數(shù)組Dat [j]減去變量B35后的值設(shè)定為變量Wl,把從變量B45減去數(shù)組Dat [j]后的值設(shè)定為變量W2 (步驟S96)。在執(zhí)行步驟S88、S91、S94、S96后,CPUll判別變量Wl是否小于變量M乘以變量T所得的值(步驟S97)。在Wl彡MXT時(步驟S97 :否),比率誤差處于允許范圍內(nèi),CPUlI判別變量W2是否小于變量M乘以變量T所得的值(步驟S98)。在W2彡MXT時(步驟S98 :否),比率誤差處于允許范圍內(nèi),CPUll使循環(huán)計數(shù)器j加1(步驟S99),并轉(zhuǎn)移到步驟S85。在Wl <MXT時(步驟S97 :是),CPUll設(shè)定與變量 Pos對應(yīng)的I字符的黑條以及空白的4值化失敗的主旨(步驟S100),結(jié)束4值化處理。在W2 <MXT時(步驟S98 :是),轉(zhuǎn)移到步驟S100。在變量Wl、W2小時,I值和2值的差或2值和3值的差等本來應(yīng)成為不同等級的數(shù)據(jù)寬度的差異小,比率不明確,誤讀的危險性升高,所以在步驟SlOO中設(shè)定了 4值化失敗的主旨。在j彡P(guān)os+6時(步驟S85 :否),CPUll設(shè)定與變量Pos對應(yīng)的I字符的黑條以及空白的4值化成功的主旨(步驟S101),并結(jié)束4值化處理。返回圖8,0 仍1根據(jù)步驟573(步驟5100、5101)的4值化處理的結(jié)果,判別與變量Pos對應(yīng)的I字符的黑條以及空白的4值化是否成功(步驟S74)。在4值化成功時(步驟S74 :是),CPUll把通過步驟S73的4值化處理而得到的字符的數(shù)組R[j]變換為字符代碼(步驟S75)。然后,CPUll判定在步驟S75中變換后的字符代碼是否為表示條形碼的右端的停止代碼(步驟S76)。在不是停止代碼時(步驟S76 :否),CPUll使變量Pos增加6 (步驟S77),轉(zhuǎn)移到步驟S74。在是停止代碼時(步驟S76:是),CPU11設(shè)定圖像數(shù)據(jù)的解碼成功的主旨(步驟
578),結(jié)束解碼處理。在Pos+6彡DatNum時(步驟S72 :否),設(shè)定圖像數(shù)據(jù)的解碼失敗的主旨(步驟
579),結(jié)束解碼處理。在4值化失敗時(步驟S74:否),轉(zhuǎn)移到步驟S79。在是停止代碼時(步驟S76 :是),CPUll使用在步驟S75中變換后的字符代碼進(jìn)行檢驗數(shù)位(check digit)等校驗處理,根據(jù)其校驗結(jié)果判別解碼最終是否成功,在解碼成功時轉(zhuǎn)移到步驟S78,在解碼失敗時轉(zhuǎn)移到步驟S79。然后,返回圖4,CPU11判別在步驟S22中解碼是否成功(步驟S23)。在解碼失敗時(步驟S23 :否),轉(zhuǎn)移到步驟S30。在解碼成功時(步驟S23 :是),CPUll判別變量i是否大于0(步驟S24)。在0 < j時(步驟S24 :是),CPUll執(zhí)行在RAM13中存儲的之前的解碼結(jié)果與最新的解碼結(jié)果的對照(步驟S25)。在0 > i時(步驟S24 :否),沒有作為對照源的解碼結(jié)果,CPUll將步驟S22中得到的解碼結(jié)果作為對照源,存儲在RAM13中(步驟S26)。然后,CPUll判別步驟S25的對照是否取得一致(步驟S27),在對照不一致時(步驟S27,否),轉(zhuǎn)移到步驟SI I。在對照一致時(步驟S27,是),CPUll判別變量i是否小于變量C+1 (步驟S29)。在i < C+1時(步驟S29 :是),CPUll等待從掃描儀部18輸入下一個圖像數(shù)據(jù),取得所輸入的下一個圖像數(shù)據(jù)(步驟S30),轉(zhuǎn)移到步驟S22。在i彡C+1時(步驟S29 :否),CPUll在顯示部14中顯示包含在步驟S23中取得的字符代碼的解碼結(jié)果,并使報知部19輸出蜂鳴音(步驟S31),結(jié)束第一掃描處理。在步驟S31中,例如把解碼結(jié)果存儲在閃速存儲器17中。以上,根據(jù)本實施方式,掃描儀裝置10的CPUll判別從掃描儀部18到條形碼的讀取距離是否為近距離,在判別所述讀取距離為近距離時,提高圖像數(shù)據(jù)相對于用于判定所述條形碼的單元寬度的閾值(變量B05、B15、B25、B35、B45)的誤差的允許度(減小變量T),并且減少地設(shè)定解碼結(jié)果的對照次數(shù)(變量C)。此外,CPUll在判別為所述讀取距離為遠(yuǎn)距離時,降低圖像數(shù)據(jù)相對于所述閾值的誤差的允許度(增大變量T),并且增多地設(shè)定所述對照次數(shù)(變量C)。然后,CPUll根據(jù)所述設(shè)定來進(jìn)行圖像數(shù)據(jù)的解碼。因此,掃描儀裝置10在符號的讀取距離為近距離時提高讀取響應(yīng),在符號的讀取 距離為遠(yuǎn)距離時提高解碼的正確性,所以可以根據(jù)符號的讀取距離,使讀取響應(yīng)以及解碼的正確性變得恰當(dāng)。此外,掃描儀裝置10在上述圖像數(shù)據(jù)的最小單元寬度為基準(zhǔn)值以上時,判定所述讀取距離為近距離,在所述圖像數(shù)據(jù)的最小單元寬度小于基準(zhǔn)值時,判定所述讀取距離為遠(yuǎn)距離。因此,因為不設(shè)置測定讀取距離的部件,所以能夠簡化掃描儀裝置10的結(jié)構(gòu)。(第二實施方式)參照圖10和圖11說明本發(fā)明的第二實施方式。圖10是表示本實施方式的掃描儀裝置IOA的功能結(jié)構(gòu)的框圖。圖11是表示第二掃描處理的流程圖。圖10所示的掃描儀裝置IOA除了掃描儀裝置10的各部之外,還具備測距部22。與掃描儀裝置10通用的部分附加相同的符號并省略說明。測距部22射出紅外線并接收來自掃描對象物(條形碼)的反射光,由此測定從掃描儀裝置IOA(掃描儀部18)至條形碼的讀取距離,將該讀取距離信息輸出給CPU11。此外,ROMl5存儲第二掃描程序152來取代第一掃描程序151。然后,參照圖11說明掃描儀裝置IOA的動作。在掃描儀裝置IOA中,以用戶按下了操作部12的條形碼掃描的觸發(fā)按鈕為觸發(fā),CPUll通過與從R0M15讀出并在RAM13中適當(dāng)展開的第二掃描程序152的協(xié)作,執(zhí)行第二掃描處理。CPUll在開始第二掃描處理的同時,開始計時器的計數(shù)。如圖11所示,步驟S111、S112與圖3以及圖4的第一掃描處理的步驟S11、S12相同。然后,CPUll通過測距部22測定到條形碼的讀取距離d(步驟S113)。然后,CPUll判別讀取距離d是否大于基準(zhǔn)值(步驟S114)。步驟S114的基準(zhǔn)值是用于判別讀取距離d是近距離還是遠(yuǎn)距離的基準(zhǔn)值,包含在第二掃描程序中或者存儲在R0M15中。在(1>基準(zhǔn)值時(步驟S114:是),轉(zhuǎn)移到步驟S115。在d彡基準(zhǔn)值時(步驟S114 :否),轉(zhuǎn)移到步驟S116。步驟S115 步驟S127與圖3以及圖4的第一掃描處理的步驟S19 S31相同。以上,根據(jù)本實施方式,掃描儀裝置IOA的CPUll與掃描儀裝置10相同,可以根據(jù)條形碼的讀取距離,使讀取響應(yīng)以及解碼的正確性變得恰當(dāng)。此外,掃描儀裝置IOA在通過測距部22測定的讀取距離為基準(zhǔn)值以下時,判別所述讀取距離為近距離,在所述測定的讀取距離大于基準(zhǔn)值時,判別所述讀取距離為遠(yuǎn)距離。因此,不進(jìn)行圖像數(shù)據(jù)中的與讀取距離對應(yīng)的單元寬度的解析,就可以容易地得到讀取距離。在以上的說明中,公開了作為本發(fā)明的程序的計算機可讀取的介質(zhì)而使用R0M15的例子,但是不限于此例。作為其他計算機可讀取的介質(zhì),可以應(yīng)用閃速存儲器等非易失性存儲器、CD-ROM等可移動型記錄介質(zhì)。此外,作為經(jīng)由通信線路提供本發(fā)明的程序的數(shù)據(jù)的介質(zhì),在本發(fā)明中還應(yīng)用了載波(carrier wave)。上述實施方式中的記載只不過是本發(fā)明的掃描儀裝置以及程序的一個例子,不限于此。 在上述實施方式中,掃描儀裝置10為手持終端,但是不限于此。作為掃描儀裝置10,可以使用具有激光方式的掃描儀部的PDA (Personal Digital Assistant)、與ECR(Electronic Cash Register)連接的掃描儀裝置等其他掃描儀裝置。此外,在上述第一實施方式中,根據(jù)圖像數(shù)據(jù)中的符號的單元寬度是否小于基準(zhǔn)值,判別從掃描儀部到符號的讀取距離是近距離還是遠(yuǎn)距離,但是不限于此。例如也可以根據(jù)圖像數(shù)據(jù)的符號寬度(條形碼寬度)是否小于基準(zhǔn)值,判別從掃描儀部到符號的讀取距離是近距離還是遠(yuǎn)距離。此外,在上述第二實施方式中,測定從掃描儀部到符號的讀取距離的測定部22是使用紅外線的測距部22,但是不限于此。例如可以是使用攝像部的自動對焦機構(gòu)將焦距作為讀取距離的測距部等其他的測距部。此外,在上述實施方式中,掃描儀裝置10、10A的CPU11,在判別讀取距離為近距離時,提高圖像數(shù)據(jù)相對于用于判定條形碼的單元寬度的閾值的誤差的允許度,并且減少解碼結(jié)果的對照次數(shù),在判別所述讀取距離為遠(yuǎn)距離時,降低圖像數(shù)據(jù)相對于所述閾值的誤差的允許度,并且增多所述對照次數(shù),但是不限于此。CPUll在判別讀取距離為近距離時,可以設(shè)定提高圖像數(shù)據(jù)相對于所述閾值的誤差的允許度和減少解碼結(jié)果的對照次數(shù)中的至少一方,在判別讀取距離為遠(yuǎn)距離時,可以設(shè)定降低圖像數(shù)據(jù)相對于所述閾值的誤差的允許度和增多所述對照次數(shù)中的至少一方。此外,在上述實施方式中,掃描儀部18是讀取作為符號的條形碼的激光方式的掃描儀部,但是不限于此。例如掃描儀部可以是拍攝作為符號的條形碼或二維碼來進(jìn)行讀取的圖像掃描儀。此外,關(guān)于上述實施方式中的掃描儀裝置10、10A的各構(gòu)成要素的細(xì)部結(jié)構(gòu)以及細(xì)部動作,在不超出本發(fā)明的主旨的范圍內(nèi)可以進(jìn)行變更。以上說明了本發(fā)明的實施方式,但是本發(fā)明的范圍不限于上述實施方式,包含請求專利保護的范圍中記載的發(fā)明的范圍及其等同范圍。
權(quán)利要求
1.一種掃描儀裝置,其特征在于,具備 掃描儀部,其掃描符號來取得圖像數(shù)據(jù); 判別部,其判別從所述掃描儀部到所述符號的讀取距離是否為近距離;以及解碼部,其在所述讀取距離被判別為近距離時,設(shè)定增大圖像數(shù)據(jù)相對于用于判定所述符號的尺寸的閾值的誤差的允許度和減少解碼結(jié)果的對照次數(shù)中的至少一方,在所述讀取距離被判別為遠(yuǎn)距離時,設(shè)定降低圖像數(shù)據(jù)相對于所述閾值的誤差的允許度和增加所述對照次數(shù)中的至少一方,根據(jù)所述設(shè)定來進(jìn)行所述圖像數(shù)據(jù)的解碼。
2.根據(jù)權(quán)利要求I所述的掃描儀裝置,其特征在于, 所述判別部在所述圖像數(shù)據(jù)中的所述符號的尺寸在基準(zhǔn)值以上時,判別所述讀取距離為近距離,在所述圖像數(shù)據(jù)中的所述符號的尺寸小于基準(zhǔn)值時,判別所述讀取距離為遠(yuǎn)距 離。
3.根據(jù)權(quán)利要求2所述的掃描儀裝置,其特征在于, 所述判別部在所述圖像數(shù)據(jù)中的所述符號的單元寬度在基準(zhǔn)值以上時,判別所述讀取距離為近距離,在所述圖像數(shù)據(jù)中的所述符號的單元寬度小于基準(zhǔn)值時,判別所述讀取距離為遠(yuǎn)距離。
4.根據(jù)權(quán)利要求I所述的掃描儀裝置,其特征在于, 具備測距部,其測定從所述掃描儀部到所述符號的讀取距離, 所述判別部在通過所述測距部測定的讀取距離在基準(zhǔn)值以下時判別所述讀取距離為近距離,在所述測定的讀取距離大于基準(zhǔn)值時判別所述讀取距離為遠(yuǎn)距離。
5.一種計算機程序產(chǎn)品,其能夠由在掃描儀裝置中使用的計算機讀取,對執(zhí)行計算機處理的命令進(jìn)行編碼,該計算機程序產(chǎn)品的特征在于, 所述計算機處理包含以下步驟 掃描步驟,其掃描符號來取得圖像數(shù)據(jù); 判別步驟,其判別從所述掃描儀部到所述符號的讀取距離是否為近距離;以及解碼步驟,其在所述讀取距離被判別為近距離時,設(shè)定增大圖像數(shù)據(jù)相對于用于判定所述符號的尺寸的閾值的誤差的允許度和減少解碼結(jié)果的對照次數(shù)中的至少一方,在所述讀取距離被判別為遠(yuǎn)距離時,設(shè)定降低圖像數(shù)據(jù)相對于所述閾值的誤差的允許度和增加所述對照次數(shù)中的至少一方,根據(jù)所述設(shè)定來進(jìn)行所述圖像數(shù)據(jù)的解碼。
6.一種掃描儀裝置,其特征在于,具備 攝像部,其拍攝符號來取得圖像數(shù)據(jù); 判別部,其判別從所述攝像部到所述符號的讀取距離是否為近距離;以及解碼部,其在所述讀取距離被判別為近距離時,設(shè)定增大圖像數(shù)據(jù)相對于用于判定所述符號的尺寸的閾值的誤差的允許度和減少解碼結(jié)果的對照次數(shù)中的至少一方,在所述讀取距離被判別為遠(yuǎn)距離時,設(shè)定降低圖像數(shù)據(jù)相對于所述閾值的誤差的允許度和增加所述對照次數(shù)中的至少一方,根據(jù)所述設(shè)定來進(jìn)行所述圖像數(shù)據(jù)的解碼。
全文摘要
本發(fā)明提供掃描儀裝置以及計算機程序產(chǎn)品。本發(fā)明的掃描儀裝置具備掃描儀部,其掃描符號來取得圖像數(shù)據(jù);判別部,其判別從所述掃描儀部到所述符號的讀取距離是否為近距離;以及解碼部,其在所述讀取距離被判別為近距離時,設(shè)定增大圖像數(shù)據(jù)相對于用于判定所述符號的尺寸的閾值的誤差的允許度和減少解碼結(jié)果的對照次數(shù)中的至少一方,在所述讀取距離被判別為遠(yuǎn)距離時,設(shè)定降低圖像數(shù)據(jù)相對于所述閾值的誤差的允許度和增加所述對照次數(shù)中的至少一方,根據(jù)所述設(shè)定來進(jìn)行所述圖像數(shù)據(jù)的解碼。
文檔編號G06K7/10GK102750506SQ201210086740
公開日2012年10月24日 申請日期2012年3月28日 優(yōu)先權(quán)日2011年3月28日
發(fā)明者北川徹 申請人:卡西歐計算機株式會社