JP5886181B2 - バーコード画像補正装置、通帳処理装置、及び自動取引装置 - Google Patents

バーコード画像補正装置、通帳処理装置、及び自動取引装置 Download PDF

Info

Publication number
JP5886181B2
JP5886181B2 JP2012276232A JP2012276232A JP5886181B2 JP 5886181 B2 JP5886181 B2 JP 5886181B2 JP 2012276232 A JP2012276232 A JP 2012276232A JP 2012276232 A JP2012276232 A JP 2012276232A JP 5886181 B2 JP5886181 B2 JP 5886181B2
Authority
JP
Japan
Prior art keywords
correction
noise
color
bars
target range
Prior art date
Legal status (The legal status 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 status listed.)
Active
Application number
JP2012276232A
Other languages
English (en)
Other versions
JP2014120078A (ja
Inventor
雄一 桜井
雄一 桜井
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Frontech Ltd
Original Assignee
Fujitsu Frontech Ltd
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 Fujitsu Frontech Ltd filed Critical Fujitsu Frontech Ltd
Priority to JP2012276232A priority Critical patent/JP5886181B2/ja
Publication of JP2014120078A publication Critical patent/JP2014120078A/ja
Application granted granted Critical
Publication of JP5886181B2 publication Critical patent/JP5886181B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Description

本発明は、複数のバーにより情報を表すバーコードを認識するための技術に関する。
バーコードは、黒バー、黒バー間のスペース(以降「白バー」)の各太さ、及びそれらの並びによって情報を表す識別子である。バーコードの情報は、認識を高精度に行うことができる。その利点から、現在、バーコードは、商品販売、物流、等の様々な分野で幅広く用いられている。
バーコードの規格は複数、存在する。しかし、何れの規格であっても、バーコードの表す情報の認識は、そのバーコードの画像を読み取り、バーコードを構成する各バーの太さを特定することで行われる。このため、バーコードの情報を高精度に認識するには、各バーの太さを適切に特定する必要がある。
各バーの太さの特定は、バーコード画像の読み取り結果を用いて行われる。バーコード画像の読み取りは、通常、光学的な読取装置を用いて行われる。バーコード画像の光学的な読み取りでは、たとえ適切な状態のバーコードを適切に読み取ったとしても、そのバーコードと読取装置との間に異物(塵、或いは埃、等)が入り込んだ場合、その異物はバーコード画像のなかで適切に読み取れない部分(ノイズ)を発生させる。
発生したノイズは、バーの数、或いは何れかのバーの太さを変化させる可能性がある。そのような変化は、バーコードの情報を適切に認識できなくさせる可能性が高い。バーコードの情報を適切に認識できなかった場合、バーコード画像の再度の読み取りが行われる。
読取装置は、ユーザが手動でバーコード画像を読み取らせる手動タイプと、バーコード画像が印字された媒体をユーザがセットした後、そのバーコード画像を自動的に読み取る自動タイプと、に大別することができる。自動タイプの読取装置は、手動タイプの読取装置と比較して、バーコード画像の読み取りにより時間がかかるのが普通である。特に媒体を搬送してバーコード画像を読み取るタイプでは、その読み取りに非常に時間がかかる。
読取装置が何れのタイプであっても、バーコード画像の再度の読み取りは、単位時間当たりに認識させるバーコードの数を低減させる。このことから、読取装置のなかには、バーコード画像の読み取りの際に発生したノイズを除去できるバーコード画像補正装置が搭載されたものがある。
従来のバーコード画像補正装置によるノイズ除去は、黒バーの長手方向上の長さに着目し、その長手方向上の長さが短い黒バー、及び黒バーを分けるスペースをノイズと見なすことで行っている。それにより、汚れ、かすれ、細り、太り、つぶれ等が発生している低品質のバーコード画像をより高品質のバーコード画像に補正している。
多くの読取装置は、バーが並ぶ方向に1次元の走査(スキャン)を行うことでバーコード画像を読み取るようになっている。しかし、上記従来のバーコード画像補正装置では、各バーの長手方向の長さを確認するために、バーコード画像全体を読み取ることを前提とする。これは、そのバーコード画像補正装置は、1次元の走査によりバーコード画像を読み取るタイプの読取装置には搭載できないことを意味する。このことから、バーコード画像の補正、つまりノイズの除去は、1次元の走査により得られた読取結果を対象に行えるようにすることが重要と考えられる。
特開平11−232376号公報 特開2002−216071号公報 特開2002−216071号公報
1側面では、本発明は、1次元の走査により得られたバーコード画像を対象に、そのバーコード画像上のノイズを除去する技術を提供することを目的とする。
本発明を適用した1システムでは、読み取られたバーコード画像を取得する画像取得手段と、画像取得手段が取得したバーコード画像上にノイズが存在するか否かをバーコードのバーの数に基づいて判定する判定手段と、バーコード画像上にノイズが存在すると判定手段が判定した場合に、他のバーの幅と比較して幅の狭い複数のバーが並ぶ範囲を、該ノイズの除去の対象とする対象範囲として特定する範囲特定手段と、範囲特定手段が特定した対象範囲内のノイズを除去するために用いる補正色を選択する色選択手段と、色選択手段が選択した補正色で対象範囲を同一の色に統一させて対象範囲内に存在すると想定するノイズを除去する補正を行う補正手段と、補正手段によるノイズの除去結果が適切か否か判定し、該除去結果が適切でないと判定した場合に、色選択手段に異なる補正色を選択させ、該異なる補正色を用いて対象範囲内に存在すると想定するノイズを補正手段に除去させる補正制御手段と、を有する。
本発明を適用した場合には、1次元の走査により得られたバーコード画像を対象に、そのバーコード画像上のノイズを除去することができる。
本実施形態による自動取引装置の回路構成図である。 通帳処理ユニットの構成を表す図である。 バーコードの構成とその読み取りによって得られる画像データを説明する図である。 白黒バッファの内容例を説明する図である。 読取面の白バーを読み取る箇所に汚れが付着した場合のバーコードの読取結果例を説明する図である。 読取面の白バーを読み取る箇所に汚れが付着した場合のバーコードの読取結果により白黒バッファに格納される内容例を説明する図である。 読取面の黒バーを読み取る箇所に汚れが付着した場合のバーコードの読取結果例を説明する図である。 読取面の黒バーを読み取る箇所に汚れが付着した場合のバーコードの読取結果により白黒バッファに格納される内容例を説明する図である。 図5に表すケースを対象にして、白を黒とさせるノイズが発生したとの想定でノイズ除去を行った場合に、白黒バッファに対して行われる操作を説明する図である。 図7に表すケースを対象にして、白を黒とさせるノイズが発生したとの想定でノイズ除去を行った場合に、白黒バッファに対して行われる操作を説明する図である。 図7に表すケースを対象にして、黒を白とさせるノイズが発生したとの想定でノイズ除去を行った場合に、白黒バッファに対して行われる操作を説明する図である。 バーコード画像補正処理のフローチャートである。 連続する複数のバーにそれぞれノイズが発生した場合の読取結果例を説明する図である。 図13に表すケースを対象にして行われるノイズ除去の方法例を説明する図である。 バーコード画像補正処理のフローチャートである(他の実施形態)。
以下、本発明の実施形態について、図面を参照しながら詳細に説明する。
図1は、本実施形態による自動取引装置の回路構成図である。その自動取引装置は、ATM(Automated Teller Machine)1である。そのATM1は、図1に表すように、ATM制御部10、手のひら静脈センサ部21、紙幣処理ユニット22、硬貨処理ユニット23、通帳処理ユニット24、カード/レシート処理ユニット25、及び顧客操作部26を備えている。
上記手のひら静脈センサ部21は、生体認証のための情報として、利用者の手のひらに存在する静脈の画像を読み取るためのものである。紙幣処理ユニット22は、紙幣の入出金を行うものである。硬貨処理ユニット23は、硬貨の入出金を行うものである。通帳処理ユニット24は、通帳に記述された情報の読み取り、及び印字等を行うものである。読み取る情報として、通帳に印字されたバーコードが表す情報が含まれる。それにより、本実施形態によるバーコード画像補正装置は、通帳処理ユニット24に搭載され、その通帳処理ユニット24は、本実施形態による通帳処理装置に相当する。
カード/レシート処理ユニット25は、キャッシュカード、クレジットカード等の各種カードの情報の読み取り、及び取り引き内容を印字したレシートの発行を行うものである。顧客操作部26は、表示装置、及びタッチパネルを有し、暗証番号の入力を含む各種データ入力、及び各種指示等に用いられる。
ATM制御部10は、例えば各種LSI等が搭載されたプリント基板(PCB:Printed Circuit Board)である。そのATM制御部10は、図1に表すように、主制御部11、その主制御部11が処理に用いるメモリ(例えばメモリモジュール)12、ハードディスク装置13、銀行ホスト通信制御部14、及びIO(Input/Output)制御部15を備えている。上記各部21〜26は、IO制御部15と接続されている。
上記主制御部11は、例えばハードディスク装置13に格納されたプログラムを実行するCPU(Central Processing Unit)である。この主制御部11は、例えばIO制御部15を介して顧客操作部26への利用者の操作を監視し、顧客操作部26への操作を介して利用者が指示した取り引きを実現させるための制御を行う。
ATM1の利用者は、キャッシュカード、クレジットカード、ローンカード、或いは通帳等の媒体を用いて取り引きを行うことができる。主制御部11は、顧客操作部26の表示装置上に、メニュー画面を表示させ、所望の取り引きを利用者に選択させる。
主制御部11は、メニュー画面上での選択結果に応じて、動作させるべきユニットを動作させ、銀行ホスト通信制御部14を介して、不図示のホストコンピュータ(以降「ホスト」と略記)との間で必要なデータ通信を行い、取引サービスを提供する。その取引サービスの1つに、未記入の取引明細を通帳に記帳する通帳記帳サービスがある。ここでは説明上、便宜的に、通帳記帳サービスには別の通帳を発行する繰越は含まれないと想定する。
利用者が通帳記帳サービスを選択した場合、主制御部11は、取引明細を記帳させるページを開いた状態で通帳を挿入させることを利用者に促すメッセージ等を顧客操作部26の表示装置上に表示させ、通帳処理ユニット24に、挿入される通帳への対応を指示する。
通帳処理ユニット24には、通帳を挿入するための通帳挿入口が設けられ、通帳挿入口の近傍には、挿入された通帳を検出するためのセンサが設けられている。通帳処理ユニット24は、そのセンサが通帳を検出した場合、通帳を内部に取り込み、通帳の磁気テープに記録された情報を読み取り、読み取った情報を主制御部11に通知する。
通帳の磁気テープには、情報として、口座番号、最後に取引明細が記帳された箇所を表すデータ(以降「記帳位置データ」と表記)等が記録されている。主制御部11には、口座番号が通知される。
主制御部11は、通帳処理ユニット24から通知された口座番号を用いて、印字すべきデータの送信をホストに依頼し、必要なデータを取得する。取得したデータは、通帳処理ユニット24に出力される。
通帳処理ユニット24は、主制御部11から出力されたデータを用いて、通帳への記帳を行う。開いたページに全ての取引明細を印字できない場合、ページを捲り、別のページに取引明細の印字を行う。それにより、全ての取引明細の印字が終了するか、或いは取引明細を印字可能なスペースが無くなった場合、記帳が終了する。通帳処理ユニット24は、記帳が終了した場合、その旨を主制御部11に通知し、通帳を搬送して、通帳挿入口から通帳を排出することで返却する。
通帳の各ページには、そのページ番号を表すバーコードが印字されている。通帳処理ユニット24は、通帳を搬送しながら、通帳の画像を読み取ることにより、ページ番号、及びそのページ番号のページで取引明細が印字されている範囲を確認し、確認結果を記帳位置データと比較する。それにより、磁気テープに記録されていた記帳位置データと確認結果とが一致しない場合、通帳処理ユニット24は、エラーが発生しているとして、その旨を主制御部11に通知し、挿入された通帳を返却する。このようなことから、通帳処理ユニット24は、バーコードを認識する機能が搭載されている。その通帳処理ユニット24は、取引明細が印字されている範囲の確認結果と記帳位置データの比較のために、記帳を行った場合、通帳の磁気テープに記録されている記帳位置データを更新する。
図2は、通帳処理ユニットの構成を表す図である。
本実施形態による通帳処理装置である通帳処理ユニット24は、図2に表すように、通帳挿入口201、搬送路202、磁気部203、光学部204、印字部205、捲り部206、退避/取込部207、及び制御部210を備えている。2は通帳である。
通帳挿入口201は、上記のように、記帳の対象となる通帳2の挿入、及び排出に用いられる。図2には表していないが、通帳挿入口201の近傍には、挿入された通帳を検出するためのセンサが設けられている。
磁気部203は、通帳2に設けられた磁気テープに記録された情報の読み取り、及び記録された情報の更新を行う。光学部204は、ラインセンサを有し、通帳の画像の読み取りを行う。印字部205は、通帳への記帳を行うための印字装置である。
磁気部203による情報の読み取り、及び情報の書き込み、光学部204による画像の読み取り、印字部205による取引明細の印字は、通帳2を搬送しながら行われる。搬送路202は、そのために設けられている。その搬送路202には、通帳2への搬送用の動力を伝達するための搬送ローラ202aが複数、設けられている。
捲り部206は、通帳2のページを捲るための装置である。取引明細を印字できるスペースが無くなった通帳2は、印字部205による印字が可能な位置から捲り部206まで搬送され、ページが捲られた後、印字部205による印字が可能な位置まで戻される。退避/取込部207は、搬送路202からの通帳2の一時的な退避、或いは異常な通帳2(例えば偽の通帳)の取り込み等に用いられる。
制御部210は、通帳処理ユニット24全体の制御、主制御部11との通信を行う。そのために、制御部210は、例えばCPU、少なくとも2種類のメモリ、各種インターフェース等を備えている。通帳2から読み取られたバーコードの認識、その画像の補正は、制御部210によって行われる。それにより、制御部210は、本実施形態によるバーコード画像補正装置として機能する。2種類のメモリのうちの一方には、CPUが実行するプログラムが格納されており、他方は、CPUのワークに用いられる。
以降は、図3〜図11を参照し、本実施形態によるバーコード画像の補正方法について詳細に説明する。
図3は、バーコードの構成とその読み取りによって得られる画像データを説明する図である。
図3には、2of5のバーコード300を表している。ここでは、混乱を避けるために、バーコードとしては2of5仕様のバーコード300のみを想定する。その2of5仕様のバーコード300は、5本の黒バー301と、その黒バーに挟まれた4本の白バー302で構成され、5本の黒バー301のうち、2本の黒バー301−2が他の3本の黒バー301−1よりも太くなっている。1つのバーコード300は、通常、0〜9の数値を表すようになっている。図3中の「B」「2B」「W」は細い黒バー301−1、太い黒バー301−2、白バー302をそれぞれ表している。図3では、細い黒バー301―1は「黒の細バー」、太い黒バー301−2は「黒の太バー」と表記している。
通帳2上のバーコード300は、搬送中に光学部204のラインセンサによって読み取られる。そのラインセンサによる読み取りは、1次元の光学スキャンに相当する。図3では、その光学スキャンを、矢印を付した線で表している。その左から右を向く矢印は、黒バー301、白バー302の並びを特定するうえでの基準を表している。それにより、例えば左端に位置する黒バー301は先頭、つまり1番目の黒バー301となっている。図3中の「B2」「B3」は、2番目の黒バー301、3番目の黒バー301をそれぞれ表している。同様に「W2」「W3」は、2番目の白バー302、3番目の白バー302をそれぞれ表している。
ラインセンサは、画像を2値画像として読み取る。そのため、各画素の値は0及び1の何れかとなる。図3中に表記の「光学スキャンデータ」は、ラインセンサによる読み取りによって得られた画像データである。0は白、1は黒をそれぞれ表している。
図4は、白黒バッファの内容例を説明する図である。この図4に表す内容例は、バーコード300の画像が適切に読み取れた場合のものである。
この白黒バッファは、バーコード300を認識するために、光学スキャンデータが表す各黒バー301、及び各白バー302の幅を表す情報の格納に用いられる作業領域である。その幅は、光学スキャン方向上の幅であり、その幅を表す幅情報として、本実施形態では画素数を採用している。
図4中の「B」「W」は、上記のように、黒バー301、白バー302をそれぞれ表している。「n」は、黒バー301、白バー302の先頭を基準とした位置情報を表している。それにより、例えば「1」は、先頭、つまり1番目に位置することを表している。本実施形態では、図3に表すように、2つのバーコード300が連続して印字されている通帳2を想定していることから、nの値が10までの黒バー301、白バー302の各幅情報が格納されている。
図4では、nの値が10の白バー302の幅情報の値が「255」となっている。この「255」の値は、幅情報の格納に用いるビット数が8ビットであるためである。白バー302の幅情報の値が所定値以上となることを条件に、バーコード300の画像が印字されている範囲が特定される。
光学部204による通帳2の画像の読み取りは、その光学部204の搬送路202側の面(以降「読取面」)が通帳2と接触するか、或いはその読取面と極めて近い位置で行われる。そのため、ラインセンサと通帳2の画像を読み取る箇所との間の距離は、一定と見なすことができる。通帳2に印字されるバーコード300のサイズは基本的に同じである。画素数を幅情報として採用しているのは、このような理由からである。
図5は、読取面の白バーを読み取る箇所に汚れが付着した場合のバーコードの読取結果例を説明する図である。図6は、その読取結果により白黒バッファに格納される内容例を説明する図である。
ノイズを発生させる汚れ310は、黒と読み取られるものである。そのような汚れ310が2番目の白バー302内の位置に存在していた場合、2番目の白バー302は汚れ310によって分割され、その汚れ310自体は1本の黒バー301として扱われることになる。その結果、図5に表すように、汚れ310は3番目の黒バー301となり、本来は3番目の黒バー301は4番目の黒バー301となる。2番目の白バー302は、2番目の白バー302、及び3番目の白バー302の2つになる。それにより、図6に表すように、黒バー301は11本、白バー302は10本、それぞれ存在するとして、白黒バッファに各黒バー301、各白バー302の幅情報が格納されることとなる。
図7は、読取面の黒バーを読み取る箇所に汚れが付着した場合のバーコードの読取結果例を説明する図である。図8は、その読取結果により白黒バッファに格納される内容例を説明する図である。
ノイズを発生させる汚れ320は、白と読み取られるものである。そのような汚れ320が2番目の黒バー301内の位置に存在していた場合、2番目の黒バー301は汚れ320によって分割され、その汚れ320自体は1本の白バー302として扱われることになる。その結果、図7に表すように、汚れ320は2番目の白バー302となり、本来は2番目の白バー302は3番目の白バー302となる。2番目の黒バー301は、2番目の黒バー301、及び3番目の黒バー301の2つになる。それにより、図8に表すように、黒バー301は11本、白バー302は10本、それぞれ存在するとして、白黒バッファに各黒バー301、各白バー302の幅情報が格納されることとなる。
図5〜図8に表すように、ラインセンサと通帳2のバーコード300との間に入った汚れ310、320のような異物は、本来の色を異なる色で読み取らせるノイズを発生させる。そのようなノイズの発生は、読み取られたバー(黒バー301、及び白バー302)の数をより多くさせる。そのため、バーの数からノイズの有無を確認することができる。
黒バー301、或いは白バー302上に発生したノイズは、ノイズが発生したバーを分割することから、他と比較して幅の狭い複数のバーの並びを形成させる。このことから、本実施形態では、他と比較して幅の狭い複数のバーが並ぶ範囲を、ノイズの除去を行うべき補正対象範囲として、ノイズを除去するバーコード画像補正を行うようにしている。
そのノイズ除去は、補正対象範囲を同一の色に統一させることで行う。例えば図5に表すケースでは、光学スキャンデータから特定された2番目の白バー302、3番目の黒バー301、及び3番目の白バー302を補正対象範囲とし、始めに、白を黒とさせたノイズが発生したとの想定でノイズ除去を行う。
図9は、図5に表すケースを対象にして、白を黒とさせるノイズが発生したとの想定でノイズ除去を行った場合に、白黒バッファに対して行われる操作を説明する図である。
上記のようなノイズ除去により、2番目の白バー302、3番目の黒バー301、及び3番目の白バー302は2番目の白バー302と補正される。その補正は、図9に表すように、2番目の白バー302の幅情報の値に、3番目の黒バー301の幅情報の値、及び3番目の白バー302の幅情報の値をそれぞれ加算する操作に相当する。そのような操作を行うことにより、図4に表すような適切な内容の白黒バッファが得られることとなる。適切な内容の白黒バッファが得られる結果、バーコード300の画像の再読み取りを行うことなく、そのバーコード300の表す情報を適切に認識することができる。
図5に表すケースでは、白を黒とさせたノイズが発生したとの想定で行うノイズ除去により、適切な内容の白黒バッファを得ることができる。言い換えれば、そのノイズ除去により、適切なバーコード画像補正を行うことができる。しかし、図7に表すようなケースでは、その想定でのノイズ除去により、適切な内容の白黒バッファを得ることはできない。
図10は、図7に表すケースを対象にして、白を黒とさせるノイズが発生したとの想定でノイズ除去を行った場合に、白黒バッファに対して行われる操作を説明する図である。
図7に表すようなケースでは、黒を白とさせるノイズが発生している。補正対象範囲は、2番目の黒バー301、2番目の白バー302、及び3番目の黒バー301である。このケースを対象にして、白を黒とさせるノイズが発生したとの想定で行うノイズ除去は、図10に表すように、1番目の白バー302の幅情報の値に、2番目の白バー302、3番目の黒バー301、及び3番目の白バー302の各幅情報の値をそれぞれ加算する操作に相当する。その操作の結果、1番目の白バー302の幅情報の値は太すぎるものとなる。バーの数は、適切な数より小さくなる。このケースでは、バーの数は10ではなく9となる。このようなことから、白を黒とさせるノイズが発生したとの想定で行ったノイズ除去は不適切であると判定することができる。
そのため、本実施形態では、白を黒とさせるノイズが発生したとの想定で行ったノイズ除去が不適切と判定、つまり補正後のバーコード画像が異常であると判定した場合、次に黒を白とさせるノイズが発生したとの想定でノイズ除去を行うようにしている。
図11は、図7に表すケースを対象にして、黒を白とさせるノイズが発生したとの想定でノイズ除去を行った場合に、白黒バッファに対して行われる操作を説明する図である。その想定でのノイズ除去により、2番目の黒バー301の幅情報の値に、2番目の白バー、及び3番目の黒バーの各幅情報の値がそれぞれ加算されることとなる。そのようにして、想定を変えたノイズ除去により、図4に表すような内容の白黒バッファが得られることとなる。この結果、バーコード300の画像の再読み取りを行うことなく、そのバーコード300の表す情報を適切に認識することができる。
上記のような白黒バッファへの操作、つまりバーコード画像の補正は、通帳処理ユニット24の制御部210が、図12にフローチャートを表すバーコード画像補正処理を実行することで実現される。そのバーコード画像補正処理は、制御部210に搭載されたCPUが、メモリに格納されたプログラムを実行することで実現される。
通帳処理ユニット24は、利用者が通帳記帳サービスを選択することで動作する。通帳処理ユニット24は、通帳挿入口201から通帳2が挿入されるのを待って、挿入された通帳2を搬送し、その通帳2の画像を読み取る。その画像の読み取りにより、通帳2に印字されているバーコード300の画像も読み取られる。それにより、バーコード画像補正処理は、例えば通帳2の画像の読み取りが終了した後、実行される。バーコード300の画像を読み取ることで得られる光学スキャンデータは、バーコード画像補正処理に渡すために、例えばワーク用のメモリに確保された領域に格納される。
先ず、CPUは、ワーク用のメモリに格納された光学スキャンデータ(図12中「縦バーコード」と表記)を取り込み(S1)、取り込んだ光学スキャンデータから図4等に表すような白黒バッファを作成する(S2)。次にCPUは、作成した白黒バッファを参照し、発生したノイズが有るか否か判定する(S3)。白黒バッファから確認されるバーの数が適切な数より多い場合、発生したノイズが存在していることから、S3の判定はYとなってS4に移行する。白黒バッファから確認されるバーの数が適切な数であった場合、S3の判定はNとなってS10に移行する。
S4では、CPUは、補正対象範囲を1つ選択し、選択した補正対象範囲に対して、白を黒とさせるノイズが発生したとの想定でノイズ除去を行う。次に、CPUは、そのノイズ除去に併せて、白黒バッファの操作を行い、操作後の白黒バッファの内容からバーコード300の補正対象範囲の構成を特定するバーコード化を行う(S5)。その後、CPUは、特定した補正対象範囲の構成の判定を行う(S6)。白黒バッファの操作は、実際には、元の白黒バッファのコピーを作成し、作成したコピーに対して行われる。
操作後の白黒バッファにより、選択した補正対象範囲、或いはそれに隣接するバーの幅が明らかに太い、或いは、操作によって生じたバーの数の変化が不適切のような場合、S6では操作によって異常が発生したと判定され、S7に移行する。そのような異常な結果が確認できない場合、S6では正常と判定され、S9に移行する。図5〜図11を参照して説明した通り、適切な操作が行われた場合、バーの数は1つ小さくなる。
S7では、CPUは、選択した補正対象範囲に対して、黒を白とさせるノイズが発生したとの想定でノイズ除去を行う。次に、CPUは、そのノイズ除去に併せて、白黒バッファの操作を行い、操作後の白黒バッファの内容からバーコード300の補正対象範囲の構成を特定するバーコード化を行う(S8)。その後はS9に移行する。
S9では、CPUは、他に発生したノイズが有るか否か判定する。白黒バッファから確認されるバーの数が適切な数より大きい場合、他に発生したノイズが有ることから、S9の判定はYとなってS4に戻り、別の補正対象範囲が選択される。白黒バッファから確認されるバーの数が適切な数であった場合、S9の判定はNとなってS10に移行する。
S10では、CPUは、白黒バッファが表すバーコード300の構成を別のプログラムに渡すための通知を行う。その後、このバーコード画像補正処理が終了する。
上記のバーコード画像補正処理の実行により、バーコード300の画像を読み取る際にノイズが発生しても、そのバーコード300の表す情報を適切に認識できるようになる。それにより、バーコード300の表す情報の適切な認識を行える可能性はより高くなる。これは、バーコード300の画像の読み取りを再度、行う頻度が減少することを意味する。このことから、より効率的な処理を行えるようになる。
通帳処理ユニット24のような搬送によりバーコード300の読み取りを行うタイプの装置では、バーコード300の再度の読み取りは、通帳2を一旦、返却させなければならない。このこともあり、再度の読み取りには非常に時間がかかる。そのため、通帳処理ユニット24のような装置では、本実施形態のようなバーコード画像補正処理を実行させることは特に有効である。
なお、本実施形態では、媒体(通帳2)を搬送して、その媒体上のバーコード300の画像を読み取る通帳処理ユニット24に、バーコード画像の補正を行わせるようにしているが、そのバーコード画像の補正は、別のタイプの装置に行わせるようにしても良い。別のタイプの装置は特に限定する必要はないが、例としては、バーコードスキャナを挙げることができる。そのバーコードスキャナには、バーコードに読み取り面をかざすハンディ型、バーコードをなぞるペン型、読み取り面にバーコードをかざす定置型などの種類があるが、何れの種類であっても良い。バーコードスキャナは、携帯端末装置等に搭載されたものであっても良い。このこともあり、バーコード300が印字された媒体は通帳2でなくとも良い。
次に、他の実施形態について説明する。
上記実施形態では、1本のバー内にノイズが発生するのを想定している。他の実施形態は、連続する複数のバーにそれぞれノイズが発生しても対応できるようにしたものである。この他の実施形態では、上記実施形態と比較して、より幅広くノイズに適切に対応することができる。
この他の実施形態における構成は、基本的に上記実施形態と同じである。動作も大部分は同じか、基本的に同じである。このことから、上記実施形態の符号をそのまま用いつつ、上記実施形態から異なる部分にのみ着目する形で説明を行う。
図13は、連続する複数のバーにそれぞれノイズが発生した場合の読取結果例を説明する図である。図13には、実際のバーコード300と、そのバーコード300の読み取りによって得られた光学スキャンデータとを表している。図13に表すケースでは、太い黒バー301−2と、それに続く白バー302とにノイズが発生している。
図14は、図13に表すケースを対象にして行われるノイズ除去の方法例を説明する図である。
この他の実施形態でも、上記実施形態と同様に、他と比較して幅の狭い複数のバーが連続する範囲を、ノイズの除去を行うべき補正対象範囲として設定する。それにより、図13に表すケースでは、図14(a)に表すように、補正対象範囲が設定される。その設定後、補正対象範囲の幅、本来の各バーの幅、及び適切に読み取られたと見なすバーを考慮して、補正対象範囲内に存在すべきバーの数、及びその組み合わせを推定する。
例えば1本の黒バー301−2上に1つ以上のノイズが発生しているケースでは、補正対象範囲はその黒バー301−2の幅となる。しかし、その補正対象範囲は、それぞれ1本の黒バー301−1と白バー302の幅と見なすことができる。これは、補正対象範囲の幅、及び本来の各バーの幅からだけでは、その補正対象範囲内に存在すべきバーの数を適切に推定できないことを意味する。このことから、適切に読み取られたと見なすバーは、補正対象範囲内に存在すべきバーの数の推定に用いられている。
上記ケースでは、補正対象範囲の直前に位置するバー、及びその補正対象範囲の直後に位置するバーが共に白バー302となる。それにより、補正対象範囲内に存在すべきバーは1本の黒バー301−2であると推定することができる。しかし、同じ幅の補正対象範囲の直前に位置するバーが白バー302、その補正対象範囲の直後に位置するバーが黒バーであれば、その補正対象範囲内に存在すべきバーはそれぞれ1本の黒バー301−1と白バー302であると推定することができる。3本(2つのバーコード300が連続している想定では6本)存在するはずの黒バー301−1のなかで適切と見なせた本数、2本(2つのバーコード300が連続している想定では4本)存在するはずの黒バー301−2のなかで適切と見なせた本数も、補正対象範囲内に存在すべきバーの数、及び組み合わせの推定に用いることができる。
補正対象範囲内に存在すべきバーの数、及び組み合わせを推定すると、次に、その推定結果に沿って、その補正対象範囲を分割する。図14(b)の140は、補正対象範囲に二つのバーが存在するとして、その補正対象範囲を2つの範囲に分割する境界である。図13に表すケースでは、最初に図14(b)に表す位置に境界140を設定し、その境界140の前側は黒バー301、その境界140の後側は白バー302と想定し、ノイズ除去が行われる。図14(b)は、そのノイズ除去による結果も表している。その境界140の前側を黒バー301、その境界140の後側を白バー302と想定するのは、補正対象範囲の前側には適切な幅の白バー302が存在し、その補正対象範囲の後ろ側には適切な幅の黒バー301−1が存在するからである。
図14(b)に表すように、図14(a)に表す境界140の位置では黒バー301−2、及び白バー302を適切に補正できない。そのため、次に図14(c)に表す位置に境界140を設定し、同様のノイズ除去を行う。その図14(c)は、そのノイズ除去による結果も表している。図14(c)に表すように、黒バー301−2、及び白バー302が適切に補正されている。そのため、ここで図13に表すケースでのノイズ除去が終了する。
図14(b)及び図14(c)に表すように、境界140の設定は、想定するバーの種類により、両端が同じ色のバーとなるように行っている。これは、ノイズがバーの幅の範囲内に存在していると想定しているためである。それにより、他の実施形態では、複数の候補が存在するケースの場合、両端が同じ色のバーの範囲を、1本のバーの本来の幅の候補と見なし、候補毎に、ノイズ除去を行い、その結果を確認することにより、各バー間の境界を特定するようにしている。各バー間の境界は、バーの数、及び組み合わせの推定結果に従って設定するようにしても良い。
上記のようなバーコード画像の補正は、通帳処理ユニット24の制御部210が、図15にフローチャートを表すバーコード画像補正処理を実行することで実現される。そのバーコード画像補正処理は、制御部210に搭載されたCPUが、メモリに格納されたプログラムを実行することで実現される。
先ず、CPUは、ワーク用のメモリに格納された光学スキャンデータ(図15中「縦バーコード」と表記)を取り込み(S21)、取り込んだ光学スキャンデータから図4等に表すような白黒バッファを作成する(S22)。次にCPUは、作成した白黒バッファを参照し、発生したノイズが有るか否か判定する(S23)。白黒バッファから確認されるバーの数が適切な数より多い場合、発生したノイズが存在していることから、S23の判定はYとなってS24に移行する。白黒バッファから確認されるバーの数が適切な数であった場合、S23の判定はNとなってS31に移行する。
S24では、CPUは、補正対象範囲を1つ選択する。次にCPUは、選択した補正対象範囲の幅が複数のバー分か否か判定する(S25)。その判定は、上記のように、補正対象範囲の幅、本来の各バーの幅、及び適切に読み取られたと見なすバーを考慮して、その補正対象範囲内に存在すべきバーの数、及びその組み合わせを推定して行われる。推定したバーの数が2以上であった場合、S25の判定はYとなってS26に移行する。推定したバーの数が1であった場合、S25の判定はNとなってS27に移行する。
S26では、CPUは、バーの数、及びその組み合わせの推定結果を用いて境界140の位置を設定することにより、補正対象範囲を分割し、その分割によって得られた小領域毎に、補正色を設定する。次にCPUは、小領域毎に、想定するノイズを設定した補正色にするノイズ除去を行う(S27)。S25でのNの判定により移行した場合、S27では、補正対象範囲を1つの小領域と見なし、ノイズ除去が行われる。
その後、CPUは、補正対象範囲のバーコード化を行う(S28)。そのバーコード化を行った後、CPUは、そのバーコード化の結果の判定を行う(S29)。補正対象範囲に存在するバーにおいて、他の適切と見なすバーとの間で矛盾が生じない場合、S29では正常と判定され、S30に移行する。その矛盾が生じる場合、S29では異常と判定され、S26に戻る。それにより、S26では、境界140の位置を変更し、補正対象範囲を別の内容で分割することとなる。上記矛盾とは、補正対象範囲内の何れかのバーの幅が他の同じ種類のバーと比較して大きく異なっている、存在すべきバーの数が適切でない(黒バー301−2が3本以上、或いは1本以下、等)、などである。
S30では、CPUは、他に発生したノイズが有るか否か判定する。更新後の白黒バッファから確認されるバーの数が適切な数より大きい場合、他に発生したノイズが有ることから、S30の判定はYとなってS24に戻り、別の補正対象範囲が選択される。白黒バッファから確認されるバーの数が適切な数であった場合、S30の判定はNとなってS31に移行する。
S31では、CPUは、白黒バッファが表すバーコード300の構成を別のプログラムに渡すための通知を行う。その後、このバーコード画像補正処理が終了する。
なお、上記2つの実施形態では、光学部204による通帳2の画像の読み取りは、その光学部204の読取面が通帳2と接触するか、或いはその読取面と極めて近い位置で行われる。そのため、バーコード300を構成する各バーの適切な幅(幅情報の値)は既知としている。しかし、光学部204とは異なり、バーコード300とセンサ間の距離が大きく変化する読取装置では、各バーの適切な幅を特定すれば良い。このことからも、上記2つの実施形態の適用は、通帳処理ユニット24のような上記の距離がほぼ一定の装置に限定されない。
上記2つの実施形態では、制御部210に搭載されたCPUにプログラムを実行させることにより、図12、或いは図14にフローチャートを表すバーコード画像補正処理を実現させる。そのバーコード画像補正処理を実現させるプログラムは、外部から取得させるようにしても良い。そのプログラムは、ATM制御部10の主制御部11に実行させても良い。つまり、バーコードの画像を読み取る装置と、読み取られたバーコードの画像を補正する装置とは、別であっても良い。ノイズについては、読み取りの際に発生したものではなく、バーコード自体の汚れ、かすれ、等の原因によるものであっても良い。
1 自動取引装置(ATM)
2 通帳
24 通帳処理ユニット
202 搬送路
204 光学部
210 制御部
300 バーコード
301、301−1、301−2 黒バー
302 白バー
310、320 汚れ

Claims (5)

  1. 読み取られたバーコード画像を取得する画像取得手段と、
    前記画像取得手段が取得した前記バーコード画像上にノイズが存在するか否かをバーコードのバーの数に基づいて判定する判定手段と、
    前記バーコード画像上に前記ノイズが存在すると前記判定手段が判定した場合に、他のバーの幅と比較して幅の狭い複数のバーが並ぶ範囲を、該ノイズの除去の対象とする対象範囲として特定する範囲特定手段と、
    前記範囲特定手段が特定した対象範囲内の前記ノイズを除去するために用いる補正色を選択する色選択手段と、
    前記色選択手段が選択した補正色で前記対象範囲を同一の色に統一させて前記対象範囲内に存在すると想定するノイズを除去する補正を行う補正手段と、
    前記補正手段による前記ノイズの除去結果が適切か否か判定し、該除去結果が適切でないと判定した場合に、前記色選択手段に異なる補正色を選択させ、該異なる補正色を用いて前記対象範囲内に存在すると想定するノイズを前記補正手段に除去させる補正制御手段と、
    を有することを特徴とするバーコード画像補正装置。
  2. 前記色選択手段は、前記補正対象範囲内に存在すべきバーの数、及び該数のバーの組み合わせを推定し、該補正対象範囲内に存在すべきバーの数が2以上と推定した場合に、該補正対象範囲を複数の小領域に分割して、該小領域毎に補正色を選択し、
    前記補正手段は、前記色選択手段が前記小領域毎に補正色を選択した場合に、各小領域内に存在すると想定するノイズを前記色選択手段が選択した補正色で補正し、
    前記補正制御手段は、前記複数の小領域に分割された前記補正対象範囲の補正結果が適切か否か判定する、
    ことを特徴とする請求項1記載のバーコード画像補正装置。
  3. 前記補正制御手段は、前記複数の小領域に分割された前記補正対象範囲の補正結果が適切でないと判定した場合に、該補正対象範囲の複数の小領域への分割を前記色選択手段に異なる内容で行わせ、該異なる内容で該補正対象範囲を分割する各小領域から前記ノイズを前記補正手段に除去させる、
    ことを特徴とする請求項2記載のバーコード画像補正装置。
  4. バーコード画像が印字された通帳の処理を行う通帳処理装置において、
    前記通帳上のバーコード画像を読み取る読取手段と、
    前記読取手段が読み取った前記バーコード画像上にノイズが存在するか否かをバーコードのバーの数に基づいて判定する判定手段と、
    前記バーコード画像上に前記ノイズが存在すると前記判定手段が判定した場合に、他のバーの幅と比較して幅の狭い複数のバーが並ぶ範囲を、該ノイズの除去の対象とする対象範囲として特定する範囲特定手段と、
    前記範囲特定手段が特定した対象範囲内の前記ノイズを除去するために用いる補正色を選択する色選択手段と、
    前記色選択手段が選択した補正色で前記対象範囲を同一の色に統一させて前記対象範囲内に存在すると想定するノイズを除去する補正を行う補正手段と、
    前記補正手段による前記ノイズの除去結果が適切か否か判定し、該除去結果が適切でないと判定した場合に、前記色選択手段に異なる補正色を選択させ、該異なる補正色を用いて前記対象範囲内に存在すると想定するノイズを前記補正手段に除去させる補正制御手段と、
    を有することを特徴とする通帳処理装置。
  5. バーコード画像が印字された通帳の処理が可能な自動取引装置において、
    前記通帳上のバーコード画像を読み取る読取手段と、
    前記読取手段が読み取った前記バーコード画像上にノイズが存在するか否かをバーコードのバーの数に基づいて判定する判定手段と、
    前記バーコード画像上に前記ノイズが存在すると前記判定手段が判定した場合に、他のバーの幅と比較して幅の狭い複数のバーが並ぶ範囲を、該ノイズの除去の対象とする対象範囲として特定する範囲特定手段と、
    前記範囲特定手段が特定した対象範囲内の前記ノイズを除去するために用いる補正色を選択する色選択手段と、
    前記色選択手段が選択した補正色で前記対象範囲を同一の色に統一させて前記対象範囲内に存在すると想定するノイズを除去する補正を行う補正手段と、
    前記補正手段による前記ノイズの除去結果が適切か否か判定し、該除去結果が適切でないと判定した場合に、前記色選択手段に異なる補正色を選択させ、該異なる補正色を用いて前記対象範囲内に存在すると想定するノイズを前記補正手段に除去させる補正制御手段と、
    を有することを特徴とする自動取引装置。
JP2012276232A 2012-12-18 2012-12-18 バーコード画像補正装置、通帳処理装置、及び自動取引装置 Active JP5886181B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012276232A JP5886181B2 (ja) 2012-12-18 2012-12-18 バーコード画像補正装置、通帳処理装置、及び自動取引装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012276232A JP5886181B2 (ja) 2012-12-18 2012-12-18 バーコード画像補正装置、通帳処理装置、及び自動取引装置

Publications (2)

Publication Number Publication Date
JP2014120078A JP2014120078A (ja) 2014-06-30
JP5886181B2 true JP5886181B2 (ja) 2016-03-16

Family

ID=51174838

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012276232A Active JP5886181B2 (ja) 2012-12-18 2012-12-18 バーコード画像補正装置、通帳処理装置、及び自動取引装置

Country Status (1)

Country Link
JP (1) JP5886181B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015141447A (ja) * 2014-01-27 2015-08-03 日立オムロンターミナルソリューションズ株式会社 バーコード読取装置及びバーコードの読取方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1992021100A1 (fr) * 1991-05-10 1992-11-26 Ape Inc. Lecteur de code barres et dispositif de jeu l'utilisant
JP2010176581A (ja) * 2009-01-30 2010-08-12 Sumitomo Electric System Solutions Co Ltd バーコード読み取り装置及びプログラム
JP5195539B2 (ja) * 2009-03-11 2013-05-08 株式会社デンソーウェーブ 光学的情報読取装置
JP5585400B2 (ja) * 2010-11-09 2014-09-10 株式会社デンソーウェーブ 光学的情報読取装置

Also Published As

Publication number Publication date
JP2014120078A (ja) 2014-06-30

Similar Documents

Publication Publication Date Title
JP4841227B2 (ja) 不正文字を検出するための装置、システム、プログラム、および方法(複数スキャン手法を用いる不正文字検出のための装置、システム、および方法)
US7606408B2 (en) Magnetic ink character reading method and program
JP2004032120A (ja) 画像データの処理方法、画像読み取り装置、pos端末および電子決済システム
CN102289667A (zh) 对经历光学字符识别(ocr)过程的文本文档中出现的错误的用户纠正
US20110081051A1 (en) Automated quality and usability assessment of scanned documents
JP2010211738A (ja) 画像処理システム、画像処理サーバ、mfp及び画像処理方法
CN104077584A (zh) 图像检查系统和图像检查方法
US10997406B2 (en) Image processing apparatus for determining proper reading order of documents
CN103577820A (zh) 字符识别方法、字符识别装置及金融设备
JP2016206839A (ja) 媒体認識装置及び取引装置
US10902278B2 (en) Image processing apparatus, image processing system, computer program product, and image processing method
US20190356789A1 (en) Image processing apparatus, image processing system, and program
JP2007018165A (ja) 金融端末、原因判定方法、及び、原因判定プログラム
JP5886181B2 (ja) バーコード画像補正装置、通帳処理装置、及び自動取引装置
KR101834494B1 (ko) 금융기기의 통장 페이지 자동 넘김 장치 및 방법
US10706337B2 (en) Character recognition device, character recognition method, and recording medium
JP5200822B2 (ja) 窓口取引処理システム
US8761487B2 (en) Methods of operating an image-based check processing system to detect a double feed condition of checks and an apparatus therefor
US8625877B2 (en) Methods of operating an image-based check processing system to detect a double feed condition of carrier envelopes and an apparatus therefor
JP5914313B2 (ja) 光学読取装置、光学的シンボルを読み取る方法、プログラム、記録紙葉類
KR100908406B1 (ko) 스캐닝 이미지 데이터 검증장치
JP5251652B2 (ja) 帳票イメージファイリングシステム
JP3861043B2 (ja) 複数種類の通帳の読取方法及び自動取引装置
US8279503B2 (en) Sheet media reading control method and sheet media reading device
JP6802107B2 (ja) 情報処理装置、方法及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20141114

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150904

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150924

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20151119

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160209

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160210

R150 Certificate of patent or registration of utility model

Ref document number: 5886181

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150