(57)【要約】【課題】実際の入力パターンの傾向に近い画像データのパターンを容易に生成する画像処理装置、画像処理方法及びプログラムを提供する。【解決手段】実施形態の画像処理装置は、画像データ毎に、当該画像データの画素値の変更方法を表す第１パラメータを決定する第１決定部と、当該画像データの画素毎に、当該画素の１以上の周辺画素に応じて、当該画像データの画素値の変更方法を表す第２パラメータを決定する第２決定部と、当該第１パラメータが表す変更方法及び当該第２パラメータが表す変更方法によって、当該画像データの当該画素毎に当該画素値を変更する変更部とを備える。【選択図】図１
2014164485.tif 000002
【特許請求の範囲】
【請求項１】
画像データ毎に、前記画像データの画素値の変更方法を表す第１パラメータを決定する第１決定部と、
前記画像データの画素毎に、前記画素の１以上の周辺画素に応じて、前記画像データの画素値の変更方法を表す第２パラメータを決定する第２決定部と、
前記第１パラメータが表す変更方法及び前記第２パラメータが表す変更方法によって、前記画像データの前記画素毎に前記画素値を変更する変更部と
を備える画像処理装置。
【請求項２】
前記第２決定部は、
前記画像データの画素毎に、前記画素の１以上の周辺画素の画素値に応じて、ｎ段階（ｎは２以上の整数）の値をとり得る第２パラメータを決定する
請求項１に記載の画像処理装置。
【請求項３】
前記第２決定部は、
前記第２パラメータを決定する際に、前記周辺画素の形状を変更することができる
請求項１又は２に記載の画像処理装置。
【請求項４】
前記画像データの画素毎のノイズを表す第３パラメータを決定する第３決定部を更に備え、
前記変更部は、更に前記第３パラメータに応じて、前記画像データの前記画素毎に前記画素値を変更する
請求項１乃至３のいずれか１項に記載の画像処理装置。
【請求項５】
前記第３決定部は、
前記第３パラメータを、複数の画素に適用するマスクパターンに応じて決定し、前記マスクパターンは、前記周辺画素の形状に応じて変更することができる
請求項４に記載の画像処理装置。
【請求項６】
前記第１決定部は、
前記画像データの領域を複数に分割した分割領域毎に、前記第１パラメータを決定する
請求項１乃至５のいずれか１項に記載の画像処理装置。
【請求項７】
前記第２決定部は、
前記周辺画素のうち、画素値が所定の値以上である画素を表す第１画素を抽出し、前記第１画素の位置に応じて異なる第２パラメータを決定する
請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項８】
前記第２決定部は、
前記周辺画素のうち、画素値が所定の値以上である画素を表す第１画素を抽出し、前記第１画素の数に応じて異なる第２パラメータを決定する
請求項１乃至７のいずれか１項に記載の画像処理装置。
【請求項９】
前記第２決定部は、
前記画像データの画素毎に、前記画素の画素値と、前記周辺画素の画素値の平均値との差に応じて異なる第２パラメータを決定する
請求項１乃至６のいずれか１項に記載の画像処理装置。
【請求項１０】
前記画像データは、２値画像であり、
前記第２パラメータは、前記画像データの画素の１以上の前記周辺画素に応じて決定される前記画像データの画素値を反転する確率である
請求項１乃至８のいずれか１項に記載の画像処理装置。
【請求項１１】
前記変更部は、
前記第２パラメータと乱数とを比較することにより、前記画素毎の画素値を変更するか否かを判定する
請求項１乃至１０のいずれか１項に記載の画像処理装置。
【請求項１２】
第１決定部が、画像データ毎に、前記画像データの画素値の変更方法を表す第１パラメータを決定するステップと、
第２決定部が、前記画像データの画素毎に、前記画素の１以上の周辺画素に応じて、前記画像データの画素値の変更方法を表す第２パラメータを決定するステップと、
変更部が、前記第１パラメータが表す変更方法及び前記第２パラメータが表す変更方法によって、前記画像データの前記画素毎に前記画素値を変更するステップと
を含む画像処理方法。
【請求項１３】
コンピュータを、
画像データ毎に、前記画像データの画素値の変更方法を表す第１パラメータを決定する第１決定部と、
前記画像データの画素毎に、前記画素の１以上の周辺画素に応じて、前記画像データの画素値の変更方法を表す第２パラメータを決定する第２決定部と、
前記第１パラメータが表す変更方法及び前記第２パラメータが表す変更方法によって、前記画像データの前記画素毎に前記画素値を変更する変更部
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、画像処理装置、画像処理方法及びプログラムに関する。
【背景技術】
【０００２】
光学式文字読取装置などの装置で、文字の認識率を向上させるための技術が利用されている。例えば、当該装置では、想定される入力パターンを収集し、これらを認識することのできる認識辞書を装置内に構築することで、文字の認識率を向上させている。高精度な文字認識を行うためには、これらの収集された文字パターンが文字認識システムへの入力として想定されるパターンのどの程度の範囲を網羅しているかが重要である。一般には、網羅度が低いほど文字認識の精度は低下するが、その一方で全パターンを網羅して収集することは極めてコストが高く、現実的ではない。
【０００３】
本発明に関連する文献公知発明としては、特許文献１がある。特許文献１には、乱数的に文字の変形を行う方法が記載されている。特許文献１には、ランダムに選ばれた着目画素に対し、その周辺８画素に着目画素と異なる画素値を持つ画素が事前に定める個数以上存在すれば画素値を反転するという方法が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００２−２９８０８４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
これを解決する方法としては、例えば、インターネットなどからデータを収集し、半教師学習などの技術を用いて学習を行うなどの手法がある。しかしながら、そのようにして得られたデータが、必ずしも想定される入力パターンとして使用できるとは限らない。特に、漢字文化圏においては極めて類似した文字が多く、このような手法では、想定される入力パターンをうまく扱えない場合があった。
【０００６】
また、別の方法として、既に得られている画像に、ランダムノイズを付加する方法がある。例えば、スキャナなどによるスキャンによって引き起こされる劣化の過程をシミュレートする処理を加え、類似した文字パターンを生成する方法がある。しかしながら、ランダムノイズを加える処理は、必ずしも実際の環境で起こる画像の劣化に合致せず、適切な入力パターンを生成できるとは限らない。また、劣化過程をシミュレートする方法では、スキャン方法が固定されている場合など、発生する劣化が限定できる場合には有効であるが、そうでない場合には対応しきれない。また、劣化過程を定義することが必ずしも簡単ではなかった。
【０００７】
従来の技術では、実際の入力パターンの傾向に近い画像データのパターンを容易に生成することができなかった。
【課題を解決するための手段】
【０００８】
実施形態の画像処理装置は、画像データ毎に、前記画像データの画素値の変更方法を表す第１パラメータを決定する第１決定部と、前記画像データの画素毎に、前記画素の１以上の周辺画素に応じて、前記画像データの画素値の変更方法を表す第２パラメータを決定する第２決定部と、前記第１パラメータが表す変更方法及び前記第２パラメータが表す変更方法によって、前記画像データの前記画素毎に前記画素値を変更する変更部とを備える。
【０００９】
また、実施形態の画像処理方法は、第１決定部が、画像データ毎に、前記画像データの画素値の変更方法を表す第１パラメータを決定するステップと、第２決定部が、前記画像データの画素毎に、前記画素の１以上の周辺画素に応じて、前記画像データの画素値の変更方法を表す第２パラメータを決定するステップと、変更部が、前記第１パラメータが表す変更方法及び前記第２パラメータが表す変更方法によって、前記画像データの前記画素毎に前記画素値を変更するステップとを含む。
【００１０】
また、実施形態のプログラムは、コンピュータを、画像データ毎に、前記画像データの画素値の変更方法を表す第１パラメータを決定する第１決定部と、前記画像データの画素毎に、前記画素の１以上の周辺画素に応じて、前記画像データの画素値の変更方法を表す第２パラメータを決定する第２決定部と、前記第１パラメータが表す変更方法及び前記第２パラメータが表す変更方法によって、前記画像データの前記画素毎に前記画素値を変更する変更部として機能させる。
【図面の簡単な説明】
【００１１】
【図１】図１は、第１実施形態の画像処理装置のブロック図の一例を示す図である。
【図２】図２は、画像データの一例を示す図である。
【図３】図３は、第１実施形態の画像処理装置の第２決定部が抽出する周辺画素（４画素の場合）の一例である。
【図４】図４は、第１実施形態の画像処理装置の第２決定部が抽出する周辺画素（８画素の場合）の一例である。
【図５】図５は、第１実施形態の画像処理装置の第２決定部が抽出する周辺画素（１５画素の場合）の一例である。
【図６】図６は、第１実施形態の画像処理装置の第２決定部が決定する第２パラメータの一例である。
【図７】図７は、第１実施形態の画像処理方法の一例を説明するためのフローチャートである。
【図８】図８は、第１実施形態の画像処理装置が画像データの画素値を変更した場合の一例である。
【図９】図９は、第１実施形態の画像処理装置により画像処理された画像データの一例である。
【図１０】図１０は、第２実施形態の画像処理装置の変更部のブロック図の一例である。
【図１１】図１１は、第２実施形態の画像処理装置の第２決定部が決定する第２パラメータの一例である。
【図１２】図１２は、第２実施形態の画像処理装置の第２決定部が抽出する周辺画素のパターン（回転は省略する場合）の一例である。
【図１３】図１３は、第２実施形態の画像処理装置の第２決定部が抽出する周辺画素のパターン（縦方向と横方向を区別する場合）の一例である。
【図１４】図１４は、第２実施形態の画像処理方法の一例を説明するためのフローチャートである。
【図１５】図１５は、第２実施形態の画像処理装置が画像データの画素値を変更した場合の一例である。
【図１６】図１６は、第３実施形態の画像処理装置のブロック図の一例を示す図である。
【図１７】図１７は、第３実施形態の画像処理方法の一例を説明するためのフローチャートである。
【図１８】図１８は、第３実施形態の画像処理装置が処理する画像データの画素値の一例である。
【図１９】図１９は、第３実施形態の画像処理装置のノイズパターンの例を示す図である。
【図２０】図２０は、第３実施形態の画像処理装置のノイズマスクの一例を示す図である。
【図２１】図２１は、第１〜３実施形態の画像処理装置のハードウェア構成の一例を示す図である。
【発明を実施するための形態】
【００１２】
スキャンなどの画像入力処理により認識される文字の理想状態からの劣化は、画像データの全体的な劣化及び局所的な劣化の２種類がある。全体的な劣化は、例えば、ぼけやレンズの感度などによるものである。局所的な劣化は、例えば、レンズの傷や汚れや、撮影対象上における周辺の状態によるものである。
【００１３】
例えば、レンズの感度を上げれば文字は全体的に濃くなってくる。しかしながら、このような場合であっても、文字の輪郭部分においてドット欠けが起こるなど、局所的には薄くなることもある。入力パターンの生成においては、このような状況に応じた処理を行う必要がある。以下、各実施形態について説明する。
【００１４】
（第１の実施形態）
図１は、第１実施形態の画像処理装置１０のブロック図の一例を示す図である。本実施形態の画像処理装置１０は、入力部１１、第１決定部１２、第２決定部１３及び変更部１４を備える。
【００１５】
入力部１１は、画像処理装置１０に画像データを入力する。入力部１１は、例えば、スキャナやカメラなどである。画像処理装置１０は、入力部１１によって紙面上に印刷された文字をスキャンしたり、画面上に表示されている文字を撮影したりすることにより画像データを取得する。図２は、画像データの一例を示す図である。図２の例では、画像データが文字「亜」である場合の例である。
【００１６】
第１決定部１２は、画像データ毎に、画像データの画素値の変更方法を表す第１パラメータを決定する。第１パラメータは、画像データの大域的な情報に応じて決まるパラメータである。例えば、第１パラメータは、画像データの画素の画素値を上げる（下げる）などを表し、画像全体の傾向に作用するパラメータである。第１パラメータは、オペレータが定義するなどして事前に定めてもよいし、画像処理の実行ごとにランダムに決定してもよい。また、第１決定部１２は、画像データ全体に対してではなく、画像データの領域を複数に分割した分割領域毎に、第１パラメータを決定してもよい。
【００１７】
第２決定部１３は、画像データの画素毎に、当該画素の１以上の周辺画素に応じて、画像データの画素値の変更方法を表す第２パラメータを決定する。第２パラメータは、画像データの局所的な情報に応じて決まるパラメータである。第２決定部１３は、第１パラメータに応じて第２パラメータの決定の仕方（処理後の画像データを全体的に濃くする又は薄くするなどの傾向）を変える。
【００１８】
図３は、第１実施形態の画像処理装置１０の第２決定部１３が抽出する周辺画素（４画素の場合）の一例である。図３の例は、着目画素の上下左右４画素を周辺画素と定義した場合の例である。
【００１９】
図４は、第１実施形態の画像処理装置１０の第２決定部１３が抽出する周辺画素（８画素の場合）の一例である。図４の例は、着目画素の周囲８画素を周辺画素と定義した場合の例である。
【００２０】
図５は、第１実施形態の画像処理装置１０の第２決定部１３が抽出する周辺画素（１５画素の場合）の一例である。図５の例は、着目画素の周囲１５画素を周辺画素と定義した場合の例である。
【００２１】
なお、第２決定部１３は、着目画素に作用させる第２パラメータを決定する際には、周辺画素の位置に応じて、個々の周辺画素毎に影響を与える度合いを変えるための重みを付けてもよい。例えば、第２決定部１３は、着目画素と周辺画素との距離に応じて重みを付けてもよい。また、第２決定部１３は、着目画素に作用させる第２パラメータを決定する際には、画像処理装置１０のユーザの操作などに応じて、周辺画素の形状を図３〜図５のように、様々な形状に変更できるようにしてもよい。なお、周辺画素の形状は、図３〜図５の形状に限られず、任意の形状でよい。例えば、周辺画素の形状を、縦方向の画素を考慮せずに、着目画素から横方向だけ２画素ずつ（右に２画素、左に２画素）とすると、横方向のぼけやかすれなどをシミュレートすることができる。
【００２２】
図１に戻り、変更部１４は、第１パラメータが表す変更方法及び第２パラメータが表す変更方法によって、画像データの画素毎に画素値を変更する。
【００２３】
図６は、第１実施形態の画像処理装置１０の第２決定部１３が決定する第２パラメータの一例である。図６は、画像データが２値画像である場合の例である。例えば、着目画素が黒画素である場合は、周辺画素に含まれる黒画素の数に応じて、着目画素を反転させる度合い（以下、「反転確率」という。）を変えている。図６の例は、例えば、着目画素が黒画素であり、周辺画素に黒画素が３つある場合は、着目画素を５％の反転確率で反転させることを示す。ここで、画素の反転は、着目画素が黒画素であれば白画素にし、着目画素が白画素であれば黒画素にすることを表す。画素の反転処理は、（反転後の画素値）＝１−（反転前の画素値）により実現することができる。図６の例では、着目画素が白画素である場合には、周辺画素の状況が同じ場合であっても、着目画素が黒画素である場合とは異なる反転確率が定義されている。また、図６の例では、周辺画素の画素値に応じて、５段階に反転確率を変更している。
【００２４】
図６の第２パラメータの例を数式により表すと以下のようになる。
【００２５】
【数１】
2014164485.tif 000003
【数２】
2014164485.tif 000004
式（１）は、着目画素が黒画素である場合の数式である。また、式（２）は、着目画素が白画素である場合の数式である。また、ｎは、周辺画素に含まれる白画素の数を表す。なお、第２パラメータ（本実施形態では反転確率）を決定する数式は、式（１）及び（２）に限られず、適宜定めてよい。
【００２６】
なお、本実施形態の画像処理装置１０では、第１パラメータに応じて第２パラメータの決定の仕方が変わる。例えば、図６のように第２パラメータが決定される場合は、第１パラメータが、画像データを全体的に濃くする傾向に画像処理を行うことを示している。この傾向は、図６の例では、周辺画素の黒画素の数と白画素の数が同じ場合（黒画素の数が２つの場合）に顕著に現れている。すなわち、着目画素が黒画素である場合の反転確率が１５％であるのに対して、着目画素が白画素である場合の反転確率が８５％であることから明らかである。第２決定部１３は、着目画素及び周辺画素に応じて反転確率を決定する図６のような反転確率のテーブルを、第１パラメータによって切り換えてもよい。
【００２７】
図７は、第１実施形態の画像処理方法の一例を説明するためのフローチャートである。まず、画像処理の対象となる画像データについて説明する。ここでは、画像データを、２値画像で表される文字である場合を例にして説明する。また、本実施形態の画像処理装置１０は、画面上に表示されている文字を、１画素１ビットの２値画像として扱うものであるとする。この際、文字である画素（画像データ上で黒である画素）が１であり、文字ではない画素（画像データ上で白である画素）が０であるとする。また、本実施形態の画像処理装置１０は、図３の例の周辺画素の定義（着目画素の周囲４画素が周辺画素）を使用するものとする。また、第２決定部１３は、図６の第２パラメータを使用するものとする。
【００２８】
入力部１１は、画像処理装置１０に画像データを入力する（ステップＳ１）。変更部１４は、画像データの全画素を処理したか否かを判定する（ステップＳ２）。全画素を処理した場合（ステップＳ２、Ｙｅｓ）は、処理を終了する。全画素を処理していない場合（ステップＳ２、Ｎｏ）は、ステップＳ３に進む。
【００２９】
第２決定部１３は、着目画素の周囲４画素の画素値の和を算出する（ステップＳ３）。画像データが２値画像であることから、ステップＳ３により、着目画素の周辺画素に含まれる黒画素の数を算出できる。第２決定部１３は、ステップＳ３の処理結果に応じて、当該画素の反転確率を決定する（ステップＳ４）。変更部１４は、乱数を取得する（ステップＳ５）。なお、本実施形態の画像処理装置１０では、乱数の値の範囲を０−１００とする。画像処理装置１０は、例えば、画像処理装置１０の現在時刻のｍｓ部分から、この乱数を取得してもよい。また、画像処理装置１０は、事前に乱数テーブルを用意することにより、この乱数を取得してもよい。なお、本実施例の場合、例えば５の倍数回目の場合のみ０、ほかの場合には１００を与えるような乱数を定義すれば、事前に定めた間隔、この場合であれば５画素おきに反転処理を行うようにすることもできる。
【００３０】
変更部１４は、ステップＳ４で決定した反転確率を％で表した場合の値と、ステップＳ５で取得した乱数を比較する（ステップＳ６）。乱数の方が大きい、又は乱数と反転確率が同じ場合（ステップＳ６、Ｎｏ）は、画素値を反転せずにステップＳ２に戻る。乱数の方が小さい場合（ステップＳ６、Ｙｅｓ）は、変更部１４が、画素値を反転する（ステップＳ７）。変更部１４が、ステップＳ７で乱数との比較を行うことで、画素値を反転する処理に、ランダムな要素を加えることができる。
【００３１】
以上のようにして、本実施形態の画像処理装置１０は、画像データを処理する。なお、本実施形態の画像処理装置１０が、画像データから処理対象となる着目画素を選択するときは、画像データの左上から右下方向に順番に選択していくものとするが、順番はこれに限らない。また、全画素を処理する必要もなく、例えば、ランダムサンプリングを行って決定してもよい。なお、ランダムサンプリングを行う場合には、着目画素の選択数が予め定める既定の数に達した時点で終了する。また、反転処理の実行数が既定の数に達したら処理を打ち切るなどしてもよい。既定の数は、予め定義してもよいし、ランダムに決定してもよい。
【００３２】
図８は、第１実施形態の画像処理装置１０が画像データの画素値を変更した場合の一例である。図８の例では、着目画素が白画素であり、当該着目画素の周辺画素に含まれる黒画素の数が２つである。これにより、第２決定部１３は、反転確率を８５％と決定する。図８の例では、変更部１４が、乱数７３を取得している。７３＜８５であるため、変更部１４は、着目画素を反転する。
【００３３】
図９は、第１実施形態の画像処理装置１０により画像処理された画像データの一例である。図９より明らかであるように、処理された画像データは、全体的には濃くなっている（黒画素が増えている）。しかし、主に周辺画素に白画素の多い文字の角などには欠けが発生している部分（白画素に反転されている部分）もある。また、例えば、図９中、丸で囲んだ中央の縦線２本が横線と交差する部分、すなわち、着目画素と周辺画素の画素値の関係が類似した部分においても、箇所によって異なる画像の劣化が発生している。
【００３４】
なお、本実施形態の画像処理装置１０の説明では、画像データが２値画像である場合について説明したが、画素値が２値ではない画像データの場合は、画素値が所定の値以上である画素（以下「第１画素」という）を抽出し、第１画素の位置や数に応じて異なる第２パラメータを決定するようにしてもよい。
【００３５】
（第２実施形態）
次に、第２実施形態の画像処理装置１０について説明する。本実施形態の画像処理装置１０の機能ブロックの全体の構成は、第１実施形態の画像処理装置１０（図１参照）と同じであるため説明を省略する。第２実施形態の画像処理装置１０は、変更部１４と第２決定部１３により参照される反転確率のテーブルが、第１実施形態の画像処理装置１０と異なる。
【００３６】
図１０は、第２実施形態の画像処理装置１０の変更部１４のブロック図の一例である。変更部１４は、比較部２１、変更バッファ２２及び実行部２３を備える。比較部２１は、乱数と反転確率の値を比較する。変更バッファ２２は、画像データの各画素の位置毎に、反転を行うか否かを一時的に記憶する。実行部２３は、画像データの全画素について変更バッファ２２に反転を行うか否かを記録が終わった後に、変更バッファ２２を参照して反転処理を実行する。
【００３７】
図１１は、第２実施形態の画像処理装置１０の第２決定部１３が決定する第２パラメータの一例である。本実施形態の第２決定部１３は、第１実施形態の画像処理装置１０とは異なり、周辺画素のうち黒画素が２つである場合に、黒画素の位置によって反転確率を変更している。
【００３８】
なお、周辺画素のパターンの区別の仕方は、適宜どのように考えてもよい。ここで、２つの例を挙げる。図１２は、第２実施形態の画像処理装置１０の第２決定部１３が抽出する周辺画素のパターン（回転は省略する場合）の一例である。なお、図１２では、周辺画素に黒画素が１つもない場合を紙面の都合上、図示していない（省略している）。図１１の反転確率の定義は、図１２の周辺画素のパターンの区別の仕方を利用している。図１３は、第２実施形態の画像処理装置１０の第２決定部１３が抽出する周辺画素のパターン（縦方向と横方向を区別する場合）の一例である。なお、図１３では、周辺画素に黒画素が１つもない場合を紙面の都合上、図示していない（省略している）。
【００３９】
図１４は、第２実施形態の画像処理方法の一例を説明するためのフローチャートである。まず、画像処理の対象となる画像データについて説明する。ここでは、画像データを、２値画像で表される文字である場合を例にして説明する。また、本実施形態の画像処理装置１０は、画面上に表示されている文字を、１画素１ビットの２値画像として扱うものであるとする。この際、文字である画素（画像データ上で黒である画素）が１であり、文字ではない画素（画像データ上で白である画素）が０であるとする。また、本実施形態の画像処理装置１０は、図３の例の周辺画素の定義（着目画素の周囲４画素が周辺画素）を使用するものとする。また、第２決定部１３は、図１１の第２パラメータを使用するものとする。
【００４０】
変更部１４は、変更バッファ２２を初期化する（ステップＳ１１）。ここでは、変更部１４は、画像データの全ての画素について、当該画素を反転しないことを示す情報を変更バッファ２２の初期値として設定するものとする。入力部１１は、画像処理装置１０に画像データを入力する（ステップＳ１２）。変更部１４は、画像データの全画素を処理したか否かを判定する（ステップＳ１３）。全画素を処理した場合（ステップＳ１３、Ｙｅｓ）は、ステップＳ１９に進む。全画素を処理していない場合（ステップＳ１３、Ｎｏ）は、ステップＳ１４に進む。
【００４１】
第２決定部１３は、着目画素の周囲４画素の状態（黒画素の位置及び数）を算出する（ステップＳ１４）。第２決定部１３は、ステップＳ１４の処理結果に応じて、当該画素の反転確率を決定する（ステップＳ１５）。変更部１４は、乱数を取得する（ステップＳ１６）。なお、本実施形態の画像処理装置１０では、乱数の値の範囲を０−１００とする。画像処理装置１０は、例えば、画像処理装置１０の現在時刻のｍｓ部分から、この乱数を取得してもよい。また、画像処理装置１０は、事前に乱数テーブルを用意することにより、この乱数を取得してもよい。なお、本実施例の場合、例えば５の倍数回目の場合のみ０、ほかの場合には１００を与えるような乱数を定義すれば、事前に定めた間隔、この場合であれば５画素おきに反転処理を行うようにすることもできる。
【００４２】
変更部１４（比較部２１）は、ステップＳ１５で決定した反転確率を％で表した場合の値と、ステップＳ１６で取得した乱数を比較する（ステップＳ１７）。乱数の方が大きい、又は乱数と反転確率が同じ場合（ステップＳ１７、Ｎｏ）は、ステップＳ１３に戻る。乱数の方が小さい場合（ステップＳ１７、Ｙｅｓ）は、変更部１４が、当該画素を反転することを示す情報を変更バッファ２２に記録する（ステップＳ１８）。変更部１４（比較部２１）が、ステップＳ１７で乱数との比較を行うことで、画素値を反転する処理に、ランダムな要素を加えることができる。変更部１４（実行部２３）は、変更バッファ２２を参照し、画像データの画素値の反転処理を実行する（ステップＳ１９）。
【００４３】
図１５は、第２実施形態の画像処理装置１０が画像データの画素値を変更した場合の一例である。図１５の例では、着目画素が白画素であり、当該着目画素の周辺画素に含まれる黒画素の数が２つである。また、当該黒画素は、直線状に並んでいない。これにより、第２決定部１３は、反転確率を８０％と決定する。図１５の例では、変更部１４が、乱数７３を取得している。７３＜８０であるため、変更部１４は、当該着目画素を反転することを示す情報を変更バッファ２２に記録する。変更部１４（実行部２３）は、画像データの全ての画素について、変更バッファ２２に反転処理を行うか否かを示す情報が記録された後に、画像データの画素値の反転処理を実行する。
【００４４】
（第３実施形態）
次に、第３実施形態の画像処理装置１０について説明する。図１６は、第３実施形態の画像処理装置１０のブロック図の一例を示す図である。本実施形態の画像処理装置１０は、入力部１１、第１決定部１２、第２決定部１３、変更部１４、第３決定部１５及びノイズパターンＤＢ１６を備える。本実施形態の画像処理装置１０は、第１実施形態の画像処理装置１０の構成に第３決定部１５及びノイズパターンＤＢ１６が追加されている。
【００４５】
入力部１１は、第１実施形態の画像処理装置１０と同じであるため説明を省略する。
【００４６】
第１決定部１２は、画像データ毎に第１パラメータを決定する。本実施形態の画像処理装置１０では、第１パラメータをＡとし、Ａを−２５〜２５の範囲の乱数とする。または、第１パラメータＡを画像データの色彩（濃淡）に応じて決定してもよい。例えば、第１パラメータＡを（所定の値以上の画素値を有する画素の数）／（画像データに含まれる画素の数）に応じて決定してもよい。
【００４７】
第２決定部１３は、画像データの画素毎に、当該画素の１以上の周辺画素に応じて第２パラメータを決定する。本実施形態の画像処理装置１０は、第２パラメータをγとし、γ＝（着目画素の画素値）−（周辺画素の画素値の平均値）とする。
【００４８】
変更部１４は、第１パラメータＡ及び第２パラメータγに応じて、画像データの画素毎に、画素値の補正値Ｘを求める計算式を決定する。変更部１４は、画像データの画素毎に当該画素の画素値に補正値Ｘを加算して、画像データの画素値を変更する。当該計算式は、例えば、次式（３）である。
【００４９】
【数３】
2014164485.tif 000005
【００５０】
なお、ａｂｓ（）は、絶対値をとる関数である。また、ｆ（γ）は、次式（４）により定義する。
【数４】
2014164485.tif 000006
【００５１】
α及びβについて説明する。まず、αについて説明する。変更部１４は、０〜１の範囲の実数をとる乱数ｒと、次式（５）により定義される数ｐを比較する。そして、変更部１４は、ｒ＞ｐであれば、α＝１とし、ｒ≦ｐであれば、α＝−１とする。
【００５２】
【数５】
2014164485.tif 000007
【００５３】
次に、βについて説明する。変更部１４は、画像データ毎に、βを０〜２の範囲の値をとる乱数により決定する。なお、変更部１４は、画像データ毎ではなく、画像データの領域を複数に分割した分割領域毎、又は着目画素毎にβを決定してもよい。
【００５４】
以上により、変更部１４は、補正値Ｘを、ｆ（γ）の絶対値の０〜２倍の正又は負の値として算出する。
【００５５】
変更部１４は、ｒ＞ｐであれば、着目画素の画素値に正の値を加える。すなわち、着目画素を白の側に寄せる（薄くする）。ｒ≦ｐであれば、着目画素の画素値に負の値を加える。すなわち、着目画素を黒の側に寄せる（濃くする）。つまり、ｆ（γ）＝０の場合にｐ＝０．５となり、濃くする処理と薄くする処理が等確率で起こることとなる。γは着目画素の画素値から周辺画素の画素値の平均値を引いた値であるので、Ａが正であればｆ（γ）の値は負の値をとりやすくなる。すなわち、ｐ＜０．５となりやすくなるため、濃くする処理のほうが起こりやすくなる。
【００５６】
第３決定部１５は、画像データの画素毎のノイズを表す第３パラメータを決定する。ノイズパターンＤＢ１６は、画像データの画素毎のノイズの決定方法を表すノイズのパターンである。第３パラメータ及びノイズパターンの詳細については後述する。
【００５７】
図１７は、第３実施形態の画像処理方法の一例を説明するためのフローチャートである。まず、画像処理の対象となる画像データについて説明する。ここでは、画像データを、１画素８ビットのグレースケール画像で表される文字である場合を例にして説明する。すなわち、画素値は０〜２５５の値を取る。なお、画像データは、文字が黒く背景が白いものであるとする。すなわち、文字である画素が、文字ではない画素に比べて画素値が小さいとする。また、本実施形態の画像処理装置１０は、図３の例の周辺画素の定義（着目画素の周囲４画素が周辺画素）を使用するものとする。また、第１パラメータＡを０とし、βを０．１とする。
【００５８】
変更部１４は、変更バッファ２２を０（変更しないことを示す値）で初期化する（ステップＳ２１）。入力部１１は、画像処理装置１０に画像データを入力する（ステップＳ２２）。変更部１４は、画像データの全画素を処理したか否かを判定する（ステップＳ２３）。全画素を処理した場合（ステップＳ２３、Ｙｅｓ）は、ステップＳ２９に進む。全画素を処理していない場合（ステップＳ２３、Ｎｏ）は、ステップＳ２４に進む。
【００５９】
第２決定部１３は、着目画素の周囲４画素の画素値の平均値を算出する（ステップＳ２４）。第２決定部１３は、ステップＳ２４の処理結果に応じて、式（３）に基づいて補正値Ｘを決定する（ステップＳ２５）。ここで、ステップＳ２５について具体例に基づいて説明する。
【００６０】
図１８は、第３実施形態の画像処理装置１０が処理する画像データの画素値の一例である。まず、変更部１４は、次式（６）によりｆ（γ）を求める。
【数６】
2014164485.tif 000008
【００６１】
次に、式（６）により求めた値に応じて決定される数ｐと、乱数ｒ（ここでは、乱数ｒとして０．２５が得られたものとする）を比較する（次式（７））。
【数７】
2014164485.tif 000009
【００６２】
変更部１４は、ｒ≦ｐであるためα＝−１とする。β＝０．１及びｆ（γ）＝１２７．５より、変更部１４は、補正値Ｘを次式（８）により算出する。
【数８】
2014164485.tif 000010
【００６３】
図１７に戻り、第３決定部１５は、画像データの画素毎のノイズを表す第３パラメータを決定するため、ノイズパターンＤＢ１６からノイズパターンを選択する（ステップＳ２６）。図１９は、第３実施形態の画像処理装置１０のノイズパターンの例を示す図である。ノイズパターンには、補正値Ｘを作用させる度合いを変更するためのノイズとして画素の位置毎に倍率（第３パラメータ）が定義されている。なお、本実施形態の第３決定部１５は、事前に定めたパターンからノイズパターンを１つ選択しているが、ノイズパターンに含まれる各値を乱数により０又は１にするなどランダムに生成したりしてもよい。また、第３決定部１５は、複数のノイズパターンを選択して、値を加算（減算）することにより新しいノイズパターンを生成して使用してもよい。
【００６４】
変更部１４は、ステップＳ２５で算出した補正値Ｘ及びステップＳ２６で選択したノイズパターンにより、ノイズマスクを生成する（ステップＳ２７）。図２０は、第３実施形態の画像処理装置１０のノイズマスクの一例を示す図である。変更部１４は、補正値Ｘ＝−１２．７５に、各画素の位置に対応するノイズパターンの値を乗算することによりノイズマスクを得る。なお、図２０のノイズマスクの例は、３×３の９画素となっているが、ノイズマスクの形状は、任意の形状でよい。また、変更部１４は、周辺画素の形状に応じて、ノイズマスクの形状を決定してもよい。変更部１４は、変更バッファ２２に当該ノイズマスクの値を加算する（ステップＳ２８）。ステップＳ２３に戻り、変更部１４は、全画素を処理した場合（ステップＳ２３、Ｙｅｓ）に、変更バッファ２２に記録された値を、画像データの画素値に加算（減算）する（ステップＳ２９）。
【００６５】
なお、本実施形態の画像処置装置１０は、変更バッファ２２に補正値Ｘを必ず加算する。しかしながら、第１又は２実施形態の画像処置装置１０で求めた反転確率に従って変更バッファ２２に補正値Ｘを加算するなどして、一部の着目画素のみに補正値Ｘが加算されるようにしてもよい。その場合、画像データを２値化すれば、第１又は第２実施形態の画像処理装置１０と同様の方法で反転確率を算出できる。
【００６６】
図２１は、第１〜３実施形態の画像処理装置１０のハードウェア構成の一例を示す図である。本実施の形態の画像処理装置１０は、制御装置２１、主記憶装置２２、補助記憶装置２３、表示装置２４、入力装置２５及び通信装置２６を備える。制御装置２１、主記憶装置２２、補助記憶装置２３、表示装置２４、入力装置２５及び通信装置２６は、バス２７を介して互いに接続されている。
【００６７】
制御装置２１は、補助記憶装置２３から主記憶装置２２に読み出されたプログラムを実行する。主記憶装置２２は、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）やＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）等のメモリである。補助記憶装置２３は、例えば、ハードディスクやメモリカード等である。表示装置２４は、画像処理装置１０の状態等を表示する画面である。表示装置２４は、例えば、液晶ディスプレイ等である。入力装置２５は、画像処理装置１０を操作するためのインタフェースである。入力装置２５は、例えば、キーボードやマウス等である。通信装置２６は、ネットワークに接続するためのインタフェースである。
【００６８】
本実施形態の画像処理装置１０で実行されるプログラムを、インストール可能な形式又は実行可能な形式のファイルでＣＤ−ＲＯＭ、メモリカード、ＣＤ−Ｒ及びＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のコンピュータで読み取り可能な記録媒体に記録し、コンピュータ・プログラム・プロダクトとして提供してもよい。また、本実施形態の画像処理装置１０で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供してもよい。また、本実施形態の画像処理装置１０で実行されるプログラムをダウンロードさせずに、インターネット等のネットワーク経由で提供、又は配布してもよい。また、本実施形態の画像処理装置１０のプログラムを、ＲＯＭ等に予め組み込んで提供してもよい。
【００６９】
本実施形態の画像処理装置１０で実行されるプログラムは、上述した画像処理装置１０の各機能ブロックのうち、プログラムとしても実現可能な機能ブロックを含むモジュール構成となっている。当該モジュールは、実際のハードウェアとしては、制御装置２１が上記記憶媒体からプログラムを読み出して実行することにより、上記各モジュールが主記憶装置２２上にロードされる。すなわち、上記各モジュールは、主記憶装置２２上に生成される。なお、画像処理装置１０の各機能ブロックの一部、又は全部を、プログラムにより実現せずに、ＩＣ（Ｉｎｔｅｇｒａｔｅｄ  Ｃｉｒｃｕｉｔ）等のハードウェアにより実現してもよい。
【００７０】
以上のように、第１〜３実施形態の画像処理装置１０は、画像データ毎に画像データの画素の画素値の変更の仕方を表す第１パラメータを決定する第１決定部１２と、画素毎に、画素の１以上の周辺画素に応じて、画像データの画素の画素値の変更の仕方を表す第２パラメータを決定する第２決定部１３を備える。
【００７１】
第１〜３実施形態の画像処理装置１０は、画像データに劣化を加えた当該画像データのパターンを生成する場合において、全体的な傾向及び局所的な画素の状況を考慮する。すなわち、濃くする薄くするなどに応じた第１パラメータと、着目画素及びその周辺画素の状況に応じた第２パラメータとの２つの観点から着目画素の画素値の変更処理を決定する。第１〜３実施形態の画像処理装置１０は、当該変更処理に従って画像データに劣化を加えることで、より実際に入力されるものに近い画像データのパターンを生成することができる。なお、第１〜３実施形態の画像処理装置１０に入力される画像データの形式は、２値画像や１画素８ビットのグレースケールの画像に限られず、どのようなものであってもよい。例えば、２値画像の場合の反転処理等は、画素値の最大値との差分をとるなどの処理に適宜変更してよい。
【００７２】
第１〜３実施形態の画像処理装置１０によれば、限られた画像データから、実際に入力され得る様々な劣化が加えられた文字パターンを容易に得ることができる。
【００７３】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００７４】
１０  画像処理装置
１１  入力部
１２  第１決定部
１３  第２決定部
１４  変更部
１５  第３決定部
１６  ノイズパターンＤＢ
２１  比較部
２２  変更バッファ
２３  実行部
【図１】
2014164485.tif 000011
【図２】
2014164485.tif 000012
【図３】
2014164485.tif 000013
【図４】
2014164485.tif 000014
【図５】
2014164485.tif 000015
【図６】
2014164485.tif 000016
【図７】
2014164485.tif 000017
【図８】
2014164485.tif 000018
【図９】
2014164485.tif 000019
【図１０】
2014164485.tif 000020
【図１１】
2014164485.tif 000021
【図１２】
2014164485.tif 000022
【図１３】
2014164485.tif 000023
【図１４】
2014164485.tif 000024
【図１５】
2014164485.tif 000025
【図１６】
2014164485.tif 000026
【図１７】
2014164485.tif 000027
【図１８】
2014164485.tif 000028
【図１９】
2014164485.tif 000029
【図２０】
2014164485.tif 000030
【図２１】
2014164485.tif 000031