説明

画像処理装置及び画像処理装置の制御方法及びプログラム及び記憶媒体

【課題】 符号画像パターンの検出性能の低下を抑えて、符号画像パターンの検出処理を簡略化する。
【解決手段】 スキャン画像内に配置されている紙の組み合わせを考慮して、符号画像パターンの検出対象領域を設定する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、符号画像パターン(電子透かし画像や二次元バーコード画像やバーコード画像やステガノグラフィー等)を扱う画像処理装置に関する。
【背景技術】
【0002】
MFP(マルチファンクションプリンタ)を用いて符号画像パターン(電子透かし画像や二次元バーコード画像やバーコード画像やステガノグラフィー等)を原稿画像に合成して印刷する機会が増えつつある。
【0003】
このような印刷物が多くなってきたため、MFPにおいて、符号画像パターンを復号できる能力をもった機械が増加してきている。そのようなMFPでは、符号画像パターンにMFPの制御の切り替え情報を符号化しておき、その制御情報に従ってMFPの制御の切り替えることも可能となる。たとえば、複写禁止情報が含まれていた場合には、MFPの複写動作を停止することができる。また、ほかの例としては、FAXの宛先の制限情報が含まれていれば、その制限に従い、FAXの宛先を限定化することができる。
【0004】
MFPで符号画像パターンを復号する際の大きな問題の1つに、符号画像パターンの検出対象の画像領域が広いことである。たとえば、符号画像パターンの1つであるQRコードは、通常、20mm四方程度の大きさである。一方、MFPがスキャンする領域は、たとえば、A3原稿の場合は297mm×420mmである。そのため、QRコードをMPFで複合する際には、スキャン領域の全面を検出対象とすると、QRコード領域の300倍以上の領域を検出対象とし、QRコードを探索することが必要となってしまう。
【0005】
そこで、符号画像パターンの検出速度を向上するため方法が提案されている(特許文献1)。その方法は、符号画像パターンの検出する際に、画像データの複数の特定領域を検出対象領域とし、その特定領域に優先順位をつけて、情報コードの検出を行うというものである。特定領域とは、画像データの4隅などであり、紙面の4隅にQRコードが打たれていることなどを想定している。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】特開2008-263283号公報
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、スキャン画像の4隅の領域を特定領域として、検出対象領域とすることは、スキャン画像サイズとスキャンした紙サイズが一緒であることが前提となっている。つまり、スキャン画像内に複数の紙が組みあわせて配置されているような状況を想定していない。例えば、スキャン画像領域の4隅に符号画像パターンを想定すると、検出対象領域は図13のようになる。この場合は、図14のようにQRコードが配置されている際には、検出をすることができる。しかしながら、A4を2枚おいてスキャンするときなどは、紙面の4隅にQRコードがあったとしても、スキャン画像の4隅以外にもQRコードが存在する可能性がある。それを図示したものが図15である。そのため、4隅の領域だけデコードすると、QRコードを見落とす場合がある。
【0008】
つまり、スキャン画像内に、複数の紙が組み合わされて置かれている場合に、如何に効率的に符合画像パターンを検出するかということが課題となる。
【課題を解決するための手段】
【0009】
上述した課題を解決するために、本発明の符号画像パターンを復号する画像処理装置は、
符号画像パターンが含まれている可能性がある画像を取得する画像取得手段(S1002)と、
前記画像内で、符号画像パターンが含まれている可能性が高い領域を、画像サイズとそこに配置されていた可能性のある紙の組み合わせから決定する検出領域設定手段(S1004)と、
前記画像内から検出領域設定手段が決定した領域を切り出す切り出し手段(S1006)と、
前記切り出し手段で切り出された画像に符号画像パターンが含まれているかを見つける符号画像パターンの検出用パターンの検出手段(S1009)と、
前記符号画像パターン検出手段で符号画像パターンが検出された場合に符号画像パターンを復号する符号画像パターン復号手段(S1011)と
を有することを特徴とする。
【発明の効果】
【0010】
符号画像パターンを検出する際に、スキャン画像内に複数の紙の組み合わせて置かれている場合であっても、効率的に検出をすることが可能となる。また、紙の組み合わせ方や置き方の想定頻度・実頻度に応じて、検出対象領域の検索優先をつけることにより、より効率的に検出することが可能となる。
【図面の簡単な説明】
【0011】
【図1】画像形成システムの全体構成を示す図。
【図2】画像形成装置の入出力デバイス外観図。
【図3】画像形成装置の全体構成を示す図。
【図4】タイルデータを概念的に示す図。
【図5】スキャナ画像処理部のブロック図。
【図6】プリンタ画像処理部のブロック図。
【図7】操作部のコピー画面の説明図。
【図8】QRコード図。
【図9】QRコードの符号化フロー図。
【図10】実施例1のフロー図。
【図11】QRコードの検出用パターン図。
【図12】QRコードの復号化フロー図。
【図13】検出対象領域例。
【図14】1枚の用紙をスキャンした際のQRコードの配置例。
【図15】2枚の用紙が並んでいる際のQRコードの配置例。
【図16】A系列用紙サイズ表。
【図17】B系列用紙サイズ表。
【図18】S1004の詳細フロー図。
【図19】S1005の詳細フロー図。
【図20】紙の組み合わせ例。
【図21】4隅に符号画像パターンを配置する際の検出対象領域例。
【図22】左上に符号画像パターンを配置する際の検出対象領域例。
【図23】4隅に符号画像パターンを配置する際の最終的な検出対象領域例。
【図24】左上に符号画像パターンを配置する際の最終的な検出対象領域例。
【図25】紙の組み合わせおよび紙面内の検出対象領域の優先順位例。
【図26】最終的な検出対象領域の優先順位例。
【発明を実施するための形態】
【0012】
以下では、図面を参照して本発明を実施するための最良の形態について説明する。
【実施例1】
【0013】
実施例1について図面を参照して詳細に説明する。
【0014】
<印刷システム(図1)>
図1は本発明の実施形態に係る印刷システムの構成を示すブロック図である。このシステムではホストコンピュータ40及び3台の画像形成装置(10,20,30)がLAN50に接続されているが、本発明における印刷システムにおいては、これらの接続数に限られることはない。また、本実施例では接続方法としてLANを適用しているが、これに限られることはない。例えば、WAN(公衆回線)などの任意のネットワーク、USBなどのシリアル伝送方式、セントロニクスやSCSIなどのパラレル伝送方式なども適用可能である。
【0015】
ホストコンピュータ(以下、PCと称する)40はパーソナルコンピュータの機能を有している。このPC40はLAN50やWANを介してFTPやSMBプロトコルを用いファイルを送受信したり電子メールを送受信したりすることができる。またPC40から画像形成装置10、20、30に対して、プリンタドライバを介した印字命令を行うことが可能となっている。
【0016】
画像形成装置10と20は同じ構成を有する装置である。画像形成装置30はプリント機能のみの画像形成装置であり、画像形成装置10や20が有するスキャナ部を有していない。以下では、画像形成装置10と20のうちの画像形成装置10に注目して、その構成を詳細に説明する。
【0017】
画像形成装置10は、画像入力デバイスであるスキャナ部13、画像出力デバイスであるプリンタ部14、画像形成装置10全体の動作制御を司るコントローラ11、ユーザインターフェース(UI)である操作部12から構成される。
【0018】
<画像形成装置10(図2)>
画像形成装置10の外観を図2に示す。スキャナ部13は、複数のCCDを有している。この各CCDの感度が夫々異なっていると、たとえ原稿上の各画素の濃度が同じであったとしても、各画素が夫々違う濃度であると認識されてしまう。そのため、スキャナ部では、最初に白板(一様に白い板)を露光走査し、露光走査して得られた反射光の量を電気信号に変換してコントローラ11に出力している。なお、後述するように、コントローラ11内のシェーディング補正部500は、各CCDから得られた電気信号を元に、各CCDの感度の違いを認識している。そして、この認識された感度の違いを利用して、原稿上の画像をスキャンして得られた電気信号の値を補正している。さらに、シェーディング補正部500は、後述するコントローラ11内のCPU301からゲイン調整の情報を受取ると、当該情報に応じたゲイン調整を行う。ゲイン調整は、原稿を露光走査して得られた電気信号の値を、どのように0〜255の輝度信号値に割り付けるかを調整するために用いられる。このゲイン調整により、原稿を露光走査して得られた電気信号の値を高い輝度信号値に変換したり、低い輝度信号値に変換したりすることができるようになっている。つまり、このゲイン調整により、読み取り信号のダイナミックレンジの調整が可能である。続いて、この原稿上の画像をスキャンする構成について説明する。
【0019】
スキャナ部は、原稿上の画像を露光走査して得られた反射光をCCDに入力することで画像の情報を電気信号に変換する。さらに電気信号をR,G,B各色からなる輝度信号に変換し、当該輝度信号を画像としてコントローラ11に対して出力する。
【0020】
なお、原稿は原稿フィーダ201のトレイ202にセットされる。ユーザが操作部12から読み取り開始を指示すると、コントローラ11からスキャナ部13に原稿読み取り指示が与えられる。スキャナ部13は、この指示を受けると原稿フィーダ201のトレイ202から原稿を1枚ずつフィードして、原稿の読み取り動作を行う。なお、原稿の読み取り方法は原稿フィーダ201による自動送り方式ではなく、原稿を不図示のガラス面上に載置し露光部を移動させることで原稿の走査を行う方法であってもよい。
【0021】
プリンタ部14は、コントローラ11から受取った画像を用紙上に形成する画像形成デバイスである。なお、本実施例において画像形成方式は感光体ドラムや感光体ベルトを用いた電子写真方式となっているが、本発明はこれに限られることはない。例えば、微少ノズルアレイからインクを吐出して用紙上に印字するインクジェット方式などでも適用可能である。また、プリンタ部14には、異なる用紙サイズ又は異なる用紙向きを選択可能とする複数の用紙カセット203、204、205が設けられている。排紙トレイ206には印字後の用紙が排出される。
【0022】
<コントローラ11の詳細説明(図3)>
図3は、画像形成装置10のコントローラ11の構成をより詳細に説明するためのブロック図である。
【0023】
コントローラ11はスキャナ部13やプリンタ部14と電気的に接続されており、一方ではLAN50やWAN331を介してPC40や外部の装置などと接続されている。これにより画像やデバイス情報の入出力が可能となっている。
【0024】
CPU301は、ROM303に記憶された制御プログラム等に基づいて接続中の各種デバイスとのアクセスを統括的に制御すると共に、コントローラ内部で行われる各種処理についても統括的に制御する。RAM302は、CPU301が動作するためのシステムワークメモリであり、かつ画像を一時記憶するためのメモリでもある。このRAM302は、記憶した内容を電源off後も保持しておく不揮発性RAM及び電源off後には記憶した内容が消去されてしまうDRAMにより構成されている。ROM303には装置のブートプログラムなどが格納されている。HDD304はハードディスクドライブであり、システムソフトウェアや画像を格納することが可能となっている。
【0025】
操作部I/F305は、システムバス310と操作部12とを接続するためのインターフェース部である。この操作部I/F305は、操作部12に表示するための画像をシステムバス310から受取り操作部12に出力すると共に、操作部12から入力された情報をシステムバス310へと出力する。
【0026】
NetworkI/F306はLAN50及びシステムバス310に接続し、情報の入出力を行う。Modem307はWAN331及びシステムバス310に接続しており、情報の入出力を行う。2値画像回転部308は送信前の画像の方向を変換する。2値画像圧縮・伸張部309は、送信前の画像の解像度を所定の解像度や相手能力に合わせた解像度に変換する。なお圧縮及び伸張にあたってはJBIG、MMR、MR、MHなどの方式が用いられる。画像バス330は画像をやり取りするための伝送路であり、PCIバス又はIEEE1394で構成されている。
【0027】
スキャナ画像処理部312は、スキャナ部13からスキャナI/F311を介して受取った画像に対して、補正、加工、及び編集を行う。なお、スキャナ画像処理部312は、受取った画像がカラー原稿か白黒原稿かや、文字原稿か写真原稿かなどを判定する。そして、その判定結果を画像に付随させる。こうした付随情報を属性データと称する。このスキャナ画像処理部312で行われる処理の詳細については後述する。
【0028】
圧縮部313は画像を受取り、この画像を32画素x32画素のブロック単位に分割する。なお、この32×32画素の画像をタイルデータと称する。図4は、このタイルデータを概念的に表している。原稿(読み取り前の紙媒体)において、このタイルデータに対応する領域をタイル画像と称する。なおタイルデータには、その32×32画素のブロックにおける平均輝度情報やタイル画像の原稿上の座標位置がヘッダ情報として付加されている。さらに圧縮部313は、複数のタイルデータからなる画像を圧縮する。伸張部316は、複数のタイルデータからなる画像を伸張した後にラスタ展開してプリンタ画像処理部315に送る。
【0029】
プリンタ画像処理部315は、伸張部316から送られた画像を受取り、この画像に付随させられている属性データを参照しながら画像に画像処理を施す。画像処理後の画像は、プリンタI/F314を介してプリンタ部14に出力される。この際、一旦、圧縮313で圧縮を行い、伸張部316で伸張してから、画像処理後の画像を、プリンタI/F314を介してプリンタ部14に出力してもよい。このプリンタ画像処理部315で行われる処理の詳細については後述する。
【0030】
符号画像パターン処理部317は、画像に各種処理を施し、画像に存在する符号画像パターンの復号処理を施す。符号画像パターン処理部317が処理する画像は、スキャン画像処理部312またはプリンタ画像処理部315で処理を行ったあとに圧縮部313で圧縮が施された画像である。この処理部は、ハードウェアで構成されている必要はなく、RAM302上に展開されたプログラムで構成されていてもよい。この符号画像パターン処理部317で行われる処理の詳細については後述する。
【0031】
RIP328は、PC40などから送信されたPDLコードデータを元に生成された中間データを受取り、ビットマップデータ(多値)を生成する。
【0032】
<スキャナ画像処理部312の詳細説明(図5)>
図5にスキャナ画像処理部312の内部構成を示す。
【0033】
スキャナ画像処理部312はRGB各8bitの輝度信号からなる画像を受取る。
【0034】
シェーディング補正部500は、この輝度信号に対してシェーディング補正する。シェーディング補正とは、上述したように、CCDの感度のばらつきによって原稿の明るさが誤認識されてしまうことを防止するための処理である。さらに、上述したように、このシェーディング補正部500は、CPU301からの指示によりゲイン調整を行うことができるようになっている。
【0035】
続いて、この輝度信号は、マスキング処理部501によりCCDのフィルタ色に依存しない標準的な輝度信号に変換される。この標準的な輝度信号への変換は、一度、1次元ルックアップテーブルでRGB各色ごとの調整を行ったあとに、3次元のルックアップテーブルを用いて実行される。
【0036】
フィルタ処理部502は、受取った画像の空間周波数を任意に補正する。この処理部は、受取った画像に対して、例えば7×7のマトリクスを用いた演算処理を行う。ところで、複写機や複合機では、図7における704タブの押し下げによりコピーモードとして文字モードや写真モードや文字/写真モードを選択することができる。ここでユーザにより文字モードが選択された場合には、フィルタ処理部502は文字用のフィルタを画像全体にかける。また、写真モードが選択された場合には、写真用のフィルタを画像全体にかける。また、文字/写真モードが選択された場合には、後述の文字写真判定信号(属性データの一部)に応じて画素ごとに適応的にフィルタを切り替える。つまり、画素ごとに写真用のフィルタをかけるか文字用のフィルタをかけるかが決定される。なお、写真用のフィルタには高周波成分のみ平滑化が行われるような係数が設定されている。これは、画像のざらつきを目立たせないためである。また、文字用のフィルタには強めのエッジ強調を行うような係数が設定されている。これは、文字のシャープさを出すためである。
【0037】
ヒストグラム生成部503は、受取った画像を構成する各画素の輝度データをサンプリングする。より詳細に説明すると、主走査方向、副走査方向にそれぞれ指定した開始点から終了点で囲まれた矩形領域内の輝度データを、主走査方向、副走査方向に一定のピッチでサンプリングする。そして、サンプリング結果を元にヒストグラムデータを生成する。生成されたヒストグラムデータは、下地飛ばし処理を行う際に下地レベルを推測するために用いられる。
【0038】
入力側ガンマ補正部504は、1次元ルックアップテーブルなどを利用して非線形特性を持つ輝度データに変換する。
【0039】
カラーモノクロ判定部505は、受取った画像を構成する各画素が有彩色であるか無彩色であるかを判定し、その判定結果をカラーモノクロ判定信号(属性データの一部)として画像に付随させる。
【0040】
文字写真判定部506は、画像を構成する各画素が文字を構成する画素なのか、網点を構成する画素なのか、網点中の文字を構成する画素なのか、ベタ画像を構成する画素なのかを各画素の画素値と各画素の周辺画素の画素値とに基づいて判定する。なお、どれにもあてはまらない画素は、白領域を構成している画素である。そして、その判定結果を文字写真判定信号(属性データの一部)として画像に付随させる。
【0041】
<プリンタ画像処理部315の詳細説明(図6)>
図6にプリンタ画像処理315においてなされる処理の流れを示す。
【0042】
下地飛ばし処理部601は、スキャナ画像処理部312で生成されたヒストグラムを用いて画像の下地色を飛ばす(除去する)。モノクロ印刷をする場合には、モノクロ生成部602はカラーデータをモノクロデータに変換する。Log変換部603は輝度濃度変換を行う。このLog変換部603は、例えば、RGB入力された画像を、CMYの画像に変換する。出力色補正部604は出力色補正を行う。例えばCMY入力された画像を、テーブルやマトリックスを用いてCMYKの画像に変換する。出力側ガンマ補正部605は、この出力側ガンマ補正部605に入力される信号値と、複写出力後の反射濃度値とが比例するように補正を行う。中間調補正部606は、出力するプリンタ部の階調数に合わせて中間調処理を行う。例えば、受取った高階調の画像に対し2値化や32値化などを行う。
【0043】
なお、スキャナ画像処理部312やプリンタ画像処理部315における各処理部では、受取った画像に各処理を施さずに出力させることも可能となっている。
【0044】
<符号画像パターン処理部317の詳細説明(図3)>
図3の記載の符号画像パターン処理部317の詳細について説明をする。
【0045】
伸張部318は受取った画像を伸張する。伸張した画像は、処理部320〜329の処理部を任意の順番で利用して処理することができる。圧縮部319は受取った画像を圧縮する。受け取る画像は、2値データである場合も、多値データである場合もある。
【0046】
多値単純2値部320は、受け取った多値の画像を単純2値化する。単純2値化は、CPU301が設定する閾値により、画像を2値化するものである。カラー画像については、任意の変換式により、カラー画像をグレースケール画像に変換したあとに、CPU301が設定する閾値により、グレースケール画像を2値化する。
【0047】
多値2値部321は、受け取った多値の画像を2値化する。この処理部では、単純2値化ではない各種方法による2値化が可能である。具体的には、ヒストグラムを用いて2つのクラスタの分離度が最大になるように閾値を決定する2値化手法や、ヒストグラムを用いて白画素と黒画素のDUTY比が50%になるような閾値を決定する2値化手法などである。カラー画像については、任意の変換式により、カラー画像をグレースケール画像に変換したあとに、2値化処理を行う。
2値多値部322は、2値化された画像を多値変換する。具体的には、2値画像を多値の最小値と最大値を持つ画像に変換したあとに、ガウシアンフィルタなどのフィルタでぼかすことにより2値多値変換を実施する。
【0048】
変倍部323は、画像に変倍処理を施す。具体的には、リニア変倍やキュービック変倍、間引き変倍をすることにより変倍処理を実施する。
【0049】
フィルタ処理部324は、画像にフィルタ処理を施す。CPU301が設定する任意の形状・係数のフィルタを用いたフィルタ処理を施すがことが可能である。
【0050】
線形性調整部325は、1次元LUT(Look Up Table)を用いて、画像の線形性を調整することが可能である。
【0051】
特殊処理部326は、ノイズドットの除去や、太らせ処理、細らせ処理などの特殊処理を行うことが可能である。
【0052】
切りだし部327は、画像の一部を任意の大きさで切り出すことが可能である。
【0053】
検出用パターン検出部328および、符号画像パターン復号部329を説明する前に、本実施例で使用する符号画像パターンであるQRコードの説明を行う。なお、本発明は、QRコード以外であっても、検出用パターンが存在するすべての符号画像パターンに適用可能である。検出用パターンとは、符号画像パターンを検出するためのパターンであり、検出がし易いような特徴的なパターンとなっている。QRコードの検出用パターンは、図11に示すパターンである。
【0054】
QRコードは、JIS0X0510で規定される符号画像パターンである。本発明では、原稿側には、QRコードが付加されていることを前提とする。その符号化のフローについて説明する。
【0055】
図9は、QRコードシンボル(JIS X0510にて規格化)に、複写制限情報等の付加情報を符号化する過程を示すフローチャートである。このフローは、QRコードを原稿に付加する装置の中で行われても、パソコン上で行われても構わず、処理装置の限定はない。
【0056】
ステップS900
まず、符号化する種種の異なる文字を識別するため、付加情報を分析する。また、誤り検出及び誤り訂正レベルを選択し、付加情報を収容できる最小型番を選択する。
【0057】
ステップS901
次に、付加情報を所定のビット列に変換し、必要に応じてデータのモード(数字、英数字、8ビットバイト、漢字等)を表す指示子や、終端パターンを付加する。さらに所定のビットコード語に変換する。
【0058】
ステップS902
この時、誤り訂正を行うため、コード語列を型番および誤り訂正レベルに応じて所定のブロック数に分割し、各ブロック毎に誤り訂正コード語を生成し、データコード語列の後に付加する。
【0059】
ステップS903
ステップS902で得られた各ブロックのデータコード語を接続し、各ブロックの誤り訂正コード語、必要に応じて剰余コード語を後続する。
【0060】
ステップS904
次に、マトリクスに検出用パターン、その他の構成要素(分離パターン、タイミングパターンおよび位置合わせパターン等)とともにコード語モジュールを配置する。
【0061】
ステップS905
更に、符号画像パターンの符号化領域に対して最適なマスクパターンを選択して、マスク処理パターンをステップS904で得られたモジュールにXOR演算により変換する。ここで、最適なマスクパターンについて説明する。符号画像パターンを構成する最小単位の白い領域のことを白セルと呼び、黒い領域のことを黒セルと呼ぶ。この白セルと黒セルの比率が1対1に近くなるようなマスク処理をすることができるマスクパターンが、最適なマスクパターンである。このように1対1の比率にすることにより、黒セルの形成に難があっても、白セルの形成の難があっても、同等の対応が可能となるパターンとすることが可能となる。
【0062】
ステップS905
最後に、ステップS905で得られたモジュールに形式情報および型番情報を生成して、符号画像パターンを完成する。
【0063】
このように符号化された結果として、QRコードは図8のような外観の符合画像パターンとなる。
【0064】
QRコードには、任意の情報を符号化することが可能である。本発明においては、複写条件情報が符号化されたQRコードパターンが、紙原稿上にあり、その紙原稿を画像形成装置10でスキャンすることを前提とする。なお、複写条件情報の他に、その原稿の出力プリンタ・時刻などの各種属性情報について符号化しても構わない。
【0065】
次に、このようなQRコードを前提とし、検出用パターン検出部328および、符号画像パターン復号部329について説明する。
【0066】
検出用パターン検出部328では、符号画像パターンに存在する検出用パターンを画像から検出し、符号画像パターン位置を確定する。検出は、高速化のため、通常2値化された画像に対して行うが、多値画像に対して、検出を行っても構わない。また、検出効率を向上するために、画像をダウンサンプリングして解像度が低くした画像に対して、検出を行っても構わない。
【0067】
符号画像パターン復号部329では、符号画像パターンの本体の場所が既知の場合に、その符号画像パターン本体に復号処理を施し、情報データを取り出す。
【0068】
図12はQRコードを例として、符号画像パターンの復号を説明する図である。
【0069】
ステップS1201
まず、検出用パターンに隣接する形式情報を復元し、符号画像パターンに適用された誤り訂正レベルおよびマスクパターンを得る。
【0070】
ステップS1202
検出用パターンに隣接する型番情報を復元し、符号画像パターンの型番を決定する。
【0071】
ステップS1203
形式情報を復元して得られたマスクパターンを使って符号化領域ビットパターンを排他的論理和(XOR)演算することでマスクを解除する。
【0072】
ステップS1204
型番に対応する配置規則に従い、マスクが解除されたて符号化領域ビットパターンを読み、データおよび誤り訂正コード語を復元する。
【0073】
ステップS1205
データの誤りを検出し、誤りがなければ、ステップS1207に進み、誤りがあった場合にはステップS1206に進む。
【0074】
ステップS1206
検出した誤りを訂正する。
【0075】
ステップS1207
モード指示子に基づき、データをセグメント分割して、データコード語を復元する。
【0076】
ステップS1208
復元された、符号化されていた情報を出力する。
【0077】
この復号化の際には、黒セルおよび白セルで構成される、QRコードに配置されている黒白のパターンを適宜1bitのデータ列に変換することにより、復号を行っていく。図8のような白黒のパターンの形がはっきりとした符号画像パターンから1bitのデータ列を取り出すことは容易である。しかし、図14のように白黒のパターンが乱れ、白また黒のパターンに太り細りがあるような符号画像パターンから1bitのデータ列を取り出すことは難しい。そのような1bitのデータ列を取り出すことが難しい符号画像パターンについては、復号に失敗することがある。
【0078】
<操作画面の説明>
図7は画像形成装置10における初期画面である。領域701は、画像形成装置10がコピーできる状態にあるか否かを示し、かつ設定したコピー部数を示す。原稿選択タブ704は原稿のタイプを選択するためのタブであり、このタブが押し下げられると文字、写真、文字/写真モードの3種類の選択メニューをポップアップ表示される。フィニッシングタブ706は各種フィニッシングに関わる設定を行うためのタブである。両面設定タブ707は両面読込み及び両面印刷に関する設定を行うためのタブである。色モードタブ702は原稿の色モードを選択するためのタブである。このタブが押し下げられるとカラー/ブラック/自動(ACS)の3種類の選択メニューがポップアップ表示される。なお、カラーが選択された場合にはカラーコピーが、ブラックが選択された場合にはモノクロコピーが行われる。また、ACSが選択された場合には、上述したモノクロカラー判定信号によりコピーモードが決定される。
【0079】
本実施例におけるシステムの説明は以上である。
【0080】
フローチャート
本実施例のフローチャートを図10に示す。本フローチャートにおける各工程の処理は、CPU301により統括的に制御される。CPU301は、不図示のデータバスを用いて、各処理モジュールとデータのやり取りをすることが可能である。このフローは、操作部301でユーザがスキャン処理を伴う処理を選択し、開始ボタンを押した際に実行される。
【0081】
ステップS1001
ステップS1001では、CPU301は、操作部301の開始ボタンが押されていることを検知すると、スキャナ部13を作動させ、原稿をスキャンする。そして、CPU301は、スキャナ部13で読み取られた原稿を、画像としてスキャナI/F311を介してスキャナ画像処理部312に送るように制御する。また、CPU301は、スキャン時のスキャン解像度など設定パラメータやスキャナの特性パラメータについての情報をRAM302に保持しておく。
【0082】
ステップS1002
ステップS1002では、スキャナ画像処理部312において、スキャナ画像処理を画像に対して行う。
【0083】
スキャナ画像処理部312は、シェーディング補正部500・マスキング処理部501・フィルタ処理部502・ヒストグラム処理部503・入力側ガンマ補正部504・カラーモノクロ判定部505・文字写真判定部506で画像に対して処理を行う。そして、新たな画像と共に属性データを生成し、この属性データを画像に付随させる。そして、画像を圧縮部313に送り、圧縮画像をRAM302もしくはHDD304に保持する。また、CPU301は、スキャン画像処理時のパラメータについての情報をRAM302に保持しておく。
【0084】
ステップS1003
ステップS1003では、CPU301は、ステップS1007の補正処理のパラメータと、ステップS1008の単純2値化処理の閾値パラメータを算出する。その算出の際には、RAM302に保持されているスキャン時の設定パラメータやスキャナの特性パラメータについての情報やスキャン画像処理時のパラメータを利用する。ステップS1003で設定したパラメータはRAM302に保持しておく。
【0085】
ステップS1007での、主な補正処理としては、変倍部323での変倍処理やフィルタ処理部324でのフィルタ処理や線形性調整部325での線形調整処理や特殊処理部326での太らせ処理などの特殊処理がある。
【0086】
変倍処理のパラメータは、スキャン時のスキャン解像度に関する設定パラメータに基づいて、後段の符号画像パターンの検出・復号に適した解像度となるように決定される。たとえば、スキャン解像度が600x300のように片変倍であり、主副が同じ解像度であることが必要な際には、600x600や300x300などの主副が同じ解像度になるような解像度変換パラメータが決定される。
【0087】
フィルタ処理のパラメータ決定方法について述べる。まず、スキャナの周波数特性や白レベル基準などの特性パラメータやスキャン画像処理時のフィルタ処理部502でのフィルタパラメータに基づいて、その時点での画像の符号画像領域の平均輝度と周波数特性を推定する。次に、この推定に基づき、画像が、後段の符号画像パターンの検出に適した平均輝度と周波数特性となるようなパラメータが決定される。理想的な平均輝度とは、符号画像領域の平均輝度が50%の値(画像が8bitであれば127もしくは128)となるようなレベルである。理想的な周波数特性は、対応している符号画像パターンに対応する周波数成分が多く、その他の部分の周波数成分が少ない特性である。
【0088】
線形性調整処理のパラメータ決定方法について述べる。まず、スキャナの白レベル基準や、輝度と濃度の対応関係などの特性パラメータと、スキャン画像処理時の入力側ガンマ補正部504の1次元LUTパラメータに基づいて、その時点での輝度と濃度の対応関係を推定する。次に、この推定に基づき、画像が、後段の符号画像パターンの検出に適した輝度と濃度の対応関係となるような1次元LUTのパラメータが決定される。符号画像パターンの検出に適した輝度と濃度の関係は、検出方法にも依存するが、線形な対応関係が適している。
【0089】
特殊処理のパラメータの決定方法について述べる。通常、QRコードのような符号画像パターンは、黒セル領域と白セル領域の割合が1対1に近い比率となっている。スキャナの特性や、復号対象の符号画像パターンの想定印字形態より、セルの太り・細りが想定される際には、それを補正して1対1の比率に近づけことを目指したパラメータを設定する。
【0090】
ステップS1008の単純2値化処理の閾値パラメータは、通常、補正処理が正常に行われていれば、50%の値(画像が8bitであれば127もしくは128)で構わない。ただし、生産性との兼ね合いで補正処理が十分に施されていない場合は、施すべきだった補正処理パラメータから、補正後の50%の値になる、補正処理前の値を逆算し、その値を閾値とする(フィルタ処理などが絡むため、正確な逆算はできない)。
【0091】
ステップS1004
ステップS1004では、CPU301は、検出対象領域を設定する。スキャン検出対象領域は、スキャン画像領域サイズ・最低サポート紙サイズ・想定符号画像パターン印字領域から決定される。その決定フローについては後述する。決定した検出対象領域は、RAM302に保持しておく。
【0092】
ステップS1005
ステップS1005では、CPU301は、ステップS1004で設定された検出対象領域について、検出の優先順位を決定する。検出の優先順位は、紙の組み合わせの優先順位・符号画像パターンの配置優先順位から決定される。その決定フローについては後述する。なお、優先順位をつけることによる速度向上が見込めない場合などには、後述するフローに依らず、便宜的な優先順位を振っておく。決定した優先順位は、RAM302に保持しておく。
【0093】
ステップS1006
ステップS1006では、CPU301は、符号画像パターンの検出対象領域をスキャン画像から切り出す。まず、ステップS1004およびステップS1005で決定された情報から、切り取り処理が行われていない検出対象領域の中から、最も優先順位の高い領域を選択する。同じ優先順位の領域があった場合には、その同じ優先順位の検出対象領域の中から任意の領域を選択する。そして、ステップS1002RAMで生成した302もしくはHDD304に保持されている圧縮画像から、選択された領域を切り出す。最後に、その切り出した画像を、符号画像パターン部317で処理するために、伸張部318で伸張する。なお、伸張部318で画像全体を伸張したあとで、切り出し処理を行っても構わない。
【0094】
ステップS1007
ステップS1007では、CPU301は、ステップS1003で決定した補正処理パラメータに基づいて、ステップS1006で切り出された画像に対して、補正処理を行う。補正処理に使用するのは、変倍部323、フィルタ処理部324で、線形性調整部325、特殊処理部326である。
【0095】
生産性との兼ね合いにより、補正処理は一部だけ行っても、行わなくてもいい。
【0096】
ステップS1008
ステップS1008では、CPU301は、ステップS1003で決定した単純2値化処理の閾値パラメータに基づいて、多値単純2値部320で、ステップS1007で補正された画像に対して単純2値化処理を行う。
【0097】
ステップS1009
ステップS1009では、CPU301は、ステップS1008で2値化された画像から、検出用パターン検出部328で、符号画像パターンの検出用パターンの検出を行う。検出用パターンは、1つの情報コードにつき、複数存在するため、その位置関係から符号画像パターン本体の位置を確定もしくは絞ることができる。よって、検出用パターンが検出された場合には、その検出した検出用パターン情報から、符号画像パターンの位置情報を導きだし、その位置情報をRAM302に保持しておく。
【0098】
ステップS1010
ステップS1010では、CPU301は、ステップS1009で符号画像パターンが検出されたかどうかの判断を行う。検出された場合には、復号のためにステップS1011に進む。検出されなかった場合には、ステップS1012に進む。
【0099】
ステップS1011
ステップ1011では、CPU301は、符号画像パターン復号部329で、符号画像パターンの復号を行う。復号対象画像は、ステップS1008で2値化された画像である。符号画像パターンの位置は、ステップS1009で算出された位置情報より確定している。CPU301は、復号処理が終わったあとに、復号結果をRAM302に保持する。
【0100】
ステップS1012
ステップS1012では、CPU301は、更なる符号画像処理の検出・復号処理が必要であるかの判断を行う。残っている検出対象領域が存在する場合は、ステップS1016に進み、新たな検出対象領域の検出・復号処理を行う。残っている検出対象領域が存在しない場合には、ステップS1014に進む。
【0101】
ステップS1013
ステップS1013では、CPU301は、MFPの制御情報が復号されたかどうかの判断をする。例えば、QRコードのような一般に普及している符号画像パターンは、雑誌などに記載されていることもあり、MFPの制御情報が含まれているとは限らない。そこで、ステップS1011で復号された情報が、MFPの制御情報であった場合には、ステップS1014に進む。MFPの制御情報でなかった場合には、ステップS1013に進む。
【0102】
ステップS1014
ステップS1014では、CPU301は、スキャン画像のプリントを実施するかどうかの判断を行う。符号画像パターンに制御情報が含まれており、その情報が複写禁止であった場合には、プリントの実施を中止する。そして、処理を終了する。
【0103】
それ以外の場合には、プリントの実施が許可されているとみなし、次のステップであるステップS1015に進む。なお、制御情報が含まれた符号画像パターンが見つからなかった場合も、プリントの実施が許可されているとみなす。
【0104】
ステップS1015
ステップS1015では、CPU301は、ステップS1014の判断をうけて、プリンタ画像処理を実施する。
【0105】
まず、CPU301は、RAM302もしくはHDD304に保持されているステップS1002で生成された圧縮画像を、プリント画像処理部315で処理するために、伸張部316で伸張する。
【0106】
次に、CPU301は、プリンタ画像処理部315において、プリンタ画像処理を伸長された画像に対して行う。プリンタ画像処理部315は、下地飛ばし処理部601・モノクロ生成部602・Log変換部603・出力色補正部604・出力側ガンマ補正部605・中間調補正部606で画像に対して処理を行う。なお、カラー印刷の際には、モノクロ生成部602は動作させない。
【0107】
そして、CPU301は、プリンタ画像処理が施された画像をプリンタIF315に送出する。
【0108】
ステップS1016
ステップS1016では、CPU301は、プリンタ部14で、プリンタIF314を通して受け取った画像を用紙上に形成する。そして、排紙トレイ206に印字後の用紙を排出する。
【0109】
ステップS1004の詳細フロー
図18を用いて、前述したステップS1004における検出対象領域決定方法の詳細フローについて説明をする。
【0110】
ステップS1801
ステップS1014では、CPU301は、スキャン画像のサイズが、どの系列の紙サイズに合致するかを決定する。本実施例では、A系列もしくはB系列の紙原稿が置かれていることを前提とし、スキャン画像のサイズがどちらの系列のどのサイズに属するかを決定する。ここで、A系列・B系列とは、紙サイズの規格であり、A系列の紙サイズを図16に、B系列の紙サイズを図17に示す。A系列にもB系列にも属さない場合には不定型のスキャン画像サイズとして扱う。なお、紙サイズの系列として、他の系列に対応しても構わない。
【0111】
ステップS1802
ステップS1014では、CPU301は、ステップS1801で決定した用紙サイズを構成することが可能な同系列の紙の組み合わせを決定する。これは、通常は、スキャン画像サイズと同じサイズの紙原稿が置かれていることが想定されるが、半分のサイズの紙原稿が組み合わされて配置されているような可能性が存在するためである。同系列の紙であれば、1ランクサイズが小さくなると、半分のサイズになるため、このような置き方は容易に可能となるため、決して低い可能性ではない。紙の組み合わせは、S1802で決定された紙サイズと、最低サポート紙サイズより一意に決定することが可能となる。例えば、スキャン画像サイズがA3であり、最低サポート紙サイズがA5である場合の紙の組み合わせは、図20となる。利用する紙サイズは、A3、A4、A5の3種類が考えられ、組み合わせは5種類となる。
【0112】
ステップS1803
ステップS1014では、CPU301は、ステップS1802で決定された紙の組み合わせと符号画像パターンの想定配置位置から検出対象領域を決定する。
【0113】
例えば、図20の紙配置の組み合わせが想定される際に、紙の4隅に符号画像パターンを配置することを想定する。その場合、符号画像パターンが存在する可能性がある場所が、符号画像パターンの検出対象領域となるので、図21で示す場所が検出対象領域となる。図21は組み合わせごとの検出対象領域となるので、組み合わせごとの検出対象領域を統合すると、図23が最終的な検出対象領域となる。
【0114】
また、別の例として、図20の紙配置の組み合わせが想定される際に、
1)紙が縦置き原稿の際には、符号画像パターンを左上に印字
2)紙が横置きの際には、符号画像パターンを左下に印字
とすることを想定する。その場合、符号画像パターンが存在する可能性がある場所が、符号画像パターンの検出対象領域となるので、図22で示す場所が検出対象領域となる。図22は組み合わせごとの検出対象領域となるので、組み合わせごとの検出対象領域を統合すると、図24が最終的な検出対象領域となる。
【0115】
なお、ステップS1801で、不定型のスキャン画像サイズとされている場合には、スキャン画像領域全体を検出対象領域とする。
【0116】
ステップS1005の詳細フロー
図19を用いて、前述したステップS1005における検出対象領域の優先順位の決定方法の詳細フローについて説明をする。
【0117】
ステップS1901
ステップS1014では、CPU301は、ステップS1802で決定された紙の組み合わせについての優先順位を決定する。優先順位は、符号画像パターンが使用されるユースケースを想定しておき、あらかじめ設定しておく。あらかじめ設定しておいた設定しておいた優先順位を、実際に符号画像パターンが検出された履歴を反映させ、変更しても構わない。
【0118】
例えば、
優先順位 高: 同じサイズの紙で構成
優先順位 低: 少ない紙の毎数で構成
という優先順位が設定されているときの、図22の紙の組み合わせの優先順位を、図25に示す。なお、数字が小さい方が優先順位が高い。
【0119】
ステップS1902
ステップS1902では、CPU301は、紙面上の符号画像パターンの想定配置位置について、検出優先順位を決定する。優先順位は、符号画像パターンが使用されるユースケースを想定しておき、あらかじめ設定しておく。あらかじめ設定しておいた設定しておいた優先順位を、実際に符号画像パターンが検出された履歴を反映させ、変更しても構わない。
【0120】
例えば、
前述した図22のような場合に、スキャンする際に、天地を考えて原稿が原稿台に置かれていると考え、
1)紙が縦置き原稿の際には、左上の検出対象領域を優先
2)紙が横置きの際には、左下に検出対象領域を優先
とすることを想定する。そのような場合には、想定配置位置についての検出優先順位は、図25に示すような優先順位となる。なお、数字が小さい方が優先順位が高い。
【0121】
ステップS1903
ステップS1903では、CPU301は、最終的な優先順位を決定する。優先順位は、
優先順位 高: ステップS1901で決めた優先順位
優先順位 低: ステップS1902で決めた優先順位
である。
【0122】
前述した図25の場合における、スキャン画像内の検出対象領域の最終的な優先順位を図26に示す。なお、数字が小さい方が優先順位が高い。
【0123】
(その他の実施例)
さらに本発明は、複数の機器(例えばコンピュータ、インターフェース機器、リーダ、プリンタなど)から構成されるシステムに適用することも、一つの機器からなる装置(複合機、プリンタ、ファクシミリ装置など)に適用することも可能である。
【0124】
また本発明の目的は、上述した実施例で示したフローチャートの手順を実現するプログラムコードを記憶した記憶媒体から、コンピュータがプログラムコードを読出し実行することによっても達成される。この場合、記憶媒体から読み出されたプログラムコード自体が上述した実施形態の機能を実現することになる。そのため、このプログラムコード及びプログラムコードを記憶した記憶媒体も本発明の一つを構成することになる。
【0125】
プログラムコードを供給するための記憶媒体としては、例えば、フロッピー(登録商標)ディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、磁気テープ、不揮発性のメモリカード、ROMなどを用いることができる。

【特許請求の範囲】
【請求項1】
符号画像パターンを復号する画像処理装置において、
符号画像パターンが含まれている可能性がある画像を取得する画像取得手段(S1002)と、
前記画像内で、符号画像パターンが含まれている可能性が高い領域を、画像サイズとそこに配置されていた可能性のある紙の組み合わせから決定する検出領域設定手段(S1004)と、
前記画像内から検出領域設定手段が決定した領域を切り出す切り出し手段(S1006)と、
前記切り出し手段で切り出された画像に符号画像パターンが含まれているかを見つける符号画像パターンの検出用パターンの検出手段(S1009)と、
前記符号画像パターン検出手段で符号画像パターンが検出された場合に符号画像パターンを復号する符号画像パターン復号手段(S1011)と
を有する画像処理装置。
【請求項2】
符号画像パターンを復号する画像処理装置において、
符号画像パターンが含まれている可能性がある画像を取得する画像取得手段(S1002)と、
前記画像内で、符号画像パターンが含まれている可能性が高い領域を、画像サイズとそこに配置されていた可能性のある紙の組み合わせから決定する検出領域設定手段(S1004)と、
前記検出領域設定手段で設定された検出領域の切り出しの優先順位を決定する優先順位設定手段(S1005)と、
前記画像内から検出領域設定手段が設定した領域を優先順位設定手段が設定した優先順位で切り出す切り出し手段(S1006)と、
前記切り出し手段で切り出された画像に符号画像パターンが含まれているかを見つける符号画像パターンの検出用パターンの検出手段(S1009)と、
前記符号画像パターン検出手段で符号画像パターンが検出された場合に符号画像パターンを復号する符号画像パターン復号手段(S1011)と
を有する画像処理装置。
【請求項3】
前記、優先順位設定手段におおいて、紙の組み合わせ方や置き方の想定ユースケースまたは、実頻度に応じて、検出領域の優先順位を設定することを特徴とする、請求項2記載の画像処理装置。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate


【公開番号】特開2010−288144(P2010−288144A)
【公開日】平成22年12月24日(2010.12.24)
【国際特許分類】
【出願番号】特願2009−141356(P2009−141356)
【出願日】平成21年6月12日(2009.6.12)
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.QRコード
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】