JP4465723B2 - コード検出プログラム及びコード検出方法並びに画像形成装置 - Google Patents

コード検出プログラム及びコード検出方法並びに画像形成装置 Download PDF

Info

Publication number
JP4465723B2
JP4465723B2 JP2007128226A JP2007128226A JP4465723B2 JP 4465723 B2 JP4465723 B2 JP 4465723B2 JP 2007128226 A JP2007128226 A JP 2007128226A JP 2007128226 A JP2007128226 A JP 2007128226A JP 4465723 B2 JP4465723 B2 JP 4465723B2
Authority
JP
Japan
Prior art keywords
extracted
reference line
code
scanned image
edges
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.)
Expired - Fee Related
Application number
JP2007128226A
Other languages
English (en)
Other versions
JP2008282339A (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.)
Konica Minolta Business Technologies Inc
Original Assignee
Konica Minolta Business Technologies 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 Konica Minolta Business Technologies Inc filed Critical Konica Minolta Business Technologies Inc
Priority to JP2007128226A priority Critical patent/JP4465723B2/ja
Priority to US12/114,629 priority patent/US8172144B2/en
Publication of JP2008282339A publication Critical patent/JP2008282339A/ja
Application granted granted Critical
Publication of JP4465723B2 publication Critical patent/JP4465723B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、1次元バーコードや2次元コードなどのコードを検出するプログラム及び方法並びにコードを検出する機能を備えた画像形成装置に関する。
近年の雑誌やフリーペーパー等の印刷物は、店舗等のURL(Uniform Resource Locator)情報を記録したQRコード(登録商標)等の2次元コードが印刷されているものが多く、ユーザは、携帯電話機の撮影機能を用いて2次元コードを読み込み、ネットワーク接続機能を用いて2次元コードに記録されたURLにアクセスすることにより、割引券等を入手するなどのサービスを受けることができる。しかしながら、例えば、操作を容易にするために機能を簡略化した携帯電話機やビジネス用途の携帯電話機には撮影機能が搭載されていない機種もあり、このような携帯電話機を利用するユーザは上記サービスを受けることができない。
一方、インターネット等の通信ネットワークに接続する機能を備えた画像形成装置が普及しており、様々な場所に設置されていることから、撮影機能の無い携帯電話機を利用するユーザは、コンビニエンスストア等に設置された画像形成装置でフリーペーパー等をスキャンして2次元コードを抽出することにより、上記サービスを受けることが可能となる。この場合、確実に2次元コードを抽出するためには画像形成装置で適切な画像処理を行う必要があり、このような画像処理の例として、例えば、下記特許文献1には、画像エッジを抽出し、ハフ変換、最小2乗近似で交差する2直線を探し、候補領域を決定する方法が開示されている。
特開平07−220081号公報
一般的に、スキャン画像からQRコードを抽出する方法としては、QRコードの角に設けられた「切り出しシンボル」をパターンマッチングで探す方法が用いられるが、QRコードが印刷される領域は一定ではないため、スキャン画像の全ての領域に対してパターンマッチングを実施しなければならず、画像処理に時間がかかるという問題があった。
また、印刷物をスキャナ上に置いてスキャンする際、印刷物が斜めにセットされる場合もあり、スキャン画像の画角に対してQRコードが必ずしも平行、直角であるとは限らないため、QRコードを確実に抽出するためには、あらゆる角度でパターンマッチングを実施しなければならず、更に、画像処理に時間がかかるという問題があった。
このような問題に対して、上記特許文献1の画像処理方法を用いることも考えられるが、雑誌やフリーペーパー等の印刷物には写真等の画像情報が印刷されている場合が多く、画像情報には大量のエッジが存在するため、ハフ変換により膨大な量の直線が抽出されてしまい、その結果、解析ができなくなってしまったり、画像処理に膨大な時間がかかってしまうという問題が生じる。
本発明は上記問題点に鑑みてなされたものであり、その主たる目的は、写真等の画像情報やテキスト情報が混在する印刷物が斜めにスキャンされた場合であっても、印刷物から1次元バーコードや2次元コードを簡単かつ確実に検出することができるコード検出プログラム及びコード検出方法並びに画像形成装置を提供することにある。
上記目的を達成するため、本発明のコード検出プログラムは、コンピュータを、少なくとも1次元バーコード又は2次元コードが印刷された印刷物をスキャンして得られたスキャン画像からエッジを抽出し、抽出したエッジから直線を抽出し、抽出した直線の内、最も長い直線を基準線として特定する基準線特定部、前記基準線に対して特定の向きで前記スキャン画像に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを検出するコード検出部、として機能させるものである。
また、本発明のコード検出プログラムは、コンピュータを、少なくとも1次元バーコード又は2次元コードが印刷された印刷物をスキャンして得られたスキャン画像からエッジを抽出し、抽出したエッジから直線を抽出し、抽出した直線の内、最も長い直線を基準線として特定する基準線特定部、前記スキャン画像を分割した領域の内、前記基準線に対して特定の向きの直線が所定数以上含まれる領域を候補領域として特定する候補領域特定部、前記スキャン画像の前記候補領域に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを検出するコード検出部、として機能させるものである。
本発明においては、前記特定の向きは、前記基準線に対して略平行及び/又は略直角の方向とすることができる。
また、本発明においては、前記基準線特定部は、前記スキャン画像に1レベルの二項ウェーブレット変換を行ってエッジを抽出し、抽出したエッジの中から高周波強度が所定値以上のエッジを選別し、選別したエッジにハフ変換を行って直線を抽出し、抽出した直線の中からハフ変換の投票数が最も多い直線を前記基準線として特定する構成とすることができる。
また、本発明は、印刷物に印刷された1次元バーコード又は2次元コードを検出するコード検出方法であって、前記印刷物をスキャンして、スキャン画像を取得するステップと、抽出したエッジから直線を抽出するステップと、抽出した直線の内、最も長い直線を基準線として特定するステップと、変換した直線の内、最も長い直線を基準線として特定するステップと、前記基準線に対して特定の向きで前記スキャン画像に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを抽出するステップと、を少なくとも有するものである。
また、本発明は、印刷物に印刷された1次元バーコード又は2次元コードを検出するコード検出方法であって、前記印刷物をスキャンして、スキャン画像を取得するステップと、前記スキャン画像からエッジを抽出するステップと、抽出したエッジから直線を抽出するステップと、抽出した直線の内、最も長い直線を基準線として特定するステップと、前記スキャン画像を複数の領域に分割するステップと、前記複数の領域の内、前記基準線に対して特定の向きの直線が所定数以上含まれる領域を候補領域として特定するステップと、前記スキャン画像の前記候補領域に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを抽出するステップと、を少なくとも有するものである。
本発明においては、前記エッジを抽出するステップでは、前記スキャン画像に1レベルの二項ウェーブレット変換を行ってエッジを抽出し、前記直線を抽出するステップでは、抽出したエッジの中から高周波強度が所定値以上のエッジを選別し、選別したエッジにハフ変換を行って直線を抽出し、前記基準線を特定するステップでは、抽出した直線の中からハフ変換の投票数が最も多い直線を前記基準線として特定する構成とすることができる。
また、本発明は、少なくともスキャナ部を備える画像形成装置であって、少なくとも1次元バーコード又は2次元コードが印刷された印刷物をスキャンして得られたスキャン画像からエッジを抽出し、抽出したエッジから直線を抽出し、抽出した直線の内、最も長い直線を基準線として特定する基準線特定部と、前記基準線に対して特定の向きで前記スキャン画像に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを検出するコード検出部と、を備えるものである。
また、本発明は、少なくともスキャナ部を備える画像形成装置であって、少なくとも1次元バーコード又は2次元コードが印刷された印刷物をスキャンして得られたスキャン画像からエッジを抽出し、抽出したエッジから直線を抽出し、抽出した直線の内、最も長い直線を基準線として特定する基準線特定部と、前記スキャン画像を分割した領域の内、前記基準線に対して特定の向きの直線が所定数以上含まれる領域を候補領域として特定する候補領域特定部と、前記スキャン画像の前記候補領域に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを検出するコード検出部と、を備えるものである。
このように、本発明では、基準線に対して特定の向きでパターンマッチングを行うか、若しくは、その基準線に対して特定の向きの直線が所定数以上含まれる候補領域に対してパターンマッチングを行えばよいため、印刷物から1次元バーコードや2次元コードを簡単かつ確実に検出することができる。
本発明のコード検出プログラム及びコード検出方法並びに画像形成装置によれば、写真等の画像情報やテキスト情報が混在している印刷物が斜めにスキャンされた場合であっても、印刷物から1次元バーコードや2次元コードを簡単かつ確実に検出することができる。
その理由は、1次元バーコードや2次元コード等のコードが印刷された印刷物をスキャンして得たスキャン画像に二項ウェーブレット変換を行ってエッジを抽出し、抽出したエッジの中から高周波強度が所定値以上のエッジを選別し、選別したエッジに対してハフ変換を行って直線を抽出し、抽出した直線の中から基準線を特定し、その基準線に対して特定の向き(例えば、基準線に平行及び/又は直角)でスキャン画像に対してパターンマッチングを行ってコードを検出するため、あらゆる方向に対してパターンマッチングを行う従来方法に比べて、処理を容易にすることができるからである。
また、スキャン画像に二項ウェーブレット変換を行ってエッジを抽出し、抽出したエッジの中から高周波強度が所定値以上のエッジを選別し、選別したエッジに対してハフ変換を行って直線を抽出し、抽出した直線の中から基準線を特定し、その基準線に対して特定の向き(例えば、基準線に平行及び/又は直角)の直線が所定数以上含まれる領域を候補領域として特定し、スキャン画像の候補領域に対してパターンマッチングを行ってコードを検出するため、全ての領域に対してパターンマッチングを行う従来方法に比べて、処理を容易にすることができるからである。
従来技術で示したように、雑誌やフリーペーパーなどの印刷物に印刷された1次元バーコードや2次元コード等のコードを読み取る用途に画像形成装置が利用されているが、上記印刷物にはコードの他に、画像情報やテキスト情報など、様々な情報が印刷されており、また、印刷物がスキャナ台に斜めにセットされてしまう場合もあるため、画像形成装置では、印刷物をスキャンして得たスキャン画像に対して、あらゆる方向から全領域に対してパターンマッチングを実施する必要が生じ、画像処理に時間がかかってしまうという問題があった。
一方、雑誌やフリーペーパーなどの印刷物には、通常、デザインや見やすさ等を考慮して、境界を示す枠線や仕切り線などの長い直線が印刷されており、1次元バーコードや2次元コードなどは、その直線に対して平行及び/又は直角に印刷されている。従って、スキャンデータに対して適切な画像処理を行って枠線や仕切り線などを検出することができれば、その線を基準にして容易にコードを検出することが可能になる。
そこで、本実施形態では、後述する二項ウェーブレット変換及びハフ変換を利用して、スキャン画像に二項ウェーブレット変換を行ってエッジを抽出し、抽出したエッジの中から高周波強度が所定値以上のエッジを選別し、選別したエッジに対してハフ変換を行って直線を抽出し、抽出した直線の中から基準線を特定し、その基準線に対して特定の向きでスキャン画像に対してパターンマッチングを行ってコードを検出する方法、若しくは、スキャン画像に二項ウェーブレット変換を行ってエッジを抽出し、抽出したエッジの中から高周波強度が所定値以上のエッジを選別し、選別したエッジに対してハフ変換を行って直線を抽出し、抽出した直線の中から基準線を特定し、その基準線に対して特定の向きの直線が所定数以上含まれる領域を候補領域として特定し、スキャン画像の候補領域に対してパターンマッチングを行ってコードを検出する方法を採用し、印刷物から簡単かつ確実にコードを検出できるようにする。以下、基準線の特定に利用する二項ウェーブレット変換及びハフ変換について概説する。
[二項ウェーブレット]
ウェーブレット変換とは図8に示すような有限範囲で振動するウェーブレット関数(式(1))を用いて、入力信号f(x)に対するウェーブレット変換係数〈f,ψa,b〉を式(2)で求める事により、入力信号を式(3)のようなウェーブレット関数の総和に分解する変換である。
Figure 0004465723
Figure 0004465723
Figure 0004465723
上式で、aはウェーブレット関数のスケールを表し、bはウェーブレット関数の位置を示す。図8に例示するように、スケールaの値が大きいほどウェーブレット関数ψa,b(x)の周波数は小さくなり、また、位置bの値に従ってウェーブレット関数ψa,b(x)が振動する位置が移動する。従って式(3)は、入力信号f(x)を種々のスケールと位置を持つウェーブレット関数ψa,b(x)の総和に分解する事を意味している。
上記のような変換を可能にするウェーブレット関数は多くのものが知られているが、画像処理分野では計算が高速な直交ウェーブレット(Orthogonal Wavelet)・双直交ウェーブレット(Biorthogonal Wavelet)が広く用いられている。直交ウェーブレット・双直交ウェーブレットのウェーブレット関数は式(4)のように定義される。
Figure 0004465723
式(4)と式(1)を比べると、直交ウェーブレット・双直交ウェーブレットではスケールaの値が2のi乗で離散的に定義され、また、位置bの最小移動単位が2iで離散的に定義されている事が判る。このiの値はレベルと呼ばれる。
一方、本発明で利用する二項ウェーブレット(Dyadic Wavelet)のウェーブレット関数は式(5)のように定義される(例えば、特開平9−212623号公報)。
Figure 0004465723
ここで、直交ウェーブレット・双直交ウェーブレットのウェーブレット関数は前述のようにレベルiにおける位置の最小移動単位が2iで離散的に定義されていたのに対し、二項ウェーブレットはレベルiにかかわらず位置の最小移動単位が一定である。この相違により、二項ウェーブレット変換には下記の特徴が生じる。
特徴1:式(6)に示す1レベルの二項ウェーブレット変換で生成する、高周波数帯域成分Wと低周波数帯域成分Sの各々の信号量は、変換前の信号Si−1と同一である。
Figure 0004465723
特徴2:スケーリング関数φi,j(x)とウェーブレット関数ψi,j(x)の間に式(7)の関係が成立する。
Figure 0004465723
従って二項ウェーブレット変換で生成する、高周波数帯域成分Wは、低周波数帯域成分Sの一次微分(勾配)を表す。
特徴3:ウェーブレット変換のレベルiに応じて定められた係数γを高周波数帯域成分に乗じたW・γ(以下、これを補正済高周波数帯域成分と呼ぶ。)について、入力信号の信号変化の特異性(singularity)に応じて、前記変換後の補正済高周波数帯域成分W・γの信号強度のレベル間の関係が一定の法則に従う。すなわち、なだらかな(微分可能な)信号変化に対応する補正済高周波数帯域成分W・γはレベル数iが増大するほど信号強度が増大するのに対して、ステップ状の信号変化に対応する補正済高周波数帯域成分W・γはレベル数iに関わらず信号強度が一定となり、δ関数状の信号変化に対応する補正済高周波数帯域成分W・γはレベル数iが増大するほど信号強度が減少する。
特徴4:画像信号のような2次元信号における1レベルの二項ウェーブレット変換の方法は、前述の直交ウェーブレット・双直交ウェーブレットの方法と異なり、1レベルのウェーブレット変換により、低周波数帯域成分Sn−1は2つの高周波数帯域成分Wx,Wyと1つの低周波数帯域成分Sに分解される。2つの高周波数帯域成分は低周波数帯域成分Sの2次元における変化ベクトルVのx成分とy成分に相当する。変化ベクトルVの大きさMと偏角Aは式(8)、式(9)で与えられる。
Figure 0004465723
Figure 0004465723
以上の特徴より、処理の対象となる情報の種類に応じて補正済高周波数帯域成分W・γの信号強度の大きさが異なるため、スキャナ画像の中から、なだらかな曲線で構成される画像情報を除外することが可能となる。
[ハフ変換]
ハフ変換とは、特定の点を通る直線の中から、画像の特徴点を最も多く通る直線を決定する処理であり、標準的なハフ変換では、式(10)に示すように、1つの直線は2つのパラメータ(その直線に引いた法線の長さと角度、rとθ)で表される。
Figure 0004465723
ここで、θ∈[0、π]かつr∈Rとするか、若しくは、θ∈[0、2π]かつr≧0とすると、ある直線に対する(r、θ)の組は一意に決定する。いいかえれば、θに対して直角で、原点からrの距離にあるものとして直線が表現される。
そこで、二項ウェーブレット変換で抽出したエッジに対してハフ変換を行い、ハフ変換したデータ上で投票数が少ないデータをカットし、その後、逆変換することにより、特定のエッジを直線として抽出することができ、投票数が最も多いデータを最も長い直線と見なすことにより、二項ウェーブレット変換で抽出したエッジの中から枠線や仕切り線などを基準線として特定することができ、この基準線に基づいてパターンマッチングの方向を設定したり、候補領域を特定することにより、パターンマッチングを迅速且つ容易に実行することが可能となる。
上記した本発明の実施の形態についてさらに詳細に説明すべく、本発明の一実施例に係るコード検出プログラム及びコード検出方法並びに画像形成装置について、図1乃至図7を参照して説明する。図1は、本実施例の情報提供システムの構成を模式的に示す図であり、図2は、本実施例の画像形成装置の構成を示すブロック図、図3は、画像形成装置の制御部の構成を示すブロック図である。また、図4は、本実施例の印刷物の構成例を示す図であり、図5は、本実施例の情報提供システムを用いた情報提供方法を示すフローチャート図である。また、図6は、本実施例のコード検出方法における候補領域の特定手順を示すフローチャート図であり、図7は、その具体例を示す図である。
図1(a)に示すように、本実施例の情報提供システムは、雑誌やフリーペーパーのように、紙やプラスチックなどの印刷媒体に各種情報が印刷された印刷物30をスキャンして、印刷物30に印刷された1次元バーコードや2次元コード、カラー2次元コードなど(以下、これらを総称してコードと呼ぶ。)を検出する、スキャナ機能を備えたコピー機やプリンタなど(以下、これらを総称して画像形成装置10と呼ぶ。)で構成される。また、コードにURLが記録されており、そのURLにアクセスして情報を取得する場合は、図1(b)に示すように、画像形成装置10とユーザに提供する情報を記憶したサーバ20とがWAN(Wide Area Network)やLAN(Local Area Network)などの通信ネットワークで接続されて構成される。
なお、上記1次元バーコードは、JAN、CODE39、ITF、NW-7、CODE128、CODE93などがあり、また、上記2次元コードはスタック型2次元コードとマトリクス型2次元コードに分類され、スタック型2次元コードは、PDF417、CODE49、CODE16Kなどがあり、マトリクス型2次元コードは、QRコード、DATA MATRIX、VERI CODE、MAXI CODE、CP CODE、CODE1、ボックス図形コード、ULTRA CODE、AZTECH CODEなどがあるが、本実施例におけるコードは情報をコード化して記録したものであればよく、その規格は特に限定されない。また、本実施例のコードには、情報を光学的に記録するホログラムなども含むものとする。
また、図2に示すように、本実施例の画像形成装置10は、制御部11と、操作・表示部12と、スキャナ部13と、画像処理部14と、プリンタ部15と、記憶部16と、ネットワーク接続部17などを備え、各部はバスにより接続されている。
制御部11は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)などにより構成される。CPUは、操作・表示部12の操作により、ROMに記憶されている各種プログラムを読み出してRAMに展開し、展開されたプログラムに従って、画像形成装置10の各部の動作を制御する。
操作・表示部12は、LCD(Liquid Crystal Display)等の表示部上に、透明電極が格子状に配置された感圧式の操作部(タッチパネル)を設けたものであり、制御部11からの表示信号に従って表示部上に各種操作ボタンや装置の状態表示、各機能の動作状況等の表示を行う。また、手指やタッチペン等で押下された力点のXY座標を電圧値で検出し、検出された位置信号を操作信号として制御部11に出力する。なお、ここでは操作・表示部12を表示部と操作部とが一体となった構成としているが、表示部とは別に各種操作ボタンを配置した操作部を設けてもよい。
スキャナ部13は、印刷物30を載置するガラスの下部に配置され、印刷物30に記録された情報を読み取るものであり、印刷物30を走査する光源と、印刷物30で反射された光を電気信号に変換するCCD(Charge Coupled Devices)と、電気信号をA/D変換するA/D変換器等により構成される。
画像処理部14は、スキャナ部13で読み取った画像(以下、スキャン画像と呼ぶ。)に対して、拡大/縮小、回転、周波数変換、RGBデータからYMCKデータへの色変換、階調補正等の各種画像処理を施してプリンタ部15へ出力する。
プリンタ部15は、転写紙に印刷する画像を形成する画像形成部、形成した画像を転写紙に転写する転写部、転写した画像を定着させる定着部、転写紙を搬送する搬送部、画像形成部や転写部、定着部をクリーニングするクリーニング部などを備え、電子写真方式により、入力されたデータに基づいて、転写紙上に画像を形成して出力する。
記憶部16は、フラッシュメモリやハードディスク等により構成され、各種データや設定条件等を記憶する。
ネットワーク接続部17は、NIC(Network Interface Card)、モデム、LANアダプタ、ルータ、TA(Terminal Adapter)等により構成され、通信ネットワークを介して接続されたサーバ20等との通信制御を行う。
なお、図1は本実施例の画像形成装置10の一例であり、少なくとも印刷物30を読み取ってコードを検出する機能を備えていればよく、印刷機能のないスキャナ装置としてもよいし、自動原稿送り装置(ADF:Auto Document Feeder)や後処理装置(フィニッシャ)などを備えた複合機(MFP:Multi Function Peripheral)としてもよい。
ここで、図4(a)に示すように、雑誌やフリーペーパー等の印刷物30(1枚であっても複数枚を冊子状に綴じたものでもよい。)には、写真やイラスト、図形などの画像情報32と、ひらがなやカタカナ、漢字、アルファベット、記号などのテキスト情報33とが配置されると共に、所定の場所に特定のマーク(QRコードの場合は左上、右上及び左下に配置された切り出しシンボル31a、DATA MATRIXの場合は左及び下に配置されたL型のガイドセル、以下、切り出しシンボル31aとして説明する。)を備え、切り出しシンボル31aで特定される領域にURL情報などをコード化して記録したパターンが配置されたコード31が印刷され、更に、デザインや見やすさなどを考慮して、これらの周囲に枠線34aが印刷されている。また、図4(b)に示すように、枠線34aに変えて又は枠線34aと共に、仕切り線34bが印刷されている。
そのため、これらの様々な情報が印刷された印刷物30の中からコード31を検出するのは容易ではなく、また、コード31の配置も一定ではないため、確実にコード31を検出するためには、スキャン画像の全ての領域に対してパターンマッチングを行わなければならない。特に、印刷物30がスキャナ部13に斜めにセットされた場合には、スキャン画像の画角に対してコード31が斜めに配置されるため、様々な角度からパターンマッチングを行わなければならず、コード31の検出に時間がかかってしまうという問題があった。
そこで、本実施例では、様々な情報が印刷された印刷物30が斜めにスキャンされた場合であってもコード31を簡単且つ確実に検出できるようにするために、上記枠線34aや仕切り線34bを基準線として特定し、その基準線に対して平行及び/又は直角等の特定の向きでのみパターンマッチングを行う構成、又は、その基準線に対して平行及び/又は直角等の特定の向きの直線が所定数以上含まれる領域を候補領域として特定し、候補領域に対してのみパターンマッチングを行う構成とする。
具体的には、図3に示すように、制御部11に、上述した二項ウェーブレット変換及びハフ変換を用いて、スキャン画像から基準線を特定する基準線特定部11aと、スキャン画像を複数の領域に分割し、それらの領域の中から基準線に対してほぼ平行やほぼ直角(以下、単に平行及び/又は直角と称す。)等の特定の向きの直線が所定数以上含まれる領域を候補領域として特定する候補領域特定部11bと、スキャン画像の候補領域に対してパターンマッチングを行ったり、基準線に対して平行及び/又は直角等の特定の向きでスキャン画像に対してパターンマッチングを行って切り出しシンボル31aを検出し、コード31に記録された情報を読み取るコード検出部11cとを設ける。
なお、上記基準線特定部11a、候補領域特定部11b及びコード検出部11cはハードウェアとして構成してもよいし、コンピュータを、基準線特定部11a、候補領域特定部11b及びコード検出部11c、又は、基準線特定部11a及びコード検出部11cとして機能させるコード検出プログラムとして構成し、該コード検出プログラムを制御部11上で動作させる構成としてもよい。
次に、上記構成の画像形成装置10を用いて、印刷物30を読み取って割引券等をプリントするまでの手順について、図5及び図6のフローチャート図並びに図7の模式図を参照して説明する。
まず、図5のステップS101で、コード31が印刷された印刷物30を画像形成装置10にセットし、操作・表示部12を操作してスキャンを指示すると、スキャナ部13は、光源で印刷物30を走査し、印刷物30で反射された光をCCDで受光して電気信号に変換し、その電気信号をA/D変換して印刷物30の情報が記録されたスキャン画像を作成する。このスキャンはモノクロ又はカラーのいずれでもよいが、上記枠線34aや仕切り線34bは通常、黒で印刷されており、また、スキャン画像の処理はモノクロの方が簡易であるため、コード31がカラー2次元コードでなければ、モノクロでスキャンする方が好ましい。
次に、ステップS102で、制御部11は、コード31が印刷されていると判断される候補領域を検出する。この候補領域の検出手順について、図6及び図7を参照して詳述する。
まず、ステップS102aで、制御部11は、スキャナ部13からスキャン画像を取得する。このスキャン画像は、輝度、濃度、明度データ等、明るさを表す画像であれば特に限定されず、スキャナ部13で得た画像としてもよいし、画像処理部14で処理した画像としてもよい。
次に、ステップS102bで、基準線特定部11aは、スキャン画像に対して、1レベルのみの二項ウェーブレット変換を行って、水平高周波成分(Wx)、垂直高周波成分(Wy)を取得し、上述した式(8)、(9)に従って、高周波強度(すなわち、変化ベクトルVの大きさM)、エッジ角度(すなわち、偏角A)を演算する。
具体的に説明すると、図7(a)はスキャン画像の構成を模式的に示しており、このスキャン画像に対して二項ウェーブレット変換を行うとエッジが検出されて、図7(b)に示すようなエッジ画像が生成される。その際、枠線34aや仕切り線34b、コード31はほとんど変化しないが、テキスト情報33は、様々な傾きの短い直線群となり、画像情報32はなだらかな曲線となる。
次に、ステップS102cで、基準線特定部11aは、二項ウェーブレット変換で得られるエッジの内、高周波強度(すなわち、濃度変動)が所定値以上のエッジを選別する。ここで、画像情報は通常なだらかな曲線であり、上述した二項ウェーブレット変換の特徴により、1レベルの二項ウェーブレット変換では、なだらかな曲線の高周波強度は小さくなるため、図7(c)に示すように、スキャン画像から画像情報32が除外される。
次に、ステップS102dで、基準線特定部11aは、特定強度以上のエッジに対してハフ変換を行う。このハフ変換において投票数が少ないエッジをカットし、その後、逆変換して直線を抽出すると、図7(d)に示すように、枠線34aや仕切り線34bは長い直線として抽出され、テキスト情報33及びコード31のエッジの内、投票数が規定値以上のエッジは短い直線として抽出される。そして、これらの直線の中から最も長い直線(すなわち、最も投票数が多い直線)を選択することによって枠線34aや仕切り線34bが基準線35として特定される。
次に、ステップS102eで、候補領域特定部11bは、ハフ変換で抽出された複数の直線の中から、上記ステップで特定した基準線35に対して、特定の方向(ここでは、基準線35に平行及び/又は直角)の直線のみを抽出する。この処理により、テキスト情報33の中の斜めの直線が除外されてスキャン画像は図7(e)のようになる。
次に、ステップS102fで、候補領域特定部11bは、スキャン画像を縦横の線で複数の領域に分割し、ステップS102gで、分割した複数の領域の中から、エッジが所定数以上の領域を選別し、その領域を候補領域として特定する。具体的には、図7(f)に示すように、縦横線で分割した領域の内、網掛けで示した領域が、基準線35に平行及び/又は直角の直線が所定数以上含まれる候補領域となる。なお、候補領域はいくつかの領域の集合となるので、その集合と非候補領域との境目で切り出しシンボル31aを探すことになる。
次に、図5に戻って、ステップS103で、制御部11は、スキャン画像から候補領域が検出されたかを判断し、候補領域が無い場合は、ユーザは印刷物30にコード31が印刷されているか、印刷物30がスキャナ部13に適切にセットされているかを調べ、ステップS104で再スキャンを指示したら、ステップS102に戻って同様の処理を繰り返す。
一方、候補領域がある場合は、ステップS105で、制御部11のコード検出部31cは、公知の手法を用いてスキャン画像の候補領域近傍でパターンマッチングを行い、予め設定された図形と切り出しシンボル31aとを比較することによって切り出しシンボル31aを検出する。なお、DATA MATRIXの場合はL型のガイドセルを検出すればよく、他のマークを使用するコードの場合はそのマークを検出すればよい。
なお、図5及び図6のフローチャート図では、候補領域を特定し、スキャン画像の候補領域に対してパターンマッチングを行っているが、図6のステップS102dで基準線35を特定した後、その基準線35に対して特定の向き(例えば、基準線35に平行及び/又は直角)でスキャン画像に対してパターンマッチングを行う構成とすることもでき、特定の向きでのみパターンマッチングを行うことにより、コード31を簡単且つ迅速に検出することができる。
そして、ステップS106で、コード検出部31cは、パターンマッチングの結果を判断し、パターンマッチングで切り出しシンボル31aが検出できない場合は、ユーザは印刷物30にコード31が印刷されているか、印刷物30がスキャナ部13に適切にセットされているかを調べ、ステップS104で再スキャンを指示したら、ステップS102に戻って同様の処理を繰り返す。
一方、パターンマッチングで切り出しシンボル31aが検出できた場合は、ステップS107で、コード検出部31cは、コード31に記録された情報を読み取る。そして、コード31にURL情報が記録されている場合は、ステップS108で、制御部11は、ネットワーク接続部17を用いて通信ネットワークに接続し、URL情報で特定されるサーバ20にアクセスして、サーバ20から割引券等の情報を取得する。なお、コード31に割引券等の情報が記録されている場合は、ステップS108の処理を省略することができる。
そして、ステップS109で、制御部11はユーザの指示を待ち、割引券等をプリントしないで終了する指示がされた場合(例えば、ユーザが希望する割引券等でない場合)は、一連の処理を終了し、割引券等をプリントする指示がされた場合は、コード31に記録された情報又はサーバ20から取得した情報をプリンタ部15に転送し、ステップS110で、プリンタ部15は割引券等のプリントを実行して処理を終了する。
このように、画像形成装置10の制御部11に、ハードウェア又はソフトウェアとして基準線特定部11a、候補領域特定部11b及びコード検出部11cを設け、スキャナ部13で印刷物30をスキャンして得たスキャン画像に対して、二項ウェーブレット変換及びハフ変換を行って基準線35を特定し、その基準線35に対して平行及び/又は直角等の特定の向きの直線が所定数以上含まれる領域を候補領域として特定し、スキャン画像の候補領域に対してパターンマッチングを行ってコード31を検出するため、様々な角度で全領域に対してパターンマッチングを行う従来方法に比べて、パターンマッチングに要する時間を格段に短縮し、コード31を簡単且つ確実に検出することができる。
また、画像形成装置10の制御部11に、ハードウェア又はソフトウェアとして基準線特定部11a及びコード検出部11cを設け、スキャナ部13で印刷物30をスキャンして得たスキャン画像に対して、二項ウェーブレット変換及びハフ変換を行って基準線35を特定し、その基準線35に対して平行及び/又は直角等の特定の向きでスキャン画像に対してパターンマッチングを行ってコード31を検出する方法によっても、パターンマッチングに要する時間を格段に短縮し、コード31を簡単且つ確実に検出することができる。
なお、本実施例では、印刷物30に枠34aや仕切り線34bを備える構成を示したが、これらが印刷されていないものであっても、スキャナ部13で印刷物30をスキャンする際に、用紙のエッジを抽出することができることから、用紙のエッジを基準線35として利用することもできる。
また、上記実施例では、印刷物30に印刷されたコード31を検出する場合について説明したが、本発明は上記実施例に限定されるものではなく、画像情報32やテキスト情報33などが混在するスキャン画像から、基準線35に対して平行及び/又は直角な成分を多く含む図形などを検出する場合に対しても同様に適用することができる。
本発明は、印刷物から1次元バーコードや2次元コードなどのコードを検出するプログラム、方法及び画像形成装置に利用可能である。
本発明の一実施例に係る情報提供システムの構成を模式的に示す図である。 本発明の一実施例に係る画像形成装置の構成を示すブロック図である。 本発明の一実施例に係る画像形成装置の制御部の構成を示すブロック図である。 本発明の一実施例に係る印刷物の構成例を示す図である。 本発明の一実施例に係る情報提供システムを用いた情報提供方法を示すフローチャート図である。 本発明の一実施例に係るコード検出方法における候補領域の特定手順を示すフローチャート図である。 本発明の一実施例に係るコード検出方法における候補領域の特定手順の具体例を示す図である。 ウェーブレット変換関数を示す図である。
符号の説明
10 画像形成装置
11 制御部
11a 基準線特定部
11b 候補領域特定部
11c コード検出部
12 操作・表示部
13 スキャナ部
14 画像処理部
15 プリンタ部
16 記憶部
17 ネットワーク接続部
20 サーバ
30 印刷物
31 コード
31a 切り出しシンボル
32 画像情報
33 テキスト情報
34a 枠線
34b 仕切り線
35 基準線

Claims (12)

  1. コンピュータを、
    少なくとも1次元バーコード又は2次元コードが印刷された印刷物をスキャンして得られたスキャン画像からエッジを抽出し、抽出したエッジから直線を抽出し、抽出した直線の内、最も長い直線を基準線として特定する基準線特定部、
    前記基準線に対して特定の向きで前記スキャン画像に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを検出するコード検出部、として機能させることを特徴とするコード検出プログラム。
  2. コンピュータを、
    少なくとも1次元バーコード又は2次元コードが印刷された印刷物をスキャンして得られたスキャン画像からエッジを抽出し、抽出したエッジから直線を抽出し、抽出した直線の内、最も長い直線を基準線として特定する基準線特定部、
    前記スキャン画像を分割した領域の内、前記基準線に対して特定の向きの直線が所定数以上含まれる領域を候補領域として特定する候補領域特定部、
    前記スキャン画像の前記候補領域に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを検出するコード検出部、として機能させることを特徴とするコード検出プログラム。
  3. 前記特定の向きは、前記基準線に対して略平行及び/又は略直角の方向であることを特徴とする請求項1又は2に記載のコード検出プログラム。
  4. 前記基準線特定部は、前記スキャン画像に1レベルの二項ウェーブレット変換を行ってエッジを抽出し、抽出したエッジの中から高周波強度が所定値以上のエッジを選別し、選別したエッジにハフ変換を行って直線を抽出し、抽出した直線の中からハフ変換の投票数が最も多い直線を前記基準線として特定することを特徴とする請求項1乃至3のいずれか一に記載のコード検出プログラム。
  5. 印刷物に印刷された1次元バーコード又は2次元コードを検出するコード検出方法であって、
    前記印刷物をスキャンして、スキャン画像を取得するステップと、
    前記スキャン画像からエッジを抽出するステップと、
    抽出したエッジから直線を抽出するステップと、
    抽出した直線の内、最も長い直線を基準線として特定するステップと、
    前記基準線に対して特定の向きで前記スキャン画像に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを抽出するステップと、を少なくとも有することを特徴とするコード検出方法。
  6. 印刷物に印刷された1次元バーコード又は2次元コードを検出するコード検出方法であって、
    前記印刷物をスキャンして、スキャン画像を取得するステップと、
    前記スキャン画像からエッジを抽出するステップと、
    抽出したエッジから直線を抽出するステップと、
    抽出した直線の内、最も長い直線を基準線として特定するステップと、
    前記スキャン画像を複数の領域に分割するステップと、
    前記複数の領域の内、前記基準線に対して特定の向きの直線が所定数以上含まれる領域を候補領域として特定するステップと、
    前記スキャン画像の前記候補領域に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを抽出するステップと、を少なくとも有することを特徴とするコード化情報検出方法。
  7. 前記特定の向きは、前記基準線に対して略平行及び/又は略直角の方向であることを特徴とする請求項5又は6に記載のコード検出方法。
  8. 前記エッジを抽出するステップでは、前記スキャン画像に1レベルの二項ウェーブレット変換を行ってエッジを抽出し、
    前記直線を抽出するステップでは、抽出したエッジの中から高周波強度が所定値以上のエッジを選別し、選別したエッジにハフ変換を行って直線を抽出し、
    前記基準線を特定するステップでは、抽出した直線の中からハフ変換の投票数が最も多い直線を前記基準線として特定することを特徴とする請求項5乃至7のいずれか一に記載のコード検出方法。
  9. 少なくともスキャナ部を備える画像形成装置であって、
    少なくとも1次元バーコード又は2次元コードが印刷された印刷物をスキャンして得られたスキャン画像からエッジを抽出し、抽出したエッジから直線を抽出し、抽出した直線の内、最も長い直線を基準線として特定する基準線特定部と、
    前記基準線に対して特定の向きで前記スキャン画像に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを検出するコード検出部と、を備えることを特徴とする画像形成装置。
  10. 少なくともスキャナ部を備える画像形成装置であって、
    少なくとも1次元バーコード又は2次元コードが印刷された印刷物をスキャンして得られたスキャン画像からエッジを抽出し、抽出したエッジから直線を抽出し、抽出した直線の内、最も長い直線を基準線として特定する基準線特定部と、
    前記スキャン画像を分割した領域の内、前記基準線に対して特定の向きの直線が所定数以上含まれる領域を候補領域として特定する候補領域特定部と、
    前記スキャン画像の前記候補領域に対してパターンマッチングを行い、前記1次元バーコード又は前記2次元コードを検出するコード検出部と、を備えることを特徴とする画像形成装置。
  11. 前記特定の向きは、前記基準線に対して略平行及び/又は略直角の方向であることを特徴とする請求項9又は10に記載の画像形成装置。
  12. 前記基準線特定部は、前記スキャン画像に1レベルの二項ウェーブレット変換を行ってエッジを抽出し、抽出したエッジの中から高周波強度が所定値以上のエッジを選別し、選別したエッジにハフ変換を行って直線を抽出し、抽出した直線の中からハフ変換の投票数が最も多い直線を前記基準線として特定することを特徴とする請求項9乃至11のいずれか一に記載の画像形成装置。
JP2007128226A 2007-05-14 2007-05-14 コード検出プログラム及びコード検出方法並びに画像形成装置 Expired - Fee Related JP4465723B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007128226A JP4465723B2 (ja) 2007-05-14 2007-05-14 コード検出プログラム及びコード検出方法並びに画像形成装置
US12/114,629 US8172144B2 (en) 2007-05-14 2008-05-02 Media storing code detecting program, code detecting method, and image forming apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007128226A JP4465723B2 (ja) 2007-05-14 2007-05-14 コード検出プログラム及びコード検出方法並びに画像形成装置

Publications (2)

Publication Number Publication Date
JP2008282339A JP2008282339A (ja) 2008-11-20
JP4465723B2 true JP4465723B2 (ja) 2010-05-19

Family

ID=40143080

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007128226A Expired - Fee Related JP4465723B2 (ja) 2007-05-14 2007-05-14 コード検出プログラム及びコード検出方法並びに画像形成装置

Country Status (1)

Country Link
JP (1) JP4465723B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4724799B2 (ja) * 2009-01-26 2011-07-13 株式会社シフト 画像処理システムおよびプログラム
JP4724800B1 (ja) * 2010-07-30 2011-07-13 株式会社シフト 物品検出装置およびプログラム
JP4724802B1 (ja) * 2010-07-30 2011-07-13 株式会社シフト 二次元コードリーダおよびプログラム
JP4724801B1 (ja) * 2010-07-30 2011-07-13 株式会社シフト 二次元コードリーダおよびプログラム
JP6078399B2 (ja) * 2013-03-29 2017-02-08 日本電産サンキョー株式会社 シンボル情報読取装置、シンボル情報読取方法、およびプログラム
JP2020093494A (ja) 2018-12-14 2020-06-18 セイコーエプソン株式会社 画像出力装置、画像出力方法および出力画像データ生産方法

Also Published As

Publication number Publication date
JP2008282339A (ja) 2008-11-20

Similar Documents

Publication Publication Date Title
JP5262869B2 (ja) 画像処理システム、画像処理サーバ、mfp及び画像処理方法
JP5195519B2 (ja) 文書管理装置、文書処理システム、文書管理方法
US6470096B2 (en) Method for locating user interface tags in a document processing system
US8577118B2 (en) Systems for mobile image capture and remittance processing
US8640018B2 (en) User interface tag for use in processing a document
US8760687B2 (en) Image forming apparatus and document management method thereof
US9454696B2 (en) Dynamically generating table of contents for printable or scanned content
US7287698B2 (en) Automatic cleanup of machine readable codes during image processing
US8412705B2 (en) Image processing apparatus, image processing method, and computer-readable storage medium
US8687212B2 (en) Method for protecting content of a fax confirmation sheet
US20050162697A1 (en) Image forming device, image forming method, image forming program, computer readable recording medium on which the program is recorded
US8172144B2 (en) Media storing code detecting program, code detecting method, and image forming apparatus
JP4465723B2 (ja) コード検出プログラム及びコード検出方法並びに画像形成装置
EA004418B1 (ru) Автоматическое создание штрихового кода для передачи и поиска данных
US20060010115A1 (en) Image processing system and image processing method
CN104079730B (zh) 文档处理装置和方法及包括该装置的多功能打印机
JP2008310448A (ja) 制御プログラム、画像形成装置及び制御システム並びに制御方法
US8102572B2 (en) Image processing apparatus and associated method and computer readable storage medium for extracting an embedded marking image
JP2009088655A (ja) 制御プログラム、画像処理装置及び出力制御システム並びに出力制御方法
JP2008299781A (ja) 制御プログラム及び制御方法並びに画像形成装置
JPWO2020183628A1 (ja) 画像処理装置、画像読取装置、画像処理方法、及びプログラム
CN111669478B (zh) 图像处理装置、图像处理系统、存储介质及图像处理方法
US20220301326A1 (en) Ocr target area position acquisition system, computer-readable non-transitory recording medium storing ocr target area position acquisition program, hard copy, hard copy generation system, and computer-readable non-transitory recording medium storing hard copy generation program
JP2010056912A (ja) 画像処理装置
Gaubatz et al. Towards a feature set for robust printing-imaging cycle device identification using structured printed markings

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090507

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: 20100201

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100214

R150 Certificate of patent or registration of utility model

Ref document number: 4465723

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130305

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140305

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees