【文献】
新垣 晃一 外3名,遺伝的アルゴリズムによる blind deconvolution,電子情報通信学会技術研究報告 画像工学 IE96−14〜34,日本,社団法人電子情報通信学会,1996年 6月,第96巻 第116号,pp.51-56
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
スキャンなどの画像入力処理により認識される文字の理想状態からの劣化は、画像データの全体的な劣化及び局所的な劣化の2種類がある。全体的な劣化は、例えば、ぼけやレンズの感度などによるものである。局所的な劣化は、例えば、レンズの傷や汚れや、撮影対象上における周辺の状態によるものである。
【0013】
例えば、レンズの感度を上げれば文字は全体的に濃くなってくる。しかしながら、このような場合であっても、文字の輪郭部分においてドット欠けが起こるなど、局所的には薄くなることもある。入力パターンの生成においては、このような状況に応じた処理を行う必要がある。以下、各実施形態について説明する。
【0014】
(第1の実施形態)
図1は、第1実施形態の画像処理装置10のブロック図の一例を示す図である。本実施形態の画像処理装置10は、入力部11、第1決定部12、第2決定部13及び変更部14を備える。
【0015】
入力部11は、画像処理装置10に画像データを入力する。入力部11は、例えば、スキャナやカメラなどである。画像処理装置10は、入力部11によって紙面上に印刷された文字をスキャンしたり、画面上に表示されている文字を撮影したりすることにより画像データを取得する。
図2は、画像データの一例を示す図である。
図2の例では、画像データが文字「亜」である場合の例である。
【0016】
第1決定部12は、画像データ毎に、画像データの画素値の変更方法を表す第1パラメータを決定する。第1パラメータは、画像データの大域的な情報に応じて決まるパラメータである。例えば、第1パラメータは、画像データの画素の画素値を上げる(下げる)などを表し、画像全体の傾向に作用するパラメータである。第1パラメータは、オペレータが定義するなどして事前に定めてもよいし、画像処理の実行ごとにランダムに決定してもよい。また、第1決定部12は、画像データ全体に対してではなく、画像データの領域を複数に分割した分割領域毎に、第1パラメータを決定してもよい。
【0017】
第2決定部13は、画像データの画素毎に、当該画素の1以上の周辺画素に応じて、画像データの画素値の変更方法を表す第2パラメータを決定する。第2パラメータは、画像データの局所的な情報に応じて決まるパラメータである。第2決定部13は、第1パラメータに応じて第2パラメータの決定の仕方(処理後の画像データを全体的に濃くする又は薄くするなどの傾向)を変える。
【0018】
図3は、第1実施形態の画像処理装置10の第2決定部13が抽出する周辺画素(4画素の場合)の一例である。
図3の例は、着目画素の上下左右4画素を周辺画素と定義した場合の例である。
【0019】
図4は、第1実施形態の画像処理装置10の第2決定部13が抽出する周辺画素(8画素の場合)の一例である。
図4の例は、着目画素の周囲8画素を周辺画素と定義した場合の例である。
【0020】
図5は、第1実施形態の画像処理装置10の第2決定部13が抽出する周辺画素(15画素の場合)の一例である。
図5の例は、着目画素の周囲15画素を周辺画素と定義した場合の例である。
【0021】
なお、第2決定部13は、着目画素に作用させる第2パラメータを決定する際には、周辺画素の位置に応じて、個々の周辺画素毎に影響を与える度合いを変えるための重みを付けてもよい。例えば、第2決定部13は、着目画素と周辺画素との距離に応じて重みを付けてもよい。また、第2決定部13は、着目画素に作用させる第2パラメータを決定する際には、画像処理装置10のユーザの操作などに応じて、周辺画素の形状を
図3〜
図5のように、様々な形状に変更できるようにしてもよい。なお、周辺画素の形状は、
図3〜
図5の形状に限られず、任意の形状でよい。例えば、周辺画素の形状を、縦方向の画素を考慮せずに、着目画素から横方向だけ2画素ずつ(右に2画素、左に2画素)とすると、横方向のぼけやかすれなどをシミュレートすることができる。
【0022】
図1に戻り、変更部14は、第1パラメータが表す変更方法及び第2パラメータが表す変更方法によって、画像データの画素毎に画素値を変更する。
【0023】
図6は、第1実施形態の画像処理装置10の第2決定部13が決定する第2パラメータの一例である。
図6は、画像データが2値画像である場合の例である。例えば、着目画素が黒画素である場合は、周辺画素に含まれる黒画素の数に応じて、着目画素を反転させる度合い(以下、「反転確率」という。)を変えている。
図6の例は、例えば、着目画素が黒画素であり、周辺画素に黒画素が3つある場合は、着目画素を5%の反転確率で反転させることを示す。ここで、画素の反転は、着目画素が黒画素であれば白画素にし、着目画素が白画素であれば黒画素にすることを表す。画素の反転処理は、(反転後の画素値)=1−(反転前の画素値)により実現することができる。
図6の例では、着目画素が白画素である場合には、周辺画素の状況が同じ場合であっても、着目画素が黒画素である場合とは異なる反転確率が定義されている。また、
図6の例では、周辺画素の画素値に応じて、5段階に反転確率を変更している。
【0024】
図6の第2パラメータの例を数式により表すと以下のようになる。
【0025】
【数1】
【数2】
式(1)は、着目画素が黒画素である場合の数式である。また、式(2)は、着目画素が白画素である場合の数式である。また、nは、周辺画素に含まれる白画素の数を表す。なお、第2パラメータ(本実施形態では反転確率)を決定する数式は、式(1)及び(2)に限られず、適宜定めてよい。
【0026】
なお、本実施形態の画像処理装置10では、第1パラメータに応じて第2パラメータの決定の仕方が変わる。例えば、
図6のように第2パラメータが決定される場合は、第1パラメータが、画像データを全体的に濃くする傾向に画像処理を行うことを示している。この傾向は、
図6の例では、周辺画素の黒画素の数と白画素の数が同じ場合(黒画素の数が2つの場合)に顕著に現れている。すなわち、着目画素が黒画素である場合の反転確率が15%であるのに対して、着目画素が白画素である場合の反転確率が85%であることから明らかである。第2決定部13は、着目画素及び周辺画素に応じて反転確率を決定する
図6のような反転確率のテーブルを、第1パラメータによって切り換えてもよい。
【0027】
図7は、第1実施形態の画像処理方法の一例を説明するためのフローチャートである。まず、画像処理の対象となる画像データについて説明する。ここでは、画像データを、2値画像で表される文字である場合を例にして説明する。また、本実施形態の画像処理装置10は、画面上に表示されている文字を、1画素1ビットの2値画像として扱うものであるとする。この際、文字である画素(画像データ上で黒である画素)が1であり、文字ではない画素(画像データ上で白である画素)が0であるとする。また、本実施形態の画像処理装置10は、
図3の例の周辺画素の定義(着目画素の周囲4画素が周辺画素)を使用するものとする。また、第2決定部13は、
図6の第2パラメータを使用するものとする。
【0028】
入力部11は、画像処理装置10に画像データを入力する(ステップS1)。変更部14は、画像データの全画素を処理したか否かを判定する(ステップS2)。全画素を処理した場合(ステップS2、Yes)は、処理を終了する。全画素を処理していない場合(ステップS2、No)は、ステップS3に進む。
【0029】
第2決定部13は、着目画素の周囲4画素の画素値の和を算出する(ステップS3)。画像データが2値画像であることから、ステップS3により、着目画素の周辺画素に含まれる黒画素の数を算出できる。第2決定部13は、ステップS3の処理結果に応じて、当該画素の反転確率を決定する(ステップS4)。変更部14は、乱数を取得する(ステップS5)。なお、本実施形態の画像処理装置10では、乱数の値の範囲を0−100とする。画像処理装置10は、例えば、画像処理装置10の現在時刻のms部分から、この乱数を取得してもよい。また、画像処理装置10は、事前に乱数テーブルを用意することにより、この乱数を取得してもよい。なお、本実施例の場合、例えば5の倍数回目の場合のみ0、ほかの場合には100を与えるような乱数を定義すれば、事前に定めた間隔、この場合であれば5画素おきに反転処理を行うようにすることもできる。
【0030】
変更部14は、ステップS4で決定した反転確率を%で表した場合の値と、ステップS5で取得した乱数を比較する(ステップS6)。乱数の方が大きい、又は乱数と反転確率が同じ場合(ステップS6、No)は、画素値を反転せずにステップS2に戻る。乱数の方が小さい場合(ステップS6、Yes)は、変更部14が、画素値を反転する(ステップS7)。変更部14が、ステップS7で乱数との比較を行うことで、画素値を反転する処理に、ランダムな要素を加えることができる。
【0031】
以上のようにして、本実施形態の画像処理装置10は、画像データを処理する。なお、本実施形態の画像処理装置10が、画像データから処理対象となる着目画素を選択するときは、画像データの左上から右下方向に順番に選択していくものとするが、順番はこれに限らない。また、全画素を処理する必要もなく、例えば、ランダムサンプリングを行って決定してもよい。なお、ランダムサンプリングを行う場合には、着目画素の選択数が予め定める既定の数に達した時点で終了する。また、反転処理の実行数が既定の数に達したら処理を打ち切るなどしてもよい。既定の数は、予め定義してもよいし、ランダムに決定してもよい。
【0032】
図8は、第1実施形態の画像処理装置10が画像データの画素値を変更した場合の一例である。
図8の例では、着目画素が白画素であり、当該着目画素の周辺画素に含まれる黒画素の数が2つである。これにより、第2決定部13は、反転確率を85%と決定する。
図8の例では、変更部14が、乱数73を取得している。73<85であるため、変更部14は、着目画素を反転する。
【0033】
図9は、第1実施形態の画像処理装置10により画像処理された画像データの一例である。
図9より明らかであるように、処理された画像データは、全体的には濃くなっている(黒画素が増えている)。しかし、主に周辺画素に白画素の多い文字の角などには欠けが発生している部分(白画素に反転されている部分)もある。また、例えば、
図9中、丸で囲んだ中央の縦線2本が横線と交差する部分、すなわち、着目画素と周辺画素の画素値の関係が類似した部分においても、箇所によって異なる画像の劣化が発生している。
【0034】
なお、本実施形態の画像処理装置10の説明では、画像データが2値画像である場合について説明したが、画素値が2値ではない画像データの場合は、画素値が所定の値以上である画素(以下「第1画素」という)を抽出し、第1画素の位置や数に応じて異なる第2パラメータを決定するようにしてもよい。
【0035】
(第2実施形態)
次に、第2実施形態の画像処理装置10について説明する。本実施形態の画像処理装置10の機能ブロックの全体の構成は、第1実施形態の画像処理装置10(
図1参照)と同じであるため説明を省略する。第2実施形態の画像処理装置10は、変更部14と第2決定部13により参照される反転確率のテーブルが、第1実施形態の画像処理装置10と異なる。
【0036】
図10は、第2実施形態の画像処理装置10の変更部14のブロック図の一例である。変更部14は、比較部21、変更バッファ22及び実行部23を備える。比較部21は、乱数と反転確率の値を比較する。変更バッファ22は、画像データの各画素の位置毎に、反転を行うか否かを一時的に記憶する。実行部23は、画像データの全画素について変更バッファ22に反転を行うか否かを記録が終わった後に、変更バッファ22を参照して反転処理を実行する。
【0037】
図11は、第2実施形態の画像処理装置10の第2決定部13が決定する第2パラメータの一例である。本実施形態の第2決定部13は、第1実施形態の画像処理装置10とは異なり、周辺画素のうち黒画素が2つである場合に、黒画素の位置によって反転確率を変更している。
【0038】
なお、周辺画素のパターンの区別の仕方は、適宜どのように考えてもよい。ここで、2つの例を挙げる。
図12は、第2実施形態の画像処理装置10の第2決定部13が抽出する周辺画素のパターン(回転は省略する場合)の一例である。なお、
図12では、周辺画素に黒画素が1つもない場合を紙面の都合上、図示していない(省略している)。
図11の反転確率の定義は、
図12の周辺画素のパターンの区別の仕方を利用している。
図13は、第2実施形態の画像処理装置10の第2決定部13が抽出する周辺画素のパターン(縦方向と横方向を区別する場合)の一例である。なお、
図13では、周辺画素に黒画素が1つもない場合を紙面の都合上、図示していない(省略している)。
【0039】
図14は、第2実施形態の画像処理方法の一例を説明するためのフローチャートである。まず、画像処理の対象となる画像データについて説明する。ここでは、画像データを、2値画像で表される文字である場合を例にして説明する。また、本実施形態の画像処理装置10は、画面上に表示されている文字を、1画素1ビットの2値画像として扱うものであるとする。この際、文字である画素(画像データ上で黒である画素)が1であり、文字ではない画素(画像データ上で白である画素)が0であるとする。また、本実施形態の画像処理装置10は、
図3の例の周辺画素の定義(着目画素の周囲4画素が周辺画素)を使用するものとする。また、第2決定部13は、
図11の第2パラメータを使用するものとする。
【0040】
変更部14は、変更バッファ22を初期化する(ステップS11)。ここでは、変更部14は、画像データの全ての画素について、当該画素を反転しないことを示す情報を変更バッファ22の初期値として設定するものとする。入力部11は、画像処理装置10に画像データを入力する(ステップS12)。変更部14は、画像データの全画素を処理したか否かを判定する(ステップS13)。全画素を処理した場合(ステップS13、Yes)は、ステップS19に進む。全画素を処理していない場合(ステップS13、No)は、ステップS14に進む。
【0041】
第2決定部13は、着目画素の周囲4画素の状態(黒画素の位置及び数)を算出する(ステップS14)。第2決定部13は、ステップS14の処理結果に応じて、当該画素の反転確率を決定する(ステップS15)。変更部14は、乱数を取得する(ステップS16)。なお、本実施形態の画像処理装置10では、乱数の値の範囲を0−100とする。画像処理装置10は、例えば、画像処理装置10の現在時刻のms部分から、この乱数を取得してもよい。また、画像処理装置10は、事前に乱数テーブルを用意することにより、この乱数を取得してもよい。なお、本実施例の場合、例えば5の倍数回目の場合のみ0、ほかの場合には100を与えるような乱数を定義すれば、事前に定めた間隔、この場合であれば5画素おきに反転処理を行うようにすることもできる。
【0042】
変更部14(比較部21)は、ステップS15で決定した反転確率を%で表した場合の値と、ステップS16で取得した乱数を比較する(ステップS17)。乱数の方が大きい、又は乱数と反転確率が同じ場合(ステップS17、No)は、ステップS13に戻る。乱数の方が小さい場合(ステップS17、Yes)は、変更部14が、当該画素を反転することを示す情報を変更バッファ22に記録する(ステップS18)。変更部14(比較部21)が、ステップS17で乱数との比較を行うことで、画素値を反転する処理に、ランダムな要素を加えることができる。変更部14(実行部23)は、変更バッファ22を参照し、画像データの画素値の反転処理を実行する(ステップS19)。
【0043】
図15は、第2実施形態の画像処理装置10が画像データの画素値を変更した場合の一例である。
図15の例では、着目画素が白画素であり、当該着目画素の周辺画素に含まれる黒画素の数が2つである。また、当該黒画素は、直線状に並んでいない。これにより、第2決定部13は、反転確率を80%と決定する。
図15の例では、変更部14が、乱数73を取得している。73<80であるため、変更部14は、当該着目画素を反転することを示す情報を変更バッファ22に記録する。変更部14(実行部23)は、画像データの全ての画素について、変更バッファ22に反転処理を行うか否かを示す情報が記録された後に、画像データの画素値の反転処理を実行する。
【0044】
(第3実施形態)
次に、第3実施形態の画像処理装置10について説明する。
図16は、第3実施形態の画像処理装置10のブロック図の一例を示す図である。本実施形態の画像処理装置10は、入力部11、第1決定部12、第2決定部13、変更部14、第3決定部15及びノイズパターンDB16を備える。本実施形態の画像処理装置10は、第1実施形態の画像処理装置10の構成に第3決定部15及びノイズパターンDB16が追加されている。
【0045】
入力部11は、第1実施形態の画像処理装置10と同じであるため説明を省略する。
【0046】
第1決定部12は、画像データ毎に第1パラメータを決定する。本実施形態の画像処理装置10では、第1パラメータをAとし、Aを−25〜25の範囲の乱数とする。または、第1パラメータAを画像データの色彩(濃淡)に応じて決定してもよい。例えば、第1パラメータAを(所定の値以上の画素値を有する画素の数)/(画像データに含まれる画素の数)に応じて決定してもよい。
【0047】
第2決定部13は、画像データの画素毎に、当該画素の1以上の周辺画素に応じて第2パラメータを決定する。本実施形態の画像処理装置10は、第2パラメータをγとし、γ=(着目画素の画素値)−(周辺画素の画素値の平均値)とする。
【0048】
変更部14は、第1パラメータA及び第2パラメータγに応じて、画像データの画素毎に、画素値の補正値Xを求める計算式を決定する。変更部14は、画像データの画素毎に当該画素の画素値に補正値Xを加算して、画像データの画素値を変更する。当該計算式は、例えば、次式(3)である。
【0050】
なお、abs()は、絶対値をとる関数である。また、f(γ)は、次式(4)により定義する。
【数4】
【0051】
α及びβについて説明する。まず、αについて説明する。変更部14は、0〜1の範囲の実数をとる乱数rと、次式(5)により定義される数pを比較する。そして、変更部14は、r>pであれば、α=1とし、r≦pであれば、α=−1とする。
【0053】
次に、βについて説明する。変更部14は、画像データ毎に、βを0〜2の範囲の値をとる乱数により決定する。なお、変更部14は、画像データ毎ではなく、画像データの領域を複数に分割した分割領域毎、又は着目画素毎にβを決定してもよい。
【0054】
以上により、変更部14は、補正値Xを、f(γ)の絶対値の0〜2倍の正又は負の値として算出する。
【0055】
変更部14は、r>pであれば、着目画素の画素値に正の値を加える。すなわち、着目画素を白の側に寄せる(薄くする)。r≦pであれば、着目画素の画素値に負の値を加える。すなわち、着目画素を黒の側に寄せる(濃くする)。つまり、f(γ)=0の場合にp=0.5となり、濃くする処理と薄くする処理が等確率で起こることとなる。γは着目画素の画素値から周辺画素の画素値の平均値を引いた値であるので、Aが正であればf(γ)の値は負の値をとりやすくなる。すなわち、p<0.5となりやすくなるため、濃くする処理のほうが起こりやすくなる。
【0056】
第3決定部15は、画像データの画素毎のノイズを表す第3パラメータを決定する。ノイズパターンDB16は、画像データの画素毎のノイズの決定方法を表すノイズのパターンである。第3パラメータ及びノイズパターンの詳細については後述する。
【0057】
図17は、第3実施形態の画像処理方法の一例を説明するためのフローチャートである。まず、画像処理の対象となる画像データについて説明する。ここでは、画像データを、1画素8ビットのグレースケール画像で表される文字である場合を例にして説明する。すなわち、画素値は0〜255の値を取る。なお、画像データは、文字が黒く背景が白いものであるとする。すなわち、文字である画素が、文字ではない画素に比べて画素値が小さいとする。また、本実施形態の画像処理装置10は、
図3の例の周辺画素の定義(着目画素の周囲4画素が周辺画素)を使用するものとする。また、第1パラメータAを0とし、βを0.1とする。
【0058】
変更部14は、変更バッファ22を0(変更しないことを示す値)で初期化する(ステップS21)。入力部11は、画像処理装置10に画像データを入力する(ステップS22)。変更部14は、画像データの全画素を処理したか否かを判定する(ステップS23)。全画素を処理した場合(ステップS23、Yes)は、ステップS29に進む。全画素を処理していない場合(ステップS23、No)は、ステップS24に進む。
【0059】
第2決定部13は、着目画素の周囲4画素の画素値の平均値を算出する(ステップS24)。第2決定部13は、ステップS24の処理結果に応じて、式(3)に基づいて補正値Xを決定する(ステップS25)。ここで、ステップS25について具体例に基づいて説明する。
【0060】
図18は、第3実施形態の画像処理装置10が処理する画像データの画素値の一例である。まず、変更部14は、次式(6)によりf(γ)を求める。
【数6】
【0061】
次に、式(6)により求めた値に応じて決定される数pと、乱数r(ここでは、乱数rとして0.25が得られたものとする)を比較する(次式(7))。
【数7】
【0062】
変更部14は、r≦pであるためα=−1とする。β=0.1及びf(γ)=127.5より、変更部14は、補正値Xを次式(8)により算出する。
【数8】
【0063】
図17に戻り、第3決定部15は、画像データの画素毎のノイズを表す第3パラメータを決定するため、ノイズパターンDB16からノイズパターンを選択する(ステップS26)。
図19は、第3実施形態の画像処理装置10のノイズパターンの例を示す図である。ノイズパターンには、補正値Xを作用させる度合いを変更するためのノイズとして画素の位置毎に倍率(第3パラメータ)が定義されている。なお、本実施形態の第3決定部15は、事前に定めたパターンからノイズパターンを1つ選択しているが、ノイズパターンに含まれる各値を乱数により0又は1にするなどランダムに生成したりしてもよい。また、第3決定部15は、複数のノイズパターンを選択して、値を加算(減算)することにより新しいノイズパターンを生成して使用してもよい。
【0064】
変更部14は、ステップS25で算出した補正値X及びステップS26で選択したノイズパターンにより、ノイズマスクを生成する(ステップS27)。
図20は、第3実施形態の画像処理装置10のノイズマスクの一例を示す図である。変更部14は、補正値X=−12.75に、各画素の位置に対応するノイズパターンの値を乗算することによりノイズマスクを得る。なお、
図20のノイズマスクの例は、3×3の9画素となっているが、ノイズマスクの形状は、任意の形状でよい。また、変更部14は、周辺画素の形状に応じて、ノイズマスクの形状を決定してもよい。変更部14は、変更バッファ22に当該ノイズマスクの値を加算する(ステップS28)。ステップS23に戻り、変更部14は、全画素を処理した場合(ステップS23、Yes)に、変更バッファ22に記録された値を、画像データの画素値に加算(減算)する(ステップS29)。
【0065】
なお、本実施形態の画像処置装置10は、変更バッファ22に補正値Xを必ず加算する。しかしながら、第1又は2実施形態の画像処置装置10で求めた反転確率に従って変更バッファ22に補正値Xを加算するなどして、一部の着目画素のみに補正値Xが加算されるようにしてもよい。その場合、画像データを2値化すれば、第1又は第2実施形態の画像処理装置10と同様の方法で反転確率を算出できる。
【0066】
図21は、第1〜3実施形態の画像処理装置10のハードウェア構成の一例を示す図である。本実施の形態の画像処理装置10は、制御装置21、主記憶装置22、補助記憶装置23、表示装置24、入力装置25及び通信装置26を備える。制御装置21、主記憶装置22、補助記憶装置23、表示装置24、入力装置25及び通信装置26は、バス27を介して互いに接続されている。
【0067】
制御装置21は、補助記憶装置23から主記憶装置22に読み出されたプログラムを実行する。主記憶装置22は、ROM(Read Only Memory)やRAM(Random Access Memory)等のメモリである。補助記憶装置23は、例えば、ハードディスクやメモリカード等である。表示装置24は、画像処理装置10の状態等を表示する画面である。表示装置24は、例えば、液晶ディスプレイ等である。入力装置25は、画像処理装置10を操作するためのインタフェースである。入力装置25は、例えば、キーボードやマウス等である。通信装置26は、ネットワークに接続するためのインタフェースである。
【0068】
本実施形態の画像処理装置10で実行されるプログラムを、インストール可能な形式又は実行可能な形式のファイルでCD−ROM、メモリカード、CD−R及びDVD(Digital Versatile Disk)等のコンピュータで読み取り可能な記録媒体に記録し、コンピュータ・プログラム・プロダクトとして提供してもよい。また、本実施形態の画像処理装置10で実行されるプログラムを、インターネット等のネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供してもよい。また、本実施形態の画像処理装置10で実行されるプログラムをダウンロードさせずに、インターネット等のネットワーク経由で提供、又は配布してもよい。また、本実施形態の画像処理装置10のプログラムを、ROM等に予め組み込んで提供してもよい。
【0069】
本実施形態の画像処理装置10で実行されるプログラムは、上述した画像処理装置10の各機能ブロックのうち、プログラムとしても実現可能な機能ブロックを含むモジュール構成となっている。当該モジュールは、実際のハードウェアとしては、制御装置21が上記記憶媒体からプログラムを読み出して実行することにより、上記各モジュールが主記憶装置22上にロードされる。すなわち、上記各モジュールは、主記憶装置22上に生成される。なお、画像処理装置10の各機能ブロックの一部、又は全部を、プログラムにより実現せずに、IC(Integrated Circuit)等のハードウェアにより実現してもよい。
【0070】
以上のように、第1〜3実施形態の画像処理装置10は、画像データ毎に画像データの画素の画素値の変更の仕方を表す第1パラメータを決定する第1決定部12と、画素毎に、画素の1以上の周辺画素に応じて、画像データの画素の画素値の変更の仕方を表す第2パラメータを決定する第2決定部13を備える。
【0071】
第1〜3実施形態の画像処理装置10は、画像データに劣化を加えた当該画像データのパターンを生成する場合において、全体的な傾向及び局所的な画素の状況を考慮する。すなわち、濃くする薄くするなどに応じた第1パラメータと、着目画素及びその周辺画素の状況に応じた第2パラメータとの2つの観点から着目画素の画素値の変更処理を決定する。第1〜3実施形態の画像処理装置10は、当該変更処理に従って画像データに劣化を加えることで、より実際に入力されるものに近い画像データのパターンを生成することができる。なお、第1〜3実施形態の画像処理装置10に入力される画像データの形式は、2値画像や1画素8ビットのグレースケールの画像に限られず、どのようなものであってもよい。例えば、2値画像の場合の反転処理等は、画素値の最大値との差分をとるなどの処理に適宜変更してよい。
【0072】
第1〜3実施形態の画像処理装置10によれば、限られた画像データから、実際に入力され得る様々な劣化が加えられた文字パターンを容易に得ることができる。
【0073】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。