(57)【特許請求の範囲】
【請求項１】
入力画像の内部に処理領域を指定する領域指定部と、
前記処理領域に対して所定の画像処理を行う画像処理部と、
前記入力画像の内部に、前記処理領域を示すマーカを付加可能な領域であるマーカ領域を検出するマーカ領域検出部と、
前記マーカ領域内に前記マーカを付加する位置を、所定の優先条件に基づいて決定し、決定した位置に前記マーカを付加するマーカ付加部と、
を有することを特徴とする画像処理装置。
【請求項２】
前記マーカ領域検出部は、前記入力画像のうち既存の処理領域と当該既存の処理領域を示す既存マーカとを除く領域から前記マーカ領域を検出することを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記マーカ付加部は、優先度と前記マーカの前記処理領域に対する相対位置とが対応付けて定義され、かつ、前記マーカと前記処理領域とが重複する領域が小さいほど優先度が高く、当該重複する領域が大きいほど優先度が低く定義された前記優先条件を記憶する制御情報記憶部を参照し、前記制御情報記憶部に記憶された前記優先条件に基づいて、前記マーカを付加する位置を決定することを特徴とする請求項１または２の何れか一項に記載の画像処理装置。
【請求項４】
前記マーカ付加部は、前記マーカを付加する位置に対応する前記相対位置を示す位置情報を前記入力画像に付加することを特徴とする請求項３記載の画像処理装置。
【請求項５】
前記領域指定部が指定した前記処理領域を取得すると、当該処理領域に重なる隣接マーカを検出し、前記優先条件に基づいて当該隣接マーカに代えて前記処理領域と重ならない代替マーカを付加する隣接マーカ変更部、
を更に有することを特徴とする請求項１乃至３の何れか一項に記載の画像処理装置。
【請求項６】
前記領域指定部が指定した前記処理領域を取得すると、前記既存マーカに所定の合成用マーカを付加することで前記処理領域に対して前記マーカと同一のマーカを形成できる場合、当該合成用マーカを付加すべき位置を前記マーカ付加部に出力する合成配置座標特定部、
を更に有し、
前記マーカ付加部は、前記マーカに代えて前記合成配置座標特定部から取得した位置に前記合成用マーカを付加する、
ことを特徴とする請求項２記載の画像処理装置。
【請求項７】
第１の画像処理が施された処理領域を含む入力画像から複数のマーカを検出するマーカ検出部と、
前記処理領域内に付加された所定の位置情報を検出し、前記各マーカと所定の処理領域との相対位置を前記位置情報ごとに定義した制御情報を記憶する制御情報記憶部を参照し、検出した前記位置情報と前記制御情報記憶部に記憶された前記制御情報とに基づいて、前記処理領域を検出する処理領域検出部と、
前記処理領域検出部が検出した前記処理領域に対して第２の画像処理を行う画像処理部と、
を有することを特徴とする画像処理装置。
【請求項８】
第１の画像処理が施された処理領域を含む入力画像から、複数のマーカと前記処理領域内に付加された所定の基準マーカとを検出するマーカ検出部と、
前記各マーカと前記基準マーカとの位置関係を検出し、前記各マーカと所定の処理領域との相対位置を前記位置関係ごとに定義した制御情報を記憶する制御情報記憶部を参照し、検出した前記位置関係と前記制御情報記憶部に記憶された前記制御情報とに基づいて、前記処理領域を検出する処理領域検出部と、
前記処理領域検出部が検出した前記処理領域に対して第２の画像処理を行う画像処理部と、
を有することを特徴とする画像処理装置。
【請求項９】
画像処理装置の画像処理方法であって、
前記画像処理装置が、
入力画像の内部に処理領域を指定し、
前記処理領域に対して所定の画像処理を行い、
前記入力画像の内部に、前記処理領域を示すマーカを付加可能な領域であるマーカ領域を検出し、
前記マーカ領域内に前記マーカを付加する位置を、所定の優先条件に基づいて決定する、
ことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像を処理する画像処理装置および画像処理方法に関する。
【背景技術】
【０００２】
従来、所定の情報（例えば、文字列）を符号化した２次元コードを印刷物に付加する技術がある。読み取り機は、印刷物から２次元コードを読み取り、復号して、文字列などの情報を取得できる。【０００３】
また、画像情報や文書情報のうちの一部を暗号化する技術がある。一部が暗号化された画像情報を印刷したとき、暗号化した部分に元々含まれていた情報は、印刷物に直接出力されない。読み取り機は、印刷物から暗号化された部分を読み取り、復号して、暗号化された部分の基の情報を取得する。例えば、機密部分を暗号化することで印刷物による情報漏洩の危険性を低減できる。【０００４】
また、２次元コードや暗号化部分（以下、符号化部分という）を読み取る読み取り機としては、２次元コードや符号化部分の四隅（あるいは、四隅のうちの一部）に付加されたマーカに基づいて、復号対象の領域を特定するものがある。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開平０７−２５４０３７号公報
【特許文献２】特開２００８−３０１０４４号公報
【特許文献３】特開２００９−２３２２３３号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところで、印刷物に符号化部分を設ける際に、それを複数設けたい場合が考えられる。例えば、機密部分が複数存在する場合である。その際、各部分が近接していると、ある符号化部分を示すマーカが、他の符号化部分あるいは他のマーカに被る可能性がある。その場合、読み取り機側で（１）マーカ同士が重複してマーカ自体を検出できない、（２）マーカの組合せの判断を誤り各符号化部分を適切に検出できない、などの理由により、復号に失敗するおそれがある。【０００７】
本発明はこのような点に鑑みてなされたものであり、画像処理対象の領域を示すマーカを適正に付加できる画像処理装置および画像処理方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、画像処理装置が提供される。この画像処理装置は、領域指定部、画像処理部、マーカ領域検出部およびマーカ付加部を有する。領域指定部は、入力画像の内部に処理領域を指定する。画像処理部は、処理領域に対して所定の画像処理を行う。マーカ領域検出部は、入力画像の内部に、処理領域を示すマーカを付加可能な領域（以下、マーカ領域と定義する）を検出する。マーカ付加部は、マーカ領域内にマーカを付加する位置を、所定の優先条件に基づいて決定し、決定した位置にマーカを付加する。
【０００９】
また、上記課題を解決するために上記画像処理装置と同様の処理を実行する画像処理方法が提供される。
更に、上記課題を解決するために画像処理装置が提供される。この画像処理装置は、マーカ検出部、処理領域検出部および画像処理部を有する。マーカ検出部は、第１の画像処理が施された処理領域を含む入力画像から複数のマーカを検出する。処理領域検出部は、処理領域内に付加された所定の位置情報を検出し、位置情報に応じた各マーカと所定の処理領域との相対位置を定義した制御情報を記憶する制御情報記憶部を参照し、制御情報記憶部に記憶された制御情報に基づいて、処理領域を検出する。画像処理部は、処理領域検出部が検出した処理領域に対して第２の画像処理を行う。【００１０】
また、上記課題を解決するために画像処理装置が提供される。この画像処理装置は、マーカ検出部、処理領域検出部および画像処理部を有する。マーカ検出部は、第１の画像処理が施された処理領域を含む入力画像から複数のマーカと処理領域内に付加された所定の基準マーカとを検出する。処理領域検出部は、各マーカと基準マーカとの位置関係を検出し、位置関係に応じた各マーカと所定の処理領域との相対位置を定義した制御情報を記憶する制御情報記憶部を参照し、制御情報記憶部に記憶された制御情報に基づいて、処理領域を検出する。画像処理部は、処理領域検出部が検出した処理領域に対して第２の画像処理を行う。
【発明の効果】
【００１１】
上記画像処理装置および画像処理方法によれば、画像処理対象の領域を示すマーカを適正に付加することができる。
本発明の上記および他の目的、特徴および利点は本発明の例として好ましい実施の形態を表す添付の図面と関連した以下の説明により明らかになるであろう。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態に係る画像処理装置を示す図である。
【図２】第２の実施の形態に係る情報処理システムを示す図である。
【図３】第２の実施の形態の画像処理装置のハードウェア構成を示す図である。
【図４】第２の実施の形態の画像処理装置の機能構成を示す第１の図である。
【図５】第２の実施の形態の画像処理装置の機能構成を示す第２の図である。
【図６】暗号化領域を含む画像を例示する図である。
【図７】マーカおよび調査領域を例示する図である。
【図８】優先度テーブルのデータ構造を例示する図である。
【図９】第２の実施の形態の暗号化処理を示すフローチャートである。
【図１０】第２の実施の形態のマーカ領域検出処理を示すフローチャートである。
【図１１】第２の実施の形態のマーカ領域検出処理の具体例を示す図である。
【図１２】第２の実施の形態のマーカ付加処理を示すフローチャートである。
【図１３】基準マーカの付加方法を例示する図である。
【図１４】基準マーカの付加方法の他の例を示す図である。
【図１５】第２の実施の形態のマーカ付加方法を例示する第１の図である。
【図１６】第２の実施の形態のマーカ付加方法を例示する第２の図である。
【図１７】第２の実施の形態のマーカ付加方法を例示する第３の図である。
【図１８】復号処理を示すフローチャートである。
【図１９】暗号化領域特定処理を示すフローチャートである。
【図２０】暗号化領域特定処理の変形例を示すフローチャートである。
【図２１】マーカおよびマーカ領域の第１の変形例を示す図である。
【図２２】マーカおよびマーカ領域の第２の変形例を示す図である。
【図２３】第３の実施の形態の画像処理装置の構成を示す図である。
【図２４】第３の実施の形態の暗号化処理を示すフローチャートである。
【図２５】第３の実施の形態の隣接マーカ変更処理を示すフローチャートである。
【図２６】第３の実施の形態のマーカ付加方法を例示する図である。
【図２７】第３の実施の形態のマーカ付加方法を例示する図である。
【図２８】第４の実施の形態の画像処理装置の構成を示す図である。
【図２９】第４の実施の形態の合成に係るマーカを例示する図である。
【図３０】第４の実施の形態の既存マーカと調査領域との位置関係を例示する図である。
【図３１】第４の実施の形態の暗号化処理を示すフローチャートである。
【図３２】第４の実施の形態のマーカ合成配置座標特定処理を示すフローチャートである。
【図３３】第４の実施の形態のマーカ付加方法を例示する図である。
【図３４】第４の実施の形態の暗号化処理の変形例を示すフローチャートである。
【図３５】第４の実施の形態のマーカ付加方法の変形例を示す図である。
【発明を実施するための形態】
【００１３】
以下、本実施の形態を図面を参照して詳細に説明する。
［第１の実施の形態］
図１は、第１の実施の形態に係る画像処理装置を示す図である。画像処理装置１は、領域指定部１ａ、画像処理部１ｂ、マーカ領域検出部１ｃおよびマーカ付加部１ｄを有する。
【００１４】
領域指定部１ａは、入力画像２の内部に処理領域４を指定する。領域指定部１ａは、例えば、入力画像２に対して、ユーザの操作入力により受け付けた領域を処理領域４に指定する。また、例えば予め定められた所定の領域を処理領域４に指定する。
【００１５】
画像処理部１ｂは、領域指定部１ａが指定した処理領域４に対して所定の画像処理を行う。画像処理の内容は、例えば、暗号化、２次元コードの付加、他の領域とは異なる圧縮率で符号化を行う処理、などが考えられる。
【００１６】
マーカ領域検出部１ｃは、入力画像２の内部に、処理領域４を示すマーカ６を付加可能領域であるマーカ領域５を検出する。マーカ６は、画像処理が施された出力画像が印刷された印刷物から、読み取り装置が処理領域４を特定できるように、処理領域４の周縁部付近に付加される画像である。マーカ６は、様々な形状を採り得る。例えば、所定の画素値パターンを備えるＬ字型の形状として、処理領域の四隅に配置することが考えられる。また、例えば、所定の画素値パターンを有する丸型や角型の記号として、処理領域の四隅に配置することが考えられる。
【００１７】
マーカ領域検出部１ｃは、例えば処理領域４の内部およびその周縁部からマーカ領域５を検出する。マーカ領域検出部１ｃは、例えば、マーカ６の形状に応じて予め定められた所定領域のうち、（１）処理領域４以外の他の処理領域に被る位置、（２）他の処理領域を示すマーカと被る位置、についてはマーカ６を付加可能な領域であると判断しない。すなわち、マーカ領域検出部１ｃは（１）、（２）を除く位置をマーカ領域５として検出する。
【００１８】
マーカ付加部１ｄは、マーカ領域５内にマーカ６を付加する位置を、所定の優先条件に基づいて決定する。優先条件は予め定められる。例えば、処理領域４にマーカ６が被らない位置ほど、優先度が高く設定される。マーカ付加部１ｄは、そのような優先条件を予め保持する。マーカ付加部１ｄは、当該決定に基づき、画像処理部１ｂによる処理後の画像にマーカ６を付加し、出力画像３を生成する。
【００１９】
画像処理装置１によれば、領域指定部１ａにより、入力画像２が取得されると、入力画像２内の処理領域４が指定される。画像処理部１ｂにより、処理領域４に対して所定の画像処理が行われる。マーカ領域検出部１ｃにより、処理領域４を示すマーカ６を付加可能なマーカ領域５が検出される。マーカ付加部１ｄにより、マーカ領域５内からマーカ６を付加する位置が、所定の優先条件に基づいて決定される。
【００２０】
これにより、符号化対象の処理領域４を示すマーカを適正に付加することができる。例えば、マーカ６を設ける位置が他の処理領域と重複しないように、マーカ６を付加することができる。よって、出力画像３を印刷した印刷物の読み取りの際にも情報を適正に読み取ることができる。
【００２１】
入力画像２に複数の処理領域を設定する場合には、読み取り装置がマーカの適正な読み取りを行えるように、各処理領域を十分に離して設ける必要があった。一方、上記方法によれば、各処理領域を近接して設けることができる。よって、例えば複数の２次元コードを設ける場合に、省スペース化を図れる。また、例えば近接する複数の領域を暗号化することができる。
【００２２】
以下の実施の形態では、印刷物による情報漏洩を防止する情報処理システムに画像処理装置１を適用する場合を例に採り、更に具体的に説明する。
［第２の実施の形態］
図２は、第２の実施の形態に係る情報処理システムを示す図である。この情報処理システムは、ネットワーク１０を介してプリンタ２０、スキャナ３０および画像処理装置１００，２００が接続されている。
【００２３】
ネットワーク１０は、イントラネットまたはインターネットである。
プリンタ２０は、印刷物Ｘ１を印刷する出力装置である。
スキャナ３０は、印刷物Ｘ１に印刷された内容を画像データとして読み取る入力装置である。
【００２４】
画像処理装置１００，２００は、画像データを画像処理するコンピュータである。画像処理装置１００，２００は、プリンタ２０に画像データを印刷させる。画像処理装置１００，２００は、スキャナ３０が読み取った画像データを取得する。画像処理装置１００，２００は、画像データの一部を暗号処理する。
【００２５】
暗号化された部分の元の情報は、印刷物Ｘ１に直接出力されない。このため、第三者が印刷物Ｘ１を閲覧したとしても、その内容を取得することはできない。すなわち、印刷物Ｘ１による情報漏洩の可能性を低減できる。
【００２６】
ここで、以下では、画像処理装置１００が画像データの一部を暗号化し、画像処理装置２００がその部分を復号する場合を例示する。ただし、画像処理装置１００は画像処理装置２００と同一の機能を備えることができる。また、画像処理装置２００は画像処理装置１００と同一の機能を備えることができる。
【００２７】
図３は、第２の実施の形態の画像処理装置のハードウェア構成を示す図である。画像処理装置１００は、ＣＰＵ（Central Processing Unit）１０１、ＲＯＭ（Read Only Memory）１０２、ＲＡＭ（Random Access Memory）１０３、ＨＤＤ（Hard Disk Drive）１０４、グラフィック処理装置１０５、入力インタフェース１０６、記録媒体読取装置１０７および通信インタフェース１０８を有する。
【００２８】
ＣＰＵ１０１は、画像処理装置１００全体を制御する。
ＲＯＭ１０２は、画像処理装置１００上のＢＩＯＳ（Basic Input / Output System）のプログラムなどを記憶する。
【００２９】
ＲＡＭ１０３は、ＣＰＵ１０１に実行させるＯＳ（Operating System）のプログラムやアプリケーションソフトウェア（以下、アプリケーションという）のプログラムの少なくとも一部を一時的に記憶する。また、ＲＡＭ１０３は、ＣＰＵ１０１による処理に必要な各種データを記憶する。
【００３０】
ＨＤＤ１０４は、ＯＳのプログラム、アプリケーションのプログラムを記憶する。また、ＨＤＤ１０４はＣＰＵ１０１による処理に必要な各種データを記憶する。なお、ＨＤＤ１０４に代えて（または、ＨＤＤ１０４と併せて）、ＳＳＤ（Solid State Drive）など他の種類の記憶装置を用いてもよい。
【００３１】
グラフィック処理装置１０５は、モニタ１１と接続される。グラフィック処理装置１０５は、ＣＰＵ１０１からの命令に従って画像をモニタ１１の画面に表示させる。
入力インタフェース１０６は、キーボード１２とマウス１３と接続される。入力インタフェース１０６は、キーボード１２やマウス１３から送られてくる信号をＣＰＵ１０１に送信する。
【００３２】
記録媒体読取装置１０７は、記録媒体１４に記憶されたデータを読み取る読取装置である。例えば、画像処理装置１００が有すべき機能は、その機能の処理内容を記述したプログラムをコンピュータが実行することで実現できる。プログラムは、コンピュータ読み取り可能な記録媒体１４に記録して配布できる。また、ネットワーク１０に接続されたプログラム配信サーバ（図示せず）にプログラムを格納してもよい。この場合、画像処理装置１００は、ネットワーク１０を介してプログラム配信サーバからプログラムをダウンロードできる。
【００３３】
記録媒体１４としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリを使用できる。磁気記録装置には、ＨＤＤ、フレキシブルディスク（ＦＤ：Flexible Disk）、磁気テープなどがある。光ディスクには、ＣＤ（Compact Disc）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−Ｒ／ＲＷ／ＲＡＭなどがある。光磁気記録媒体には、ＭＯ（Magneto-Optical disk）などがある。半導体メモリには、ＵＳＢ（Universal Serial Bus）メモリなどのフラッシュメモリがある。
【００３４】
通信インタフェース１０８は、ネットワーク１０と接続される。通信インタフェース１０８は、ネットワーク１０を介してプリンタ２０、スキャナ３０および他の情報処理装置とデータ通信する。
【００３５】
なお、画像処理装置２００も画像処理装置１００と同様のハードウェア構成により実現できる。
図４は、第２の実施の形態の画像処理装置の機能構成を示す第１の図である。画像処理装置１００は、制御情報記憶部１１０、暗号化領域指定部１２０、暗号処理部１３０、マーカ領域検出部１４０およびマーカ付加部１５０を有する。これらの機能は、ＣＰＵ１０１によって所定のプログラムが実行されることにより実現される。また、これらの機能の全部または少なくとも一部が専用のハードウェアによって実現されてもよい。
【００３６】
制御情報記憶部１１０は、暗号化領域を特定するためのマーカを付加する位置を決定するために用いる制御情報を記憶する。制御情報には、次の情報が含まれる。
（Ａ１）マーカの形状に応じてマーカ付加の可否を調査するための調査領域を示す情報。
【００３７】
（Ａ２）調査領域からマーカ付加可能な領域として抽出されたマーカ領域からマーカ付加位置を特定するための優先条件を示す情報。
（Ａ３）同一画像内で既に暗号化を行った他の暗号化領域および他の暗号化領域に付加したマーカの位置を示す情報。
【００３８】
暗号化領域指定部１２０は、入力画像３００の入力を受け付ける。また、暗号化領域指定部１２０は、ユーザの操作入力により、入力画像３００内の暗号化を行う領域の指定を受け付ける。暗号化領域指定部１２０は、指定された領域（以下、指定領域という）を暗号処理部１３０およびマーカ領域検出部１４０に出力する。
【００３９】
なお、暗号化領域指定部１２０は、受け付けた入力画像３００のデータを例えばＲＡＭ１０３上の所定の領域に格納する。暗号化領域指定部１２０、暗号処理部１３０、マーカ領域検出部１４０およびマーカ付加部１５０は、以降の処理を当該ＲＡＭ１０３上の入力画像３００のデータを操作して行うことができる。
【００４０】
暗号処理部１３０は、入力画像３００のうち暗号化領域指定部１２０から取得した指定領域に対して、所定の鍵により暗号化を行う。暗号処理部１３０は、鍵を予め保持する。あるいは、暗号処理の際、ユーザに鍵となるキーフレーズを入力させてもよい。
【００４１】
マーカ領域検出部１４０は、暗号化領域指定部１２０から取得した指定領域に対するマーカ領域を、制御情報記憶部１１０に記憶された制御情報に基づいて決定する。マーカ領域検出部１４０は、他の暗号化領域や他の暗号化領域を特定するためのマーカと重複する領域をマーカ領域に含めない。マーカ領域検出部１４０は、決定したマーカ領域をマーカ付加部１５０に出力する。
【００４２】
マーカ付加部１５０は、マーカ領域検出部１４０から取得したマーカ領域のうち、制御情報記憶部１１０に記憶された制御情報に基づいて、暗号処理部１３０による暗号化後の入力画像３００に対するマーカの付加位置を決定する。マーカ付加部１５０は、決定した位置にマーカを付加し、暗号化画像３００ａを生成し、出力する。
【００４３】
画像処理装置１００は、ユーザによる印刷指示に応じて、暗号化画像３００ａをプリンタ２０に印刷させる。印刷物Ｘ１は、暗号化画像３００ａを含む。
ユーザは、印刷物Ｘ１の暗号化部分の内容を閲覧するために、画像処理装置２００に暗号化画像３００ａを復号させる。その際、ユーザは、スキャナ３０で印刷物Ｘ１の内容を読み取らせる。これにより、スキャナ３０は、暗号化画像３００ａを取得する。画像処理装置２００は、スキャナ３０から暗号化画像３００ａを取得する。なお、印刷物Ｘ１から暗号化画像３００ａを取得する他の方法としては、印刷物Ｘ１をデジタルスチルカメラによって撮影する方法または、カメラ機能を有する情報機器（携帯電話、ＰＣ等）のカメラで直接印刷物Ｘ１を撮影する方法もある。
【００４４】
図５は、第２の実施の形態の画像処理装置の機能構成を示す第２の図である。画像処理装置２００は、復号制御情報記憶部２１０、マーカ位置検出部２２０、暗号化領域検出部２３０および復号処理部２４０を有する。これらの機能は、画像処理装置２００のＣＰＵによって所定のプログラムが実行されることにより実現される。また、これらの機能の全部または少なくとも一部が専用のハードウェアによって実現されてもよい。
【００４５】
復号制御情報記憶部２１０は、暗号化領域の特定に用いるマーカを検出するために必要な情報を記憶する。復号制御情報には、次の情報が含まれる。
（Ｂ１）マーカ位置から優先条件を特定するための情報（制御情報記憶部１１０に記憶される制御情報の説明で示した（Ａ２）の内容に対応するもの）。
【００４６】
（Ｂ２）画像処理装置１００が付加するマーカの形状や色のパターンを定義した情報。
マーカ位置検出部２２０は、暗号化画像３００ａの入力を受け付けると、暗号化画像３００ａ内からマーカを示す所定のパターンを例えばパターンマッチング等の一般的な手法を用いて探索し、その位置を検出する。マーカ位置検出部２２０は、検出したマーカ位置を暗号化領域検出部２３０に出力する。
【００４７】
なお、マーカ位置検出部２２０は、取得した暗号化画像３００ａのデータを画像処理装置２００に設けられたＲＡＭ上の所定の領域に格納する。マーカ位置検出部２２０、暗号化領域検出部２３０および復号処理部２４０は、以降の処理を当該領域上の暗号化画像３００ａのデータを操作して行うことができる。
【００４８】
暗号化領域検出部２３０は、マーカ位置検出部２２０が検出したマーカ位置と復号制御情報記憶部２１０に記憶された復号制御情報とに基づいて、暗号化画像３００ａ内の暗号化領域を検出する。暗号化領域検出部２３０は、検出した暗号化領域を示す情報を復号処理部２４０に出力する。
【００４９】
復号処理部２４０は、暗号化画像３００ａの暗号化領域を所定の鍵により復号する。復号処理部２４０は、鍵を予め保持する。あるいは、復号処理の際、ユーザに鍵となるキーフレーズを入力させてもよい。復号処理部２４０は、復号の結果、復号画像３００ｂを生成し、出力する。
【００５０】
画像処理装置２００は、例えば画像処理装置２００と接続されたモニタに復号画像３００ｂを表示させる。ユーザは、モニタの表示によって、印刷物Ｘ１の暗号化領域に含まれる情報を閲覧することができる。
【００５１】
図６は、暗号化領域を含む画像を例示する図である。（Ａ）は、入力画像３００の例である。（Ｂ）は、暗号化画像３００ａの例である。
暗号化領域指定部１２０は、入力画像３００に対してユーザが指定した指定領域を受け付ける。例えば、入力画像３００に対して、指定領域３１０，３２０の指定を受け付ける。ユーザは、例えばモニタ１１に出力された入力画像３００に対して、ポインタＰ１をマウス１３で操作し、指定領域３１０，３２０に対応する領域をドラッグ操作によって選択できる。
【００５２】
更に、ユーザは、暗号化の開始を促すための入力を行うことができる。例えば、そのような操作入力を受け付けるための所定のボタンが、入力画像３００とともに、モニタ１１上に表示される（図示せず）。
【００５３】
暗号化領域指定部１２０は、暗号化の開始の操作入力を受け付けると、指定領域３１０，３２０のうち、最初に指定された指定領域から、暗号化処理を開始する。あるいは、入力画像３００内の座標値（例えば、ｙ座標）の小さい方から、暗号化処理を開始する。そして、最初に指定された指定領域の暗号化が完了すると、次の指定領域の暗号化を開始する。例えば、指定領域３１０が先に指定されたとすると、指定領域３１０について、暗号化およびマーカ付与の処理を行い暗号化領域３１０ａを生成する。そして、次に指定領域３２０について、暗号化およびマーカ付与の処理を行い暗号化領域３２０ａを生成する。このようにして、暗号化領域３１０ａ，３２０ａが順次生成される。指定領域３１０，３２０の全てについて暗号化を行った画像、すなわち、暗号化領域３１０ａ，３２０ａを含む画像が暗号化画像３００ａである。
【００５４】
なお、指定領域が２つの場合を例示したが、３つ以上の場合であっても同様である。
図７は、マーカおよび調査領域を例示する図である。（Ａ）は、マーカの形状およびパターンを例示している。（Ｂ）は、そのマーカに応じた調査領域を例示している。
【００５５】
マーカＭ１，Ｍ２，Ｍ３，Ｍ４は、暗号化領域３２０ａの四隅に設けられる。マーカＭ１，Ｍ２，Ｍ３，Ｍ４は、所定のパターンでＬ字に形成されている。パターンは、例えば、白一色、黒一色の画素ブロック（画素の集合）が所定の周期で並べられたものである。以下ではパターンを白または黒のブロックとして説明しているが、パターンが識別可能であればブロックは白または黒である必要はなく、例えば赤色と青色のような、色成分によるパターンであっても構わない。図７では、白黒のブロックが交互に並べられた場合を例示している。これ以外にも、例えば、白白黒白白黒、白黒黒白黒黒など、種々のパターンが考えられる。また、図７では、Ｌ字の横方向に５ブロック、縦方向に５ブロックを例示しているが、縦：横を７：７、５：７など他の数・比としてもよい。
【００５６】
画像処理装置２００は、マーカＭ１，Ｍ２，Ｍ３，Ｍ４を検出することで、暗号化領域３２０ａの範囲を特定できる。
調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４は、指定領域３２０に対応するマーカＭ１，Ｍ２，Ｍ３，Ｍ４を付加可能な領域である。調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４を示す情報は、指定領域３２０の四隅を含む所定の領域として、マーカＭ１，Ｍ２，Ｍ３，Ｍ４の形状に応じて予め制御情報として定義され、制御情報記憶部１１０に保持される。
【００５７】
ここで、以下ではマーカＭ１，Ｍ２，Ｍ３，Ｍ４を付加する場合を主に説明するが、他の形状のマーカを用いることもできる。他の形状についての変形例は、後述する。
図８は、優先度テーブルのデータ構造を例示する図である。優先度テーブル１１１は、予め制御情報記憶部１１０および復号制御情報記憶部２１０に格納される。優先度テーブル１１１には、優先度および位置関係を示す項目が設けられている。各項目の横方向に並べられた情報同士が互いに関連付けられて、１つの優先条件に関する情報を示す。
【００５８】
優先度の項目には、優先度を示す情報が設定される。例えば、優先度として設定された数値が小さいものほど、優先度が高いとする。位置関係の項目には、マーカと暗号化領域との位置関係が設定される。ここで、図８において、紙面の上側を上方向、下側を下方向、紙面に向かって右側を右方向、紙面に向かって左側を左方向とする。
【００５９】
優先度テーブル１１１には、例えば、優先度が“１”に対して、位置関係が“暗号化領域３２０ａの左上領域に対してマーカＭ１が隙間なく隣接する位置”という条件が設定されている。優先度テーブル１１１では、この条件を図示している（以下、同様）。
【００６０】
また、優先度テーブル１１１には、例えば、優先度が“２”に対して、位置関係が“マーカＭ１を、優先度１の位置から下方向へ半ブロック分移動させた位置”という条件が設定されている。
【００６１】
また、優先度テーブル１１１には、例えば、優先度が“３”に対して、位置関係が“マーカＭ１を、優先度“２”の位置から右方向へ半ブロック分移動させた位置”という条件が設定されている。
【００６２】
また、優先度テーブル１１１には、例えば、優先度が“４”に対して、位置関係が“マーカＭ１を、優先度３の位置から下方向へ半ブロック分移動させた位置”という条件が設定されている。
【００６３】
また、優先度テーブル１１１には、例えば、優先度が“５”に対して、位置関係が“マーカＭ１を、優先度“４”の位置から右方向へ半ブロック分移動させた位置”という条件が設定されている。
【００６４】
ここで、優先度テーブル１１１に設定された、マーカＭ１が配置され得る領域が、図７に示した調査領域Ｑ１となる。
なお、優先度テーブル１１１では、マーカＭ１を例示しているが、マーカＭ２，Ｍ３，Ｍ４についても、マーカＭ１と暗号化領域３２０ａと同様の位置関係により優先度が定義される。
【００６５】
例えば、マーカＭ２，Ｍ３，Ｍ４ともに、優先度“１”の位置関係は“暗号化領域３２０ａの角の領域に対して対応するマーカが隙間なく隣接する位置”となる。また、優先度“２”の位置関係は“各マーカを、優先度“１”の位置から暗号化領域３２０ａの内側に向かうように上または下方向へ半ブロック分移動させた位置”となる。また、優先度“３”の位置関係は“各マーカを、優先度“２”の位置から暗号化領域３２０ａの内側に向かうように左または右方向へ半ブロック分移動させた位置”となる。また、優先度“４”の位置関係は“各マーカを、優先度”３“の位置から暗号化領域３２０ａの内側に向かうように上または下方向へ半ブロック分移動させた位置”となる。また、優先度“５”の位置関係は“各マーカを、優先度“４”の位置から暗号化領域３２０ａの内側に向かうように左または右方向へ半ブロック分移動させた位置”となる。
【００６６】
上記の例のように、優先度テーブル１１１では、マーカが配置される位置のうち、マーカと暗号化領域３２０ａとが重なる面積が小さい位置ほど、優先度が高くされる。
なお、優先度テーブル１１１の位置関係の項目には、実際には、例えば、マーカ内の基準点の座標と、暗号化領域３２０ａ内の基準点の座標との相対座標が設定されればよい。マーカ内の基準点の座標としては、例えば、マーカを構成する成分のうち横方向に長い成分を横向き成分、縦方向に長い成分を縦向き成分としたとき、横向き成分と縦向き成分とが交差する領域のうち最も内角側の画素の座標とすることができる。一方、暗号化領域３２０ａ内の基準点としては、例えば、マーカに対応する、暗号化領域の頂点画素の座標とすることができる。このような場合、マーカの幅を４画素とすると、図８において、優先度１に対応する相対座標は（１，１）、優先度３に対応する相対座標は（３，３）、優先度５に対応する相対座標は（５，５）となる。
【００６７】
また、上記の例では、各位置関係を各マーカの半ブロックを単位として示したが、例えば、３分の１ブロック、４分の１ブロック、あるいは更に細かい単位としてもよい。細かい単位とすることで、各マーカが暗号化領域３２０ａに被る量を低減できる。
【００６８】
また、優先度“１”の位置関係において、マーカＭ１と暗号化領域３２０ａが隣接する位置関係を示したが、更に優先度の高い位置関係を設けることもできる。例えば、マーカＭ１を暗号化領域３２０ａから、優先度“１”の位置から上方向および左方向に所定の画素分だけ移動させた位置を更に優先度の高い位置とすることもできる。このようにすると、マーカＭ１と暗号化領域３２０ａとが隙間を隔てて配置されるので、印刷の際に、マーカＭ１と暗号化領域３２０ａとの境界が色の滲みで不明瞭となることを防止できる。
【００６９】
また、優先度テーブル１１１と同様の情報が、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４それぞれについて定義される。優先度テーブル１１１では、調査領域Ｑ１に対応する情報を示している。
【００７０】
次に、以上の構成を備える画像処理装置１００，２００の処理の詳細を説明する。まず、画像処理装置１００による暗号化処理について説明する。
図９は、第２の実施の形態の暗号化処理を示すフローチャートである。以下、各処理をステップ番号に沿って説明する。
【００７１】
［ステップＳ１１］暗号化領域指定部１２０は、入力画像３００を取得する。
［ステップＳ１２］暗号化領域指定部１２０は、入力画像３００に対するユーザの領域指定操作を受け付ける。ユーザは、複数の領域を指定したとする。
【００７２】
［ステップＳ１３］暗号化領域指定部１２０は、複数の指定領域のうちから１つを選択する。例えば、ユーザによって指定された順番に領域を選択する。あるいは、入力画像３００内における座標値（例えば、ｙ座標）の小さい方から順番に領域を選択する。暗号化領域指定部１２０は、例えば、指定領域３１０，３２０に対して、まず、指定領域３１０を選択する。暗号化領域指定部１２０は、選択した領域を示す情報を暗号処理部１３０およびマーカ領域検出部１４０に出力する。
【００７３】
［ステップＳ１４］暗号処理部１３０は、入力画像３００のうち、暗号化領域指定部１２０から取得した指定領域を暗号化する。暗号処理部１３０は、入力画像３００のうち、暗号化した領域を示す情報（例えば、その領域の頂点位置を示す情報）を制御情報として制御情報記憶部１１０に格納する。
【００７４】
［ステップＳ１５］マーカ領域検出部１４０は、暗号化領域指定部１２０から取得した指定領域に対して、制御情報記憶部１１０に記憶された制御情報を参照して、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４を取得する。マーカ領域検出部１４０は、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４から他の暗号化領域や他の暗号化領域を示すマーカと重複する座標を除いて、マーカ領域を検出する。マーカ領域検出部１４０は、検出したマーカ領域をマーカ付加部１５０に出力する。
【００７５】
［ステップＳ１６］マーカ付加部１５０は、制御情報記憶部１１０に記憶された優先度テーブル１１１を参照して、入力画像３００の暗号化領域に対し、マーカ領域内で最も優先度の高い位置にマーカを付加する。マーカ付加部１５０は、マーカを付加した領域を示す情報（例えば、その領域の頂点位置を示す情報）を制御情報として制御情報記憶部１１０に格納する。
【００７６】
［ステップＳ１７］マーカ付加部１５０は、入力画像３００内に未処理の指定領域があるか否かを判定する。未処理の指定領域がある場合、処理をステップＳ１３に進める。全ての指定領域について処理済みである場合、暗号化画像３００ａを出力して処理を完了する。
【００７７】
このように、画像処理装置１００では、指定領域ごとに暗号化が行われる。そして、暗号化された指定領域（暗号化領域）ごとに当該領域を示すマーカが付加される。
なお、ステップＳ１４の暗号化処理は、ステップＳ１６のマーカ付加処理の直前に実行されてもよい。
【００７８】
次に、上記ステップＳ１５の処理を詳細に説明する。
図１０は、第２の実施の形態のマーカ領域検出処理を示すフローチャートである。以下、各処理をステップ番号に沿って説明する。
【００７９】
［ステップＳ２１］マーカ領域検出部１４０は、暗号化領域指定部１２０から取得した指定領域に対して、制御情報記憶部１１０に記憶された制御情報を参照し、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４を取得する。
【００８０】
［ステップＳ２２］マーカ領域検出部１４０は、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４のうち１つを選択する。例えば、調査領域Ｑ１を選択する。
［ステップＳ２３］マーカ領域検出部１４０は、他の暗号化領域、およびその暗号化領域に付加されたマーカ位置を特定する。具体的には、マーカ領域検出部１４０は、制御情報記憶部１１０に記憶された制御情報を参照して、既に暗号化された領域の座標範囲や既に付加されたマーカの存在する領域の頂点位置を示す座標を取得する。
【００８１】
［ステップＳ２４］マーカ領域検出部１４０は、選択した調査領域に含まれる画素の座標を１つ取得する（座標Ｐとする）。
［ステップＳ２５］マーカ領域検出部１４０は、座標Ｐが他の暗号化領域の範囲外であるか否かを判定する。範囲外である場合、処理をステップＳ２６に進める。範囲内である場合、処理をステップＳ２８に進める。
【００８２】
ここで、座標Ｐが他の暗号化領域（例えば、四角形ＡＢＣＤで表されるとする）の範囲内であるかは、次の各ベクトルの外積によって判定できる。
【００８３】
【数１】
0005541360.tif 000002
【００８４】
（１）〜（４）式において、Ａ，Ｂ，Ｃ，Ｄは、四角形ＡＢＣＤの４つの頂点の座標を示す。（１）〜（４）式が全て０以上、あるいは、全て０以下である場合、座標Ｐは、四角形ＡＢＣＤの線上も含め内部に含まれる。なお、四角形以外の多角形に関しても同様にして、座標Ｐが当該多角形の内部に含まれるか否かを判断することができる。
【００８５】
［ステップＳ２６］マーカ領域検出部１４０は、座標Ｐが他の暗号化領域を示すマーカの範囲外であるか否かを判定する。範囲外である場合、処理をステップＳ２７に進める。範囲内である場合、処理をステップＳ２８に進める。
【００８６】
ここで、座標Ｐが他のマーカの範囲内であるか否かの判定は、ステップＳ２５で示した方法と同一の方法によって行うことができる。
［ステップＳ２７］マーカ領域検出部１４０は、座標Ｐをマーカ領域に追加する。
【００８７】
［ステップＳ２８］マーカ領域検出部１４０は、処理対象の調査領域に含まれる座標のうち、座標Ｐを調査済みに設定する。
［ステップＳ２９］マーカ領域検出部１４０は、選択した調査領域のうち、未調査の座標が存在するか否かを判定する。未調査の座標が存在する場合、処理をステップＳ２４に進める。未調査の座標が存在しない場合、マーカ領域検出部１４０は、取得したマーカ領域をマーカ付加部１５０に出力して、処理をステップＳ３０に進める。例えば、マーカ領域検出部１４０は、調査領域Ｑ１についてマーカ領域Ｒ１を示す情報を出力する。
【００８８】
［ステップＳ３０］マーカ領域検出部１４０は、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４のうち、マーカ領域を未検出の調査領域が存在するか否かを判定する。マーカ領域を未検出の調査領域が存在する場合、処理をステップＳ２２に進める。全ての調査領域につきマーカ領域を検出済みである場合、処理を完了する。
【００８９】
このように、マーカ領域検出部１４０は、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４のうち、他の暗号化領域や他のマーカと重複しない座標を取得する。その座標の集合がマーカ領域である。
【００９０】
図１１は、第２の実施の形態のマーカ領域検出処理の具体例を示す図である。（Ａ）は、暗号化領域３１０ａおよび当該領域を示すマーカと、指定領域３２０の配置の例を示している。（Ｂ）は、（Ａ）の配置においてマーカ領域検出部１４０が検出するマーカ領域の例を示している。なお、指定領域３２０よりも前に指定領域３１０が暗号化され、暗号化領域３１０ａが生成済みであるとする。
【００９１】
暗号化領域３１０ａと指定領域３２０とが近接している場合、暗号化領域３１０ａやそのマーカに調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４の一部が被ることとなる。その場合、マーカ領域検出部１４０は、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４のうち、暗号化領域３１０ａやそのマーカに被らない領域の座標をマーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４として取得する。図１１の例では、図７に示した調査領域Ｑ１，Ｑ２のそれぞれのうち、暗号化領域３１０ａのマーカと重複する領域が排除された領域が、マーカ領域Ｒ１，Ｒ２とされる。マーカ付加部１５０は、マーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４からマーカＭ１，Ｍ２，Ｍ３，Ｍ４を付加する位置を決定することで、暗号化領域３１０ａやそのマーカに重複しないよう各マーカを付加することができる。
【００９２】
次に、図９の上記ステップＳ１６の処理を詳細に説明する。
図１２は、第２の実施の形態のマーカ付加処理を示すフローチャートである。以下、各処理をステップ番号に沿って説明する。
【００９３】
［ステップＳ３１］マーカ付加部１５０は、マーカ領域を選択する。具体的には、マーカ領域検出部１４０が検出したマーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４のうちから１つを選択する。例えば、マーカ領域Ｒ１を選択する。
【００９４】
［ステップＳ３２］マーカ付加部１５０は、制御情報記憶部１１０に記憶された優先度テーブル１１１を参照して、最高優先度のマーカ位置を特定する。具体的には、優先度“１”のマーカ位置を特定する。なお、上述した通り、優先度テーブル１１１と同様の情報が、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４それぞれについて定義されている。例えば、調査領域Ｑ１に対応するマーカ領域Ｒ１を選択した場合、マーカ付加部１５０は、調査領域Ｑ１についての情報である優先度テーブル１１１を参照する。
【００９５】
［ステップＳ３３］マーカ付加部１５０は、特定したマーカ領域にマーカの配置を試みる。マーカ付加部１５０は、マーカ領域内に現在の優先度のマーカ位置でマーカを配置できるか否かを判定する。配置不可の場合、処理をステップＳ３４に進める。配置可の場合、処理をステップＳ３７に進める。
【００９６】
ここで、マーカがマーカ領域の外部にはみ出さない場合、マーカ領域にマーカを配置できる。マーカがマーカ領域の外部にはみ出す場合、マーカ領域に配置不可である。例えば、図１１（Ｂ）のようにマーカ領域Ｒ１が検出された場合、図８に示したマーカＭ１の優先度“１”のようにマーカを配置することは不可である。一方、図１１（Ｂ）のようにマーカ領域Ｒ１が検出された場合、図８に示したマーカＭ１の優先度“２”のようにマーカを配置することは可能である。また、図１１（Ｂ）のようにマーカ領域Ｒ３が検出された場合、マーカＭ３の優先度“１”の位置への配置は可能である。
【００９７】
［ステップＳ３４］マーカ付加部１５０は、優先度テーブル１１１を参照して、現在選択しているよりも低い優先度が存在するか否かを判定する。低い優先度が存在しない場合、処理をステップＳ３５に進める。低い優先度が存在する場合、処理をステップＳ３６に進める。
【００９８】
［ステップＳ３５］マーカ付加部１５０は、エラー処理を実行する。例えば、ユーザに、マーカの配置を行えない旨を通知するメッセージをモニタ１１に表示させる。そして、処理を完了する。
【００９９】
［ステップＳ３６］マーカ付加部１５０は、優先度テーブル１１１を参照して、現在選択しているよりも低い優先度を選択する。例えば、現在の優先度が“１”であれば、優先度“２”を選択する。そして、処理をステップＳ３３に進める。
【０１００】
［ステップＳ３７］マーカ付加部１５０は、現在選択している優先度の位置にマーカを付加する。マーカ付加部１５０は、現在のマーカ領域を処理済みに設定する。
ここで、マーカ付加部１５０は、何れの優先度によって設けたものであるかを読み取り時に識別可能となるように、マーカを付加する。例えば、新たに付加したマーカに対して、基準マーカを所定の位置に付加する。その具体例は、後述する。
【０１０１】
［ステップＳ３８］マーカ付加部１５０は、未処理のマーカ領域が存在するか否かを判定する。未処理のマーカ領域が存在する場合、処理をステップＳ３１に進める。全てのマーカ領域が処理済みである場合、処理を完了する。なお、マーカ領域の選択順序は任意に決定できる。例えば、マーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４の順で選択する。
【０１０２】
このようにして、マーカ付加部１５０は、マーカ領域Ｒ１の外部にはみ出すことなくマーカＭ１を配置できる最高の優先度のマーカ位置を特定する。これにより、他の暗号化領域やマーカとの重複を避け、かつ、新たに設ける暗号化領域との重複を最小限に抑えて、新たなマーカを設けることができる。
【０１０３】
ここで、以下では、上記ステップＳ３７で示したマーカ付加部１５０によるマーカ付加方法の具体例について説明する。まず、読み取りの際に、優先度の判別を可能にするようなマーカ付加方法を説明する。
【０１０４】
図１３は、基準マーカの付加方法を例示する図である。マーカ付加部１５０は、マーカＭ１に対して、基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８を付加する。（Ａ）は優先度“１”の場合を例示している。（Ｂ）は優先度“５”の場合を例示している。
【０１０５】
マーカ付加部１５０は、暗号化領域３２０ａの頂点（図１３では左上の頂点）から水平方向に所定の距離だけ暗号化領域３２０ａの内側方向（図１３では右側方向）の位置に基準点を設定する。そして、基準マーカＭ５，Ｍ６の何れか（例えば、基準マーカＭ５）が基準点に重なるように基準マーカＭ５，Ｍ６を付加する。
【０１０６】
マーカ付加部１５０は、暗号化領域３２０ａの頂点（図１３では左上の頂点）から垂直方向に所定の距離だけ暗号化領域３２０ａの内側方向（図１３では下側方向）の位置に他の基準点を設定する。そして、基準マーカＭ７，Ｍ８の何れか（例えば、基準マーカＭ７）が基準点に重なるように基準マーカＭ７，Ｍ８を付加する。
【０１０７】
このように、基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８は、暗号化領域３２０ａの所定位置に付加される。図１３では基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８として黒点を付加しているが、例えば白点を付加しても構わないし、暗号化領域３２０ａの内側の所定の位置の画素の画素値を反転、シフトを行うことで基準マーカを作成しても構わない。読み取り時には、マーカＭ１と基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８との位置を特定する。そして、マーカＭ１と基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８との相対的な位置関係から、マーカＭ１が何れの優先度で設けられたものであるかを特定できる。
【０１０８】
例えば、画像処理装置２００は、暗号化画像３００ａ上でマーカＭ１を包含する複数行を走査して基準マーカＭ５，Ｍ６を検出する。そして、基準マーカＭ５，Ｍ６のうち基準点である方（例えば、基準マーカＭ５）とマーカＭ１との垂直（または水平）方向の相対位置（ずれ量）を判別する。同様に、画像処理装置２００は、暗号化画像３００ａ上でマーカＭ１を包含する複数列を操作して基準マーカＭ７，Ｍ８を検出する。そして、基準マーカＭ７，Ｍ８のうち基準点である方（例えば、基準マーカＭ７）とマーカＭ１との垂直（または水平）方向の相対位置（ずれ量）を判別する。このようにして、画像処理装置２００はマーカＭ１と各基準マーカとの相対的な位置関係を検出できる。
【０１０９】
優先度とマーカＭ１および基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８の位置関係との対応は、画像処理装置１００，２００との間で予め合意され、復号制御情報記憶部２１０に記憶された復号制御情報に定義される。また、基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８の配置パターン（基準マーカを検出するための基準マーカの色、配置間隔、基準点とするマーカなどを示す情報）は、制御情報記憶部１１０に記憶された制御情報および復号制御情報記憶部２１０に記憶された復号制御情報に予め定義される。
【０１１０】
画像処理装置２００は、当該情報を参照し、マーカＭ１と基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８との相対位置から、マーカＭ１が画像処理装置１００により何れの優先度で付加されたものであるかを特定することができる。
【０１１１】
なお、上記の例では、各マーカに対して複数の基準マーカを設けるものとしたが、暗号化領域３２０ａの端部の各辺の中間点に所定パターンの基準マーカを設けて、隣り合う頂点のマーカで共用としてもよい。例えば、基準マーカＭ５，Ｍ６をマーカＭ１，Ｍ２の共用とし、基準マーカＭ５，Ｍ６をマーカＭ２の優先度を特定するために用いてもよい。また、例えば、基準マーカＭ７，Ｍ８をマーカＭ１，Ｍ３の共用とし、基準マーカＭ７，Ｍ８をマーカＭ３の優先度を特定するために用いてもよい。
【０１１２】
また、上記の例では、水平方向および垂直方向に２つずつ基準マーカを設ける場合を説明したが、各方向に３つ以上の基準マーカを設けてもよい。
更に、新たに付加するマーカのパターンを優先度に応じて変更して、優先度を表示するようにしてもよい。以下、そのような変形例を説明する。
【０１１３】
図１４は、基準マーカの付加方法の他の例を示す図である。マーカ付加部１５０は、優先度に応じてマーカに含まれる各ブロックのパターンを変更する。当該パターンは、実質的に、暗号化領域に対するマーカの相対位置を示す。（Ａ）は優先度“１”の場合を例示している。（Ｂ）は優先度“５”の場合を例示している。
【０１１４】
優先度に応じてパターンを変化させる方法としては、白黒のブロックの出現する順序を変更する、白黒のブロックの周期を変更する、などの例が考えられる。図１４の例では、優先度“１”で配置するマーカＭ１ｅに対して、優先度“５”で配置するマーカＭ１ｆにつきパターンを逆転する場合を例示している。
【０１１５】
なお、何れのパターンが何れの優先度を示すものであるかは、画像処理装置１００，２００との間で予め合意される。そして、その対応情報は、制御情報記憶部１１０に記憶された制御情報および復号制御情報記憶部２１０に記憶された復号制御情報に予め定義される。
【０１１６】
画像処理装置２００は、当該情報を参照することで、マーカＭ１が画像処理装置１００により何れの優先度で付加されたものであるかを特定することができる。
なお、優先度を示す情報はマーカに重なる位置にあってもよいし、マーカと重ならない位置にあってもよい。例えば、図１３で示した基準マーカのパターンを優先度に応じて変更することで、復号側がマーカＭ１の優先度を識別可能にしてもよい。
【０１１７】
次に、マーカ付加方法の具体例について説明する。
図１５は、第２の実施の形態のマーカ付加方法を例示する第１の図である。（Ａ）は、マーカＭ１を暗号化領域３２０ａに被せて設ける場合を例示している。（Ｂ）は、マーカＭ１と被る領域３２１ａを縮小して、マーカＭ１を設ける場合を例示している。
【０１１８】
図１５（Ａ）は、画像処理装置１００において次のように暗号化およびマーカ付加処理が行われた場合を示す。図１２のステップＳ３７において、マーカ付加部１５０は、暗号化領域とその一部が重複する領域にマーカを付加する。このとき、マーカと重複した暗号化領域のデータは失われる。
【０１１９】
画像処理装置２００は、読み取りの際に、暗号化領域３２０ａのマーカＭ１と重なる部分を、暗号化領域３２０ａ中の、当該重複部分と隣接する他の部分の情報から補間する。画像処理装置２００は、補間後の情報に基づいて暗号化領域３２０ａを復号する。
【０１２０】
一方、マーカと暗号化領域３２０ａとが重なる部分が生じた場合には、図１５（Ｂ）のようにしてマーカを付加してもよい。
マーカ付加部１５０は、図１２のステップＳ３７において、暗号化領域３２０ａを領域３２１ａ，３２２ａ，３２３ａ，３２４ａに分割し、重なる部分を含む領域３２１ａを縮小して縮小画像を生成する。そして、縮小画像をマーカＭ１と重ならない領域３２１ｂに配置してから、マーカＭ１を付加する。縮小率は、例えば優先度に応じて決定する。例えば、縮小後の領域３２１ｂのマーカＭ１を配置する側の角がマーカＭ１とちょうど隣接するように縮小率を決定する。
【０１２１】
なお、図１５中、領域３２１ａ，３２１ｂ，３２２ａ，３２３ａ，３２４ａに付したＡＢＣＤの文字は各領域を区別し易いように便宜的に記したものである。
（Ｂ）の場合、画像処理装置２００は、読み取りの際に、領域３２１ｂを領域３２１ａのサイズに拡大して復元する。拡大率は、優先度によって特定できる。画像処理装置２００は、復元後の情報に基づいて暗号化領域３２０ａを復号する。
【０１２２】
次に、暗号化領域３１０ａ，３２０ａが近接している場合のマーカ付加方法の具体例について説明する。
図１６は、第２の実施の形態のマーカ付加方法を例示する第２の図である。（Ａ）は、暗号化領域３１０ａと指定領域３２０とが隣接している場合のマーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４を例示している。（Ｂ）は、そのマーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４に対するマーカＭ１，Ｍ２，Ｍ３，Ｍ４の付加結果を例示している。
【０１２３】
マーカ領域検出部１４０は、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４のうち、暗号化領域３１０ａと重なる領域を除く領域を、マーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４と検出する。（Ａ）の例では、調査領域Ｑ１，Ｑ２と暗号化領域３１０ａとの重なる領域を除く領域がマーカ領域Ｒ１，Ｒ２である。調査領域Ｑ３，Ｑ４は、他の暗号化領域と重なる領域が存在しないため、調査領域Ｑ３，Ｑ４とマーカ領域Ｒ３，Ｒ４とは一致する。
【０１２４】
暗号処理部１３０は、指定領域３２０を暗号化し、暗号化領域３２０ａを生成する。
マーカ付加部１５０は、暗号化領域３２０ａに対するマーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４それぞれにつき、優先度の最も高い位置にマーカＭ１，Ｍ２，Ｍ３，Ｍ４を配置する。
【０１２５】
このように、暗号化領域３２０ａが暗号化領域３１０ａに隣接していても、画像処理装置１００は、その隣接する境界に対してマーカＭ１，Ｍ２を適切に配置できる。
図１７は、第２の実施の形態のマーカ付加方法を例示する第３の図である。（Ａ）は、暗号化領域３３０ａと指定領域３２０とが隣接している場合のマーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４を例示している。（Ｂ）は、そのマーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４に対するマーカＭ１，Ｍ２，Ｍ３，Ｍ４の付加結果を例示している。
【０１２６】
マーカ領域検出部１４０は、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４のうち、暗号化領域３３０ａと重なる領域を除く領域をマーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４と検出する。（Ａ）の例では、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４と暗号化領域３３０ａとの重なる領域を除く領域がマーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４である。
【０１２７】
暗号処理部１３０は、指定領域３２０を暗号化し、暗号化領域３２０ａを生成する。
マーカ付加部１５０は、暗号化領域３２０ａに対するマーカ領域Ｒ１，Ｒ２，Ｒ３，Ｒ４それぞれにつき、優先度の最も高い位置にマーカＭ１，Ｍ２，Ｍ３，Ｍ４を配置する。
【０１２８】
このように、暗号化領域３３０ａの複数の辺が暗号化領域３２０ａに隣接していても、画像処理装置１００は、その隣接する境界に対してマーカＭ１，Ｍ２，Ｍ３，Ｍ４を適切に配置できる。
【０１２９】
画像処理装置２００は、このようにして配置されたマーカＭ１，Ｍ２，Ｍ３，Ｍ４に基づいて、暗号化領域３２０ａを適切に復号することができる。
次に、画像処理装置２００による復号処理について説明する。
【０１３０】
図１８は、復号処理を示すフローチャートである。以下、各処理をステップ番号に沿って説明する。
［ステップＳ４１］マーカ位置検出部２２０は、暗号化画像３００ａを取得する。
【０１３１】
［ステップＳ４２］マーカ位置検出部２２０は、復号制御情報記憶部２１０に記憶された復号制御情報に含まれるマーカの形状や色のパターンに基づいて、暗号化画像３００ａに含まれるマーカ位置を検出する。例えば、暗号化画像３００ａのうち、復号制御情報に含まれるマーカの形状や色のパターンと一致する領域をマーカ位置と検出する。
【０１３２】
［ステップＳ４３］暗号化領域検出部２３０は、１セットのマーカ（以下、マーカセットと称する）を選択する。暗号化領域検出部２３０は、マーカの形状によって、暗号化領域の四隅に存在する１つのマーカセットを特定できる。マーカセットが複数存在する場合、選択する順序は任意に決定できる。例えば、ステップＳ４２において先に検出したマーカを含むマーカセットから順番に選択する。あるいは、暗号化画像３００ａ内における座標値（例えば、ｙ座標）の小さい方から順番に領域を選択する。
【０１３３】
［ステップＳ４４］暗号化領域検出部２３０は、マーカセットに基づいて暗号化領域を特定する。そして、暗号化領域検出部２３０は、特定した暗号化領域を復号処理部２４０に出力する。
【０１３４】
［ステップＳ４５］復号処理部２４０は、暗号化領域検出部２３０から取得した暗号化領域を復号する。
［ステップＳ４６］復号処理部２４０は、暗号化画像３００ａ内に未処理の暗号化領域があるか否かを判定する。未処理の暗号化領域がある場合、処理をステップＳ４３に進める。全ての暗号化領域について処理済みである場合、処理をステップＳ４７に進める。
【０１３５】
［ステップＳ４７］復号処理部２４０は、暗号化画像３００ａに含まれる暗号化領域を全て復号した画像、すなわち、復号画像３００ｂを出力して処理を完了する。
このように、暗号化画像３００ａに含まれる各暗号化領域に対して順にマーカセットが特定され、マーカセットで示される暗号化領域に対して復号が行われる。そして、全ての暗号化領域に対して復号されると、その結果得られた復号画像３００ｂが出力される。復号画像３００ｂは、例えば、画像処理装置２００に接続されたモニタにその内容が表示される。
【０１３６】
次に、上記ステップＳ４４の処理を詳細に説明する。なお、暗号化画像３００ａから、暗号化領域３２０ａが選択されており、当該領域には基準マーカが付加されているとする。
【０１３７】
図１９は、暗号化領域特定処理を示すフローチャートである。以下、各処理をステップ番号に沿って説明する。
［ステップＳ５１］暗号化領域検出部２３０は、マーカセットのうちから、１つマーカを選択する。なお、選択する順序は任意に決定できる。例えば、マーカＭ１，Ｍ２，Ｍ３，Ｍ４の順で選択する。そして、例えばマーカＭ１を選択する。
【０１３８】
［ステップＳ５２］暗号化領域検出部２３０は、基準マーカの位置を検出する。例えば、暗号化領域検出部２３０は、復号制御情報記憶部２１０に記憶された復号制御情報を参照して、マーカＭ１に対する基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８の配置パターンを取得し、その配置パターンに適合するマーカ群を基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８と特定できる。その結果により、基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８の位置を検出できる。
【０１３９】
［ステップＳ５３］暗号化領域検出部２３０は、マーカと各基準マーカとの位置関係から当該マーカが何れの優先度で付加されたものであるかを特定する。基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８によるマーカＭ１の優先度の具体的な特定方法は、図１３で示した通りである。
【０１４０】
［ステップＳ５４］暗号化領域検出部２３０は、マーカの優先度に基づいて、復号制御情報記憶部２１０に記憶された優先度テーブルを参照し、マーカと暗号化領域３２０ａとの位置関係を特定する。暗号化領域検出部２３０は、特定した位置関係に基づいて暗号化領域３２０ａのマーカに対応する頂点の位置を特定する。例えば、マーカＭ１に対して優先度“２”が特定されている場合、優先度テーブルを参照して、マーカＭ１を半ブロック分だけ上方向に移動させた場合に移動後のマーカＭ１の内側の角に隣接する位置を暗号化領域３２０ａのマーカＭ１に対応する頂点の位置と特定することができる。暗号化領域検出部２３０は、当該マーカを処理済みに設定する。
【０１４１】
［ステップＳ５５］暗号化領域検出部２３０は、マーカセットに含まれる全てのマーカについて処理済みであるか否かを判定する。全てのマーカが処理済みである場合、処理をステップＳ５６に進める。未処理のマーカがある場合、処理をステップＳ５１に進める。
【０１４２】
［ステップＳ５６］暗号化領域検出部２３０は、ステップＳ５１〜Ｓ５６の処理によって取得した暗号化領域３２０ａの頂点の位置を示す情報を復号処理部２４０に出力して処理を完了する。
【０１４３】
このように、暗号化領域検出部２３０は、暗号化領域３２０ａの頂点の位置を示す情報を取得し、復号処理部２４０に出力する。
次に、上記ステップＳ４４の処理の変形例を説明する。図１９では、暗号化領域３２０ａに基準マーカが付加された場合（図１３の場合）を説明した。一方、以下では優先度に応じてマーカのパターンが変更される場合（図１４の場合）を説明する。なお、暗号化画像３００ａから、暗号化領域３２０ａが選択されているとする。
【０１４４】
図２０は、暗号化領域特定処理の変形例を示すフローチャートである。図２０では、図１９のステップＳ５２，Ｓ５３に代えてステップＳ５２ａ，Ｓ５３ａを実行とする点が異なっている。その他のステップに関しては、図１９と同一の処理であるため説明を省略する。
【０１４５】
［ステップＳ５２ａ］暗号化領域検出部２３０は、マーカの色のパターンを検出する。例えば、暗号化領域検出部２３０は、マーカＭ１の白黒のパターンを検出する。
［ステップＳ５３ａ］暗号化領域検出部２３０は、マーカのパターンから当該マーカが何れの優先度で付加されたものであるかを特定する。マーカＭ１の優先度の具体的な特定方法は、図１４で示した通りである。
【０１４６】
このような手順によっても、暗号化領域検出部２３０は暗号化領域３２０ａの頂点の位置を示す情報を取得できる。暗号化領域検出部２３０は、暗号化領域３２０ａの頂点の位置を示す情報を復号処理部２４０に出力する。
【０１４７】
復号処理部２４０は、暗号化領域検出部２３０から取得した情報に基づいて、暗号化領域３２０ａの範囲を特定し、当該領域を復号する。
ここで、復号処理部２４０は暗号化領域３２０ａの復号に際し、マーカＭ１が暗号化領域３２０ａに被っている場合、当該領域（重複領域）につき画像情報の補間を行う。
【０１４８】
補間の方法は、暗号処理部１３０および復号処理部２４０が実行する暗号処理のアルゴリズムに準ずる。具体的には、次のような方法が考えられる。
（第１の補間方法）図１５（Ａ）で示したようにマーカＭ１と領域３２１ａとの重複領域が存在する場合であって、当該重複領域を除いた領域で暗号化領域３２０ａを復号できる場合には、復号処理部２４０はマーカＭ１の位置を除いた領域の復号を行う。復号処理の単位は、領域３２１ａ，３２２ａ，３２３ａ，３２４ａなどの分割領域単位としてもよいし、暗号化領域３２０ａ全体を一単位としてもよい。そして、復号処理部２４０は、復号後のマーカＭ１周囲の画素情報を用いて、マーカＭ１の領域の画素情報を補間する。なお、基準マーカＭ５，Ｍ６，Ｍ７，Ｍ８を用いる場合もマーカＭ１と同様にして画素情報を補間する。補間の方法には、例えば、特開２００９−２３２２３３号公報に記載の方法を適用することができる。
【０１４９】
（第２の補間方法）図１５（Ｂ）で示したように領域３２１ａを縮小した領域３２１ｂを設ける場合には、復号処理部２４０は領域３２１ｂを領域３２１ａのサイズに拡大した後に暗号化領域３２０ａの復号処理を行う。
【０１５０】
なお、暗号処理部１３０は、暗号処理時にマーカＭ１の領域を除いた領域で暗号化を行ってもよい。その場合、暗号処理部１３０はマーカ付加部１５０が決定したマーカ位置を取得し、当該マーカ位置に基づいて、マーカＭ１の領域を除いた領域を検出し暗号化する。この場合も、上記の第１の補間方法と同様に復号処理部２４０はマーカＭ１の位置を除いた領域の復号を行う。そして、復号処理部２４０は、復号後のマーカＭ１周囲の画素情報によってマーカＭ１の領域の画素情報を補間する。
【０１５１】
復号処理部２４０は、このようにして復号画像３００ｂを取得できる。
以上で説明した画像処理装置１００によれば、指定領域３１０，３２０が近接して選択された場合でも、暗号化領域３１０ａ，３２０ａをそれぞれ示すマーカを適正な位置に付与することができる。具体的には、画像処理装置１００は、指定領域３２０の暗号化を行う際に、新たにマーカを付加し得る領域の中から、先に暗号化された暗号化領域３１０ａおよび暗号化領域３１０ａを特定するために付加されたマーカと重複しない領域であるマーカ領域を検出する。そして、所定の優先条件に基づいて、マーカ領域のうち新たにマーカを付加すべき位置を特定する。
【０１５２】
画像処理装置２００は、このようにして付加されたマーカに基づいて、近接した暗号化領域３１０ａ，３２０ａを適正に特定できる。そして、各領域につき適正に復号を行うことができる。
【０１５３】
これにより、複数の暗号化領域の配置の自由度が向上する。すなわち、複数の暗号化領域を従来よりも近接した位置に設けることができる。
なお、以上で説明したマーカ付加方法は、例えば印刷物に複数の２次元コードを設ける場合にも適用できる。複数の２次元コードを近接して設けることができるので、例えば各コードを設ける領域の省スペース化を図れる。
【０１５４】
なお、マーカの形状には本実施の形態で示した形状以外にも種々の形状のものを使用することができる。例えば、以下に示すようなマーカを使用してもよい。
図２１は、マーカおよびマーカ領域の第１の変形例を示す図である。（Ａ）は、マーカの形状およびパターンを例示している。（Ｂ）は、そのマーカに応じた調査領域を例示している。
【０１５５】
マーカＭ１ａ，Ｍ２ａ，Ｍ３ａ，Ｍ４ａは、暗号化領域３２０ａの四隅の近傍に設けられる。マーカＭ１ａ，Ｍ２ａ，Ｍ３ａ，Ｍ４ａは、黒線の円内に黒線の「×」印を設けたパターンにより形成されている。例えば、円を形成する黒線の太さと「×」印を形成する二つの黒線の太さの比を変更する、線の交差する角度を変更する、などによって複数のパターンを形成することができる。
【０１５６】
画像処理装置１００は、前述のマーカＭ１，Ｍ２，Ｍ３，Ｍ４に代えて、マーカＭ１ａ，Ｍ２ａ，Ｍ３ａ，Ｍ４ａを設けることもできる。
画像処理装置２００は、マーカＭ１ａ，Ｍ２ａ，Ｍ３ａ，Ｍ４ａを検出することで、暗号化領域３２０ａの範囲を特定できる。
【０１５７】
調査領域Ｑ１ａ，Ｑ２ａ，Ｑ３ａ，Ｑ４ａは、指定領域３２０に対応するマーカＭ１ａ，Ｍ２ａ，Ｍ３ａ，Ｍ４ａを付加し得る領域である。調査領域Ｑ１ａ，Ｑ２ａ，Ｑ３ａ，Ｑ４ａを示す情報は、指定領域３２０の四隅を含む所定の領域として、予め制御情報として定義され、制御情報記憶部１１０に保持される。
【０１５８】
調査領域Ｑ１ａ，Ｑ２ａ，Ｑ３ａ，Ｑ４ａを、マーカＭ１ａ，Ｍ２ａ，Ｍ３ａ，Ｍ４ａの形状に応じて最小限の範囲に決定することで、マーカ領域検出部１４０によるマーカ領域検出処理に要する時間を低減することができる。
【０１５９】
図２２は、マーカおよびマーカ領域の第２の変形例を示す図である。（Ａ）は、マーカの形状およびパターンを例示している。（Ｂ）は、そのマーカに応じた調査領域を例示している。
【０１６０】
マーカＭ１ｂ，Ｍ２ｂ，Ｍ３ｂ，Ｍ４ｂは、暗号化領域３２０ａの四隅に設けられる。マーカＭ１ｂ，Ｍ２ｂ，Ｍ３ｂ，Ｍ４ｂは、黒線の四角形内に、黒の四角形を設けたパターンにより形成されている。例えば、外側の四角形と内側の四角形の大きさの比を変更することで複数のパターンを形成することができる。
【０１６１】
調査領域Ｑ１ｂ，Ｑ２ｂ，Ｑ３ｂ，Ｑ４ｂは、指定領域３２０に対してマーカＭ１ｂ，Ｍ２ｂ，Ｍ３ｂ，Ｍ４ｂの付加可能な領域を探索すべき領域である。調査領域Ｑ１ｂ，Ｑ２ｂ，Ｑ３ｂ，Ｑ４ｂを示す情報は、指定領域３２０の四隅を含む所定の領域として、予め制御情報として定義され、制御情報記憶部１１０に保持される。
【０１６２】
なお、図２１，２２で示した各マーカを用いる場合にも、制御情報記憶部１１０には各マーカに対応付けた優先度テーブルが予め格納される。そして、画像処理装置１００，２００は、当該各マーカを用いた場合にも制御情報記憶部１１０を参照して、マーカＭ１，Ｍ２，Ｍ３，Ｍ４と同様の処理を実行することができる。これにより、マーカＭ１，Ｍ２，Ｍ３，Ｍ４を用いた場合と同様の効果を奏することができる。なお、図２１，２２で示したマーカを配置する位置としては、例えば、指定領域に近づく位置ほど、さらに指定領域の内部側の位置ほど、優先度が低く設定されればよい。
【０１６３】
［第３の実施の形態］
以下、第３の実施の形態を図面を参照して詳細に説明する。前述の第２の実施の形態との相違点について主に説明し、同様の事項に関しては説明を省略する。
【０１６４】
ここで、第２の実施の形態では、暗号化領域３１０ａ，３２０ａのうち、後に暗号化を行う暗号化領域３２０ａのマーカを付加する位置を調整する処理を説明した。しかし、指定領域３２０が暗号化領域３１０ａを示すマーカと被っている場合、新たにマーカを付加することができない場合が生じ得る。
【０１６５】
第３の実施の形態では、そのような場合に、先に暗号化した暗号化領域３１０ａに対して既に付加されているマーカについても位置の調整を行って、暗号化領域３２０ａのマーカの付加を試みる。以下では、そのような処理を実現する画像処理装置について説明する。
【０１６６】
なお、第３の実施の形態における情報処理システムの全体構成は、図２で示した第２の実施の形態の情報処理システムと同様であるため説明を省略する。ただし、第３の実施の形態の情報処理システムは、画像処理装置１００に代えて画像処理装置１００ａを有する。ここで、第３の実施の形態の画像処理装置１００ａのハードウェア構成は、図３で示した画像処理装置１００のハードウェア構成と同一であるため説明を省略する。
【０１６７】
図２３は、第３の実施の形態の画像処理装置の構成を示す図である。画像処理装置１００ａは、制御情報記憶部１１０、暗号化領域指定部１２０、暗号処理部１３０、マーカ領域検出部１４０、マーカ付加部１５０および隣接マーカ変更部１６０を有する。これらの機能は、ＣＰＵ１０１によって所定のプログラムが実行されることにより実現される。また、これらの機能の全部または少なくとも一部が専用のハードウェアによって実現されてもよい。
【０１６８】
ここで、制御情報記憶部１１０、暗号化領域指定部１２０、暗号処理部１３０、マーカ領域検出部１４０およびマーカ付加部１５０は、図４で示した画像処理装置１００の同一符号・名称の構成と同一であるため、説明を省略する。
【０１６９】
ただし、暗号化領域指定部１２０は、指定領域を示す情報を隣接マーカ変更部１６０にも出力する。
隣接マーカ変更部１６０は、既に暗号化されている他の暗号化領域を特定するためのマーカであって、暗号化領域指定部１２０から指定された指定領域と被るマーカ（隣接マーカと称する）の位置を変更する。具体的には、隣接マーカ変更部１６０は、制御情報記憶部１１０に記憶された優先度テーブル１１１を参照して、入力画像３００を操作し、当該隣接マーカを現在よりも低い優先度の位置に変更する。
【０１７０】
マーカ領域検出部１４０は、隣接マーカが存在する場合、隣接マーカ変更部１６０による隣接マーカ位置の変更後の入力画像３００に基づいてマーカ領域を検出する。
ここで、以降の説明では、第２の実施の形態と同様にマーカＭ１，Ｍ２，Ｍ３，Ｍ４を用いるものとする。ただし、図２１，２２で示したような他の形状のマーカを用いてもよい。
【０１７１】
次に、以上の構成を備える画像処理装置１００ａの処理の詳細を説明する。
図２４は、第３の実施の形態の暗号化処理を示すフローチャートである。以下、各処理をステップ番号に沿って説明する。
【０１７２】
［ステップＳ６１］暗号化領域指定部１２０は、入力画像３００を取得する。
［ステップＳ６２］暗号化領域指定部１２０は、入力画像３００に対するユーザの領域指定操作を受け付ける。ユーザは、複数の領域を指定したとする。
【０１７３】
［ステップＳ６３］暗号化領域指定部１２０は、複数の指定領域のうちから１つを選択する。選択の順序は、図９のステップＳ１３と同様に決定できる。例えば、指定領域３１０，３２０に対して、まず、指定領域３１０を選択する。暗号化領域指定部１２０は、選択した領域を示す情報を暗号処理部１３０、マーカ領域検出部１４０および隣接マーカ変更部１６０に出力する。
【０１７４】
［ステップＳ６４］暗号処理部１３０は、入力画像３００のうち、暗号化領域指定部１２０から取得した指定領域を暗号化する。暗号処理部１３０は、入力画像３００のうち、暗号化した領域を示す情報（例えば、その領域の頂点位置を示す情報）を制御情報として制御情報記憶部１１０に格納する。
【０１７５】
［ステップＳ６５］隣接マーカ変更部１６０は、隣接マーカを検出し、その位置を変更する。
［ステップＳ６６］マーカ領域検出部１４０は、暗号化領域指定部１２０から取得した指定領域に対して、制御情報記憶部１１０に記憶された制御情報を参照して、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４を取得する。マーカ領域検出部１４０は、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４から他の暗号化領域や他の暗号化領域を示すマーカと重複する座標を除いて、マーカ領域を検出する。マーカ領域検出部１４０は、検出したマーカ領域をマーカ付加部１５０に出力する。
【０１７６】
［ステップＳ６７］マーカ付加部１５０は、制御情報記憶部１１０に記憶された優先度テーブル１１１を参照して、入力画像３００の暗号化領域に対し、マーカ領域内で最も優先度の高い位置にマーカを付加する。マーカ付加部１５０は、マーカを付加した領域を示す情報（例えば、その領域の頂点位置を示す情報）を制御情報として制御情報記憶部１１０に格納する。
【０１７７】
［ステップＳ６８］マーカ付加部１５０は、入力画像３００内に未処理の指定領域があるか否かを判定する。未処理の指定領域がある場合、処理をステップＳ６３に進める。全ての指定領域について処理済みである場合、暗号化画像３００ａを出力して処理を完了する。
【０１７８】
このように、指定領域ごとに暗号化が行われる。その際、隣接マーカが存在する場合には、隣接マーカの位置が変更される。
なお、ステップＳ６４の暗号化処理は、ステップＳ６７のマーカ付加処理の直前に実行されてもよい。
【０１７９】
次に、上記ステップＳ６５の処理を詳細に説明する。
図２５は、第３の実施の形態の隣接マーカ変更処理を示すフローチャートである。以下、各処理をステップ番号に沿って説明する。
【０１８０】
［ステップＳ７１］隣接マーカ変更部１６０は、暗号化領域指定部１２０から取得した指定領域に他のマーカが重なるか否かを判定する。指定領域に他のマーカが重なる場合、処理をステップＳ７２に進める。指定領域に他のマーカが重ならない場合、処理を完了する。
【０１８１】
［ステップＳ７２］隣接マーカ変更部１６０は、指定領域に重なる他のマーカ、すなわち、隣接マーカを１つ選択する。隣接マーカ変更部１６０は、隣接マーカが何れの優先度で付加されたものであるかを特定する。隣接マーカの優先度は、図１９，２０で示した方法と同様の方法によって特定することができる。あるいは、隣接マーカの付加時に、その優先度を制御情報記憶部１１０に格納しておき、必要に応じて制御情報記憶部１１０を参照することで隣接マーカの優先度を特定可能としてもよい。また、隣接マーカの付加時に、その優先度を画像データのヘッダに付加しておき、必要に応じて当該ヘッダから隣接マーカの優先度を特定可能としてもよい。
【０１８２】
［ステップＳ７３］隣接マーカ変更部１６０は、選択した隣接マーカを消去する。隣接マーカ変更部１６０は、隣接マーカを消去した領域を補間する。具体的には、特開２００９−２３２２３３号公報に記載の方法を適用できる。例えば、周囲の画像から近似的に補間する、予め退避しておいた隣接マーカに対応する一部画像から補間する、などの方法を採ることができる。
【０１８３】
［ステップＳ７４］隣接マーカ変更部１６０は、当該隣接マーカにつきステップＳ７２で特定した優先度よりも低い優先度を決定する。例えば、ステップＳ７２で特定した優先度よりも１段階低い優先度を決定する。隣接マーカ変更部１６０は、制御情報記憶部１１０に記憶された優先度テーブル１１１を参照して、決定した優先度に対応するマーカ位置を特定する。
【０１８４】
［ステップＳ７５］隣接マーカ変更部１６０は、決定したマーカ位置に、隣接マーカに代わるマーカを付加する。そして、処理をステップＳ７１に進める。
このようにして、隣接マーカの位置が変更される。隣接マーカの変更は、指定領域に重なる隣接マーカが存在しなくなるまで、順次行われる。
【０１８５】
図２６，２７は、第３の実施の形態のマーカ付加方法を例示する図である。
暗号化領域指定部１２０は、入力画像３００に対して指定領域３１０，３２０の指定を受け付ける。指定領域３１０，３２０の位置関係は、各四角形領域の１つの頂点が近接した状態であるとする。暗号化領域指定部１２０は、指定領域３１０，３２０のうち指定領域３１０を最初に選択する。そして、暗号処理部１３０は指定領域３１０につき暗号化領域３１０ａを生成する。マーカ付加部１５０は、暗号化領域３１０ａに対して、マーカを付加する。
【０１８６】
次に、暗号化領域指定部１２０は、指定領域３２０を選択する。
隣接マーカ変更部１６０は、暗号化領域３１０ａに付加されたマーカのうちの一つのマーカを隣接マーカＭＡ１と検出する。隣接マーカ変更部１６０は、隣接マーカＭＡ１が何れの優先度によって付加されたものであるかを特定する。隣接マーカ変更部１６０は、例えば、優先度“１”であると特定する（ステップＳＴ１）。
【０１８７】
隣接マーカ変更部１６０は、隣接マーカＭＡ１を消去する。隣接マーカ変更部１６０は、隣接マーカＭＡ１を消去した領域を所定の方法によって補間する（ステップＳＴ２）。
隣接マーカ変更部１６０は、隣接マーカＭＡ１を付加し得る位置のうち、優先度が現在よりも低い位置に、代わりのマーカを付加する。例えば、優先度“１”よりも１段階低い優先度“２”に対応する位置にマーカを付加する。隣接マーカ変更部１６０は、順に優先度を下げながら（ステップＳＴ１，ＳＴ２を繰り返し実行し）、そのマーカが指定領域３２０と重ならない位置となるまでマーカを移動させる。その結果、隣接マーカ変更部１６０は、マーカＭＡ１ａを付加する。マーカＭＡ１ａは、例えば優先度“４”に対応する位置に設けられたものであり、指定領域３２０と重ならないマーカである。これにより、隣接マーカ変更部１６０による隣接マーカ変更処理は完了する（ステップＳＴ３）。
【０１８８】
マーカ領域検出部１４０は、隣接マーカ変更部１６０による隣接マーカ変更後の画像情報に基づいて、指定領域３２０に対する調査領域を検出する。マーカ付加部１５０は、暗号処理部１３０により暗号化された指定領域３２０のマーカ領域検出部１４０が検出した調査領域内から最も優先度の高い位置にマーカを付加する。その結果、マーカＭＡ１ａの角に対応する位置に、マーカＭＢ１を付加する。マーカＭＢ１は、例えば優先度“４”に対応する位置に設けられたものであり、マーカＭＡ１ａと重ならないマーカである。
【０１８９】
このように、画像処理装置１００ａは、隣接マーカが存在する場合には、指定領域と重ならないよう隣接マーカの位置を変更した後に、指定領域に対応するマーカを付加する。これにより、付加済みのマーカが現在処理対象としている指定領域に重なる場合にも、指定領域に対応するマーカを適正に付加することができる。
【０１９０】
このような処理により、第２の実施の形態よりも複数の暗号化領域の配置の自由度が向上する。すなわち、複数の暗号化領域をより近接した位置に設けることができる。更に、暗号化領域を複数設ける場合に、より省スペース化を図れる。
【０１９１】
［第４の実施の形態］
以下、第４の実施の形態を図面を参照して詳細に説明する。前述の第２，第３の実施の形態との相違点について主に説明し、同様の事項に関しては説明を省略する。
【０１９２】
ここで、第２，３の実施の形態では、マーカが他のマーカと重なる場合に、他のマーカと重ならない位置に新たなマーカを設けることとした。しかし、利用するマーカの形状や他のマーカとの位置関係によっては、他のマーカの一部を新たなマーカの一部とすることもできる。そこで、第４の実施の形態では、このように他のマーカの一部を新たなマーカの一部とできる画像処理装置を提供する。
【０１９３】
なお、第４の実施の形態における情報処理システムの全体構成は、図２で示した第２の実施の形態の情報処理システムと同様であるため説明を省略する。ただし、第４の実施の形態の情報処理システムは、画像処理装置１００に代えて画像処理装置１００ｂを有する。ここで、第４の実施の形態の画像処理装置１００ｂのハードウェア構成は、図３で示した画像処理装置１００のハードウェア構成と同一であるため説明を省略する。
【０１９４】
また、以下の説明では、第２の実施の形態で示したマーカＭ１，Ｍ２，Ｍ３，Ｍ４を用いるものとする。
図２８は、第４の実施の形態の画像処理装置の構成を示す図である。画像処理装置１００ｂは、制御情報記憶部１１０、暗号化領域指定部１２０、暗号処理部１３０、マーカ領域検出部１４０、マーカ付加部１５０および合成配置座標特定部１７０を有する。これらの機能は、ＣＰＵ１０１によって所定のプログラムが実行されることにより実現される。また、これらの機能の全部または少なくとも一部が専用のハードウェアによって実現されてもよい。
【０１９５】
ここで、制御情報記憶部１１０、暗号化領域指定部１２０、暗号処理部１３０、マーカ領域検出部１４０およびマーカ付加部１５０は、図４で示した画像処理装置１００の同一符号・名称の構成と同一であるため、説明を省略する。
【０１９６】
合成配置座標特定部１７０は、制御情報記憶部１１０を参照して、調査領域と入力画像３００に既に付加されているマーカの位置とに基づいて、合成配置座標を特定する。ここで、合成配置座標とは、マーカＭ１，Ｍ２，Ｍ３，Ｍ４の何れかに対して、他の所定の形状のマーカを付加すべき座標を示す。他の形状のマーカを付加する位置は、Ｌ字型のマーカＭ１，Ｍ２，Ｍ３，Ｍ４に対して、各辺が交わる位置である（後述する）。合成配置座標特定部１７０は、特定した合成配置座標をマーカ付加部１５０に出力する。
【０１９７】
マーカ付加部１５０は、合成配置座標特定部１７０から合成配置座標を取得している場合、その座標位置へのマーカの付加を優先して行う。合成配置座標を取得していない場合には、制御情報記憶部１１０に記憶された優先度テーブル１１１を参照して、マーカ領域検出部１４０から取得したマーカ領域のうち、優先度の最も高い位置にマーカを付加する。
【０１９８】
次に、以上の構成を備える画像処理装置１００ｂの処理の詳細を説明する。
図２９は、第４の実施の形態の合成に係るマーカを例示する図である。（Ａ）は合成位置を示す。（Ｂ）は合成用マーカの一例を示す。（Ｃ）は合成用マーカの他の例を示す。合成位置ＢＬ１は、Ｌ字型のマーカ（図２９では、マーカＭ３を例示している）の横のパターンと縦のパターンとが交差する位置である。合成配置座標は、例えば、合成位置ＢＬ１の中心の座標である。
【０１９９】
合成用マーカＭ１１，Ｍ１２は、マーカＭ１，Ｍ２，Ｍ３，Ｍ４の各合成位置ＢＬ１に付加するためのマーカである。
合成用マーカＭ１１は、合成位置ＢＬ２，ＢＬ３を有している。例えば、マーカＭ３の合成位置ＢＬ１と、合成用マーカＭ１１の合成位置ＢＬ２とを重ねて配置することで、マーカＭ３と合成用マーカＭ１１とを合成することができる。
【０２００】
合成用マーカＭ１２は、合成位置ＢＬ４，ＢＬ５を有している。例えば、マーカＭ３の合成位置ＢＬ１と、合成用マーカＭ１２の合成位置ＢＬ５を重ねて配置することで、マーカＭ３と合成用マーカＭ１２とを合成することができる。
【０２０１】
なお、合成用マーカＭ１１，Ｍ１２は、調査領域内に収まる場合のみ配置可能である。
図３０は、第４の実施の形態の既存マーカと調査領域との位置関係を例示する図である。既存マーカＭＣ１は、既に生成済みの暗号化領域に対して付加されている既存のマーカである。また、調査領域Ｑ１は、上部Ｑｔおよび左部Ｑｌを有する。なお、上部Ｑｔと左部Ｑｌとが重なる領域は、上部Ｑｔおよび左部Ｑｌの何れにも属する。
【０２０２】
以下の説明において、「既存マーカの一辺が調査領域に全て収まっている場合」との表現は、例えば既存マーカＭＣ１の横の一辺が調査領域Ｑ１の上部Ｑｔに収まっているような状態（図３０に示した状態）をいう。
【０２０３】
なお、他の調査領域Ｑ２，Ｑ３，Ｑ４に関しても同様に各部を定義することができる。例えば、調査領域Ｑ２であれば、上部と右部とを同様に定義できる。調査領域Ｑ３であれば、下部と左部とを同様に定義できる。調査領域Ｑ４であれば、下部と右部とを同様に定義できる。
【０２０４】
次に、以上の構成を備える画像処理装置１００ｂの処理の詳細を説明する。
図３１は、第４の実施の形態の暗号化処理を示すフローチャートである。以下、各処理をステップ番号に沿って説明する。
【０２０５】
［ステップＳ８１］暗号化領域指定部１２０は、入力画像３００を取得する。
［ステップＳ８２］暗号化領域指定部１２０は、入力画像３００に対するユーザの領域指定操作を受け付ける。ユーザは、複数の領域を指定したとする。
【０２０６】
［ステップＳ８３］暗号化領域指定部１２０は、複数の指定領域のうちから１つを選択する。選択の順序は、図９のステップＳ１３と同様に決定できる。例えば、指定領域３１０，３２０に対して、まず、指定領域３１０を選択する。暗号化領域指定部１２０は、選択した領域を示す情報を暗号処理部１３０およびマーカ領域検出部１４０に出力する。
【０２０７】
［ステップＳ８４］暗号処理部１３０は、入力画像３００のうち、暗号化領域指定部１２０から取得した指定領域を暗号化する。暗号処理部１３０は、入力画像３００のうち、暗号化した領域を示す情報（例えば、その領域の頂点位置を示す情報）を制御情報として制御情報記憶部１１０に格納する。
【０２０８】
［ステップＳ８５］マーカ領域検出部１４０は、暗号化領域指定部１２０から取得した指定領域に対して、制御情報記憶部１１０に記憶された制御情報を参照して、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４を取得する。マーカ領域検出部１４０は、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４から他の暗号化領域や他の暗号化領域を示すマーカと重複する座標を除いて、マーカ領域を検出する。マーカ領域検出部１４０は、検出したマーカ領域をマーカ付加部１５０および合成配置座標特定部１７０に出力する。
【０２０９】
［ステップＳ８６］合成配置座標特定部１７０は、調査領域と既存マーカとの重複があるか否かを判定する。重複がある場合、処理をステップＳ８７に進める。重複がない場合、処理をステップＳ８８に進める。なお、重複がある場合とは、既存マーカの一辺が全て調査領域に収まっている場合をいう。例えば、調査領域Ｑ１に既存マーカＭＣ１の一辺が全て収まっていない場合には、マーカを合成したとしても、合成後のマーカが現在処理対象としている指定領域に対して適正な形状とはならない。例えば、縦５ブロック×横５ブロックで設けられるべきマーカが縦５ブロック×横３ブロックとなるなど、完全な形状・パターンを形成しない。このような理由から、既存マーカの一辺が調査領域に全て収まっていない場合には、マーカ合成は行わない。
【０２１０】
［ステップＳ８７］合成配置座標特定部１７０は、既存マーカに対して合成用マーカの合成を試みる。合成配置座標特定部１７０は、合成が可能な場合、合成配置座標を取得してマーカ付加部１５０に出力する。合成配置座標特定部１７０は、合成が不可能の場合、マーカ付加部１５０への情報の出力を行わない。
【０２１１】
［ステップＳ８８］マーカ付加部１５０は、合成配置座標特定部１７０から合成配置座標を取得している場合、当該座標位置に合成用マーカを付加する。マーカ付加部１５０は、合成配置座標特定部１７０から合成配置座標を取得していない場合、制御情報記憶部１１０に記憶された優先度テーブル１１１を参照して、マーカ領域検出部１４０から取得したマーカ領域内で最も優先度の高い位置にマーカを付加する。マーカ付加部１５０は、マーカを付加した領域を示す情報（例えば、その領域の頂点位置を示す情報）を制御情報として制御情報記憶部１１０に格納する。
【０２１２】
［ステップＳ８９］マーカ付加部１５０は、入力画像３００内に未処理の指定領域があるか否かを判定する。未処理の指定領域がある場合、処理をステップＳ８３に進める。全ての指定領域について処理済みである場合、暗号化画像３００ａを出力して処理を完了する。
【０２１３】
このように、調査領域と既存マーカとの重複がある場合、合成配置座標が特定される。合成配置座標が特定された場合、合成配置座標に対して優先的に合成用マーカが付加される。
【０２１４】
なお、ステップＳ８４の暗号化処理は、ステップＳ８８のマーカ付加処理の直前に実行されてもよい。
次に、上記ステップＳ８７の処理を詳細に説明する。
【０２１５】
図３２は、第４の実施の形態のマーカ合成配置座標特定処理を示すフローチャートである。以下、各処理をステップ番号に沿って説明する。
［ステップＳ９１］合成配置座標特定部１７０は、調査領域と既存マーカとが重複する領域の中から１つ座標を取得する。
【０２１６】
［ステップＳ９２］合成配置座標特定部１７０は、その座標に合成用マーカの付加を試みる。付加する合成用マーカを何れの形状とすべきかについては、処理対象のマーカ領域が指定位置の何れに位置しているか、および、そのマーカ領域の何れの位置に既存マーカが存在するかにより判断できる。例えば、調査領域Ｑ１の上部Ｑｔに既存マーカの一辺との重複領域が存在すれば、合成用マーカＭ１１を選択できる。また、例えば、調査領域Ｑ１の左部Ｑｌに既存マーカの一辺との重複領域が存在すれば、合成用マーカＭ１２を選択できる。
【０２１７】
合成配置座標特定部１７０は、当該座標に合成用マーカを配置した場合に、既存マーカのパターンに変化があるか否かを判定する。変化がない場合、処理をステップＳ９３に進める。変化がある場合、処理をステップＳ９５に進める。ここで、既存マーカのパターンに変化がある場合とは、例えば、黒白黒白黒のパターンが、合成用マーカの配置によって、黒黒黒白黒や黒白黒黒黒となってしまうような場合である。あるいは、各ブロックの中心座標が選択されていない場合には、当該ブロック内に、白と黒とが混在してしまうような場合も考えられる。
【０２１８】
［ステップＳ９３］合成配置座標特定部１７０は、合成用マーカを配置した場合に、調査領域内に配置できるか否かを判定する。調査領域内に配置できる場合、処理をステップＳ９４に進める。調査領域内に配置できない場合、処理をステップＳ９５に進める。
【０２１９】
［ステップＳ９４］合成配置座標特定部１７０は、ステップＳ９１で選択した座標を合成配置座標としてマーカ付加部１５０に出力する。そして、処理を完了する。
［ステップＳ９５］合成配置座標特定部１７０は、調査領域と既存マーカとが重複する領域に含まれる全ての座標について、処理済みであるか否かを判定する。未処理の座標が存在する場合、処理をステップＳ９１に進める。全ての座標を処理済みである場合、処理を完了する。
【０２２０】
このように、調査領域と既存マーカとが重複する領域に含まれる各座標に合成用マーカを配置した場合に、既存マーカのパターンが変更されるか否かなどに基づいて、合成配置座標が特定される。
【０２２１】
次に、マーカ付加部１５０によるマーカ付加方法の具体例を説明する。
図３３は、第４の実施の形態のマーカ付加方法を例示する図である。（Ａ）は、暗号化領域３１０ａと指定領域３２０が近接している場合で、かつ、指定領域３２０の調査領域Ｑ１に既存マーカＭＣ１の横方向の一辺の全てが含まれている場合を例示している。（Ｂ）は、その後、暗号化領域３２０ａに対してマーカを付加した場合を例示している。
【０２２２】
合成配置座標特定部１７０は、指定領域３２０に対する調査領域Ｑ１に既存マーカＭＣ１の横方向の一辺が全て含まれていることを検知する。すると、合成配置座標特定部１７０は、既存マーカＭＣ１と調査領域Ｑ１とが重複する座標において、合成用マーカの付加を試みる。合成配置座標特定部１７０は、調査領域Ｑ１の上部Ｑｔに重複領域が存在することから、合成用マーカＭ１１を選択する。そして、既存マーカＭＣ１のパターンを変更させず、かつ、調査領域Ｑ１内に合成用マーカＭ１１が収まる位置を検出する。その結果、合成配置座標特定部１７０は、例えば既存マーカＭＣ１の合成位置ＢＬ１の中心の座標を合成配置座標として特定し、マーカ付加部１５０に出力する。
【０２２３】
マーカ付加部１５０は、合成配置座標特定部１７０が特定した合成配置座標に合成用マーカＭ１１を付加し、合成マーカＭＣ１ａを生成する。
合成マーカＭＣ１ａは、暗号化領域３１０ａの１つの頂点を特定するために用いることができるとともに、暗号化領域３２０ａの１つの頂点を特定するために用いることもできる。画像処理装置２００は、合成マーカＭＣ１ａを含む各マーカを検出することで、暗号化領域３１０ａ，３２０ａを適正に検出できる。
【０２２４】
このように、画像処理装置１００ｂは、所定の場合に既存マーカＭＣ１に合成用マーカＭ１１を付加して合成マーカＭＣ１ａを生成する。これにより、暗号化領域３１０ａ，３２０ａと各領域のマーカとが重複する領域を縮小できる。その結果、暗号化領域３１０ａ，３２０ａを復号する際の補間範囲を縮小できるので、読み取り側での復号処理を効率的に行うことができる。
【０２２５】
次に、上記マーカ合成配置座標特定処理の変形例を説明する。
図３４は、第４の実施の形態の暗号化処理の変形例を示すフローチャートである。以下、各処理をステップ番号に沿って説明する。
【０２２６】
［ステップＳ１０１］暗号化領域指定部１２０は、入力画像３００を取得する。
［ステップＳ１０２］暗号化領域指定部１２０は、入力画像３００に対するユーザの領域指定操作を受け付ける。ユーザは、複数の領域を指定したとする。
【０２２７】
［ステップＳ１０３］暗号化領域指定部１２０は、複数の指定領域のうちから１つを選択する。選択の順序は、図９のステップＳ１３と同様に決定できる。例えば、指定領域３１０，３２０に対して、まず、指定領域３１０を選択する。暗号化領域指定部１２０は、選択した領域を示す情報を暗号処理部１３０およびマーカ領域検出部１４０に出力する。
【０２２８】
［ステップＳ１０４］マーカ領域検出部１４０は、暗号化領域指定部１２０から取得した指定領域に対して、制御情報記憶部１１０に記憶された制御情報を参照して、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４を取得する。マーカ領域検出部１４０は、調査領域Ｑ１，Ｑ２，Ｑ３，Ｑ４から他の暗号化領域や他の暗号化領域を示すマーカと重複する座標を除いて、マーカ領域を検出する。マーカ領域検出部１４０は、検出したマーカ領域をマーカ付加部１５０および合成配置座標特定部１７０に出力する。
【０２２９】
［ステップＳ１０５］合成配置座標特定部１７０は、調査領域と既存マーカとの重複があるか否かを判定する。重複がある場合、処理をステップＳ１０８に進める。重複がない場合、処理をステップＳ１０６に進める。なお、「重複がある場合」の判定方法は、図３１のステップＳ８６で示した方法と同様である。
【０２３０】
［ステップＳ１０６］合成配置座標特定部１７０は、指定領域を変更することで調査領域と既存マーカとを重複関係にできるか否かを判定する。重複関係にできる場合、処理をステップＳ１０７に進める。重複関係にできない場合、処理をステップＳ１０９に進める。ここで、重複関係とは、ステップＳ１０５において「重複がある」と判定できる場合の調査領域と既存マーカとの位置関係を示す。すなわち、既存マーカの一辺が全て調査領域に収まっているような位置関係である。
【０２３１】
［ステップＳ１０７］合成配置座標特定部１７０は、指定領域を変更する。例えば、指定領域を上記重複関係を形成できるまで所定方向（例えば、左右方向の何れか、あるいは上下方向の何れか）に広げる。あるいは、指定領域を上記重複関係を形成できるまで所定方向に移動させる。合成配置座標特定部１７０は、変更後の指定領域の範囲を示す情報を暗号処理部１３０に出力する。そして、処理をステップＳ１０８に進める。
【０２３２】
［ステップＳ１０８］合成配置座標特定部１７０は、既存マーカに対して合成用マーカの合成を試みる。合成配置座標特定部１７０は、合成が可能な場合、合成配置座標を取得してマーカ付加部１５０に出力する。合成配置座標特定部１７０は、合成が不可能の場合、マーカ付加部１５０への情報の出力を行わない。
【０２３３】
［ステップＳ１０９］暗号処理部１３０は、ステップＳ１０７で合成配置座標特定部１７０から変更後の指定領域を示す情報を取得している場合、入力画像３００のうち、当該変更後の指定領域を暗号化する。暗号処理部１３０は、変更後の指定領域を示す情報を取得していない場合、暗号化領域指定部１２０から取得した指定領域を暗号化する。暗号処理部１３０は、入力画像３００のうち、暗号化した領域を示す情報（例えば、その領域の頂点位置を示す情報）を制御情報として制御情報記憶部１１０に格納する。
【０２３４】
［ステップＳ１１０］マーカ付加部１５０は、合成配置座標特定部１７０から合成配置座標を取得している場合、当該座標位置に合成用マーカを付加する。マーカ付加部１５０は、合成配置座標特定部１７０から合成配置座標を取得していない場合、制御情報記憶部１１０に記憶された優先度テーブル１１１を参照して、マーカ領域検出部１４０から取得したマーカ領域内で最も優先度の高い位置にマーカを付加する。マーカ付加部１５０は、マーカを付加した領域を示す情報（例えば、その領域の頂点位置を示す情報）を制御情報として制御情報記憶部１１０に格納する。
【０２３５】
［ステップＳ１１１］マーカ付加部１５０は、入力画像３００内に未処理の指定領域があるか否かを判定する。未処理の指定領域がある場合、処理をステップＳ１０３に進める。全ての指定領域について処理済みである場合、暗号化画像３００ａを出力して処理を完了する。
【０２３６】
このように、ステップＳ１０６にいう「重複関係」が成立していない場合に、指定領域が変更され、「重複関係」を形成した後に、マーカ合成が行われる。
次に、当該変形例の場合におけるマーカ付加部１５０によるマーカ付加方法の具体例を説明する。
【０２３７】
図３５は、第４の実施の形態のマーカ付加方法の変形例を示す図である。（Ａ）は、暗号化領域３１０ａと指定領域３２０が近接している場合で、かつ、指定領域３２０の調査領域Ｑ１に既存マーカＭＣ１の横方向の一辺（辺ＭＣ１ｈとする）の一部が含まれている場合を例示している。なお、調査領域Ｑ１から、既存マーカＭＣ１の辺ＭＣ１ｈが長さＬ１だけはみ出しているとする。（Ｂ）は、その後、暗号化領域３２０ａに対してマーカを付加した場合を例示している。
【０２３８】
合成配置座標特定部１７０は、指定領域３２０を左方向に長さＬ２だけ拡大させれば、既存マーカＭＣ１の辺ＭＣ１ｈを調査領域Ｑ１に内に全て納めることができることを検知する。そして、合成配置座標特定部１７０は、指定領域３２０を左方向に長さＬ２だけ拡大させる。合成配置座標特定部１７０は、変更後の指定領域の範囲を示す情報を暗号処理部１３０に出力する。なお、合成配置座標特定部１７０は、指定領域３２０を左方向に長さＬ２だけ移動させてもよい。
【０２３９】
以降の処理は、図３２，３３と同様である。ただし、暗号処理部１３０は変更後の指定領域に対して暗号化を行い、暗号化領域３２０ａを生成する。そして、マーカ付加部１５０は、既存マーカＭＣ１に合成用マーカＭ１１を付加して、合成マーカＭＣ１ａを生成する。
【０２４０】
このような方法によっても、画像処理装置１００ｂは、既存マーカＭＣ１に合成用マーカＭ１１を付加して合成マーカＭＣ１ａを生成できる。これにより、合成マーカＭＣ１ａの生成機会を向上できる。その結果、暗号化領域３１０ａ，３２０ａと各領域のマーカとが重複する領域をより低減できる。また、暗号化領域３１０ａ，３２０ａを復号する際の補間範囲を低減できるので、読み取り側での復号処理をより効率的に行うことができる。
【０２４１】
以上、本発明の画像処理装置および画像処理方法を図示の実施の形態に基づいて説明したが、これらに限定されるものではなく、各部の構成は同様の機能を有する任意の構成のものに置換することができる。また、他の任意の構成物や工程が付加されてもよい。更に、前述した実施の形態のうちの任意の２以上の構成（特徴）を組み合わせたものであってもよい。
【０２４２】
上記については単に本発明の原理を示すものである。さらに、多数の変形、変更が当業者にとって可能であり、本発明は上記に示し、説明した正確な構成および応用例に限定されるものではなく、対応するすべての変形例および均等物は、添付の請求項およびその均等物による本発明の範囲とみなされる。
【符号の説明】
【０２４３】
１  画像処理装置
１ａ  領域指定部
１ｂ  画像処理部
１ｃ  マーカ領域検出部
１ｄ  マーカ付加部
２  入力画像
３  出力画像
４  処理領域
５  マーカ領域
６  マーカ
【図１】
0005541360.tif 000003
【図２】
0005541360.tif 000004
【図３】
0005541360.tif 000005
【図４】
0005541360.tif 000006
【図５】
0005541360.tif 000007
【図６】
0005541360.tif 000008
【図７】
0005541360.tif 000009
【図８】
0005541360.tif 000010
【図９】
0005541360.tif 000011
【図１０】
0005541360.tif 000012
【図１１】
0005541360.tif 000013
【図１２】
0005541360.tif 000014
【図１３】
0005541360.tif 000015
【図１４】
0005541360.tif 000016
【図１５】
0005541360.tif 000017
【図１６】
0005541360.tif 000018
【図１７】
0005541360.tif 000019
【図１８】
0005541360.tif 000020
【図１９】
0005541360.tif 000021
【図２０】
0005541360.tif 000022
【図２１】
0005541360.tif 000023
【図２２】
0005541360.tif 000024
【図２３】
0005541360.tif 000025
【図２４】
0005541360.tif 000026
【図２５】
0005541360.tif 000027
【図２６】
0005541360.tif 000028
【図２７】
0005541360.tif 000029
【図２８】
0005541360.tif 000030
【図２９】
0005541360.tif 000031
【図３０】
0005541360.tif 000032
【図３１】
0005541360.tif 000033
【図３２】
0005541360.tif 000034
【図３３】
0005541360.tif 000035
【図３４】
0005541360.tif 000036
【図３５】
0005541360.tif 000037