(57)【特許請求の範囲】
【請求項１】
所定の規則性を有して配列されたドットの集合である角度検出ドットパターン及び所定の情報を示す信号ドットパターンが埋め込まれた透かし画像と画像とが重ね合わされて印刷された透かし入り印刷媒体が，入力デバイスにより所定の解像度で読み取られ生成された入力画像に対し，その入力画像の傾きを検出する傾き検出部と；
前記入力画像を基にして前記透かし画像に埋め込まれた前記信号ドットパターンを検出することにより，情報を検出する情報検出部と；
を備え，
前記入力画像の傾きを検出する際の傾きの基準となる基準入力画像に存在する２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線を含んだ基準直線群の傾きと間隔が既知であり；
前記傾き検出部は，前記入力画像に含まれる前記角度検出ドットパターンにおける２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線が含まれた直線群を基にして直線の傾きを検出し，前記基準直線の傾きと前記直線の傾きとを比較することで，前記入力画像の傾きを検出することを特徴とする，画像処理装置。
【請求項２】
前記ドットパターンは，所定の方向に所定の間隔でドットが配置され，前記ドットの輝度値を振幅とし，前記所定の方向と垂直な方向を伝播方向とするものであることを特徴とする，請求項１に記載の画像処理装置。
【請求項３】
前記直線群に属する複数の直線は直線間の距離が等しい直線であり，かつ，前記基準直線群に属する複数の基準直線は，直線間の距離が等しい直線であり，前記傾き検出部は，その直線群及び基準直線群を基にして入力画像の傾きを検出することを特徴とする，請求項１又は２に記載の画像処理装置。
【請求項４】
前記傾き検出部は，
前記入力画像のうち所定領域内のドットを構成する全ての画素についてＨｏｕｇｈ変換を施しそれら各画素に対する軌跡各々を変換座標上に求め；
一の軌跡上の同一地点に他の軌跡が交差する回数を示す交差数を，軌跡上に存在する各交差点について求め；
前記変換座標の角度成分軸と垂直な垂直線上に存在する前記交差点のうち交差数が極大となる極大交差点の分布を前記角度成分軸方向に調べていき；
前記極大交差点が所定の間隔で出現するような分布である場合の角度成分を第１の角度成分として取得し；
前記基準入力画像を基にして既に求められた前記極大交差点が所定の間隔で出現するような分布である場合の第２の角度成分と前記第１の角度成分とを比較することで，前記入力画像の傾きを検出することを特徴とする，請求項１〜３のいずれかに記載の画像処理装置。
【請求項５】
前記傾き検出部は，所定の周期からなる関数と前記垂直線上に存在する極大交差点の分布との相関が最大になる場合，そのときの極大交差点が分布する垂直線の角度成分を前記第１の角度成分として取得することを特徴とする，請求項４に記載の画像処理装置。
【請求項６】
前記所定の周期からなる関数は，正弦関数であり，その所定の周期は，前記極大交差点が出現する所定の間隔と等しいことを特徴とする，請求項５に記載の画像処理装置。
【請求項７】
さらに，前記傾き検出部により検出された前記入力画像の傾きを基にして，入力画像の傾きを補正する傾き補正部を備えることを特徴とする，請求項１〜６のいずれかに記載の画像処理装置。
【請求項８】
所定の規則性を有して配列されたドットの集合である角度検出ドットパターン及び所定の情報を示す信号ドットパターンが埋め込まれた透かし画像と画像とが重ね合わされて印刷された透かし入り印刷媒体が，入力デバイスにより所定の解像度で読み取られ生成された入力画像に対し，その入力画像の傾きを検出する傾き検出ステップと；
前記入力画像を基にして前記透かし画像に埋め込まれた前記信号ドットパターンを検出することにより，情報を検出する情報検出ステップと；
を含み，
前記傾き検出ステップにおいて，前記入力画像の傾きを検出する際の傾きの基準となる基準入力画像に存在する２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線を含んだ基準直線群の傾きと間隔が既知であり；
前記傾き検出ステップでは，前記入力画像に含まれる前記角度検出ドットパターンにおける２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線が含まれた直線群を基にして直線の傾きを検出し，前記基準直線の傾きと前記直線の傾きとを比較することで，前記入力画像の傾きを検出することを特徴とする，画像処理方法。
【請求項９】
コンピュータをして，画像処理装置として機能させるコンピュータプログラムであって：
所定の規則性を有して配列されたドットの集合である角度検出ドットパターン及び所定の情報を示す信号ドットパターンが埋め込まれた透かし画像と画像とが重ね合わされて印刷された透かし入り印刷媒体が，入力デバイスにより所定の解像度で読み取られ生成された入力画像に対し，その入力画像の傾きを検出する傾き検出機能と；
前記入力画像を基にして前記透かし画像に埋め込まれた前記信号ドットパターンを検出することにより，情報を検出する情報検出機能と；
を備え，
前記入力画像の傾きを検出する際の傾きの基準となる基準入力画像に存在する２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線を含んだ基準直線群の傾きと間隔が既知であり；
前記傾き検出機能は，前記入力画像に含まれる前記角度検出ドットパターンにおける２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線が含まれた直線群を基にして直線の傾きを検出し，前記基準直線の傾きと前記直線の傾きとを比較することで，前記入力画像の傾きを検出することを特徴とする，コンピュータプログラム。
【請求項１０】
前記傾き検出部は，前記入力画像から傾き検出領域を設定し，当該傾き検出領域中の前記角度検出ドットパターンにおける２点以上のドットを結んで直線を生成し，当該生成した直線のうち平行関係を有する複数の直線が含まれた直線群を基にして直線の傾きを検出する，請求項１に記載の画像処理装置。
【請求項１１】
前記傾き検出部は，前記入力画像から矩形領域を複数設定し，前記矩形領域内の黒画素の密度をそれぞれ求め，前記密度が所定率以下である矩形領域を傾き検出領域として設定する，
請求項１０に記載の画像処理装置。
【請求項１２】
前記傾き検出部は，前記入力画像から矩形領域を複数設定し，前記矩形領域内の黒画素の密度をそれぞれ求め，前記密度が最低である矩形領域を傾き検出領域として設定する，
請求項１０に記載の画像処理装置。
【請求項１３】
所定の規則性を有して配列されたドットの集合である角度検出ドットパターンが埋め込まれた透かし画像と画像とが重ね合わされて印刷された透かし入り印刷媒体が，入力デバイスにより所定の解像度で読み取られ生成された入力画像に対し，その入力画像の傾きを検出する傾き検出部；
を備え，
前記入力画像の傾きを検出する際の傾きの基準となる基準入力画像に存在する２点以上のドットを結んでなる基準直線の傾きが既知であり；
前記傾き検出部は，前記入力画像に含まれる前記角度検出ドットパターンにおける２点以上のドットを結んで直線を生成し，当該生成した直線の傾きを検出し，前記基準直線の傾きと前記直線の傾きとを比較することで，前記入力画像の傾きを検出することを特徴とする，画像処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像の傾きを補正することが可能な画像処理装置，画像処理方法，およびコンピュータプログラムに関する。
【背景技術】
【０００２】
従来，イメ−ジスキャナやファクシミリ等（入力デバイス）で入力された入力画像の傾きを調べる方法としては，入力画像の記載文字の並びを利用した方法（例えば，特許文献１，参照）や，入力画像に予め傾き補正のために記録されたマーカーを利用した方法（例えば，特許文献２，参照）などが存在する。なお，上記入力画像の傾きとは，入力デバイスで印刷媒体を読み取る時の上記印刷媒体の傾きである。
【０００３】
【特許文献１】特開平５−１７４１８２号公報
【特許文献２】特開平５−２７４４７４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら，上記の入力画像の記載文字の並びを利用した方法では，入力画像の文書が横書きあるいは縦書きなどの定型フォーマットであることを前提としており，縦書きと横書きが入り混じったような入力画像や，チラシなどのように文字の向きが一定の方向に定まらずに記載されている入力画像には，正確に入力画像の傾きを検出することができなかった。
【０００５】
一方，上記のマーカーを利用した方法では，予め入力画像に当該マーカーを所定の位置に記録する必要があり，入力画像によっては，マーカーを記録するための領域を確保することができない場合があった。
【０００６】
本発明は，上記問題点に鑑みてなされたものであり，本発明の目的は，文字の並びやマーカーに左右されず入力画像の傾きを検出することが可能な，新規かつ改良された画像処理装置，画像処理方法を提供することである。
【課題を解決するための手段】
【０００７】
上記課題を解決するため，本発明の第１の観点によれば，所定の規則性を有して配列されるドットパターンが埋め込まれた透かし画像と画像とが重ね合わされて印刷された透かし入り印刷媒体が，入力デバイスにより所定の解像度で読み取られ生成された入力画像に対し，その入力画像の傾きを検出する傾き検出部と；上記入力画像を基にして上記透かし画像に埋め込まれた上記ドットパターンを検出することにより，情報を検出する情報検出部と；を備え，上記入力画像の傾きを検出する際の傾きの基準となる基準入力画像に存在する２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線を含んだ基準直線群の傾きと間隔が既知であり；上記傾き検出部は，上記入力画像に含まれる２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線が含まれた直線群を基にして直線の傾きを検出し，上記基準直線の傾きと上記直線の傾きとを比較することで，上記入力画像の傾きを検出することを特徴としている。
【０００８】
本発明によれば，画像処理装置は，入力画像の所定領域に構成する２点以上のドットを結んでなる直線を複数有する直線群を基にして，直線の傾きを検出し，さらに既知の基準直線の傾きと，その直線の傾きとを比較することで，入力画像の傾きを検出している。かかる構成によれば，入力画像に記載された縦書きや横書きなど文字の種類やレイアウト，さらにはマーカーなどに左右されず，入力画像がどんなに傾いた状態でも，画像処理装置は，正確に入力画像の傾きを検出することができる。なお，上記基準入力画像は，例えば，入力画像が，傾いてない正常な状態の基準となる画像である。
【０００９】
上記ドットパターンは，所定の方向に所定の間隔でドットが配置され，上記ドットの輝度値を振幅とし，上記所定の方向と垂直な方向を伝播方向とするものであるように構成してもよい。
【００１０】
上記直線群に属する複数の直線は直線間の距離が等しい直線であり，かつ，上記基準直線群に属する複数の基準直線は，直線間の距離が等しい直線であり，上記傾き検出部は，その直線群及び基準直線群を基にして入力画像の傾きを検出するようにしてもよい。
【００１１】
上記傾き検出部は，上記入力画像のうち所定領域内のドットを構成する全ての画素についてＨｏｕｇｈ変換を施しそれら各画素に対する軌跡各々を変換座標上に求め；一の軌跡上の同一地点に他の軌跡が交差する回数を示す交差数を，軌跡上に存在する各交差点について求め；上記変換座標の角度成分軸と垂直な垂直線上に存在する上記交差点のうち交差数が極大となる極大交差点の分布を上記角度成分軸方向に調べていき；上記極大交差点が所定の間隔で出現するような分布である場合の角度成分を第１の角度成分として取得し；上記基準入力画像について極大交差点が所定の間隔で出現するような分布である場合の第２の角度成分と，上記入力画像側の第１の角度成分とを比較することで，上記入力画像の傾きを検出するようにしてもよい。
【００１２】
上記傾き検出部は，所定の周期からなる関数と上記垂直線上に存在する極大交差点の分布との相関が最大になる場合，そのときの極大交差点が分布する垂直線の角度成分を上記第１の角度成分として取得するようにしてもよい。
【００１３】
上記所定の周期からなる関数は，正弦関数であり，その所定の周期は，上記極大交差点が出現する所定の間隔と等しいように構成してもよい。
【００１４】
上記画像処理装置は，さらに，上記傾き検出部により検出された上記入力画像の傾きを基にして，入力画像の傾きを補正する傾き補正部を備えてもよい。かかる構成により，検出した入力画像の傾きを基に，入力画像の傾きがない状態に補正することができる。
【００１５】
上記課題を解決するために，本発明の別の観点によれば，所定の規則性を有して配列されるドットパターンが埋め込まれた透かし画像と画像とが重ね合わされて印刷された透かし入り印刷媒体が，入力デバイスにより所定の解像度で読み取られ生成された入力画像に対し，その入力画像の傾きを検出する傾き検出ステップと；上記入力画像を基にして上記透かし画像に埋め込まれた上記ドットパターンを検出することにより，情報を検出する情報検出ステップとを含み，上記傾き検出ステップにおいて，上記入力画像の傾きを検出する際の傾きの基準となる基準入力画像に存在する２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線を含んだ基準直線群の傾きと間隔が既知であり；上記傾き検出ステップでは，上記入力画像に含まれる２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線が含まれた直線群を基にして直線の傾きを検出し，上記基準直線の傾きと上記直線の傾きとを比較することで，上記入力画像の傾きを検出することを特徴としている。
【００１６】
上記課題を解決するために，本発明の別の観点によれば，コンピュータをして，画像処理装置として機能させるコンピュータプログラムが提供される。そのコンピュータプログラムは，所定の規則性を有して配列されるドットパターンが埋め込まれた透かし画像と画像とが重ね合わされて印刷された透かし入り印刷媒体が，入力デバイスにより所定の解像度で読み取られ生成された入力画像に対し，その入力画像の傾きを検出する傾き検出機能と；上記入力画像を基にして上記透かし画像に埋め込まれた上記ドットパターンを検出することにより，情報を検出する情報検出機能とを備え，上記入力画像の傾きを検出する際の傾きの基準となる基準入力画像に存在する２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線を含んだ基準直線群の傾きと間隔が既知であり；上記傾き検出機能は，上記入力画像に含まれる２点以上のドットを結んでなる直線のうち平行関係を有する複数の直線が含まれた直線群を基にして直線の傾きを検出し，上記基準直線の傾きと上記直線の傾きとを比較することで，上記入力画像の傾きを検出することを特徴とする，コンピュータプログラム。
【発明の効果】
【００１７】
以上説明したように，本発明によれば，入力画像に所定の規則をもってドットパターンが配列されていることで，文字の並びやマーカーに左右されず入力画像の傾きを正確に検出することができる。
【発明を実施するための最良の形態】
【００１８】
以下，本発明の好適な実施の形態について，添付図面を参照しながら詳細に説明する。なお，以下の説明及び添付図面において，略同一の機能及び構成を有する構成要素については，同一符号を付することにより，重複説明を省略する。
【００１９】
（画像処理装置について）
まず，図１を参照しながら，本実施の形態にかかる画像処理装置１００について説明する。なお，図１は，本実施の形態にかかる画像処理装置１００の概略的な構成の一例を示すブロック図である。
【００２０】
本実施の形態にかかる画像処理装置１００は，紙媒体に印刷されている情報入り原稿（又は，透かし入り印刷媒体）１０１を入力画像として取り込み，埋め込まれている機密情報等の情報を復元する装置である。
【００２１】
また，画像処理装置１００は，情報入り原稿１０１を読み取った原稿画像（又は，入力画像）１０３の傾きを検出し，その傾きを補正するとともに，情報検出することが可能な装置である。なお，上記原稿画像の傾きとは，以下に示す入力デバイス１０２で情報入り原稿１０１を読み取る時の上記情報入り原稿１０１の傾きである。
【００２２】
より具体的には，画像処理装置１００は，例えば，ＣＰＵ，メモリ（ＲＯＭ，ＲＡＭなど），ＨＤＤ（ハードディスクドライブ），タッチパネルボタン等に相当する入力部，液晶ディスプレイ等に相当する表示部などを備えた印刷装置等を例示することができるが，かかる例に限定されない。
【００２３】
また，図１に示すように，画像処理装置１００は，入力デバイス１０２と，傾き検出部１０４と，傾き補正部１０５と，情報検出部１０６とを備えている。
【００２４】
なお，本実施の形態にかかる傾き検出部１０４，傾き補正部１０５，および情報検出部１０６は，例えば，ＨＤＤ又はＲＯＭの記憶手段に実行可能なようにインストールされたファームウェアなどのプログラムを例示することができるが，かかる例に限定されず，傾き検出部１０４，傾き補正部１０５，または情報検出部１０６のうち少なくとも１つは，１又は２以上の回路から構成されたハードウェアでもよい。
【００２５】
上記情報入り原稿１０１は，地紋など可視の電子透かし技術などにより何らかの情報が記録された印刷文書である。
【００２６】
上記情報入り原稿１０１は，ワープロソフト等で作成されたフォント情報やレイアウト情報を含む文書データから作成された文書画像と，文字，音声，画像などを含む情報から作成される透かし画像とが重ね合わされた透かし入り画像が紙に印刷されたものである。
【００２７】
なお，本実施の形態にかかる情報入り原稿１０１の詳細については，例えば，特開２００３−１０１７６２号（以下，先行文献）に印刷文書２０として記載されているが，情報入り原稿１０１は，地紋など可視の電子透かし技術などにより何らかの情報を有する透かし画像と文書画像とが重ね合わされていれば，かかる例に限定されない。
【００２８】
上記入力デバイス１０２は，スキャナなどの入力装置であり，紙に印刷された情報入り原稿１０１を多値階調のグレイ画像として計算機に取り込む。
【００２９】
情報入り原稿１０１は，図１に示すように，上記入力デバイス１０２によって読み取られ，原稿画像１０３が生成される。
【００３０】
次に，上記傾き検出部１０４は，原稿画像１０３に対し傾きを検出し，この結果を利用して傾き補正部１０５にて原稿画像１０３の回転を行い，原稿画像１０３の傾きの補正が行われる。
【００３１】
上記傾き補正部１０５は，傾き検出部１０４により検出された原稿画像１０３の傾きに従って，原稿画像１０３を回転し，原稿画像１０３に傾きが無いように補正する。
【００３２】
なお，傾き検出部１０４で検出した原稿画像１０３の傾きがない（傾き０）場合，つまり，正しい向きの原稿画像１０３を入力デバイス１０２が読み取った場合，傾き補正部１０５は，何も処理しない。
【００３３】
上記情報検出部１０６は，入力画像に対してフィルタ処理を行い，埋め込まれた信号を検出する。検出された信号からシンボルを復元し，埋め込まれた機密情報等の情報を検出する。
【００３４】
なお，本実施の形態では，原稿画像１０３は，例えば，２値画像であり，文字や地紋を構成する画素は黒（値は０），それ以外は白（値は１）であるものとするが，かかる例に限定されず，例えば，原稿画像１０３が多値，又はカラーの場合でもよく，かかる場合には適当な閾値によって２値化した後に処理が行われるものとする。
【００３５】
次に，図２を参照しながら，本実施の形態にかかる情報入り原稿１０１について説明する。なお，図２は，本実施の形態にかかる情報入り原稿の一部を拡大した概略的な構成を示す説明図である。
【００３６】
図２に示すように，情報入り原稿画像１０１には，複数のドットパターンの組み合わせが印刷された上に，例えば“Ａ”等の通常の文字，図形，または記号が印刷されている。なお，本実施の形態にかかるドットパターン上に文字が印字された場合を例に挙げて説明したが，かかる例に限定されず，例えば，ドットパターン上に何も印字されていない場合でも実施可能である。
【００３７】
また，図２の信号２０１などのように，ドットパターンは，機密情報等の情報が符号化された符号語の各シンボルに対して割り当てられる透かし信号を表すものである。
【００３８】
より具体的には，ドットパターンは，所定の方向に所定の間隔でドット（黒画素）が配置され，ドットの輝度値を振幅とし，所定の方向と垂直な方向を伝播方向とするものであって，ドットの方向及び／又は間隔を変化させたドットパターンを複数用意し，ドットパターンを組み合わせて配置することにより，特定の内容を表す情報となる。
【００３９】
図２に示す信号２０１は，機密情報等の符号語の各シンボルに対して割り当てられる透かし信号を表すドットパターンであり，このようなドットパターンが一定間隔で並んでいる。
【００４０】
また，図２に示す隙間パターン２０２は，配置された信号２０１の隙間を埋めるためのドットパターンであり，ドットが等間隔で並んでいる。
【００４１】
なお，上記ドットパターン又は透かし信号についての詳細は，例えば，上記先行文献に記載されているが（特に，段落００４５〜段落００５６，図３〜図６など，参照），かかる例に限定されない。
【００４２】
より具体的には，上記のように規則的なドットが配列されたドットパターンについては，例えば，幅と高さをＳｗ，Ｓｈとする矩形に，ドット間の距離が水平軸に対してａｒｃｔａｎ（３）（ａｒｃｔａｎはｔａｎの逆関数）の方向に密であり，波の伝播方向はａｒｃｔａｎ（−１／３）であるような，第１の信号（ユニットＡ）が上記先行文献に記載されている。
【００４３】
また，例えば，上記先行文献には，第２の信号（ユニットＢ）として，幅と高さをＳｗ，Ｓｈとする矩形に，ドット間の距離が水平軸に対してａｒｃｔａｎ（−３）（ａｒｃｔａｎはｔａｎの逆関数）の方向に密であり，波の伝播方向はａｒｃｔａｎ（１／３）であるようなドットパターンについて記載されている。
【００４４】
（傾き検出，傾き補正について）
次に，図３を参照しながら，本実施の形態にかかる画像処理装置１００による傾き検出及び傾き補正について説明する。なお，図３は，本実施の形態にかかる画像処理装置による傾き検出及び傾き補正の概略を示すフローチャートである。
【００４５】
図３に示すように，まず，入力デバイス１０２は，情報入り原稿１０１を読み取ると，原稿画像１０３を生成し，その原稿画像１０３を傾き検出部１０４に出力する（Ｓ３０１）。
【００４６】
次に，原稿画像１０３がどの程度傾いているか原稿画像１０３の傾きを検出するため，傾き検出部１０４は，入力する原稿画像１０３内に傾き検出に利用する領域（傾き検出領域）を設定する（Ｓ３０２）。
【００４７】
なお，傾き検出領域の大きさは任意であり，設定する位置は文字との重なりができるだけ少ない部分とする。
【００４８】
より具体的には，傾き検出部１０４は，例えば，上記矩形ブロックを原稿画像１０３内に数ヶ所設定し，それら矩形ブロック内の黒画素の密度を求め，黒画素の密度が所定率以下である矩形ブロックを傾き検出領域として設定する。
【００４９】
上記傾き検出部１０４が傾き検出領域を設定する際に，黒画素の密度に着目するのは，原稿画像１０３内の文字，記号などとして構成される黒画素を可能な限り排除し，文字，記号以外のドットパターンを基に後述の原稿画像１０３の傾きを検出するためである。
【００５０】
なお，上記の場合に限定されず，傾き検出部１０４は，例えば，原稿画像１０３内に数ヶ所設定された矩形ブロックのうち，黒画素の密度が最低の矩形ブロックを傾き検出領域として設定してもよい。
【００５１】
次に，傾き検出部１０４は，上記傾き検出領域内に存在する黒画素をＨｏｕｇｈ変換によりＲ−θ座標（変換座標）上に写像する（Ｓ３０３）。なお，上記Ｈｏｕｇｈ変換については，後述する。
【００５２】
上記ステップＳ３０３において，上記傾き検出領域内に存在する黒画素をＨｏｕｇｈ変換することで，原稿画像１０３の傾きを検出するが（Ｓ３０４），ここで原稿画像１０３の傾き検出の概念について，以下に，図面を参照しながら，簡単に説明する。
【００５３】
図４は，本実施の形態にかかる印刷前の情報入り原稿１０１における隙間パターン２０２の概略的な構成の一例を示す説明図である。図４に示すように，隙間パターン２０２を構成するドットは，等間隔に並んでいるものとする。
【００５４】
また，ドット間の距離は，例えば，図４（ａ）に示す通り，水平方向における隣接するドット間の距離は，“ｄ”であり，垂直方向における隣接するドット間の距離は，“ｄ／２”である。
【００５５】
なお，本実施の形態では，例えば，上記水平方向のドット間の距離は，ドットの左端を基点とし，垂直方向のドット間の距離は上端を基点として求められているが，かかる例に限定されず，ドット内であれば何処を基点として距離が求められてもよい。
【００５６】
次に，図４（ｂ）は，図４（ａ）の各ドットに直線を当てはめたものである。以降，同じ傾きの複数の直線をまとめて直線群と記載する。
【００５７】
図４（ｂ）に示すように，直線群４０２（直線群Ｌ０）及び直線群４０１（直線群Ｌ１）は，隙間パターン２０２に配置されたドットにおいて，直線によって結ばれるドット間の距離が最も小さくなるように設定した直線群である。即ち，直線群Ｌ０及び直線群Ｌ１に属する直線上に存在するドットの個数が最も多くなる（ドットの密度が最も高い）。
【００５８】
また，上記隙間パターン２０２と同様に，本実施の形態に係る傾き検出領域内でも，直線群Ｌ０及び直線群Ｌ１に属する直線上に存在するドットの個数が最も多くなるといえる。
【００５９】
上記直線群Ｌ０又は直線群Ｌ１に属する直線について，直線間の距離ＤＬは，以下に示す式１によって求められる。式１を用いて傾きを求めると，直線群Ｌ０に属する直線の傾きは１／４πラジアンであり，直線群Ｌ１に属する直線の傾きは３／４πラジアンである。なお，ｓｑｒｔ（ｘ）はｘの平方根を表す。
【００６０】
ＤＬ＝ｓｑｒｔ（ｄ×ｄ＋ｄ×ｄ）／２＝ｄ／ｓｑｒｔ（２）      …（式１）
【００６１】
また，図４（ｂ）に示す直線群４０３（直線群Ｍ０）及び直線群４０４（直線群Ｍ１）は，隙間パターン２０２に配置されたドットにおいて，直線によって結ばれるドット間の距離が２番目に小さくなるように設定した直線群である。
【００６２】
上記直線群Ｍ０又は直線群Ｍ１に属する直線について，直線間の距離ＤＬは，以下に示す式２によって求められ，直線群Ｍ０に属する直線の傾きは０ラジアンであり，直線群Ｍ１に属する直線の傾きは１／２πラジアンである。
【００６３】
距離ＤＬ＝ｄ／２      …（式２）
【００６４】
なお，本実施の形態に係る傾き検出領域内等の領域内に存在する直線群Ｌ０，直線群Ｌ１，直線群Ｍ０，および直線群Ｍ１などの直線群に属する直線間の距離は，いずれも等しいものとする。
【００６５】
また，本実施の形態にかかる直線群は，図４に示した以外でも，設定することが可能であり，また，本実施の形態にかかる直線群は隙間パターン２０２の場合を例に挙げて説明したが，かかる例に限定されず，所定の規則性があれば如何なるドットパターンでもよい。
【００６６】
次に，図５は，“Ａ”が存在しないとした場合の図２の情報入り原稿１０１に対して直線群を設定した場合の構成について示す説明図である。
【００６７】
図５に示す直線群５０１〜直線群５０４と，図４（ｂ）に示す直線群４０１〜直線群４０４とを比べると，ドットの個数が全体的に増えたため，当てはめられた直線の本数が増えているのが分かる。
【００６８】
また，図５に示すように，図２で示した信号２０１に対応する個所に構成する一部のドットには直線を当てはめることができないが，図５に示すほぼ全てのドットに直線を当てはめることができる。
【００６９】
上記傾き検出部１０４は，上記情報入り原稿１０１から所定の解像度で読み取られた原稿画像１０３について，上記説明したように，傾き検出領域内に存在する任意の２つ以上のドットを結んで複数の直線を当てはめて，直線群Ｌ０，直線群Ｌ１，直線群Ｍ０，または直線群Ｍ１を設定する。
【００７０】
さらに，上記傾き検出部１０４は，上記直線群Ｌ０，直線群Ｌ１，直線群Ｍ０，または直線群Ｍ１に属する直線の傾きと，原稿画像１０３に傾きがない場合の基準直線群に属する基準直線の傾きとを比較して，差分をとることで，原稿画像１０３がどの程度傾いているのか原稿画像１０３の傾きを検出する。
【００７１】
なお，本実施の形態では，原稿画像１０３の傾きを検出する前に，傾き検出部１０４は，原稿画像１０３に傾きがないとした場合の基準直線群に属する基準直線の傾きと間隔は既知である場合を例に挙げて説明するが，かかる例に限定されない。
【００７２】
以降では，原稿画像１０３の傾き検出に利用する直線群を直線群Ｌ０又は直線群Ｌ１の場合を例に挙げて説明するが，他の直線群を利用する場合でも，同様な方法で原稿画像１０３の傾きを検出することができる。
【００７３】
上記説明したような直線群を利用した原稿画像１０３の傾き検出は，具体的には，原稿画像１０３に設定された傾き検出領域内に存在するドット（黒画素）全てをＨｏｕｇｈ変換し，Ｒ−θ座標上に軌跡を求めることによって行う。
【００７４】
ここで，上記Ｈｏｕｇｈ変換について，図面を参照しながら，簡単に説明する。
【００７５】
上記Ｈｏｕｇｈ変換は，一般的な画像処理方法であり，Ｘ−Ｙ座標空間における任意の点Ｐ（ｘ０，ｙ０）を通る全ての直線は，Ｒ−θ座標空間では，以下に示す式３のようになる。また，以下に示す式３を基に図示すると，図６のようになる。
【００７６】
Ｒ０＝ｘ０ｃｏｓθ０＋ｙ０ｓｉｎθ０      …（式３）
【００７７】
図６（ａ）に示すように，点Ｐを通る直線の傾きθを変えながらＸ−Ｙ座標上のＰ（ｘ０，ｙ０）を通る全ての直線は，Ｈｏｕｇｈ変換されると，図６（ｂ）に示すＲ−θ座標上に描画された曲線のような軌跡となる。
【００７８】
図６（ａ）に示す原点からＰを通る直線の傾きはθ０であって，Ｈｏｕｇｈ変換されると，その直線の傾きθ０は，θ軸上（又は，角度成分軸上）の値となり，距離Ｒ０が，Ｒ軸上の値となる。
【００７９】
したがって，図７（ａ）に示すように，Ｘ―Ｙ座標空間の点Ｐと点Ｑの２点について，Ｈｏｕｇｈ変換し，点Ｐを通る全ての直線，及び，点Ｑを通る全ての直線をＲ―θ座標空間上に写像すると，図７（ｂ）のようになる。
【００８０】
図７（ｂ）に示す曲線７０１は，点Ｐを通る全ての直線がＨｏｕｇｈ変換されることで，描かれる軌跡であり，曲線７０２は，点Ｑを通る全ての直線がＨｏｕｇｈ変換されることで，描かれる軌跡である。
【００８１】
図７（ｂ）に示すように，上記曲線７０１及び曲線７０２は，θ軸上のθ１のところで，交差点（又は，交点）ｓ１として交わっている。このθ１は，上記説明の通り，点Ｐ及び点Ｑを結んだ直線の傾きを表している。
【００８２】
つまり，図７（ａ）に示す直線αの直線の傾きを検出するためには，Ｈｏｕｇｈ変換された，図７（ｂ）に示す曲線７０１及び曲線７０２が交わる交差点Ｓ１のθ軸上の値を求めることで，直線αの直線の傾きを検出することができる。
【００８３】
なお，図７には，点Ｐ，点Ｑと２点を通る直線のＨｏｕｇｈ変換された場合を例に挙げて説明したが，かかる例に限定されず，３点以上の点の場合でも同様である。
【００８４】
例えば，図７（ａ）に示す直線α上に点Ｒが存在した場合，その点Ｒを通る全ての直線は，Ｈｏｕｇｈ変換されると，図７（ｂ）に示す交差点ｓ１を通るような上記曲線７０１及び曲線７０２とは異なる曲線がＲ−θ座標上に求められる。
【００８５】
また，例えば，直線αの傾きと同じ傾きの直線上に存在する任意の２点（Ｐ´，Ｑ´）を通る全ての直線は，Ｈｏｕｇｈ変換されると，図７（ｂ）に示す，直線αの傾きに相当するθ１を通る垂直線（図７（ｂ）の破線）上にｓ１と所定間隔あけて交差点ｓ１´が存在する。
【００８６】
なお，本実施の形態にかかるＲ−θ座標上に写像された曲線間で交わった交差点において，同一の交差点上を通る曲線の本数（又は，同一の交差点上を１又は２以上の曲線が交差した回数）を交差数とする。
【００８７】
より具体的には，例えば，図７（ｂ）には，交差点ｓ１が存在するが，当該交差点ｓ１上は，曲線７０１と曲線７０２とが通っているため，交差点ｓ１の交差数は“２”となり，さらに曲線７０１及び曲線７０２以外に第３の曲線が交差点ｓ１上を通っていた場合，交差点ｓ１の交差数は“３”となる。
【００８８】
以上，図６及び図７を参照しながら，Ｈｏｕｇｈ変換について説明した。図６に示す点Ｐ及び点Ｑなど複数の各点を通る全ての直線が，Ｈｏｕｇｈ変換されると，図７に示すように，当該複数の各点に対応した，複数の曲線がＲ−θ座標上に写像される。
【００８９】
上記図６に示す直線以外にも複数の曲線がＲ−θ座標上に写像されると，それらの複数の曲線間で，複数の交差点がＲ−θ座標上に存在することとなる。その複数の交差点について，交差点の交差数を求めることができる。
【００９０】
Ｒ−θ座標上の各交差点の交差数が求まれば，θ軸に垂直な垂直線上に交差数が極大となる交差点（極大交差点）が所定の間隔で出現する極大交差点の集合を見つけることができ，そのときの上記垂直線のθを求めることができる。
【００９１】
上記極大交差点は，図７（ａ）のような直線αなどの直線上に存在する点が，ある区間で極大であって，多くの点を結んで直線が成り立っていることを示している。
【００９２】
また，上記極大交差点がθ軸の垂直線上に所定間隔で出現することは，傾きが全て同じ直線であり多くの点を通ることで構成された直線が，直線群として複数存在することを示している。
【００９３】
図７に示すような点Ｐ及び点Ｑなどの複数の点を，原稿画像１０３に存在するドット（黒画素）とすれば，それらのドットに各々対応した，複数の曲線がＲ−θ座標上に写像される。
【００９４】
上記Ｒ−θ座標上に写像された複数の曲線から，各交差点の交差数を求め極大交差点を求めれば，図４又は図５の直線群Ｌ０や直線群Ｌ１等のような直線群の直線の傾きに相当するθをＲ−θ座標から検出することができる。
【００９５】
即ち，上記原稿画像１０３の傾きが正常である場合の傾きθを基準として上記図４又は図５の直線群Ｌ０や直線群Ｌ１等のような直線群の直線の傾きを求めれば，傾き検出部１０４は，原稿画像１０３の傾きを検出することができる。なお，上記基準となる傾きθは，上記説明したように既に求められ既知である。以下，傾き検出について説明する。
【００９６】
次に，図３に示すように，原稿画像１０３の傾きを検出するために行われるステップＳ３０４について説明する。上記ステップＳ３０４では，画像処理装置１００に備わる傾き検出部１０４が，上記説明したようなＲ−θ座標上に写像された曲線の交差点を求めることによって，直線群Ｌ０または直線群Ｌ１を検出する（Ｓ３０４）。
【００９７】
なお，図２等の情報入り原稿１０１に図示されたドットを入力デバイス１０２で読み取り原稿画像１０３を生成すると，入力デバイス１０２の読み取り能力（解像度など）により原稿画像１０３上におけるドット間の距離などが変動する。
【００９８】
したがって，以降の説明では，印刷時の情報入り原稿１０１における解像度をＤｐ，入力デバイス１０２により情報入り原稿１０１読込時の解像度をＤｓとする。このとき原稿画像１０３において，図４（ａ）における“ｄ”に相当する距離ＤＬｓは，以下の式４のようになる。
【００９９】
ＤＬｓ＝ｄｓ／ｓｑｒｔ（２）      …（式４）
【０１００】
次に，上記説明したように，傾き検出部１０４は，Ｈｏｕｇｈ変換後のＲ−θ座標上に写像した全ての曲線について，交差点及び交差数を求め，さらに当該交差点から極大交差点を求める。
【０１０１】
したがって，図８Ａに示すように，傾き検出部１０４は，例えば，図５の領域内に存在するドットなど，原稿画像１０３の傾き検出領域内に存在するドット全てについてＨｏｕｇｈ変換を行い，Ｒ−θ座標上に曲線を写像することで，上記極大交差点を求めている。
【０１０２】
なお，図８Ａは，本実施の形態に係る原稿画像１０３の傾きがない場合における，傾き判定領域中の全てのドットについてＨｏｕｇｈ変換を行った結果の概略を示す説明図である。
【０１０３】
図８Ａに示す領域８０７（グレー色のハッチング領域）は，傾き検出部１０４により傾き検出領域内に存在するドット全てがＨｏｕｇｈ変換され，図８Ａに示すＲ−θ座標上に写像された複数の曲線からなる曲線群を表している。
【０１０４】
したがって，領域８０７には，数多くの曲線が存在しており，図８Ａに示すように，例えば，領域８０７には，あるドットがＨｏｕｇｈ変換されたことによりＲ−θ座標上に写像された曲線８０５が，曲線群のうち一つの曲線として存在するのがわかる。
【０１０５】
上記説明したように，原稿画像１０３に設定された傾き判定領域中の２以上の黒画素を結んでなる一つの直線は，その２以上の黒画素がＨｏｕｇｈ変換され図８ＡのＲ−θ座標上に写像される２以上の曲線間で交わる一つの交差点に対応する。
【０１０６】
また，図８Ａに示す破線で表された破線領域８０１には，θがπ／４の垂直線８１１が存在し，その垂直線８１１上には，Ｈｏｕｇｈ変換前では直線群Ｌ０に属する直線に相当する，複数の交差点（極大交差点も含む）が存在する。
【０１０７】
特に，直線群Ｌ０に属する直線の傾きは，図５などに示すように，π／４であるため，図８のθ＝π／４を通る垂直線８１１では，ある所定区間で曲線の交差数が極大となる極大交差点が集中し，それらの交差点の距離は，上記式４から求められる直線の距離ＤＬｓに等しい（図８Ａの破線領域８０１，参照）。
【０１０８】
同様に，直線群Ｌ１に属する直線の傾きは，３π／４であるため，図８Ａのθ＝３π／４を通る垂直線８１２では，ある所定区間で曲線の交差数が極大となる極大交差点が集中し，それらの点の距離も，直線の距離ＤＬｓに等しい（図８Ａの破線領域８０２，参照）。
【０１０９】
また，図８Ａに示す破線領域８０３には，θが０（ゼロ）の垂直線８１３が存在し，その垂直線８１３上には，Ｈｏｕｇｈ変換前では直線群Ｍ０に属する直線に相当する，複数の交差点（極大交差点も含む）が存在する。
【０１１０】
直線群Ｍ０に属する直線の傾きは，図５などに示すように，０（ゼロ）であるため，図８Ａのθ＝０を通る垂直線８１３にも，極大交差点が存在するが，上記破線領域８０１又は破線領域８０２と比較して，破線領域８１３又は破線領域８１４における極大交差点の交差数が，小さい傾向がある。
【０１１１】
図４又は図５に示すように，傾き検出領域におけるドットを結んでなる直線のうち，直線群Ｌ０又は直線群Ｌ１に属する直線の方が，直線群Ｍ０又は直線群Ｍ１に属する直線よりもドット間の距離が短いため，直線上に存在するドットの密度が相対的に高い傾向があるためである。
【０１１２】
したがって，垂直線８１１の方が，極大交差点の有無による交差数の差が大きくなり，Ｈｏｕｇｈ変換で交差点以外によるノイズが混入しても，後程説明する図９のようにメリハリがより一層顕著に表れて，傾き検出部１０４は，直線群Ｌ０又は直線群Ｌ１に属する直線を基にしてＨｏｕｇｈ変換し求めた極大交差点の方が検出し易い。
【０１１３】
なお，かかる場合に限定されず，相対的に検出し易いだけであって，傾き検出部１０４は，図４又は図５に示す直線群Ｍ０又は直線群Ｍ１に属する直線を基にしてＨｏｕｇｈ変換し求めた極大交差点を検出するのも可能である。
【０１１４】
なお，画像処理装置１００は，正しい方向を向いている，傾きがないとした場合の原稿画像１０３側の直線群Ｌ０又は直線群Ｌ１に属する直線の傾きが，例えば，π／４であると既に認識している。
【０１１５】
次に，傾き検出部１０４は，実際に入力デバイス１０２を介して入力した原稿画像１０３を基にして，原稿画像１０３の傾きを検出するために，上記図８Ａと同様に，図８Ｂに示すように，Ｒ−θ座標上に複数の曲線を写像する。
【０１１６】
なお，図８Ｂは，本実施の形態にかかる原稿画像１０３に傾きが存在する場合における，傾き判定領域中の全てのドットについてＨｏｕｇｈ変換を行った結果の概略を示す説明図である。
【０１１７】
図８Ｂに示すように，傾き検出部１０４は，新たに入力デバイス１０２から入力した原稿画像１０３を基にして求めた，直線群Ｌ０に属する直線の傾きが“（π／４）＋Ｔｄ”であると検出する。
【０１１８】
即ち，図８Ａに示すように原稿画像１０３の傾きがない場合の基準となる直線群Ｌ０（基準直線群Ｌ０）に属する直線（基準直線）の傾きが“π／４”であるため，傾き検出部１０４は，当該基準直線群に属する基準直線の傾き“π／４”と，新たに検出した直線群Ｌ０に属する直線の傾き“π／４＋Ｔｄ”を比較し，その差分“Ｔｄ”を原稿画像１０３の傾きとして検出する。
【０１１９】
原稿画像１０３がＴｄだけ傾いている場合，図８Ｂに示すように，直線群Ｌ０に属する直線の傾きは，上記の通り“（π／４）＋Ｔｄ”となるため，Ｒ−θ座標においては，θ＝（π／４）＋Ｔｄを通る垂直線８１１ａ上にＤＬｓの間隔で曲線の交差数が極大となる点が現れる。
【０１２０】
したがって，傾き検出部１０４は，Ｒ−θ座標において，θ軸に垂直な垂直線のうち，間隔ＤＬｓで曲線の交差数が極大となる極大交差点が現れる垂直線を見つけ，その垂直線とθ軸の交点から，直線群Ｌ０に属する直線の傾きθを検出し，予め求めた基準直線群Ｌ０に属する直線の傾きθとを比較することで，原稿画像１０３の傾きを検出することができる。
【０１２１】
なお，上記原稿画像１０３の傾きを検出する際に，傾き検出部１０４は，直線群Ｌ０の直線に該当する，垂直線８１１上の極大交差点を基にして，原稿画像１０３の傾きを検出する場合を例に挙げて説明したが，かかる例に限定されず，例えば，直線群Ｌ１などの直線群の直線に該当する，垂直線８１２上の極大交差点を基にして，原稿画像１０３の傾きを検出する場合でもよい。
【０１２２】
上記説明したように，傾き検出部１０４は，Ｒ−θ座標のθ軸と垂直な垂直線上に所定の間隔（間隔ＤＬｓ）で極大交差点が出現するような，直線群に属する直線の傾きに相当するθを検出するが，かかる間隔ＤＬｓで上記垂直線上に出現する極大交差点の集合（又は，分布）は，例えば，周期がＤＬｓであるような正弦関数との相関を，傾き検出部１０４が計算することによって容易に見つけることができる。
【０１２３】
ここで，上記図８に示す極大交差点の集合と正弦関数との相関について，図９を参照しながら，説明する。図９は，本実施の形態に係る極大交差点の集合のうち正弦関数との相関が高い場合の，極大交差点の交差数と正弦関数との関係の概略を示す説明図である。
【０１２４】
まず，Ｒ−θ座標系における任意の位置（Ｒ，θ）の値（曲線上の交差点に係る交差数）をρ（Ｒ，θ）とすると，θ１における評価値Ｖ（θ１）は，以下に示す式５のようになる。傾き検出部１０４は，上記式５に従って評価値Ｖ（θ１）を計算する。
【０１２５】
Ｖ（θ１）＝ＭＡＸ（ΔＲ）［ρ（Ｒ，θ）×ｓｉｎ（２π／ＤＬｓ×（Ｒ＋ΔＲ））］              …（式５）
【０１２６】
ただし，上記式５において，ＭＡＸ（ΔＲ）［ｘ］は，０≦ΔＲ＜ＤＬｓにおけるｘの最大値とする。
【０１２７】
上記θ１を０≦θ１＜π／２とした場合に，Ｖ（θ１）が最大となるθ１が直線群Ｌ０または直線群Ｌ１に属する直線の傾きであると判定する。
【０１２８】
上記評価値Ｖ（θ１）が最大となるθ１では，図９に示すように，破線状の正弦関数の周期と極大交差点（又は，ρ（Ｒ，θ）の値）が出現する所定の間隔とが一致している。
【０１２９】
より具体的には，図９に示すように，Ｒ軸上の数値が，２０５，２１３，２２２，２３０，…，３８２，３９１等の近辺で正弦関数のピークと，極大交差点とが出現しているのがわかる。
【０１３０】
なお，上記正弦関数の周期は，上記θ軸に垂直な垂直線上に極大交差点が現れる間隔と対応するのは上記説明の通りであるが，その極大交差点が現れる間隔は，図４などに図示された直線群（直線群Ｌ０，直線群Ｌ１など）に属し平行関係を有する直線間の距離（ＤＬなど）と対応するものである。
【０１３１】
以上のように，傾き検出部１０４は，式５に従って，最大となる評価値Ｖ（θ）を求めることで，Ｒ−θ座標上に存在する複数の極大交差点のうち，θ軸に垂直な垂直線上に所定の間隔ＤＬｓで出現する極大交差点の集合を効率的に，容易に求め，そのときのθを検出することができる。以上で，ステップＳ３０４の説明について終了する。
【０１３２】
最後に，図３に示すステップＳ３０５について説明する。上記ステップＳ３０５では，まず，傾き補正部１０５が，上記ステップＳ３０４で検出した原稿画像１０３の傾き（図８の“Ｔｄ”）を基にして，傾きがない状態に原稿画像１０３の傾きを補正するとともに，後続の情報検出部１０６による情報検出の結果を利用し，原稿画像１０３が向いている方向を判定する（Ｓ３０５）。
【０１３３】
なお，以下では，基準直線の傾きが直線群Ｌ０に属する直線の傾きであるとすると，上記原稿画像１０３の傾きが０〜π／２の範囲である場合，傾き検出部１０４により検出される直線群は，直線群Ｌ０となる。
【０１３４】
また，原稿画像１０３の傾きがπ／２〜πの範囲である場合，傾き検出部１０４により検出される直線群は，直線群Ｌ１となる。
【０１３５】
同様に，原稿画像１０３の傾きがπ〜３π／２の範囲である場合，傾き検出部１０４により検出される直線群は，直線群Ｌ０であり，原稿画像１０３の傾きが３π／２〜２πの範囲の範囲である場合，傾き検出部１０４により検出される直線群は，直線群Ｌ１となる。
【０１３６】
即ち，原稿画像１０３がどの程度傾いているのか未知である場合には，上記傾き検出部１０４により検出された直線の傾きは，直線群Ｌ０に属する直線であるのか，直線群Ｌ１に属する直線であるのか分からない。
【０１３７】
このため，傾き補正部１０５がステップＳ３０４で検出した原稿画像１０３の傾きを，一旦傾き０に補正した後，情報検出部１０６が補正後の原稿画像１０３に対して，原稿画像１０３に重ね合わされた透かし画像のドットパターンを基にして情報を検出し，情報検出結果を利用して，傾き補正部１０５は，原稿画像１０３の向きを判定する（Ｓ３０５）。
【０１３８】
このとき，原稿画像１０３は，０（正しい向き），π／２，π，または３π／２のいずれかの向きに原稿画像が向いている。したがって，傾き補正部１０５は，さらに，以下の方法で，上記原稿画像１０３の向きを判定する（Ｓ３０５）。
【０１３９】
まず，情報検出部１０６による情報検出について予め簡単に説明しておくと，まず，情報検出部１０６は，傾き補正部１０５から補正後の原稿画像１０３を画像処理装置１００のメモリ等に入力する。なお，かかる原稿画像１０３は多値画像であり，以下では２５６階調のグレイ画像として説明するが，かかる例に限定されない。
【０１４０】
次いで，情報検出部１０６は，原稿画像１０３の大きさと信号の大きさから，ドットパターンがいくつ埋め込まれているかを計算する。
【０１４１】
次いで，例えば，図２の信号２０１や隙間パターン２０２等のように，情報検出部１０６は，ドットパターンの区切りごとにシンボルの検出を行い，信号検出する。
【０１４２】
なお，情報検出部１０６は，例えば，原稿画像１０３から信号を検出するために，波の周波数と方向，および影響範囲を同時に定義できる二次元ウェーブレットフィルタを用いるが，かかる例に限定されない。
【０１４３】
さらに，情報検出部１０６は，各ドットパターンに埋め込まれている信号を検出し，各信号を連結してデータ符号を復元し，データ符号を復号することで，原稿画像１０３に埋め込まれた情報を取り出す。
【０１４４】
以上，情報検出部１０６は，原稿画像１０３に埋め込まれた情報を検出することができる。なお，情報検出部１０６は，例えば，上記先行文献の段落００７８〜段落０１０８，図１２〜図２２等に記載の透かし検出部３２に該当するが，かかる例に限定されない。
【０１４５】
次に，上記情報検出部１０６による情報検出の結果を利用した傾き補正部１０５による原稿画像１０３の向きの判定処理（Ｓ３０５）について，以下に説明する。
【０１４６】
（１）上記傾き補正部１０５は，原稿画像１０３が０（正しい向き）に向いていると仮定して，情報検出部１０６に対して，上記説明したような情報検出を行わせる。この結果，正しく情報が取り出せた場合には，処理を中止し，傾き補正部１０５は，原稿画像１０３の向きが０と判定する。
【０１４７】
（２）上記（１）で情報検出部１０６が正しく情報を取り出すことができない場合には，傾き補正部１０５は，原稿画像１０３がπ／２の方向に向いていると仮定し，情報検出部１０６に対し，π／２回転した原稿画像１０３を基に情報検出を行わせる。この結果，正しく情報が取り出せた場合には，処理を中止し，傾き補正部１０５は，原稿画像１０３の向きがπ／２と判定する。
【０１４８】
（３）上記（２）で情報検出部１０６が正しく情報を取り出すことができない場合には，傾き補正部１０５は，原稿画像１０３がπの方向に向いていると仮定し，情報検出部１０６に対して，π回転した原稿画像１０３を基に情報検出を行わせる。この結果，正しく情報が取り出せた場合には，処理を中止する。
【０１４９】
（４）上記（３）で情報検出部１０６が正しく情報を取り出すことができない場合には，傾き補正部１０５は，原稿画像１０３が３π／２の方向に向いていると仮定し，情報検出部１０６に対して，３π／２回転した原稿画像１０３を基に情報検出を行わせる。
【０１５０】
上記（１）〜（４）において，情報検出部１０６によって原稿画像１０３から正しく情報を取り出すことができたか否かの判定は，例えば，印刷時に，記録情報のある特定領域（傾き検出領域など）に既知の情報を記録しておき，その既知の情報を正しく情報検出部１０６が復号できたか否かによって行われるが，かかる例に限定されない。
【０１５１】
以上により，本実施の形態にかかる画像処理装置１００による傾き補正処理の一連の動作について説明を終了するが，かかる画像処理装置１００により以下に示すような優れた効果が存在する。
（１）例えば，縦書きと横書きとが入り混じったようなフォーマットや，文字が不規則な方向に記載されている文書，又は，マーカーなどを記録する領域を設定できないような文書などであっても，画像処理装置１００は，原稿画像１０３の傾きを正確に検出することができる。
（２）画像処理装置１００は，入力デバイス１０２が仮にπ回転した情報入り原稿１０１を読み取ったとしても原稿画像１０３の傾きを正確に検出することができる。即ち，画像処理装置１００は，情報入り原稿１０１の方向が如何なる方向であっても正確な原稿画像１０３の傾きを検出することができる。
（３）画像処理装置１００は，正確に検出した原稿画像１０３の傾きを，原稿画像１０３の傾きがない状態に補正することができるため，情報入り原稿１０１に埋め込まれた情報の検出を的確に行うことができるとともに，情報入り原稿１０１の向きを特定することができる。
【０１５２】
なお，上述した一連の処理は，専用のハードウェアにより行うこともできるし，ソフトウェアにより行うこともできる。一連の処理をソフトウェアによって行う場合には，そのソフトウェアを構成するプログラムが，汎用のコンピュータやマイクロコンピュータ等の情報処理装置にインストールされ，上記情報処理装置を画像処理装置１００として機能させる。
【０１５３】
ここで，本明細書において，コンピュータに各種の処理を行わせるためのプログラムを記述する処理ステップは，必ずしもフローチャートとして記載された順序に沿って時系列に処理する必要はなく，並列的あるいは個別に実行される処理（例えば，並列処理あるいはオブジェクトによる処理）も含むものである。
【０１５４】
また，プログラムは，１のコンピュータにより処理されるものであっても良いし，複数のコンピュータによって分散処理されるものであっても良い。
【０１５５】
以上，添付図面を参照しながら本発明の好適な実施形態について説明したが，本発明はかかる例に限定されない。当業者であれば，特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例を想定し得ることは明らかであり，それらについても当然に本発明の技術的範囲に属するものと了解される。
【０１５６】
上記実施形態においては，傾き検出部１０４，傾き補正部１０５，および情報検出部１０６は１又は２以上のモジュールまたはコンポーネントから構成されるプログラムの場合を例に挙げて説明したが，かかる例に限定されず，傾き検出部１０４，傾き補正部１０５，または情報検出部１０６のうち少なくとも１つは，ハードウェアからなる場合でもよい。
【０１５７】
また，上記実施形態においては，画像処理装置１００では，原稿画像１０３の傾きを補正する機能と，情報を検出する機能とを具備する場合を例に挙げて説明したが，かかる場合に限定されず，例えば，画像処理装置１００は，情報検出部１０６を備えず，原稿画像１０３の傾きを補正する機能のみを具備する場合でもよい。
【０１５８】
また，本実施の形態に係る画像処理装置では，原稿画像１０３に傾き検出領域を設定し，その傾き検出領域に存在するドット（黒画素）にＨｏｕｇｈ変換を施す場合を例に挙げて説明したが，かかる例に限定されず，例えば，原稿画像１０３全体に存在するドットにＨｏｕｇｈ変換を施してもよい。
【図面の簡単な説明】
【０１５９】
【図１】本実施の形態にかかる画像処理装置の概略的な構成の一例を示すブロック図である。
【図２】本実施の形態にかかる情報入り原稿の一部を拡大した概略的な構成を示す説明図である。
【図３】本実施の形態にかかる画像処理装置による傾き検出及び傾き補正の概略を示すフローチャートである。
【図４】本実施の形態にかかる印刷前の情報入り原稿における隙間パターンの概略的な構成の一例を示す説明図である。
【図５】図２に示す“Ａ”が存在しないとした場合の図２の情報入り原稿に対して直線群を設定した場合の構成について示す説明図である。
【図６】本実施の形態にかかるＨｏｕｇｈ変換の概略の一例を示す説明図である。
【図７】本実施の形態にかかるＨｏｕｇｈ変換の概略の一例を示す説明図である。
【図８Ａ】本実施の形態に係る原稿画像の傾きがない場合における，傾き判定領域中の全てのドットについてＨｏｕｇｈ変換を行った結果の概略を示す説明図である。
【図８Ｂ】本実施の形態にかかる原稿画像に傾きが存在する場合における，傾き判定領域中の全てのドットについてＨｏｕｇｈ変換を行った結果の概略を示す説明図である。
【図９】本実施の形態に係る極大交差点の集合のうち正弦関数との相関が高い場合の，極大交差点の交差数と正弦関数との関係の概略を示す説明図である。
【符号の説明】
【０１６０】
１００      画像処理装置
１０１      情報入り原稿
１０２      入力デバイス
１０３      原稿画像
１０４      傾き検出部
１０５      傾き補正部
１０６      情報検出部
【図１】
0004668086.tif 000002
【図２】
0004668086.tif 000003
【図３】
0004668086.tif 000004
【図４】
0004668086.tif 000005
【図５】
0004668086.tif 000006
【図６】
0004668086.tif 000007
【図７】
0004668086.tif 000008
【図８Ａ】
0004668086.tif 000009
【図８Ｂ】
0004668086.tif 000010
【図９】
0004668086.tif 000011