(57)【特許請求の範囲】
【請求項１】
画像から暈かし具合の異なる複数のスケール画像を生成するスケール画像生成部と、
各スケール画像それぞれにおいて、スケール画像内の各画素値と所定の閾値とを比較してスケール画像を２値化することで複数のブロブを含むブロブ画像を生成するブロブ画像生成部と
画像の暈かし具合を示す値と、各ブロブの面積または数との関係に基づいて、前記画像の暈かし具合を示す値の変化に対するブロブの平均面積または数の変化の割合が所定の閾値未満となる範囲の暈かし具合の値を計算する固有スケール計算部と
を備えたことを特徴とする画像処理装置。
【請求項２】
前記画像は文書画像であり、前記文書画像と前記ブロブ画像に含まれるブロブの領域とを比較し、前記ブロブの領域に含まれる文字または文字列の外接矩形の領域を、固有スケールでの画像要素領域として出力する出力部を更に有することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記出力部は、前記ブロブの領域に含まれる文字の重心または文字列の各文字の重心と、該ブロブの領域とを比較し、ブロブの領域に重心が含まれる文字または文字列の外接矩形の領域を、固有スケールでの画像要素領域として出力することを特徴とする請求項２に記載の画像処理装置。
【請求項４】
前記出力部は、暈かし具合の異なるスケール画像から生成された各ブロブ画像のブロブの領域と、前記文書画像とを比較することで、文字の領域、単語の領域、行の領域、文字ブロックの領域を出力することを特徴とする請求項２または３に記載の画像処理装置。
【請求項５】
コンピュータが実行する画像処理方法であって、
画像から暈かし具合の異なる複数のスケール画像を生成し、
各スケール画像それぞれにおいて、スケール画像内の各画素値と所定の閾値とを比較してスケール画像を２値化することで複数のブロブを含むブロブ画像を生成し、
画像の暈かし具合を示す値と、各ブロブの面積または数との関係に基づいて、前記画像の暈かし具合を示す値の変化に対するブロブの平均面積または数の変化の割合が所定の閾値未満となる範囲の暈かし具合の値を計算することを特徴とする画像処理方法。
【請求項６】
コンピュータに、
画像から暈かし具合の異なる複数のスケール画像を生成し、
各スケール画像それぞれにおいて、スケール画像内の各画素値と所定の閾値とを比較してスケール画像を２値化することで複数のブロブを含むブロブ画像を生成し、
画像の暈かし具合を示す値と、各ブロブの面積または数との関係に基づいて、前記画像の暈かし具合を示す値の変化に対するブロブの平均面積または数の変化の割合が所定の閾値未満となる範囲の暈かし具合の値を計算する処理を実行させる画像処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、画像処理装置等に関する。
【背景技術】
【０００２】
近年、ＯＣＲ（Optical  Character  Reader）を利用して紙文書を電子化することが行われている。紙文書を電子化することで、利用者は書類の保管場所を節約できる。また、紙文書を電子化することで、文書の検索が容易になったり、文書の内容を再利用したりすることができる。
【０００３】
ここで、ＯＣＲが紙文書を電子化し、紙文書のレイアウトに対応した電子文書を作成するためには、文書画像から、文字、単語、行、文字ブロック等の切り出しを行う必要がある。
【０００４】
従来技術には、文書画像の黒画素を投影したヒストグラムを計算し、ヒストグラムと各閾値とを比較して文書画像から行を切り出すものがある。図１２〜図１４は、従来技術を説明するための図である。図１２の文書画像１ａは、紙文書を電子化した画像である。文書画像１ａの黒画素を投影してヒストグラムを計算すると、図１３のヒストグラム１ｂとなる。
【０００５】
従来技術ではヒストグラム１ｂを計算した後に、幅Ｔ１以下の凸部分と幅Ｔ２以下の凹部分を削除することで平滑化を行う。ヒストグラム１ｂに対して平滑化を行うと、図１４のヒストグラム１ｃとなる。そして、従来技術では、隣接するヒストグラムの値の差分の絶対値と閾値Ｔ３とを比較して、絶対値が閾値Ｔ３を超えている位置を行として判定する。図１４に示す例では、位置ａと位置ｂとの間を行として判定する。
【０００６】
上記従来技術では、文書画像から単語、行、文書ブロックを切り出す場合に、多くのパラメータを利用することになる。図１２〜図１４に示した従来技術では、行を特定するだけでＴ１〜Ｔ３のパラメータが必要となる。単語や文字ブロックを切り出す場合には、更に多くのパラメータを利用者が用意することになる。
【先行技術文献】
【非特許文献】
【０００７】
【非特許文献１】秋山照雄、増田功、「書式指定情報によらない紙面構成要素抽出法」、電子情報通信学会誌Ｊ６６−Ｄ、Ｎｏ．１
【発明の概要】
【発明が解決しようとする課題】
【０００８】
ところで、画像は一般的に尺度に応じて観測される構造が異なる。以下では、この尺度をスケールと表記する。スケールは、画像の暈した場合の暈しの度合いに対応し、ガウス関数を使ったガウスフィルタで暈した場合は、ガウス関数の分散に等しい。更に、あるスケール値で暈した画像を、そのスケールでのスケール画像と表記する。また、ある構造を観測するために、最も適したスケールをその構造の固有スケールと表記する。文書画像では、この固有スケールが大局的に求まる場合がある。図１５は、スケールに応じて観測される構造が異なる文書画像の一例を示す図である。図１５に示すように、スケールを２ａとすると、観測される構造は単一文字の「Ｆ」となり、スケールを２ｂとすると、観測される構造は文字の「Ｅ」の集合となり、スケールを２ｃとすると、観測される構造は四角の集合となる。
【０００９】
図１５に示したような文書画像から、文字やテクスチャ要素等の切り出しを行う場合には、利用者が文書画像を参照してスケールの値を適宜調整する必要があり、利用者にかかる負担が大きかった。なお、上記ヒストグラムを利用して文字や行等を判定する従来技術は、文字や行等を切り出す場合のパラメータを利用者自身が設定するものである。このため、従来技術では、図１５に示した文書画像から文字やテクスチャ要素を切り出す場合には、所望するスケールで文字やテクスチャ要素が認識できるように、各パラメータを利用者が設定する必要があり、利用者にかかる負担を軽減することはできない。
【００１０】
開示の技術は、上記に鑑みてなされたものであって、大局的な固有スケールを自動的に導くことができ、かつその大局的な固有スケールにおいて観測される構造に対応する画像要素の領域を自動的に求めることができる画像処理装置、画像処理方法および画像処理プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１１】
開示の画像処理装置は、画像から暈かし具合の異なる複数のスケール画像を生成するスケール画像生成部を有する。また、開示の画像処理装置は、各スケール画像それぞれにおいて、スケール画像内で同一の濃度の持った画素の集合をブロブ画像として生成するブロブ画像生成部を有する。また、開示の画像処理装置は、画像の暈かし具合を示す値の変化に対するブロブ画像の面積または数の変化の割合が所定の閾値に収まる範囲の暈かし具合の値を計算する固有スケール計算部を有する。また、開示の画像処理装置は、固有スケール計算部が計算した暈かし具合の値に対応するスケール画像から抽出されるブロブ画像の領域を、文字認識を行う領域として出力する出力部を有することを要件とする。
【発明の効果】
【００１２】
開示の画像処理装置によれば、大局的な固有スケールを自動的に導くことができ、かつその大局的な固有スケールにおいて観測される構造に対応する画像要素の領域を自動的に求めることができる。
【図面の簡単な説明】
【００１３】
【図１】図１は、画像処理装置の構成を示す図である。
【図２ａ】図２ａは、文書画像を示す図である。
【図２ｂ】図２ｂは、文書画像を固有スケール値ｔ０〜ｔ３での各スケール画像と、スケール画像から得られた各ブロブ画像とを示す図である。
【図３】図３は、図２ａの画像のブロブ数とスケール値との関係を示す図である。
【図４】図４は、図３のグラフの１次微分の計算結果を示す図である。
【図５】図５は、各スケール画像から抽出される画像要素領域の一例を示す図（１）である。
【図６】図６は、各スケール画像から抽出される画像要素領域の一例を示す図（２）である。
【図７】図７は、各スケール画像から抽出される画像要素領域の一例を示す図（３）である。
【図８】図８は、各スケール画像から抽出される画像要素領域の一例を示す図（４）である。
【図９】図９は、固有スケール値を算出する処理の処理手順を示すフローチャートである。
【図１０】図１０は、画像要素領域の画像を切り出す処理の処理手順を示すフローチャートである。
【図１１】図１１は、実施例にかかる画像処理装置を構成するコンピュータのハードウェア構成を示す図である。
【図１２】図１２は、従来技術を説明するための図（１）である。
【図１３】図１３は、従来技術を説明するための図（２）である。
【図１４】図１４は、従来技術を説明するための図（３）である。
【図１５】図１５は、スケールに応じて観測される構造の異なる階層構造を持つ画像の一例を示す図である。
【図１６】図１６は、画像要素領域判定部の処理を説明するための図である。
【発明を実施するための形態】
【００１４】
以下に、本願の開示する画像処理装置、画像処理方法および画像処理プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
【実施例】
【００１５】
本実施例にかかる画像処理装置の構成について説明する。図１は、画像処理装置の構成を示す図である。図１に示すように、この画像処理装置１００は、入力部１１０、画像読み取り部１２０、表示部１３０、スケール計算処理部１４０、画像要素切り出し部１５０を有する。
【００１６】
入力部１１０は、キーボードやマウス等の入力装置に対応する。画像読み取り部１２０は、紙媒体などから画像を読み取り、読み取った画像データをスケール計算処理部１４０、画像要素切り出し部１５０に出力する。例えば、画像読み取り部１２０は、スキャナに対応する。本実施例では、取り扱う画像をグレー画像または白黒の２値画像とする。なお、画像処理装置１００は、カラー画像が入力された場合には、明度変換を行い、カラー画像をグレー画像に変換してもよい。表示部１３０は、ディスプレイなどの表示装置に対応する。
【００１７】
スケール計算処理部１４０は、階層構造を有する画像データ固有の大局的なスケールを計算する処理部である。スケール計算処理部１４０は、スケール画像生成部１４１、ブロブ画像生成部１４２、固有スケール計算部１４３を有する。
【００１８】
スケール画像生成部１４１は、スケール値を多段階に変えたガウスフィルタを画像データに適用することで、複数のスケール画像を生成する処理部である。スケール画像生成部１４１は、複数のスケール画像を該当するスケール値と対応付けてブロブ画像生成部１４２に出力する。
【００１９】
ここで、スケール画像生成部１４１が利用するガウスフィルタは、ガウス関数を使って定義されるフィルタである。このガウスフィルタは、画像を暈かす場合に利用する。式（１）は、２次元のガウス関数ｇを示すものである。式（１）において、ｔはスケール値を示す。このスケール値は、暈かす度合いに対応するものである。また、ｘ、ｙは、画像上の座標を示すものである。
【数１】
0005589825.tif 000002
【００２０】
原画像をＩで表すと、この原画像Ｉとガウス関数で暈かした後の画像Ｂとの関係は、下記の式（２）、（３）で表される。式（２）の（ｘ、ｙ）は、着目画素の座標である。
【数２】
0005589825.tif 000003
【数３】
0005589825.tif 000004
【００２１】
ここで、式（２）が成り立つのは、画像が連続でサイズが無限大の理想的な場合である。実際の画像は、離散的であり、サイズは有限である。このため、原画像Ｉと画像Ｂとの関係は、下記の式（４）、（５）で表される。式（４）のように、原画像Ｉと画像Ｂとの関係は、積分の代わりに和で表される。
【数４】
0005589825.tif 000005
【数５】
0005589825.tif 000006
【００２２】
式（４）、（５）では、ガウスフィルタとして、ガウス関数の代わりに有限サイズの行列が用いられる。また、ガウスフィルタの高さ、幅のサイズを２ｓ＋１とする。ｓは整数である。式（４）の（ｉ、ｊ）は、着目画素の座標である。ガウスフィルタのサイズ２ｓ＋１のｓは、一般的にｔの定数倍として設計される。例えば、ｓ＝ｔ、ｔ＝１とし、ガウスフィルタの中心を（ｍ、ｎ）＝（０、０）とした場合のガウスフィルタは、式（６）によって表される。
【数６】
0005589825.tif 000007
【００２３】
ブロブ画像生成部１４２は、各スケール画像からブロブ画像を生成する処理部である。ブロブ画像生成部１４２は、スケール画像を２値化し連結成分解析を行うことで、一つの連結成分を一つのブロブとする。このブロブは、スケール画像内で、背景より暗い、または明るい画素の集合といえる。ブロブ画像生成部１４２は、抽出した全てのブロブに対し、例えば背景領域が１ならブロブ領域は０というように、背景とは異なる値を付与した画像をブロブ画像とする。
【００２４】
例えば、ブロブ画像生成部１４２は、スケール値の各画素値と、閾値とを比較し、比較結果に基づいて、スケール画像を２値化することでブロブ画像を生成する。例えば、ブロブ画像生成部１４２は、スケール画像の各画素において、閾値以上となる画素値を１とし、閾値よりも小さい画素値を０に設定することでスケール画像を２値化する。ブロブ画像生成部１４２は、スケール画像毎に、ブロブ画像を生成する。
【００２５】
図２ａは、文書画像を示す図である。図２ｂは、文書画像からスケール値ｔ０〜ｔ３で得られた各スケール画像と、スケール画像から得られた各ブロブ画像とを示す図である。スケール値の大小関係は、ｔ０＜ｔ１＜ｔ２＜ｔ３とする。図２ｂに示すように、ブロブ画像生成部１４２は、スケール値ｔ０によって暈かされたスケール画像１０ｂを２値化し、ブロブ画像１０ｃを生成する。スケール値ｔ０を０とする場合には、ブロブ画像生成部１４２は、図２ａの文書画像をそのまま用いてもよい。
【００２６】
図２ｂの上から２段目に示すように、ブロブ画像生成部１４２は、スケール値ｔ１によって暈かされたスケール画像１０ｄを２値化し、ブロブ画像１０ｅを生成する。図２ｂの上から３段目に示すように、ブロブ画像生成部１４２は、スケール値ｔ２によって暈かされたスケール画像１０ｆを２値化し、ブロブ画像１０ｇを生成する。図２ｂの上から４段目に示すように、ブロブ画像生成部１４２は、スケール値ｔ３によって暈かされたスケール画像１０ｈを２値化し、ブロブ画像１０ｉを生成する。図２ｂに示すように、スケール値が大きくなるにしたがい、ブロブの数が減少し、ブロブの面積の平均値が大きくなる。
【００２７】
ブロブ画像生成部１４２は、スケール画像毎にブロブ画像を生成した後に、スケール画像毎に全体ブロブ情報を生成し、生成した全体ブロブ情報を固有スケール計算部１４３に出力する。
【００２８】
ここで、全体ブロブ情報は、スケール値と、スケール画像と、ブロブ画像と、ブロブ数と、個別ブロブ情報を有する。この個別ブロブ情報は、同一のブロブ画像に含まれるブロブ毎に存在する。個別ブロブ情報は、ブロブの面積、ブロブの外接矩形の頂点の座標、ブロブの重心座標、ブロブ画素座標の配列を有する。
【００２９】
例えば、図２ａの上から４段目に対応する全体ブロブ情報について説明すると、この全体ブロブ情報は、スケール値「ｔ３」、スケール画像１０ｈ、ブロブ画像１０ｉ、ブロブ数「３」、ブロブ１ａ、１ｂ、１ｃにそれぞれ対応する複数の個別ブロブ情報を含む。
【００３０】
図１の説明に戻る。固有スケール計算部１４３は、全体ブロブ情報に基づいて、複数種類の固有スケール値を算出する処理部である。各固有スケール値は、画像データから画像要素を切り出す場合に利用される値である。例えば、固有スケール値は、文書画像に含まれる、文字、単語、行、文字ブロックの領域を切り出す場合に利用される。固有スケール計算部１４３は、各固有スケール値と、固有スケール値に対応するスケール画像と、固有スケール値に対応する全体ブログ情報と、元の文書画像とを画像要素切り出し部１５０に出力する。
【００３１】
ここで、ブロブ情報に含まれるブロブ数とスケール値との関係について説明する。図３は、図２ａの画像のブロブ数とスケール値との関係を示す図である。図３の横軸は、スケール値ｔに対応する軸であり、縦軸は、ブロブ数をスケール値の関数とみなしたとき、ブロブ数の対数ｌｎ  ｆ（ｔ）に対応する軸である。例えば、文書画像のように、階層構造を持つ画像からブロブ数とスケール値との関係を求めると、スケール値を変化させてもブロブ数が変化しない定常状態が発生する。図３に示す例では、部分２０ａ、２０ｂ、２０ｃ、２０ｄにおいて定常状態となっている。この定常状態は、プラトーと呼ばれる。なお、異なる定常状態の間の状態は、急激にブロブ数が変化しており、この状態を状態遷移とする。
【００３２】
固有スケール計算部１４３は、定常状態の開始点に対応するスケール値を固定スケール値として算出する。図３に示す例では、定常状態２０ａの開始点に対応するスケール値がｔ０となる。また、定常状態２ｂの開始点に対応するスケール値がｔ１となる。また、定常状態２ｃの開始点に対応するスケール値がｔ２となる。また、定常状態２０ｄの開始点に対応するスケール値がｔ３となる。この場合には、固有スケール計算部１４３は、スケール値ｔ０、ｔ１、ｔ２、ｔ３を固有スケールとして算出する。
【００３３】
固有スケール計算部１４３の処理を具体的に説明する。まず、固有スケール計算部１４３は、ブロブ数の対数とスケール値との関係を示すグラフに対して、１次微分ｄｆ（ｔ）／ｄｔと２次微分ｄ２ｆ（ｔ）／ｄｔを数値的に計算する。図４は、図３のグラフの１次微分の計算結果を示す図である。
【００３４】
固有スケール計算部１４３は、１次微分と２次微分とを計算した後に、１次微分が極小となるスケール値ｔｍを全て検出する。１次微分が極小となる点は、２次微分の値が０となることに等しい。図４に示す例では、１次微分が極小となるスケール値は、ｔＭ０、ｔＭ１、ｔＭ２となる。
【００３５】
固有スケール計算部１４３は、１次微分が極小となるスケール値を求めた後に、このスケール値を徐々に増加させていき、１次微分の絶対値が初めて所定の閾値より小さくなるスケール値を算出する。このスケール値が、定常状態の開始点に対応するスケール値となる。図４に示す例では、１次微分の絶対値が初めて所定の閾値より小さくなるスケール値は、ｔ１、ｔ２、ｔ３となる。
【００３６】
また、固有スケール計算部１４３は、スケール値の初期値ｔ０を検出する。このスケール値ｔ０は、図３の定常状態２０ａの開始点に対応する。ｔ０＝０として、暈かさない文書画像の明度画像としてもよい。固有スケール計算部１４３は、スケール値ｔ０、ｔ１、ｔ２、ｔ３を固有スケール値として、画像要素切り出し部１５０に出力する。１次微分の絶対値が初めて所定の閾値より小さくなるスケール値の数がＭ個の場合には、スケール値の初期値を合わせたＭ＋１個のスケール値が固有スケール値として検出されることになる。
【００３７】
図１の説明に戻る。画像要素切り出し部１５０は、固有スケール値を利用して、画像データから画像要素領域の画像を切り出す処理部である。例えば、画像要素領域の画像は、文字、単語、行、文字ブロックに対応する。この画像要素切り出し部１５０は、画像２値化部１５１、画像要素領域判定部１５２、切り出し部１５３を有する。画像要素切り出し部１５０は、出力部の一例である。
【００３８】
画像２値化部１５１は、画像読み取り部１２０から画像データを取得した場合に、画像データに含まれる画素を白画素と黒画素に２値化する処理部である。画像２値化部１５１は、文書画像を２値化した画像データを画像要素領域判定部１５２に出力する。
【００３９】
画像要素領域判定部１５２は、画像データと固有スケール値と全体ブロブ情報に基づいて、画像データに含まれる画像要素の領域を判定する処理部である。例えば、文書画像データに含まれる画像要素は、文字、単語、行、文字ブロックに対応する。
【００４０】
具体的に、画像要素領域判定部１５２の処理を説明する。画像要素領域判定部１５２は、２値化した文書画像に対してラベリング処理をおこない、各連結成分の外接矩形を抽出する。画像要素領域判定部１５２は、全体ブロブ情報を基に、２値化した文書画像と、各ブロブの外接矩形とを比較して、ブロブの外接矩形に含まれる連結成分を判定する。そして、画像要素領域判定部１５２は、判定した連結成分全体の外接矩形を、該当する固有スケールでの画像要素領域として抽出する。画像要素領域判定部１５２は、抽出した外接矩形の座標を、画像要素領域の座標として切り出し部１５３に出力する。
【００４１】
図１６は、画像要素領域判定部の処理を説明するための図である。図１６の２ａは、ある固有スケールのブロブに対応する。画像要素領域判定部１５２は、２ｂに示すように、２値化した文書画像とブロブの外接矩形とを比較すると、ブロブの外接矩形に含まれる連結成分は「Ｂｏｏｋ」となる。画像要素領域判定部１５２は、判定した連結成分全体の外接矩形２ｃを、該当する固有スケールでの画像要素領域として抽出する。
【００４２】
なお、画像要素領域判定部１５２は、重心がブロブの外接矩形に含まれていない文字を除外する。例えば、図１６の２ｂにおいて、「Ｂｏｏｋ」の「Ｂ」の重心がブロブの外接矩形に含まれておらず、「ｏ」、「ｏ」、「ｋ」の重心がブロブの外接矩形に含まれている場合には、連結成分の外接矩形は、「ｏｏｋ」の外接矩形となる。なお、画像要素領域判定部１５２は、文字の外接矩形から文字の中心を求め、文字の中心を重心の代わりに用いてもよい。
【００４３】
図５〜図８は、各ブロブ画像から決定される画像要素領域の一例を示す図である。図５は、固有スケール値ｔ１に対応するブロブ画像から決定した、文書画像上の画像要素領域を示す。図５に示す画像要素領域は、単語の領域に対応する。図６は、固有スケール値ｔ２に対応するブロブ画像から決定した、文書像上の画像要素領域を示す。図６に示す画像領域要素領域は、行の領域に対応する。
【００４４】
図７は、固有スケール値ｔ３に対応するブロブ画像から決定した、文書画像上の画像要素領域を示す。図７に示す画像領域要素領域は、文字ブロックの領域に対応する。図８は、固有スケール値ｔ４に対応するブロブ画像から決定した、文書画像上の画像要素領域を示す。
【００４５】
切り出し部１５３は、画像要素領域の座標を基にして、元の文書画像、または、文書画像の２値画像から、画像要素領域の画像を切り出す処理部である。画像要素領域の画像は、例えば、文字、単語、行、文字ブロックに対応する。切り出し部１５３は、切り出した画像要素領域の画像を、表示部１３０に出力する。切り出し部１５３が切り出す画像要素領域は、各固有スケール値によって生成されるブロブ画像の領域に重心が含まれるもとの文書画像の２値画像の連結成分全体の外接矩形に対応する。なお、切り出し部１５３は、文字認識などを行う装置に、画像要素領域の画像データを出力してもよい。
【００４６】
ところで、画像要素領域の切り出し対象となる画像が、図１５に示したような階層構造を持つ画像の場合には、画像要素切り出し部１５０は、画像要素領域２ａ、複数の画像要素領域２ｂ等が切り出されることとなる。画像要素切り出し部１５０が切り出した画像要素領域の画像は、文字認識など目的に応じて切り出される領域となる。
【００４７】
次に、画像処理装置１００が、固有スケール値を算出する処理の処理手順について説明する。図９は、固有スケール値を算出する処理の処理手順を示すフローチャートである。図９に示す処理は、例えば、画像読み取り部１２０が画像データを読み取ったことを契機として実行される。図９に示すように、画像処理装置１００は、スケール値ｔの異なるガウスフィルタを画像データに適用することで、複数のスケール画像を生成する（ステップＳ１０１）。
【００４８】
画像処理装置１００は、各スケール画像から全体ブロブ画像情報を抽出する（ステップＳ１０２）。画像処理装置１００は、スケールの変化に対するブロブ画像の状態変化を基にして、固有スケール値を算出する（ステップＳ１０３）。そして、画像処理装置１００は、固有スケール値を出力する（ステップＳ１０４）。
【００４９】
次に、画像処理装置１００が、画像要素領域の画像を切り出す処理の処理手順について説明する。図１０は、画像要素領域の画像を切り出す処理の処理手順を示すフローチャートである。図１０に示す処理は、例えば、画像要素切り出し部１５０が、スケール計算処理部１４０から固有スケール値を取得したことを契機に実行される。
【００５０】
図１０に示すように、画像処理装置１００は、固有スケール値を取得し（ステップＳ２０１）、未選択の固有スケール値を選択する（ステップＳ２０２）。画像処理装置１００は、選択した固有スケール値において、画像要素領域を算出する（ステップＳ２０３）。
【００５１】
画像処理装置１００は、元の文書画像、または元の文書画像の２値画像から画像要素領域の画像を切り出し（ステップＳ２０４）、固有スケール値を全て選択したか否かを判定する（ステップＳ２０５）。画像処理装置１００は、固有スケール値を全て選択していない場合には（ステップＳ２０５，Ｎｏ）、ステップＳ２０２に移行する。一方、画像処理装置１００は、固有スケール値を全て選択した場合には（ステップＳ２０５，Ｙｅｓ）、切り出した画像を出力する（ステップＳ２０６）。
【００５２】
次に、本実施例にかかる画像処理装置１００の効果について説明する。画像処理装置１００は、画像データからスケール値の異なる複数のスケール画像を生成し、各スケール画像からブロブ画像を生成する。そして、画像処理装置１００は、ブロブ画像の数とスケール値との関係に基づいて、ブロブ画像の数の変化の割合が所定の閾値に収まるスケール値を固有スケール値として計算する。画像処理装置１００は、固有スケール値によって生成されるブロブ画像のブロブに重心が含まれる文書画像の２値画像の連結成分全体の外接矩形を、前記固有スケールにおける画像要素領域とし、対応する文書画像、または文書画像の２値画像の領域を、前記固有スケールでの画像要素として出力する。このため、画像が階層構造を有する画像であったとしても、各階層構造での画像要素領域の切り出しをすべき固有スケール値を自動的に求めることができる。
【００５３】
例えば、本実施例にかかる画像処理装置１００を利用すれば、図１５に示すような階層構造を有する画像であっても、文字認識を行う領域を自動的に出力することができる。画像処理装置１００は、図１５に示す画像から、文字認識を行う領域２ａ、複数の領域２ｂを自動的に求めることができる。
【００５４】
また、本実施例にかかる画像処理装置１００を利用すれば、文書画像のような階層構造を有する画像から、文字、単語、行、文字ブロックの領域を自動的に出力することができる。このうち、単語、行、文字ブロック等の領域の情報は、画像のレイアウトを電子データに復元する場合に利用することができる。また、単語の領域の情報は、レイアウトの復元のみだけではなく、該領域に対する文字認識結果に対し、単語のスペルチェックを行う場合にも利用することができる。
【００５５】
ところで、固有スケール計算部１４３は、ブロブ数とスケール値との関係に基づいて、固有スケール値を計算していたが、これに限定されるものではない。例えば、固有スケール計算部１４３は、ブロブの平均面積とスケール値との関係に基づいて、固有スケール値を計算してもよい。すなわち、固有スケール計算部１４３は、スケール値の変化に対して、ブロブの平均面積の比が変化しない定常状態を検出し、この定常状態に対応するスケール値を固有スケール値として算出してもよい。
【００５６】
また、固有スケール計算部１４３は、スケール画像の極大点の数と、スケール値との関係に基づいて、固有スケール値を計算してもよい。例えば、固有スケール計算部１４３は、スケール値の変化に対して、ブロブ画像の極大点の数が変化しない定常状態を検出し、この定常状態に対応するスケール値を固有スケール値として算出してもよい。
【００５７】
なお、図１に示したスケール計算処理部１４０、画像要素切り出し部１５０は、例えば、ＡＳＩＣ（Application  Specific  Integrated  Circuit）や、ＦＰＧＡ（Field  Programmable  Gate  Array）などの集積装置に対応する。または、上記処理部１４０，１５０は、ＣＰＵ（Central  Processing  Unit）やＭＰＵ（Micro  Processing  Unit）等の電子回路に対応する。
【００５８】
画像処理装置１００は、既知のパーソナルコンピュータ、ワークステーション、携帯電話、ＰＨＳ端末、移動体通信端末またはＰＤＡなどの情報処理装置に、画像処理装置１００の各機能を搭載することによって実現することもできる。
【００５９】
図１１は、実施例にかかる画像処理装置を構成するコンピュータのハードウェア構成を示す図である。図１１に示すように、このコンピュータ３０は、各種演算処理を実行するＣＰＵ３１と、ユーザからのデータの入力を受け付ける入力装置３２と、モニタ３３を有する。また、コンピュータ３０は、記憶媒体からプログラム等を読取る媒体読み取り装置３４と、ネットワークを介して他のコンピュータとの間でデータの授受を行うネットワークインターフェース装置３５を有する。また、コンピュータ３０は、画像を読み取るスキャナ３６と、各種情報を一時記憶するＲＡＭ３７と、ハードディスク装置３８を有する。各装置３１〜３８は、バス３９に接続される。
【００６０】
そして、ハードディスク装置３８は、固有スケール計算プログラム３８ａ、画像要素切り出しプログラム３８ｂを記憶する。固有スケール計算プログラム３８ａは、スケール計算処理部１４０と同様の機能を有する。画像要素切り出し部３８ｂは、画像要素切り出し部１５０と同様の機能を有する。
【００６１】
ＣＰＵ３１は、固有スケール計算プログラム３８ａ、画像要素切り出しプログラム３８ｂをハードディスク装置３８から読み出してＲＡＭ３７に展開する。固有スケール計算プログラム３８ａは、固有スケール計算プロセス３７ａとして機能する。画像要素切り出しプログラム３８ｂは、画像要素切り出しプロセス３７ｂとして機能する。
【００６２】
固有スケール計算プロセス３７ａは、スキャナ３４から画像データを取得し、この画像データを基にして、固有スケール値を算出する。画像要素切り出しプロセス３７ｂは、固有スケール値を利用して、画像データから画像要素領域の画像を切り出す。
【００６３】
なお、上記の固有スケール計算プログラム３８ａ、画像要素切り出しプログラム３８ｂは、必ずしもハードディスク装置３８に格納されている必要はない。例えば、ＣＤ−ＲＯＭ等の記憶媒体に記憶されたプログラムを、コンピュータ３０が読み出して実行するようにしてもよい。また、公衆回線、インターネット、ＬＡＮ（Local  Area  Network）、ＷＡＮ（Wide  Area  Network）等にこのプログラムを記憶させておき、コンピュータ３０がこれらからプログラムを読み出して実行するようにしてもよい。
【００６４】
以上の各実施例を含む実施形態に関し、さらに以下の付記を開示する。
【００６５】
（付記１）画像から暈かし具合の異なる複数のスケール画像を生成するスケール画像生成部と、
各スケール画像それぞれにおいて、スケール画像内の各画素値と所定の閾値とを比較してスケール画像を２値化することで複数のブロブを含むブロブ画像を生成するブロブ画像生成部と
画像の暈かし具合を示す値と、各ブロブの面積または数との関係に基づいて、前記画像の暈かし具合を示す値の変化に対するブロブの平均面積または数の変化の割合が所定の閾値未満となる範囲の暈かし具合の値を計算する固有スケール計算部と、
を備えたことを特徴とする画像処理装置。
【００６６】
（付記２）前記画像は文書画像であり、前記文書画像と前記ブロブ画像に含まれるブロブの領域とを比較し、前記ブロブの領域に含まれる文字または文字列の外接矩形の領域を、固有スケールでの画像要素領域として出力する出力部を更に有することを特徴とする付記１に記載の画像処理装置。
【００６７】
（付記３）前記出力部は、前記ブロブの領域に含まれる文字の重心または文字列の各文字の重心と、該ブロブの領域とを比較し、ブロブの領域に重心が含まれる文字または文字列の外接矩形の領域を、固有スケールでの画像要素領域として出力することを特徴とする付記２に記載の画像処理装置。
【００６８】
（付記４）前記出力部は、暈かし具合の異なるスケール画像から生成された各ブロブ画像のブロブの領域と、前記文書画像とを比較することで、文字の領域、単語の領域、行の領域、文字ブロックの領域を出力することを特徴とする付記２または３に記載の画像処理装置。
【００６９】
（付記５）コンピュータが実行する画像処理方法であって、
画像から暈かし具合の異なる複数のスケール画像を生成し、
各スケール画像それぞれにおいて、スケール画像内の各画素値と所定の閾値とを比較してスケール画像を２値化することで複数のブロブを含むブロブ画像を生成し、
画像の暈かし具合を示す値と、各ブロブの面積または数との関係に基づいて、前記画像の暈かし具合を示す値の変化に対するブロブの平均面積または数の変化の割合が所定の閾値未満となる範囲の暈かし具合の値を計算することを特徴とする画像処理方法。
【００７０】
（付記６）前記画像は文書画像であり、前記文書画像と前記ブロブ画像に含まれるブロブの領域とを比較し、前記ブロブの領域に含まれる文字または文字列の外接矩形の領域を、固有スケールでの画像要素領域として出力することを特徴とする付記５に記載の画像処理方法。
【００７１】
（付記７）前記ブロブの領域に含まれる文字の重心または文字列の各文字の重心と、該ブロブの領域とを比較し、ブロブの領域に重心が含まれる文字または文字列の外接矩形の領域を、固有スケールでの画像要素領域として出力することを特徴とする付記６に記載の画像処理方法。
【００７２】
（付記８）前記暈かし具合の異なるスケール画像から生成された各ブロブ画像のブロブの領域と、前記文書画像とを比較することで、文字の領域、単語の領域、行の領域、文字ブロックの領域を出力することを特徴とする付記６または７に記載の画像処理方法。
【００７３】
（付記９）コンピュータに、
画像から暈かし具合の異なる複数のスケール画像を生成し、
各スケール画像それぞれにおいて、スケール画像内の各画素値と所定の閾値とを比較してスケール画像を２値化することで複数のブロブを含むブロブ画像を生成し、
画像の暈かし具合を示す値と、各ブロブの面積または数との関係に基づいて、前記画像の暈かし具合を示す値の変化に対するブロブの平均面積または数の変化の割合が所定の閾値未満となる範囲の暈かし具合の値を計算する処理を実行させる画像処理プログラム。
【００７４】
（付記１０）前記画像は文書画像であり、前記文書画像と前記ブロブ画像に含まれるブロブの領域とを比較し、前記ブロブの領域に含まれる文字または文字列の外接矩形の領域を、固有スケールでの画像要素領域として出力することを特徴とする付記９に記載の画像処理プログラム。
【００７５】
（付記１１）前記ブロブの領域に含まれる文字の重心または文字列の各文字の重心と、該ブロブの領域とを比較し、ブロブの領域に重心が含まれる文字または文字列の外接矩形の領域を、固有スケールでの画像要素領域として出力することを特徴とする付記１０に記載の画像処理プログラム。
【００７６】
（付記１２）前記暈かし具合の異なるスケール画像から生成された各ブロブ画像のブロブの領域と、前記文書画像とを比較することで、文字の領域、単語の領域、行の領域、文字ブロックの領域を出力することを特徴とする付記１０または１１に記載の画像処理プログラム。
【符号の説明】
【００７７】
１００    画像処理装置
１１０    入力部
１２０    画像読み取り部
１３０    出力部
１４０    スケール計算処理部
１５０    画像要素切り出し部
【図１】
0005589825.tif 000008
【図２ａ】
0005589825.tif 000009
【図２ｂ】
0005589825.tif 000010
【図３】
0005589825.tif 000011
【図４】
0005589825.tif 000012
【図５】
0005589825.tif 000013
【図６】
0005589825.tif 000014
【図７】
0005589825.tif 000015
【図８】
0005589825.tif 000016
【図９】
0005589825.tif 000017
【図１０】
0005589825.tif 000018
【図１１】
0005589825.tif 000019
【図１２】
0005589825.tif 000020
【図１３】
0005589825.tif 000021
【図１４】
0005589825.tif 000022
【図１５】
0005589825.tif 000023
【図１６】
0005589825.tif 000024