(57)【要約】【課題】  特定オブジェクトが拡大されて表現されている処理済み画像を表わす処理済み画像データを適切に生成し得る技術を提供すること。【解決手段】  画像処理サーバは、複数個のオブジェクトを含むスキャン画像データに対して画像処理を実行して、当該複数個のオブジェクトを含む処理済み画像を表わす処理済み画像データを生成する。画像処理サーバは、テキストオブジェクト領域ＯＡ１を含む余白領域ＢＡ１を決定し、テキストオブジェクト領域ＯＡ１と余白領域ＢＡ１とに基づいて、目標領域を決定する。目標領域は、拡大されて表現されるテキストオブジェクトが配置されるべき領域である。画像処理サーバは、テキストオブジェクト領域ＯＡ１と余白領域ＢＡ１との間の横方向の２個の余白の長さと、縦方向の２個の余白の長さと、に基づいて、目標領域の位置、アスペクト比、及び、サイズを決定する。【選択図】図７
2015170128.tif 000002
【特許請求の範囲】
【請求項１】
画像処理装置であって、
特定オブジェクトを含む複数個のオブジェクトを含む原画像を表わす原画像データを取得する取得部と、
前記原画像データに対して画像処理を実行して、前記複数個のオブジェクトを含む処理済み画像を表わす処理済み画像データを生成する画像処理実行部であって、前記処理済み画像では、前記原画像と比べて、前記特定オブジェクトが拡大されて表現されている、前記画像処理実行部と、を備え、
前記画像処理実行部は、
前記原画像内において、前記複数個のオブジェクトのそれぞれについて、当該オブジェクトを含むオブジェクト領域を決定するオブジェクト領域決定部と、
前記原画像内において、前記特定オブジェクトについて決定された特定オブジェクト領域を含むスペース領域を決定するスペース領域決定部であって、前記スペース領域は、前記複数個のオブジェクトのうちの他のオブジェクトについて決定された他のオブジェクト領域に重複しない、前記スペース領域決定部と、
前記原画像内の前記特定オブジェクト領域と前記スペース領域とに基づいて、前記処理済み画像内の目標領域を決定する目標領域決定部であって、前記目標領域は、拡大されて表現される前記特定オブジェクトが配置されるべき領域である、前記目標領域決定部と、を備え、
前記目標領域決定部は、前記特定オブジェクト領域と前記スペース領域との間の第１方向に沿った２個の余白の長さと、前記第１方向に直交する第２方向に沿った２個の余白の長さと、に基づいて、前記処理済み画像内の前記目標領域の位置を決定する、画像処理装置。
【請求項２】
前記目標領域決定部は、さらに、前記第１方向に沿った前記２個の余白の長さと、前記第２方向に沿った前記２個の余白の長さと、に基づいて、前記目標領域のアスペクト比を決定する、請求項１に記載の画像処理装置。
【請求項３】
前記目標領域決定部は、さらに、前記第１方向に沿った前記２個の余白の長さと、前記第２方向に沿った前記２個の余白の長さと、に基づいて、前記目標領域の前記アスペクト比を有する前記目標領域のサイズを決定する、請求項２に記載の画像処理装置。
【請求項４】
前記目標領域の前記アスペクト比は、前記特定オブジェクト領域の前記アスペクト比とは異なる、請求項２又は３に記載の画像処理装置。
【請求項５】
前記目標領域決定部は、
前記第１方向に沿った前記２個の余白の長さの和が、前記第２方向に沿った前記２個の余白の長さの和よりも大きい場合に、前記第１方向に沿った第１の差分長さが前記第２方向に沿った第２の差分長さよりも大きくなるように、前記目標領域の前記アスペクト比を決定し、
前記第１方向に沿った前記２個の余白の長さの和が、前記第２方向に沿った前記２個の余白の長さの和よりも小さい場合に、前記第１の差分長さが前記第２の差分長さよりも小さくなるように、前記目標領域の前記アスペクト比を決定し、
前記第１の差分長さは、前記目標領域の前記第１方向に沿った長さと、前記特定オブジェクト領域の前記第１方向に沿った長さと、の差分であり、
前記第２の差分長さは、前記目標領域の前記第２方向に沿った長さと、前記特定オブジェクト領域の前記第２方向に沿った長さと、の差分である、請求項２から４のいずれか一項に記載の画像処理装置。
【請求項６】
前記目標領域決定部は、
前記第１方向に沿った前記２個の余白の長さの和が、前記第２方向に沿った前記２個の余白の長さの和よりも大きい場合に、第１の倍率が第２の倍率よりも大きくなるように、前記目標領域の前記アスペクト比を決定し、
前記第１方向に沿った前記２個の余白の長さの和が、前記第２方向に沿った前記２個の余白の長さの和よりも小さい場合に、前記第１の倍率が前記第２の倍率よりも小さくなるように、前記目標領域の前記アスペクト比を決定し、
前記第１の倍率は、前記特定オブジェクト領域の前記第１方向に沿った長さに対する前記目標領域の前記第１方向に沿った長さの倍率であり、
前記第２の倍率は、前記特定オブジェクト領域の前記第２方向に沿った長さに対する前記目標領域の前記第２方向に沿った長さの倍率である、請求項２から４のいずれか一項に記載の画像処理装置。
【請求項７】
前記目標領域決定部は、さらに、前記第１方向に沿った前記２個の余白の長さと、前記第２方向に沿った前記２個の余白の長さと、に基づいて、前記特定オブジェクト領域のアスペクト比に等しいアスペクト比を有する前記目標領域の位置を決定する、請求項１に記載の画像処理装置。
【請求項８】
前記目標領域決定部は、さらに、
前記特定オブジェクト領域の前記第１方向に沿った長さに１より大きな目標値を乗算することによって得られる第１の候補長さが、前記スペース領域の前記第１方向に沿った長さ以下であり、かつ、前記特定オブジェクト領域の前記第２方向に沿った長さに前記目標値を乗算することによって得られる第２の候補長さが、前記スペース領域の前記第２方向に沿った長さ以下であるという特定の条件が満たされる場合に、前記目標領域の前記第１方向に沿った長さとして前記第１の候補長さを決定すると共に、前記目標領域の前記第２方向に沿った長さとして前記第２の候補長さを決定することによって、前記特定オブジェクト領域のアスペクト比に等しいアスペクト比を有する前記目標領域の位置を決定し、
前記特定の条件が満たされない場合に、前記第１方向に沿った前記２個の余白の長さと、前記第２方向に沿った前記２個の余白の長さと、に基づいて、前記特定オブジェクト領域のアスペクト比とは異なるアスペクト比を有する前記目標領域の位置を決定する、請求項１から７のいずれか一項に記載の画像処理装置。
【請求項９】
画像処理装置であって、
特定オブジェクトを含む複数個のオブジェクトを含む原画像を表わす原画像データを取得する取得部と、
前記原画像データに対して画像処理を実行して、前記複数個のオブジェクトを含む処理済み画像を表わす処理済み画像データを生成する画像処理実行部であって、前記処理済み画像では、前記原画像と比べて、前記特定オブジェクトが拡大されて表現されている、前記画像処理実行部と、を備え、
前記画像処理実行部は、
前記原画像内において、前記複数個のオブジェクトのそれぞれについて、当該オブジェクトを含むオブジェクト領域を決定するオブジェクト領域決定部と、
前記原画像内において、前記特定オブジェクトについて決定された特定オブジェクト領域を含むスペース領域を決定するスペース領域決定部であって、前記スペース領域は、前記複数個のオブジェクトのうちの他のオブジェクトについて決定された他のオブジェクト領域に重複しない、前記スペース領域決定部と、
前記原画像内の前記特定オブジェクト領域と前記スペース領域とに基づいて、前記処理済み画像内の目標領域を決定する目標領域決定部であって、前記目標領域は、拡大されて表現される前記特定オブジェクトが配置されるべき領域である、前記目標領域決定部と、を備え、
前記目標領域決定部は、前記特定オブジェクト領域と前記スペース領域との間の第１方向に沿った２個の余白の長さと、前記第１方向に直交する第２方向に沿った２個の余白の長さと、に基づいて、前記処理済み画像内の前記目標領域のアスペクト比を決定する、画像処理装置。
【請求項１０】
前記目標領域決定部は、さらに、前記第１方向に沿った前記２個の余白の長さと、前記第２方向に沿った前記２個の余白の長さと、に基づいて、前記目標領域の前記アスペクト比を有する前記目標領域のサイズを決定する、請求項９に記載の画像処理装置。
【請求項１１】
前記目標領域の前記アスペクト比は、前記特定オブジェクト領域の前記アスペクト比とは異なる、請求項９又は１０に記載の画像処理装置。
【請求項１２】
前記目標領域決定部は、
前記特定オブジェクト領域を目標倍率で拡大することによって得られる第１の拡大領域が所定の条件を満たす場合に、前記第１の拡大領域を前記目標領域として決定し、
前記第１の拡大領域が前記所定の条件を満たさない場合に、前記特定オブジェクト領域を前記目標倍率よりも小さい倍率で拡大することによって得られる第２の拡大領域を前記目標領域として決定する、請求項１から１１のいずれか一項に記載の画像処理装置。
【請求項１３】
前記スペース領域決定部は、前記複数個のオブジェクトのうちの２個以上の前記特定オブジェクトについて決定された２個以上の前記特定オブジェクト領域に対応する２個以上の前記スペース領域を決定し、
前記目標領域決定部は、前記２個以上の特定オブジェクト領域と前記２個以上のスペース領域とに基づいて、前記２個以上の特定オブジェクト領域に対応する２個以上の前記目標領域を決定し、
前記目標領域決定部は、前記２個以上の特定オブジェクト領域のそれぞれを目標倍率で拡大することによって得られる２個以上の第１の拡大領域が相互に重なる場合に、前記２個以上の特定オブジェクト領域のそれぞれを前記目標倍率よりも小さい倍率で拡大することによって得られる２個以上の第２の拡大領域を前記２個以上の目標領域として決定する、請求項１から１２のいずれか一項に記載の画像処理装置。
【請求項１４】
前記特定オブジェクトは、複数個の文字によって構成されるＭ行（前記Ｍは１以上の整数）の文字列を含むテキストオブジェクトを含む、請求項１から１３のいずれか一項に記載の画像処理装置。
【請求項１５】
前記Ｍ行の文字列のそれぞれでは、前記第１方向の第１側から第２側に向かってセンテンスが進み、
前記Ｍが２以上の整数である場合に、前記Ｍ行の文字列では、前記第２方向の第１側から第２側に向かって前記センテンスが進み、
前記スペース領域決定部は、前記特定オブジェクト領域を複数個の向きに順次拡大して、前記スペース領域を決定し、
前記複数個の向きのうち、最初の拡大に利用されるべき向きは、前記第１方向に沿って前記第２側から前記第１側に向かう向きと、前記第２方向に沿って前記第２側から前記第１側に向かう向きと、の間の向きである、請求項１４に記載の画像処理装置。
【請求項１６】
前記目標領域決定部は、さらに、前記第１方向に沿った前記２個の余白の長さと、前記第２方向に沿った前記２個の余白の長さと、に基づいて、前記特定オブジェクト領域のアスペクト比とは異なる前記目標領域のアスペクト比を決定し、
前記特定オブジェクトは、複数個の文字によって構成されるＭ行（前記Ｍは１以上の整数）の文字列を含むテキストオブジェクトを含み、
前記画像処理実行部は、さらに、
前記複数個の文字によって構成されるＮ行（前記Ｎは１以上の整数）の文字列を含む再配置画像を表わす再配置画像データを生成する再配置画像データ生成部であって、前記Ｍ行の文字列のうちの先頭行の文字列に含まれる文字数と、前記Ｎ行の文字列のうちの先頭行の文字列に含まれる文字数と、は異なる、前記再配置画像データ生成部を備え、
前記画像処理実行部は、前記再配置画像データを利用して、前記Ｎ行の文字列を含む前記特定オブジェクトを含む前記処理済み画像を表わす前記処理済み画像データを生成する、請求項１から６及び９から１１のいずれか一項に記載の画像処理装置。
【請求項１７】
前記原画像データは、前記原画像が表現されている特定サイズのシートをスキャンすることによって生成されるデータであり、
前記処理済み画像データは、前記処理済み画像を前記特定サイズのシートに印刷するために利用されるデータである、請求項１から１６のいずれか一項に記載の画像処理装置。
【請求項１８】
前記原画像に含まれる前記複数個のオブジェクトは、前記特定オブジェクトと、前記特定オブジェクトとは異なる他のオブジェクトと、を含み。
前記画像処理実行部は、前記原画像と比べて、前記特定オブジェクトが拡大されて表現されていると共に、前記他のオブジェクトが拡大されずに表現されている前記処理済み画像を表わす前記処理済み画像データを生成する、請求項１から１７のいずれか一項に記載の画像処理装置。
【請求項１９】
画像処理装置のためのコンピュータプログラムであって、
前記画像処理装置に搭載されるコンピュータに、以下の各ステップ、即ち、
特定オブジェクトを含む複数個のオブジェクトを含む原画像を表わす原画像データを取得する取得ステップと、
前記原画像データに対して画像処理を実行して、前記複数個のオブジェクトを含む処理済み画像を表わす処理済み画像データを生成する画像処理実行ステップであって、前記処理済み画像では、前記原画像と比べて、前記特定オブジェクトが拡大されて表現されている、前記画像処理実行ステップと、を実行させ、
前記画像処理実行ステップは、
前記原画像内において、前記複数個のオブジェクトのそれぞれについて、当該オブジェクトを含むオブジェクト領域を決定するオブジェクト領域決定ステップと、
前記原画像内において、前記特定オブジェクトについて決定された特定オブジェクト領域を含むスペース領域を決定するスペース領域決定ステップであって、前記スペース領域は、前記複数個のオブジェクトのうちの他のオブジェクトについて決定された他のオブジェクト領域に重複しない、前記スペース領域決定ステップと、
前記原画像内の前記特定オブジェクト領域と前記スペース領域とに基づいて、前記処理済み画像内の目標領域を決定する目標領域決定ステップであって、前記目標領域は、拡大されて表現される前記特定オブジェクトが配置されるべき領域である、前記目標領域決定ステップと、を含み、
前記目標領域決定ステップでは、前記特定オブジェクト領域と前記スペース領域との間の第１方向に沿った２個の余白の長さと、前記第１方向に直交する第２方向に沿った２個の余白の長さと、に基づいて、前記処理済み画像内の前記目標領域の位置を決定する、コンピュータプログラム。
【請求項２０】
画像処理装置のためのコンピュータプログラムであって、
前記画像処理装置に搭載されるコンピュータに、以下の各ステップ、即ち、
特定オブジェクトを含む複数個のオブジェクトを含む原画像を表わす原画像データを取得する取得ステップと、
前記原画像データに対して画像処理を実行して、前記複数個のオブジェクトを含む処理済み画像を表わす処理済み画像データを生成する画像処理実行ステップであって、前記処理済み画像では、前記原画像と比べて、前記特定オブジェクトが拡大されて表現されている、前記画像処理実行ステップと、を実行させ、
前記画像処理実行ステップは、
前記原画像内において、前記複数個のオブジェクトのそれぞれについて、当該オブジェクトを含むオブジェクト領域を決定するオブジェクト領域決定ステップと、
前記原画像内において、前記特定オブジェクトについて決定された特定オブジェクト領域を含むスペース領域を決定するスペース領域決定ステップであって、前記スペース領域は、前記複数個のオブジェクトのうちの他のオブジェクトについて決定された他のオブジェクト領域に重複しない、前記スペース領域決定ステップと、
前記原画像内の前記特定オブジェクト領域と前記スペース領域とに基づいて、前記処理済み画像内の目標領域を決定する目標領域決定ステップであって、前記目標領域は、拡大されて表現される前記特定オブジェクトが配置されるべき領域である、前記目標領域決定ステップと、を含み、
前記目標領域決定ステップでは、前記特定オブジェクト領域と前記スペース領域との間の第１方向に沿った２個の余白の長さと、前記第１方向に直交する第２方向に沿った２個の余白の長さと、に基づいて、前記処理済み画像内の前記目標領域のアスペクト比を決定する、コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本明細書では、原画像データに対して画像処理を実行して、処理済み画像を表わす処理済み画像データを生成する画像処理装置を開示する。
【背景技術】
【０００２】
特許文献５には、画像形成支援装置であるＢＥＰ装置が開示されている。ＢＥＰ装置は、イメージデータ内の文字領域をページ中央に移動するセンタリング処理を実行し、移動後の文字領域の周囲の余白部分に基づいて文字領域の拡大率を算出し、文字領域を拡大する。そして、ＢＥＰ装置は、拡大前の文字領域の上端と拡大後の文字領域の上端とが一致するように拡大後の文字領域をレイアウトすると共に、元と同じ位置に非文字領域をレイアウトする。これにより、レイアウトがほぼ維持された状態で、文字領域が拡大される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１２−１０８７５０号公報
【特許文献２】特開２０１２−２３０６２３号公報
【特許文献３】特開２０１１−２４２９８７号公報
【特許文献４】特開２０１０−１８３４８４号公報
【特許文献５】特開２００５−２２３８２４号公報
【特許文献６】特開平５−９４５１１号公報
【特許文献７】特開２０００−１３７８０１号公報
【特許文献８】特開平１１−２５２８３号公報
【非特許文献】
【０００４】
【非特許文献１】“画面サイズに合わせ自動的に改行！文書ファイルをスマートフォン上で読みやすく表示  レイアウト再構築技術「GT-Layout」  オンラインストレージ「Dropbox」向けのサービスをスタート  新開発”、[online]、２０１２年５月３０日、富士フィルム株式会社、[２０１４年１月２４日検索]、インターネット＜http://www.fujifilm.co.jp/corporate/news/articleffnr_0647.html＞
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本明細書では、上記の手法とは異なる手法を利用して、特定オブジェクトが拡大されて表現されている処理済み画像を表わす処理済み画像データを適切に生成し得る技術を提供する。
【課題を解決するための手段】
【０００６】
本明細書によって開示される画像処理装置は、取得部と、画像処理実行部と、を備える。取得部は、特定オブジェクトを含む複数個のオブジェクトを含む原画像を表わす原画像データを取得する。画像処理実行部は、原画像データに対して画像処理を実行して、複数個のオブジェクトを含む処理済み画像を表わす処理済み画像データを生成する。処理済み画像では、原画像と比べて、特定オブジェクトが拡大されて表現されている。画像処理実行部は、オブジェクト領域決定部と、スペース領域決定部と、目標領域決定部と、を備える。オブジェクト領域決定部は、原画像内において、複数個のオブジェクトのそれぞれについて、当該オブジェクトを含むオブジェクト領域を決定する。スペース領域決定部は、原画像内において、特定オブジェクトについて決定された特定オブジェクト領域を含むスペース領域を決定する。スペース領域は、複数個のオブジェクトのうちの他のオブジェクトについて決定された他のオブジェクト領域に重複しない。目標領域決定部は、原画像内の特定オブジェクト領域とスペース領域とに基づいて、処理済み画像内の目標領域を決定する。目標領域は、拡大されて表現される特定オブジェクトが配置されるべき領域である。
【０００７】
本明細書によって開示される技術の一つの側面では、目標領域決定部は、特定オブジェクト領域とスペース領域との間の第１方向に沿った２個の余白の長さと、第１方向に直交する第２方向に沿った２個の余白の長さと、に基づいて、処理済み画像内の目標領域の位置を決定する。この構成によると、画像処理装置は、目標領域の位置を適切に決定し得るので、原画像内の複数個のオブジェクトの位置関係をほぼ維持しながら、特定オブジェクトが拡大されて表現されている処理済み画像を表わす処理済み画像データを適切に生成し得る。
【０００８】
本明細書によって開示される技術の他の側面では、目標領域決定部は、特定オブジェクト領域とスペース領域との間の第１方向に沿った２個の余白の長さと、第１方向に直交する第２方向に沿った２個の余白の長さと、に基づいて、処理済み画像内の目標領域のアスペクト比を決定する。この構成によると、画像処理装置は、目標領域のアスペクト比を適切に決定し得るので、特定オブジェクトが拡大されて表現されている処理済み画像を表わす処理済み画像データを適切に生成し得る。
【０００９】
上記の画像処理装置を実現するための制御方法、コンピュータプログラム、及び、当該コンピュータプログラムを格納するコンピュータ読取可能記録媒体も新規で有用である。
【図面の簡単な説明】
【００１０】
【図１】通信システムの構成を示す。
【図２】画像処理サーバの処理のフローチャートを示す。
【図３】文字列解析処理のフローチャートを示す。
【図４】結合処理のフローチャートを示す。
【図５】目標領域決定処理のフローチャートを示す。
【図６】余白領域決定処理のフローチャートを示す。
【図７】領域拡大処理のフローチャートを示す。
【図８】アスペクト比を維持して目標領域を決定するための処理を説明するための説明図を示す。
【図９】アスペクト比を無視して目標領域を決定するための処理を説明するための説明図を示す。
【図１０】再配置処理のフローチャートを示す。
【図１１】行数決定処理のフローチャートを示す。
【図１２】各文字が再配置されて拡大されるケースＡを説明するための説明図を示す。
【図１３】各文字が再配置されて拡大されるケースＢを説明するための説明図を示す。
【図１４】アスペクト比を無視して目標領域を決定するための第２実施例の処理を説明するための説明図を示す。
【発明を実施するための形態】
【００１１】
（第１実施例）
（通信システム２の構成）
図１に示されるように、通信システム２は、多機能機１０と画像処理サーバ５０とを備える。多機能機１０と画像処理サーバ５０とは、インターネット４を介して、相互に通信可能である。多機能機１０は、印刷機能、スキャン機能、コピー機能、ＦＡＸ機能等を含む多機能を実行可能な周辺機器（即ち図示省略のＰＣ（Personal Computerの略）等の周辺機器）である。画像処理サーバ５０は、多機能機１０のベンダによってインターネット４上に設けられるサーバである。
【００１２】
（多機能機１０によって実行される各処理の概要）
多機能機１０が実行可能なコピー機能は、モノクロコピー機能とカラーコピー機能とに分類されるが、本実施例では、カラーコピー機能に着目して説明する。カラーコピー機能は、通常カラーコピー機能と文字拡大カラーコピー機能とに分類される。多機能機１０は、どちらのカラーコピー機能の実行指示がユーザから与えられる場合でも、まず、スキャン対象の画像を表わすシート（以下では「スキャン対象シート」と呼ぶ）をカラースキャンして、スキャン画像データＳＩＤを生成する。スキャン画像データＳＩＤは、多階調（例えば２５６階調）のＲＧＢビットマップデータである。
【００１３】
スキャン画像データＳＩＤによって表わされるスキャン画像ＳＩ（即ちスキャン対象シートに表現されている画像）は、白色の背景を有すると共に、２個のテキストオブジェクトＯＢ１，ＯＢ２と１個の写真オブジェクトＯＢ３とを含む。テキストオブジェクトＯＢ１は、黒色の複数個の文字「Ａ〜Ｍ」によって構成される３行の文字列を含む。テキストオブジェクトＯＢ２は、黒色の複数個の文字「Ｎ〜Ｗ」によって構成される２行の文字列を含む。なお、文字の色は、黒色とは異なる色（例えば赤色）でもよい。写真オブジェクトＯＢ３は、文字を含まず、複数色によって構成される写真を含む。
【００１４】
なお、本実施例の各図では、便宜上、各テキストオブジェクトＯＢ１，ＯＢ２を構成する各文字列が、規則的な順序で並ぶアルファベット「Ａ〜Ｗ」によって表現されているが、実際には、各文字列は、センテンスを構成している。各文字列（即ち１行の文字列）では、スキャン画像ＳＩ内の横方向の左側から右側に向かってセンテンスが進む。また、３行の文字列「Ａ〜Ｍ」及び２行の文字列「Ｎ〜Ｗ」では、スキャン画像ＳＩ内の縦方向の上側から下側に向かってセンテンスが進む。なお、以下のいずれの画像（例えば後述の処理済み画像ＰＩ）においても、１行の文字列を構成する複数個の文字が並ぶ方向、当該方向に直交する方向を、それぞれ、「横方向」、「縦方向」と呼ぶ。また、左側から右側に向かってセンテンスが進むことから、横方向の左端、横方向の右端のことを、それぞれ、「先端」、「後端」と呼ぶ。
【００１５】
多機能機１０は、ユーザから通常カラーコピー機能の実行指示が与えられる場合には、スキャン画像データＳＩＤを利用して、ユーザによって設定されるコピー倍率に応じて、画像をシート（以下では「印刷対象シート」と呼ぶ）に印刷する。例えば、コピー倍率が等倍である場合には、多機能機１０は、スキャン対象シートに表現されている画像と同じサイズを有する画像を印刷対象シートに印刷する。また、例えば、コピー倍率が画像の拡大を示す倍率である場合には、多機能機１０は、スキャン対象シートに表現されている画像よりも大きいサイズを有する画像を印刷対象シートに印刷する。この場合、例えば、Ａ４サイズのスキャン対象シートに表現されている画像が拡大されて、Ａ３サイズの印刷対象シートに印刷される。この結果、３個のオブジェクトＯＢ１，ＯＢ２，ＯＢ３の全てが拡大されて表現されている画像が印刷対象シートに印刷される。
【００１６】
一方、多機能機１０は、ユーザから文字拡大カラーコピー機能の実行指示が与えられる場合には、インターネット４を介して、スキャン画像データＳＩＤを画像処理サーバ５０に送信する。これにより、多機能機１０は、インターネット４を介して、画像処理サーバ５０から処理済み画像データＰＩＤを受信し、処理済み画像データＰＩＤによって表わされる処理済み画像ＰＩを印刷対象シートに印刷する。特に、多機能機１０は、スキャン対象シートと同じサイズ（例えばＡ４サイズ）を有する印刷対象シートに処理済み画像ＰＩを印刷する。
【００１７】
処理済み画像ＰＩでは、スキャン画像ＳＩと比べて、写真オブジェクトＯＢ３が拡大されずに、テキストオブジェクトＯＢ１，ＯＢ２が拡大されて表現されている。従って、スキャン画像ＳＩ内の各文字のサイズが小さい場合でも、処理済み画像ＰＩでは、各文字のサイズが大きくなるので、ユーザは、処理済み画像ＰＩ内の各文字を容易に認識することができる。また、処理済み画像ＰＩ内の３行の文字列「Ａ〜Ｍ」のうちの先頭行の文字列「Ａ〜Ｆ」の文字数（即ち「６」）は、スキャン画像ＳＩ内の３行の文字列「Ａ〜Ｍ」のうちの先頭行の文字列「Ａ〜Ｅ」の文字数（即ち「５」）とは異なる。また、処理済み画像ＰＩ内の各文字列の行間（例えば「Ａ〜Ｆ」と「Ｇ〜Ｌ」の行間）の長さは、スキャン画像ＳＩ内の各文字列の行間（例えば「Ａ〜Ｅ」と「Ｆ〜Ｊ」の行間）の長さよりも小さい。
【００１８】
（画像処理サーバ５０の構成）
画像処理サーバ５０は、多機能機１０から受信されるスキャン画像データＳＩＤに対して画像処理を実行して、処理済み画像データＰＩＤを生成し、当該処理済み画像データＰＩＤを多機能機１０に送信する。画像処理サーバ５０は、ネットワークインターフェース５２と、制御部６０と、を備える。ネットワークインターフェース５２は、インターネット４に接続される。制御部６０は、ＣＰＵ６２とメモリ６４とを備える。ＣＰＵ６２は、メモリ６４に格納されているプログラム６６に従って、様々な処理（即ち図２等の処理）を実行するプロセッサである。
【００１９】
（画像処理サーバ５０によって実行される各処理；図２）
続いて、図２を参照して、画像処理サーバ５０のＣＰＵ６２によって実行される各処理の内容を説明する。ＣＰＵ６２は、インターネット４を介して、多機能機１０からスキャン画像データＳＩＤを受信する場合に、図２の処理を開始する。
【００２０】
Ｓ１００では、ＣＰＵ６２は、文字列解析処理（後述の図３参照）を実行して、スキャン画像ＳＩ内の５行の文字列を含む５個の帯状領域ＬＡ１１〜ＬＡ１３，ＬＡ２１，ＬＡ２２を決定する。
【００２１】
Ｓ２００では、ＣＰＵ６２は、結合処理（後述の図４参照）を実行して、２個の結合画像ＣＩ１，ＣＩ２を表わす２個の結合画像データを生成する。結合画像ＣＩ１は、３個の帯状領域ＬＡ１１〜ＬＡ１３に含まれる３行の文字列が横方向に沿って直線状に結合（即ち連結）された１行の結合文字列「Ａ〜Ｍ」を含む。また、結合画像ＣＩ２は、２個の帯状領域ＬＡ２２，ＬＡ２３に含まれる２行の文字列が横方向に沿って直線状に結合された１行の結合文字列「Ｎ〜Ｗ」を含む。
【００２２】
Ｓ３００では、ＣＰＵ６２は、目標領域決定処理（後述の図５参照）を実行して、スキャン画像ＳＩ内において２個の目標領域ＴＡ１，ＴＡ２を決定する。スキャン画像ＳＩ内の２個の目標領域ＴＡ１，ＴＡ２は、処理済み画像ＰＩ内の２個の目標領域ＴＡ１，ＴＡ２（Ｓ５００の処理済み画像ＰＩ参照）に一致する。従って、Ｓ３００の処理は、処理済み画像ＰＩ内の２個の目標領域ＴＡ１，ＴＡ２を決定する処理に等しい。処理済み画像ＰＩ内の目標領域ＴＡ１、目標領域ＴＡ２は、それぞれ、拡大されて表現される文字列「Ａ〜Ｍ」、文字列「Ｎ〜Ｗ」が配置されるべき領域である。
【００２３】
Ｓ４００では、ＣＰＵ６２は、再配置処理（後述の図１０参照）を実行して、２個の目標領域ＴＡ１，ＴＡ２に対応する２個の再配置領域ＲＡ１，ＲＡ２を決定する。そして、ＣＰＵ６２は、結合画像ＣＩ１を表わす結合画像データを利用して、複数個の文字「Ａ〜Ｍ」を再配置領域ＲＡ１内に再配置することによって、再配置画像ＲＩ１を表わす再配置画像データを生成する。ＣＰＵ６２は、さらに、結合画像ＣＩ２を表わす結合画像データを利用して、複数個の文字「Ｎ〜Ｗ」を再配置領域ＲＡ２内に再配置することによって、再配置画像ＲＩ２を表わす再配置画像データを生成する。
【００２４】
Ｓ５００では、ＣＰＵ６２は、２個の再配置画像ＲＩ１，ＲＩ２を表わす２個の再配置画像データを拡大して、２個の拡大画像データを生成する。そして、ＣＰＵ６２は、２個の拡大画像データを利用して、処理済み画像ＰＩを表わす処理済み画像データＰＩＤを生成する。処理済み画像ＰＩでは各文字が拡大されて表現されるが、処理済み画像データＰＩＤは、スキャンデータＳＩＤと同じ画素数を有する。
【００２５】
Ｓ６００では、ＣＰＵ６２は、インターネット４を介して、処理済み画像データＰＩＤを多機能機１０に送信する。これにより、処理済み画像データＰＩＤによって表わされる処理済み画像ＰＩが対象印刷シートに印刷される。
【００２６】
（文字列解析処理；図３）
続いて、図３を参照して、図２のＳ１００で実行される文字列解析処理の内容を説明する。Ｓ１１０では、ＣＰＵ６２は、スキャン画像データＳＩＤに対して二値化処理を実行して、スキャン画像データＳＩＤと同じ画素数を有する二値データＢＤ（図３では一部のみが示されている）を生成する。ＣＰＵ６２は、まず、スキャン画像データＳＩＤを利用して、スキャン画像ＳＩの背景色（本実施例では白色）を決定する。具体的には、ＣＰＵ６２は、スキャン画像データＳＩＤ内の複数個の画素の画素値の頻度の分布を示すヒストグラムを生成する。そして、ＣＰＵ６２は、当該ヒストグラムを利用して、最高の頻度を有する画素値（以下では「最高頻度画素値」と呼ぶ）を特定することによって、背景色を決定する。次いで、ＣＰＵ６２は、スキャン画像データＳＩＤ内の複数個の画素のそれぞれについて、当該画素の画素値が最高頻度画素値に一致する場合には、当該画素に対応する位置に存在する二値データＢＤ内の画素の画素値として「０」を割り当て、当該画素の画素値が最高頻度画素値に一致しない場合には、当該画素に対応する位置に存在する二値データＢＤ内の画素の画素値として「１」を割り当てる。この結果、二値データＢＤでは、各テキストオブジェクトＯＢ１，ＯＢ２に含まれる各文字（例えば「Ａ」，「Ｂ」）を表わす各画素が画素値「１」を示し、写真オブジェクトＯＢ３を表わす各画素が画素値「１」を示し、それ以外の各画素（即ち背景を表わす画素）が画素値「０」を示す。なお、以下では、二値データＢＤ内の画素値「１」を示す画素、画素値「０」を示す画素のことを、それぞれ、「ＯＮ画素」、「ＯＦＦ画素」と呼ぶ。
【００２７】
Ｓ１２０では、ＣＰＵ６２は、Ｓ１１０で生成された二値データＢＤに対してラべリング処理を実行して、二値データＢＤと同じ画素数を有するラベルデータＬＤ（図３では一部のみが示されている）を生成する。具体的には、ＣＰＵ６２は、二値データＢＤ内の複数個のＯＮ画素を２個以上のＯＮ画素群に分けて、当該２個以上のＯＮ画素群のそれぞれに異なる画素値（例えば「１」、「２」等）を割り当てる。１個のＯＮ画素群は、互いに隣接する２個以上のＯＮ画素によって構成される。即ち、ＣＰＵ６２は、ラべリング処理の対象の１個のＯＮ画素に隣接する８個の隣接画素の中に１個以上のＯＮ画素が含まれる場合には、当該対象の１個のＯＮ画素と、８個の隣接画素のうちの１個以上のＯＮ画素と、を同じＯＮ画素群として区分する（即ちグループ化する）。ＣＰＵ６２は、ラべリング処理の対象のＯＮ画素を変えながら各ＯＮ画素のグループ化を順次実行することによって、２個以上のＯＮ画素群を決定する。例えば、図３のラベルデータＬＤでは、文字「Ａ」を表わす各ＯＮ画素（即ち１個のＯＮ画素群）に画素値「１」が割り当てられており、文字「Ｂ」を表わす各ＯＮ画素（即ち他の１個のＯＮ画素群）に画素値「２」が割り当てられている。
【００２８】
Ｓ１３０では、ＣＰＵ６２は、Ｓ１２０で生成されたラベルデータＬＤを利用して、上記の各ＯＮ画素群に対応する各単位領域を決定する。各単位領域は、対応する１個のＯＮ画素群に外接する矩形の領域である。ＣＰＵ６２は、例えば、図３のラベルデータＬＤを利用する場合には、画素値「１」が割り当てられているＯＮ画素群に外接する単位領域（即ち文字「Ａ」に対応する単位領域）と、画素値「２」が割り当てられているＯＮ画素群に外接する単位領域（即ち文字「Ｂ」に対応する単位領域）と、を決定する。より具体的には、ＣＰＵ６２は、スキャン画像ＳＩの中から、２３個の文字「Ａ」〜「Ｗ」に対応する２３個の単位領域と、１個の写真オブジェクトＯＢ３に対応する１個の単位領域と、を決定する（即ち、合計で２４個の単位領域を決定する）。上記の単位領域の決定は、当該単位領域の各頂点を構成する各画素の位置をメモリ６４に記憶することによって実行される。ただし、以下では、「領域（又は位置）の決定」に関する説明において、画素の位置をメモリ６４に記憶することに関する説明を省略する。
【００２９】
Ｓ１４０では、ＣＰＵ６２は、Ｓ１３０で決定された単位領域を利用して、スキャン画像ＳＩ内のオブジェクト領域を決定する。具体的には、ＣＰＵ６２は、２４個の単位領域を複数個の単位領域群に区分し、各単位領域群に対応する各オブジェクト領域を決定する。１個の単位領域群は、近傍に存在する１個以上の単位領域によって構成される。ＣＰＵ６２は、２個の単位領域の間の距離（即ち画素数）が所定の距離未満である場合に、当該２個の単位領域を同じ単位領域群に区分する。上記の所定の距離は、スキャン画像データＳＩＤの解像度に応じて予め決められている。例えば、本実施例では、スキャン画像データＳＩＤが３００ｄｐｉの解像度を有しており、３００ｄｐｉの解像度に対応する上記の所定の距離は、１０画素である。そして、図３のラベルデータＬＤでは、文字「Ａ」に対応する単位領域ＲＥ１と、文字「Ｂ」に対応する単位領域ＲＥ２と、の間の距離は、３画素である。従って、ＣＰＵ６２は、単位領域ＲＥ１と単位領域ＲＥ２とを同じ単位領域群に区分する。これにより、ＣＰＵ６２は、近傍に存在する各文字（例えば「Ａ」と「Ｂ」）、即ち、同じセンテンスを構成している各文字をグループ化することができる。より具体的には、ＣＰＵ６２は、スキャン画像ＳＩについて、テキストオブジェクトＯＢ１内の１３個の文字「Ａ」〜「Ｍ」に対応する１３個の単位領域を含む単位領域群と、テキストオブジェクトＯＢ２内の１０個の文字「Ｎ」〜「Ｗ」に対応する１０個の単位領域を含む単位領域群と、１個の写真オブジェクトＯＢ３に対応する１個の単位領域を含む単位領域群と、を決定する（即ち、合計で３個の単位領域群を決定する）。そして、ＣＰＵ６２は、３個の単位領域群のそれぞれについて、当該単位領域群に外接する矩形の領域をオブジェクト領域として決定する。即ち、ＣＰＵ６２は、スキャン画像ＳＩの中から、テキストオブジェクトＯＢ１内の１３個の文字「Ａ」〜「Ｍ」を含むオブジェクト領域ＯＡ１と、テキストオブジェクトＯＢ２内の１０個の文字「Ｎ」〜「Ｗ」を含むオブジェクト領域ＯＡ２と、写真オブジェクトＯＢ３を含むオブジェクト領域ＯＡ３と、を決定する（即ち、合計で３個のオブジェクト領域ＯＡ１〜ＯＡ３を決定する）。
【００３０】
Ｓ１５０では、ＣＰＵ６２は、Ｓ１４０で決定された３個のオブジェクト領域ＯＡ１〜ＯＡ３のそれぞれについて、当該オブジェクト領域の種類を決定する。具体的には、ＣＰＵ６２は、各オブジェクト領域ＯＡ１〜ＯＡ３が、文字を含むテキストオブジェクト領域（以下では単に「テキスト領域」と呼ぶ）であるのか否かを判断する。ＣＰＵ６２は、まず、スキャン画像データＳＩＤのうち、オブジェクト領域ＯＡ１を表わす部分画像データを構成する複数個の画素の画素値の頻度の分布を示すヒストグラムを生成する。そして、ＣＰＵ６２は、当該ヒストグラムを利用して、頻度がゼロより高い画素値の数（即ち、オブジェクト領域ＯＡ１で利用されている色の数）を算出する。ＣＰＵ６２は、算出済みの数が所定数（例えば「１０」）未満である場合には、オブジェクト領域ＯＡ１がテキスト領域であると判断し、算出済みの数が上記の所定数以上である場合には、オブジェクト領域ＯＡ１がテキスト領域でないと判断する。オブジェクト領域ＯＡ１は、黒色の文字「Ａ」〜「Ｍ」と、白色の背景と、を含む。従って、オブジェクト領域ＯＡ１に対応するヒストグラムでは、通常、黒色を示す画素値と白色を示す画素値とを含む２個の画素値のみの頻度がゼロより高い。従って、ＣＰＵ６２は、オブジェクト領域ＯＡ１がテキスト領域であると判断する。同様に、ＣＰＵ６２は、オブジェクト領域ＯＡ２に対応するヒストグラムを利用して、オブジェクト領域ＯＡ２がテキスト領域であると判断する。一方、例えば、写真オブジェクトＯＢ３では、通常、１０色以上の色が利用されている。従って、オブジェクト領域ＯＡ３に対応するヒストグラムでは、通常、頻度がゼロより高い画素値の数が上記の所定数以上になる。従って、ＣＰＵ６２は、オブジェクト領域ＯＡ３がテキスト領域でないと判断する（即ち写真オブジェクト領域であると判断する）。
【００３１】
Ｓ１６０では、ＣＰＵ６２は、Ｓ１５０で決定された２個のテキスト領域ＯＡ１，ＯＡ２に対して帯状領域決定処理を実行する。ただし、ＣＰＵ６２は、写真オブジェクト領域ＯＡ３に対して帯状領域決定処理を実行しない。具体的には、ＣＰＵ６２は、まず、テキスト領域ＯＡ１に対応する射影ヒストグラムを生成する。当該射影ヒストグラムは、二値データＢＤ（Ｓ１１０参照）を構成する複数個の画素のうち、テキスト領域ＯＡ１を表わす各画素を横方向に射影する場合におけるＯＮ画素（即ち「１」を示す画素）の頻度の分布を示す。換言すると、当該射影ヒストグラムは、スキャン画像データＳＩＤを構成する複数個の画素のうち、テキスト領域ＯＡ１を表わす各画素を横方向に射影する場合における文字構成画素の頻度の分布を示す。文字構成画素は、テキスト領域ＯＡ１に含まれる文字（例えば「Ａ」）を構成する画素（即ち黒色を示す画素）である。射影ヒストグラムでは、１行の文字列（例えば「Ａ〜Ｅ」）が、頻度がゼロより高い範囲（以下では「高頻度範囲」と呼ぶ）で表わされ、２行の文字列の間の行間（例えば「Ａ〜Ｅ」と「Ｆ〜Ｊ」の間の行間）が、頻度がゼロである範囲で表わされる。そして、ＣＰＵ６２は、射影ヒストグラムを利用して、１個以上の高頻度範囲に対応する１個以上の帯状領域を決定する。１個の帯状領域の縦方向の長さ（即ち縦方向の画素数）は、当該帯状領域に対応する高頻度範囲の縦方向の長さに等しい。また、１個の帯状領域の横方向の長さ（即ち横方向の画素数）は、オブジェクト領域ＯＡ１の横方向の長さに等しい。より具体的には、ＣＰＵ６２は、テキスト領域ＯＡ１の中から、文字列「Ａ〜Ｅ」を含む帯状領域ＬＡ１１と、文字列「Ｆ〜Ｊ」を含む帯状領域ＬＡ１２と、文字列「Ｋ〜Ｍ」を含む帯状領域ＬＡ１３と、を決定する（即ち、合計で３個の帯状領域ＬＡ１１〜ＬＡ１３を決定する）。同様に、ＣＰＵ６２は、テキスト領域ＯＡ２の中から、文字列「Ｎ〜Ｒ」を含む帯状領域ＬＡ２１（図２のＳ１００参照）と、文字列「Ｓ〜Ｗ」を含む帯状領域ＬＡ２２と、を決定する（即ち、合計で２個の帯状領域を決定する）。Ｓ１６０が終了すると、図３の処理が終了する。
【００３２】
（結合処理；図４）
続いて、図４を参照して、図２のＳ２００で実行される結合処理の内容を説明する。Ｓ２１０では、ＣＰＵ６２は、２個のテキスト領域ＯＡ１，ＯＡ２のうちの１個のテキスト領域を処理対象として決定する。以下では、テキスト領域ＯＡ１が処理対象として決定される場合を例として説明する。
【００３３】
Ｓ２２０では、ＣＰＵ６２は、テキスト領域ＯＡ１に含まれる３行の文字列「Ａ〜Ｍ」が結合されている結合画像ＣＩ１を表わす結合画像データを生成する。具体的には、ＣＰＵ６２は、スキャン画像データＳＩＤの中から、テキスト領域ＯＡ１について決定された３個の帯状領域ＬＡ１１〜ＬＡ１３（図３のＳ１６０参照）を表わす３個の部分画像データを取得する。そして、ＣＰＵ６２は、３個の帯状領域ＬＡ１１〜ＬＡ１３内の３行の文字列「Ａ〜Ｍ」が横方向に沿って直線状に結合されるように、取得済みの３個の部分画像データを結合して、結合画像ＣＩ１を表わす結合画像データを生成する。この際に、ＣＰＵ６２は、結合される２行の文字列の間に横方向の所定の長さの余白（即ち、「Ｅ」と「Ｆ」の間の余白、及び、「Ｊ」と「Ｋ」の間の余白）が形成されるように、当該余白を表わす画素、即ち、スキャン画像ＳＩの背景色を有する画素を補充して、結合画像データを生成する。即ち、ＣＰＵ６２は、補充される画素を介して、３個の部分画像データを結合して、結合画像ＣＩ１を表わす結合画像データを生成する。なお、ＣＰＵ６２は、帯状領域ＬＡ１３内の後端側の余白（即ち文字列「Ｋ〜Ｍ」よりも右側に存在する余白）が削除されるように、帯状領域ＬＡ１３を表わす部分画像データのうちの当該余白を表わすデータを削除する。これにより、文字列「Ａ〜Ｍ」よりも後端側に余白が存在しない結合画像ＣＩ１を表わす結合画像データが生成される。
【００３４】
Ｓ２３０では、ＣＰＵ６２は、Ｓ２２０で生成された結合画像データに対して二値化処理を実行する。当該二値化処理の内容は、図３のＳ１１０と同様である。
【００３５】
Ｓ２４０では、ＣＰＵ６２は、Ｓ２３０で生成された二値データを利用して、Ｓ２２０で生成された結合画像データ内の複数個の分断候補位置を決定する。分断候補位置は、再配置処理（図２のＳ４００、後述の図１０参照）において、結合画像データを分断するための分断位置の候補である。ＣＰＵ６２は、まず、二値データを利用して、射影ヒストグラムを生成する。当該射影ヒストグラムは、二値データを構成する各画素を縦方向に射影する場合におけるＯＮ画素（即ち文字構成画素）の頻度の分布を示す。当該射影ヒストグラムでは、１個の文字（例えば「Ａ」）が、頻度がゼロより高い範囲で表わされ、２個の文字の間の余白部分（例えば「Ａ」と「Ｂ」の間の余白部分）が、頻度がゼロである範囲（以下では「ゼロ頻度範囲」と呼ぶ）で表わされる。そして、ＣＰＵ６２は、射影ヒストグラムを利用して、各ゼロ頻度範囲の右端を分断候補位置として決定する。このように、２個の文字の間の余白部分が分断候補位置として決定されるので、１個の文字（例えば「Ａ」）の中間で分断されてしまうことを抑制することができる。なお、変形例では、ＣＰＵ６２は、各ゼロ頻度範囲の左端を分断候補位置として決定してもよいし、各ゼロ頻度範囲の中間位置を分断候補位置として決定してもよい。
【００３６】
Ｓ２５０では、ＣＰＵ６２は、全てのテキスト領域ＯＡ１，ＯＡ２について、Ｓ２１０〜Ｓ２４０の処理が終了したのか否かを判断する。ＣＰＵ６２は、処理が終了していないと判断する場合（Ｓ２５０でＮＯ）には、Ｓ２１０において、未処理のテキスト領域（例えばＯＡ２）を処理対象として決定する。この結果、上記と同様に、ＣＰＵ６２は、結合画像ＣＩ２（図２のＳ２００参照）を表わす結合画像データを生成し（Ｓ２２０）、当該結合画像データの複数個の分断候補位置を決定する（Ｓ２４０）。そして、ＣＰＵ６２は、処理が終了したと判断する場合（Ｓ２５０でＹＥＳ）には、図４の処理を終了する。
【００３７】
（目標領域決定処理；図５）
続いて、図５を参照して、図２のＳ３００で実行される目標領域決定処理の内容を説明する。Ｓ３１０では、ＣＰＵ６２は、余白領域決定処理（後述の図６参照）を実行して、各テキスト領域ＯＡ１，ＯＡ２に対応する各余白領域を決定する。各余白領域は、対応するテキスト領域（例えばＯＡ１）内の各文字を拡大して配置可能な最大の領域であり、当該対応するテキスト領域よりも大きいサイズを有し、当該対応するテキスト領域を含む。
【００３８】
Ｓ３３０では、ＣＰＵ６２は、拡大率ＥＲとして初期値「１．０」を設定すると共に、回数ポインタＴＰとして初期値「１」を設定する。拡大率ＥＲは、後述のＳ３５０の領域拡大処理でテキスト領域を拡大するための面積拡大率である。回数ポインタＴＰは、後述のＳ３５０の領域拡大処理が実行された回数を示すポインタである。従って、以下では、「ＴＰ回目の領域拡大処理」又は「（ＴＰ−１）回目の領域拡大処理」という用語を使用することがある。
【００３９】
Ｓ３４０では、ＣＰＵ６２は、拡大率ＥＲの現在値（例えば「１．０」）に予め決められている固定値α（例えば「０．０５」）を加えて、拡大率ＥＲの新たな値（例えば「１．０５」）を算出する。
【００４０】
Ｓ３５０では、ＣＰＵ６２は、領域拡大処理（後述の図７参照）を実行する。即ち、ＣＰＵ６２は、Ｓ３４０で算出された拡大率ＥＲの現在値（例えば「１．０５」）に従って、各テキスト領域ＯＡ１，ＯＡ２を拡大して、各拡大領域を決定する。
【００４１】
Ｓ３７０では、ＣＰＵ６２は、Ｓ３５０で決定された拡大領域が所定の条件を満たすのか否かを判断する。本実施例では、上記の所定の条件は、以下のとおりである。例えば、余白領域のサイズが比較的に小さい場合には、拡大率ＥＲに従ってテキスト領域を拡大すると、拡大領域が余白領域に収まらない可能性がある。この場合、ＣＰＵ６２は、後述の図９の数式に従って、拡大領域を適切に決定することができないので、拡大領域が所定の条件を満たさないと判断する（Ｓ３７０でＮＯ）。また、例えば、Ｓ３５０で複数個の拡大領域が決定される場合には、当該複数個の拡大領域のうちの２個の拡大領域が互いに重複する可能性がある。この場合、ＣＰＵ６２は、拡大領域が所定の条件を満たさないと判断する（Ｓ３７０でＮＯ）。一方、ＣＰＵ６２は、拡大領域が余白領域に収まり、かつ、２個の拡大領域が互いに重複しない場合には、拡大領域が所定の条件を満たすと判断する（Ｓ３７０でＹＥＳ）。
【００４２】
ＣＰＵ６２は、拡大領域が所定の条件を満たさないと判断する場合（Ｓ３７０でＮＯ）には、Ｓ３７２において、（ＴＰ−１）回目の領域拡大処理で決定された各拡大領域を各目標領域ＴＡ１，ＴＡ２（図２のＳ３００参照）として決定する。なお、回数ポインタＴＰの現在値が「１」である場合には、Ｓ３７２では、ＣＰＵ６２は、各テキスト領域ＯＡ１，ＯＡ２をそのまま各目標領域として決定する。Ｓ３７２が終了すると、図５の処理が終了する。
【００４３】
一方、ＣＰＵ６２は、拡大領域が所定の条件を満たすと判断する場合（Ｓ３７０でＹＥＳ）には、Ｓ３８０において、拡大率ＥＲの現在値が所定値（例えば「１．４」）に一致するのか否かを判断する。上記の所定値は、目標領域を決定するための最大の拡大率を意味し、換言すると、スキャン画像ＳＩ内の各文字のサイズを拡大するための目標の拡大率を意味する。例えば、元の文字が小さいサイズであっても、当該文字のサイズが１．４倍になれば、ヒトは、通常、拡大後の文字を認識し易い。このように、ヒトが認識し易い拡大率が、上記の所定値（例えば「１．４」）として設定される。
【００４４】
ＣＰＵ６２は、拡大率ＥＲの現在値が上記の所定値に一致すると判断する場合（Ｓ３８０でＹＥＳ）には、Ｓ３８２において、ＴＰ回目の領域拡大処理で決定された各拡大領域を各目標領域（例えば図２のＳ３００のＴＡ１，ＴＡ２参照）として決定する。Ｓ３８２が終了すると、図５の処理が終了する。
【００４５】
一方、ＣＰＵ６２は、拡大率ＥＲの現在値が上記の所定値に一致しないと判断する場合（Ｓ３８０でＮＯ）には、Ｓ３９０において、回数ポインタＴＰの現在値に「１」を加算して、回数ポインタＴＰの新たな値を算出する。そして、ＣＰＵ６２は、Ｓ３４０以降の各処理を再び実行する。
【００４６】
（余白領域決定処理；図６）
続いて、図６を参照して、図５のＳ３１０で実行される余白領域決定処理の内容を説明する。Ｓ３１１では、ＣＰＵ６２は、２個のテキスト領域ＯＡ１，ＯＡ２のうちの１個のテキスト領域を処理対象として決定する。以下では、テキスト領域ＯＡ１が処理対象として決定される場合を例として説明する。
【００４７】
Ｓ３１２〜Ｓ３１９では、ＣＰＵ６２は、テキスト領域ＯＡ１を複数個の向きに順次拡大して、余白領域ＢＡ１を決定する。複数個の向きのうちの最初の拡大に利用されるべき向きは、左上向きである（Ｓ３１２）。その理由は、以下の通りである。上述したように、テキスト領域ＯＡ１内の各文字列「Ａ〜Ｍ」では、左側から右側に向かってセンテンスが進むと共に、上側から下側に向かってセンテンスが進む。このような状況では、センテンスが開始される左側及び上側の中間である左上向きを最初の拡大に利用すれば、他の向きを最初の拡大に利用する場合と比べて、最終的な拡大結果として得られる余白領域（後述のＳ３１９の余白領域ＢＡ１）が大きくなり得る。ただし、変形例では、複数個の向きのうちの最初の拡大に利用されるべき向きは、左上向きでなくてもよく、Ｓ３１３〜Ｓ３１９のいずれの向きであってもよい。
【００４８】
Ｓ３１２の左上向きの拡大によって領域ＯＡ１’が得られる。領域ＯＡ１’の上端は、スキャン画像ＳＩの上端に一致する。このために、領域ＯＡ１’を右上向きに拡大することができないので、Ｓ３１３は実行されない。また、領域ＯＡ１’の左端は、スキャン画像ＳＩの左端に一致する。このために、領域ＯＡ１’を左下向きに拡大することができないので、Ｓ３１４は実行されない。次いで、Ｓ３１５において、ＣＰＵ６２は、領域ＯＡ１’を右下向きに拡大して、領域ＯＡ１’’を決定する。領域ＯＡ１’’の右端は、テキスト領域ＯＡ２の左端に一致する。このように、ＣＰＵ６２は、他のオブジェクト領域（例えばＯＡ２，ＯＡ３）に重複しないように、テキスト領域ＯＡ１を複数個の向きに順次拡大する。なお、Ｓ３１２〜Ｓ３１５のいずれの向きも、横方向に沿って伸びる直線に対して４５度の角度を成すと共に縦方向の沿って伸びる直線に対して４５度の角度を成す向きである。また、領域ＯＡ１’’を左向き、上向き、及び、右向きに拡大することができないので、Ｓ３１６〜Ｓ３１８は実行されない。最後に、Ｓ３１９において、ＣＰＵ６２は、領域ＯＡ１’’を下向きに拡大して、余白領域ＢＡ１を決定する。
【００４９】
Ｓ３２０では、ＣＰＵ６２は、全てのテキスト領域ＯＡ１，ＯＡ２について、Ｓ３１１〜Ｓ３１９の処理が終了したのか否かを判断する。ＣＰＵ６２は、処理が終了していないと判断する場合（Ｓ３２０でＮＯ）には、Ｓ３１１において、未処理のテキスト領域（例えばＯＡ２）を処理対象として決定する。この結果、上記と同様に、ＣＰＵ６２は、テキスト領域ＯＡ２に対応する余白領域（後述の図７のＢＡ２参照）を決定する。そして、ＣＰＵ６２は、処理が終了したと判断する場合（Ｓ３２０でＹＥＳ）には、図６の処理を終了する。
【００５０】
テキスト領域ＯＡ１に対応する余白領域ＢＡ１は、横方向の右側及び左側のそれぞれおいて、テキスト領域ＯＡ１よりも大きいと共に、縦方向の上側及び上側のそれぞれおいて、テキスト領域ＯＡ１よりも大きい。従って、テキスト領域ＯＡ１と余白領域ＢＡ１との間には、横方向に沿った２個の余白が存在すると共に、縦方向に沿った２個の余白が存在する。テキスト領域ＯＡ２に対応する余白領域ＢＡ２（後述の図７参照）も同様である。また、各余白領域ＢＡ１，ＢＡ２は、他のオブジェクト領域に重複しない（例えば、余白領域ＢＡ１は、オブジェクト領域ＯＡ２，ＯＡ３に重複しない）。ただし、２個の余白領域ＢＡ１，ＢＡ２は、互いに重複し得る。
【００５１】
（領域拡大処理；図７）
続いて、図７を参照して、図５のＳ３５０で実行される領域拡大処理の内容を説明する。Ｓ３５２では、ＣＰＵ６２は、２個のテキスト領域ＯＡ１，ＯＡ２のうちの１個のテキスト領域を処理対象として決定する。以下では、処理対象のテキスト領域の横方向の長さ（即ち横方向の画素数）、縦方向の長さ（即ち縦方向の画素数）として、それぞれ、符号ＯＰｘ、符号ＯＰｙを利用する。また、処理対象のテキスト領域に対応する余白領域の横方向の長さ（即ち横方向の画素数）、縦方向の長さ（即ち縦方向の画素数）として、それぞれ、符号ＢＰｘ、符号ＢＰｙを利用する。また、以下では、テキスト領域ＯＡ１が処理対象として決定される場合を例として説明する。
【００５２】
Ｓ３５４では、ＣＰＵ６２は、テキスト領域ＯＡ１の横方向の長さＯＰｘと、拡大率ＥＲ（図５のＳ３４０参照）の現在値の平方根（以下では「ルートＥＲ」と呼ぶ）と、を乗算して、決定されるべき拡大領域の候補である候補拡大領域の横方向の長さ（即ち横方向の画素数）ＣＰｘを算出する。また、ＣＰＵ６２は、テキスト領域ＯＡ１の縦方向の長さＯＰｙと、ルートＥＲと、を乗算して、候補拡大領域の縦方向の長さ（即ち縦方向の画素数）ＣＰｙを算出する。テキスト領域ＯＡ１の横方向及び縦方向の長さＯＰｘ，ＯＰｙに同じ値（即ちルートＥＲ）が乗算されて候補拡大領域の横方向及び縦方向の長さＣＰｘ，ＣＰｙが算出されるので、候補拡大領域のアスペクト比は、テキスト領域ＯＡ１のアスペクト比に等しい。
【００５３】
Ｓ３５６では、ＣＰＵ６２は、候補拡大領域の横方向の長さＣＰｘが余白領域ＢＡ１の横方向の長さＢＰｘ以下であり、かつ、候補拡大領域の縦方向の長さＣＰｙが余白領域ＢＡ１の縦方向の長さＢＰｙ以下であるのか否かを判断する。即ち、ＣＰＵ６２は、候補拡大領域が余白領域ＢＡ１内に収まるのか否かを判断する。
【００５４】
ＣＰＵ６２は、長さＣＰｘが長さＢＰｘ以下であり、かつ、長さＣＰｙが長さＢＰｙ以下である場合には、候補拡大領域が余白領域ＢＡ１内に収まると判断して（Ｓ３５６でＹＥＳ）、Ｓ３５８に進む。Ｓ３５８では、ＣＰＵ６２は、テキスト領域ＯＡ１のアスペクト比を維持した状態で、拡大率ＥＲに従ってテキスト領域ＯＡ１を拡大して、拡大領域を決定する。この結果、テキスト領域ＯＡ１のアスペクト比に等しいアスペクト比を有する拡大領域（以下では「単純拡大領域」と呼ぶ）が決定される。より具体的には、単純拡大領域の横方向の長さ、縦方向の長さは、それぞれ、Ｓ３５４で算出された候補拡大領域の横方向の長さＣＰｘ、縦方向の長さＣＰｙに一致する。そして、単純拡大領域が目標領域として決定され得る（図５のＳ３７２，Ｓ３８２参照）。テキスト領域ＯＡ１のアスペクト比に等しいアスペクト比を有する目標領域が決定されると、詳しくは後述するが、ＣＰＵ６２は、図２のＳ４００の再配置処理（図１０参照）を容易に実行することができる。Ｓ３５８が終了すると、Ｓ３６２に進む。
【００５５】
一方、ＣＰＵ６２は、長さＣＰｘが長さＢＰｘより大きい場合、又は、長さＣＰｙが長さＢＰｙより大きい場合には、候補拡大領域が余白領域ＢＡ１内に収まらないと判断して（Ｓ３５６でＮＯ）、Ｓ３６０に進む。Ｓ３６０では、ＣＰＵ６２は、テキスト領域ＯＡ１のアスペクト比を維持することなく（即ち無視して）、テキスト領域ＯＡ１を拡大して、拡大領域を決定する。この結果、通常、テキスト領域ＯＡ１のアスペクト比とは異なるアスペクト比を有する拡大領域（以下では「変形拡大領域」と呼ぶ）が決定される。より具体的には、変形拡大領域の横方向の長さ、縦方向の長さは、それぞれ、候補拡大領域の横方向の長さＣＰｘ、縦方向の長さＣＰｙとは異なる。そして、変形拡大領域が目標領域として決定され得る。このように、本実施例によると、ＣＰＵ６２は、テキスト領域ＯＡ１のアスペクト比に一致するアスペクト比を有する単純拡大領域を決定することができない場合でも、変形拡大領域を適切に決定することができる。Ｓ３６０が終了すると、Ｓ３６２に進む。
【００５６】
Ｓ３６２では、ＣＰＵ６２は、全てのテキスト領域ＯＡ１，ＯＡ２について、Ｓ３５２〜Ｓ３６０の処理が終了したのか否かを判断する。ＣＰＵ６２は、処理が終了していないと判断する場合（Ｓ３６２でＮＯ）には、Ｓ３５２において、未処理のテキスト領域（例えばＯＡ２）を処理対象として決定する。この結果、ＣＰＵ６２は、テキスト領域ＯＡ２に対応する拡大領域を決定する。そして、ＣＰＵ６２は、処理が終了したと判断する場合（Ｓ３６２でＹＥＳ）には、図７の処理を終了する。
【００５７】
（アスペクト比を維持して拡大；図８）
続いて、図８を参照して、図７のＳ３５８の処理の内容を説明する。図８内の各矩形は、テキスト領域ＯＡ１と余白領域ＢＡ１と拡大領域ＣＡとを示す。テキスト領域ＯＡ１と余白領域ＢＡ１との間には、横方向の２個の余白（長さＰｘ１，Ｐｘ２）が存在すると共に、縦方向の２個の余白（長さＰｙ１，Ｐｙ２）が存在する。そして、図７のＳ３５８の処理では、ＣＰＵ６２は、４個の対象長さｄｘ１，ｄｘ２，ｄｙ１，ｄｙ２を算出することによって、拡大領域（即ち単純拡大領域）ＣＡの位置を決定する。具体的には、ＣＰＵ６２は、図８内の数式（１）〜（６）を利用して、４個の対象長さｄｘ１，ｄｘ２，ｄｙ１，ｄｙ２を算出する。
【００５８】
数式（１）は、拡大領域ＣＡの横方向の長さＣＰｘ（図７のＳ３５４で算出済み）から、テキスト領域ＯＡ１の横方向の長さＯＰｘを減算して、拡大領域ＣＡとテキスト領域ＯＡ１との間の横方向の差分長さＤｘを算出することを示す。数式（２）は、拡大領域ＣＡの縦方向の長さ（図７のＳ３５４で算出済み）から、テキスト領域ＯＡ１の縦方向の長さを減算して、拡大領域ＣＡとテキスト領域ＯＡ１との間の縦方向の長さＤｙを算出することを示す。数式（３）は、横方向の差分長さＤｘが、横方向の２個の対象長さｄｘ１，ｄｘ２の和であることを示す。数式（４）は、縦方向の差分長さＤｙが、縦方向の２個の対象長さｄｙ１，ｄｙ２の和であることを示す。数式（５）は、横方向の２個の対象長さｄｘ１，ｄｘ２の比率が、横方向の２個の余白の長さＰｘ１，Ｐｘ２の比率に一致することを示す。数式（６）は、縦方向の２個の対象長さｄｙ１，ｄｙ２の比率が、縦方向の２個の余白の長さＰｙ１，Ｐｙ２の比率に一致することを示す。Ｄｘ、Ｐｘ１、及び、Ｐｘ２の各値がわかっているので、当該各値と数式（５）とを利用すれば、横方向の２個の対象長さｄｘ１，ｄｘ２を算出ことができる。また、Ｄｙ、Ｐｙ１、及び、Ｐｙ２の各値がわかっているので、当該各値と数式（６）とを利用すれば、縦方向の２個の対象長さｄｙ１，ｄｙ２を算出ことができる。
【００５９】
図８内の数式（１）〜（６）によると、以下の単純拡大領域ＣＡが得られる。数式（５）では、横方向の２個の余白の長さＰｘ１，Ｐｘ２の比率に応じて、横方向の対象長さｄｘ１，ｄｘ２が決定され、数式（６）では、縦方向の２個の余白の長さＰｙ１，Ｐｙ２の比率に応じて、横方向の対象長さｄｙ１，ｄｙ２が決定される。従って、横方向の２個の余白の長さＰｘ１，Ｐｘ２と、縦方向の２個の余白の長さＰｙ１，Ｐｙ２と、に基づいて、テキスト領域ＯＡ１のアスペクト比に等しいアスペクト比を有する単純拡大領域の位置が決定される。そして、単純拡大領域が目標領域として決定され得る（図５のＳ３７２，Ｓ３８２参照）。
【００６０】
（アスペクト比を無視して拡大；図９）
続いて、図９を参照して、図７のＳ３６０の処理の内容を説明する。図９内の各矩形は、図８内の各矩形と同様である。ＣＰＵ６２は、図９内の数式（１）〜（８）を利用して、４個の対象長さｄｘ１，ｄｘ２，ｄｙ１，ｄｙ２を算出することによって、拡大領域（（即ち変形拡大領域）ＣＡの位置、アスペクト比、及び、サイズを決定する。
【００６１】
数式（１）は、テキスト領域ＯＡ１の面積ＳＯと拡大率ＥＲの現在値とを乗算することによって得られる値が、拡大領域ＣＡの面積ＳＣに一致することを示す。数式（２）は、テキスト領域ＯＡ１の面積ＳＯが、テキスト領域ＯＡ１の横方向の長さＯＰｘと縦方向の長さＯＰｙとを乗算することによって得られることを示す。数式（３）は、拡大領域ＣＡの面積ＳＣが、テキスト領域ＯＡ１の横方向の長さＯＰｘと２個の対象長さｄｘ１，ｄｘ２との和と、テキスト領域ＯＡ１の縦方向の長さＯＰｙと２個の対象長さｄｙ１，ｄｙ２との和と、を乗算することによって得られることを示す。数式（４）は、数式（２）の面積ＳＯと数式（３）の面積ＳＣとを数式（１）に代入することによって得られる数式を示す。数式（５）は、４個の対象長さｄｘ１，ｄｘ２，ｄｙ１，ｄｙ２のそれぞれが、４個の余白の長さＰｘ１，Ｐｘ２，Ｐｙ１，Ｐｙ２のそれぞれと係数Ｋとを乗算することによって得られることを示す。数式（６）は、数式（５）の各対象長さｄｘ１，ｄｘ２，ｄｙ１，ｄｙ２を数式（４）に代入することによって得られる数式を示す。数式（７）は、数式（６）を展開することによって得られる数式を示す。数式（８）は、数式（７）の係数ａ，ｂ，ｃを利用して、係数Ｋを算出するための数式を示す。そして、係数Ｋを数式（５）に代入すれば、４個の対象長さｄｘ１，ｄｘ２，ｄｙ１，ｄｙ２を算出することができる。
【００６２】
図９内の数式（１）〜（８）によると、以下の変形拡大領域ＣＡが得られる。数式（５）によると、「ｄｘ１＋ｄｘ２＝Ｋ×（Ｐｘ１＋Ｐｘ２）」という関係と、「ｄｙ１＋ｄｙ２＝Ｋ×（Ｐｙ１＋Ｐｙ２）」という関係と、が得られる。従って、横方向の２個の余白の長さの和（即ちＰｘ１＋Ｐｘ２）が、縦方向の２個の余白の長さの和（即ちＰｙ１＋Ｐｙ２）よりも大きい場合に、横方向の差分長さ（即ちｄｘ１＋ｄｘ２）が縦方向の差分長さ（即ちｄｙ１＋ｄｙ２）よりも大きくなり、横方向の２個の余白の長さの和（即ちＰｘ１＋Ｐｘ２）が、縦方向の２個の余白の長さの和（即ちＰｙ１＋Ｐｙ２）よりも小さい場合に、横方向の差分長さ（即ちｄｘ１＋ｄｘ２）が縦方向の差分長さ（即ちｄｙ１＋ｄｙ２）よりも小さくなる。このように、横方向の２個の余白の長さＰｘ１，Ｐｘ２と、縦方向の２個の余白の長さＰｙ１，Ｐｙ２と、に基づいて、テキスト領域ＯＡ１のアスペクト比とは異なる変形拡大領域のアスペクト比と、変形拡大領域のサイズ（即ち横方向の長さ及び縦方向の長さ）と、変形拡大領域の位置と、が決定される。そして、変形拡大領域が目標領域として決定され得る（図５のＳ３７２，Ｓ３８２参照）。
【００６３】
（再配置処理；図１０）
続いて、図１０を参照して、図２のＳ４００で実行される再配置処理の内容を説明する。Ｓ４１０では、ＣＰＵ６２は、２個のテキスト領域ＯＡ１，ＯＡ２のうちの１個のテキスト領域（例えばＯＡ１）を処理対象として決定する。以下では、Ｓ４１０で処理対象として決定されるテキスト領域のことを「対象テキスト領域」と呼ぶ。また、対象テキスト領域に含まれる各文字列が結合された結合画像（例えば図２のＣＩ１）を表わす結合画像データのことを「対象結合画像データ」と呼ぶ。
【００６４】
Ｓ４１２では、ＣＰＵ６２は、対象テキスト領域のアスペクト比と、当該対象テキスト領域について決定された目標領域（以下では「対象目標領域」と呼ぶ）のアスペクト比と、が一致するのか否かを判断する。
【００６５】
対象テキスト領域について、図７のＳ３５８（即ち図８の手法）で得られる単純拡大領域が目標領域として決定された場合には、ＣＰＵ６２は、対象テキスト領域のアスペクト比と、対象目標領域のアスペクト比と、が一致すると判断して（Ｓ４１２でＹＥＳ）、Ｓ４１４において、取得処理を実行する。具体的には、ＣＰＵ６２は、スキャン画像データＳＩＤの中から、対象テキスト領域を表わす部分画像データを取得する。Ｓ４１４が終了すると、Ｓ４９０に進む。このように、対象テキスト領域のアスペクト比と、対象目標領域のアスペクト比と、が一致する場合には、ＣＰＵ６２は、Ｓ４２０〜Ｓ４８０の処理を実行せずに済むので、再配置処理を容易（即ち迅速）に実行することができる。
【００６６】
一方、対象テキスト領域について、図７のＳ３６０（即ち図９の手法）で得られる変形拡大領域が目標領域として決定された場合には、ＣＰＵ６２は、対象テキスト領域のアスペクト比と、対象目標領域のアスペクト比と、が一致しないと判断して（Ｓ４１２でＮＯ）、Ｓ４２０〜Ｓ４８０の各処理を実行して、再配置画像（例えば図２のＳ４００のＲＩ１参照）を表わす再配置画像データを生成する。
【００６７】
Ｓ４２０では、ＣＰＵ６２は、決定されるべき再配置領域（図２のＲＡ１，ＲＡ２参照）の候補である候補再配置領域の横方向の長さＷ（即ち横方向の画素数Ｗ）として、初期値ＯＰｘ（即ち対象テキスト領域の横方向の長さ）を設定すると共に、候補再配置領域の縦方向の長さＨ（即ち縦方向の画素数Ｈ）として、初期値ＯＰｙ（即ち対象テキスト領域の縦方向の長さ）を設定する。
【００６８】
Ｓ４３０では、ＣＰＵ６２は、候補再配置領域の縦方向の長さＨに対する横方向の長さＷの比Ｗ／Ｈが、対象目標領域の縦方向の長さＴＨに対する横方向の長さＴＷの比ＴＷ／ＴＨ未満であるのか否かを判断する。
【００６９】
ＣＰＵ６２は、比Ｗ／Ｈが比ＴＷ／ＴＨ未満であると判断する場合（Ｓ４３０でＹＥＳ）には、Ｓ４３２において、候補再配置領域の横方向の現在の長さＷに予め決められている固定値β（例えば１画素）を加算して、候補再配置領域の横方向の新たな長さＷを決定する。Ｓ４３２が終了すると、Ｓ４４０に進む。
【００７０】
一方、ＣＰＵ６２は、比Ｗ／Ｈが比ＴＷ／ＴＨ以上であると判断する場合（Ｓ４３０でＮＯ）には、Ｓ４３４において、候補再配置領域の横方向の現在の長さＷから予め決められている固定値β（例えば１画素）を減算して、候補再配置領域の横方向の新たな長さＷを決定する。Ｓ４３４が終了すると、Ｓ４４０に進む。なお、本実施例では、Ｓ４３２及びＳ４３４において、同じ固定値βが利用されるが、変形例では、Ｓ４３２の固定値とＳ４３４の固定値とは異なる値であってもよい。
【００７１】
Ｓ４４０では、ＣＰＵ６２は、スキャン画像データＳＩＤの解像度に応じて、縦方向に沿った行間の長さｍ（即ち行間の画素数ｍ）を決定する。例えば、ＣＰＵ６２は、スキャン画像データＳＩＤの解像度が３００ｄｐｉである場合には、行間の長さｍとして１画素を決定し、スキャン画像データＳＩＤの解像度が６００ｄｐｉである場合には、行間の長さｍとして２画素を決定する。即ち、ＣＰＵ６２は、スキャン画像データＳＩＤの解像度が高くなる程、大きい行間の長さｍを決定する。この構成によると、ＣＰＵ６２は、スキャン画像データＳＩＤの解像度に応じた適切な大きさを有する行間の長さｍを決定することができる。なお、変形例では、スキャン画像データＳＩＤの解像度に関わらず、行間の長さｍとして同じ値が採用されてもよい。
【００７２】
Ｓ４５０では、ＣＰＵ６２は、対象結合画像データと、Ｓ４３２又はＳ４３４で決定された候補再配置領域の横方向の新たな長さＷと、に基づいて、行数決定処理を実行する（後述の図１１参照）。行数決定処理では、ＣＰＵ６２は、対象結合画像（例えば図２のＣＩ１）に含まれる複数個の文字（例えば「Ａ〜Ｍ」）を候補再配置領域内に再配置する場合における行数を決定する。
【００７３】
（行数決定処理；図１１）
図１１に示されるように、Ｓ４５１では、ＣＰＵ６２は、対象結合画像（例えば図１１内のＣＩ１）の横方向の長さＩＷが、候補再配置領域の横方向の長さＷ以下であるのか否かを判断する。ＣＰＵ６２は、長さＩＷが長さＷ以下であると判断する場合（Ｓ４５１でＹＥＳ）には、Ｓ４５２において、「１」を行数として決定する。対象結合画像ＣＩ１に含まれる全ての文字「Ａ〜Ｍ」が横方向に沿って直線状に並んだ状態で、全ての文字「Ａ〜Ｍ」が候補再配置領域内に収まるからである。Ｓ４５２が終了すると、図１１の処理が終了する。
【００７４】
一方、ＣＰＵ６２は、長さＩＷが長さＷより大きいと判断する場合（Ｓ４５１でＮＯ）には、対象結合画像ＣＩ１に含まれる複数個の文字「Ａ〜Ｍ」を複数行に分断して配置する必要がある。このために、ＣＰＵ６２は、Ｓ４５３及び４５４を実行して、図４のＳ２４０で決定された複数個の分断候補位置（例えば図１１内の対象結合画像ＣＩ１に付された複数個の矢印参照）の中から、１個以上の分断候補位置を選択する。
【００７５】
Ｓ４５３では、ＣＰＵ６２は、選択長さＳＷが候補再配置領域の横方向の長さＷ以下の最大の長さになるように、複数個の分断候補位置の中から１個の分断候補位置を選択する。１個の分断候補位置も未だに選択されていない状態では、選択長さＳＷは、対象結合画像ＣＩ１の先端（即ち左端）と、選択されるべき分断候補位置と、の間の横方向の長さである。また、１個以上の分断候補位置が既に選択されている状態では、選択長さＳＷは、直近に選択された分断候補位置と、当該分断候補位置よりも後端側（即ち右側）に存在する新たに選択されるべき分断候補位置と、の間の横方向の長さである。図１１の例では、文字「Ｆ」と文字「Ｇ」との間の分断候補位置が選択される。
【００７６】
Ｓ４５４では、ＣＰＵ６２は、残存長さＲＷが候補再配置領域の横方向の長さＷ以下であるのか否かを判断する。残存長さＲＷは、直近に選択された分断候補位置と、対象結合画像の後端（即ち右端）と、の間の横方向の長さである。ＣＰＵ６２は、残存長さＲＷが長さＷよりも大きいと判断する場合（Ｓ４５４でＮＯ）には、Ｓ４５３に戻り、複数個の分断候補位置の中から。直近に選択された分断候補位置よりも後端側に存在する分断候補位置を新たに決定する。
【００７７】
一方、ＣＰＵ６２は、残存長さＲＷが長さＷ以下であると判断する場合（Ｓ４５４でＹＥＳ）には、Ｓ４５５において、選択済みの分断候補位置の数に「１」を加算することによって得られる数を行数として決定する。Ｓ４５５が終了すると、図１１の処理が終了する。
【００７８】
（再配置処理の続き；図１０）
図１０のＳ４６０では、ＣＰＵ６２は、Ｓ４６０内の数式に従って、候補再配置領域の縦方向の新たな長さＨを決定する。Ｓ４６０内の数式において、「ｍ」はＳ４４０で決定された行間の長さであり、「ｎ」はＳ４５０で決定された行数であり、「ｈ」は対象結合画像データの縦方向の長さである（図１１内の結合画像ＣＩ１のｈ参照）。
【００７９】
Ｓ４７０では、ＣＰＵ６２は、候補再配置領域のアスペクト比Ｗ／Ｈが対象目標領域のアスペクト比ＴＷ／ＴＨに近似するのか否かを判断する。具体的には、ＣＰＵ６２は、候補再配置領域のアスペクト比Ｗ／Ｈが、対象目標領域のアスペクト比ＴＷ／ＴＨに基づいて設定される所定範囲内に含まれるのか否かを判断する。上記の所定範囲は、対象目標領域のアスペクト比ＴＷ／ＴＨから値γを減算することによって得られる値と、対象目標領域のアスペクト比ＴＷ／ＴＨに値γを加算することによって得られる値と、の間の範囲である。なお、値γは、予め決められている固定値であってもよいし、ＴＷ／ＴＨに所定の係数（例えば０．０５）を乗算することによって得られる値であってもよい。
【００８０】
ＣＰＵ６２は、候補再配置領域のアスペクト比Ｗ／Ｈが対象目標領域のアスペクト比ＴＷ／ＴＨに近似しないと判断する場合（Ｓ４７０でＮＯ）には、Ｓ４３０〜Ｓ４６０の各処理を再び実行する。これにより、ＣＰＵ６２は、候補再配置領域の横方向の新たな長さＷと縦方向の新たな長さＨとを決定して、Ｓ４７０の判断を再び実行する。
【００８１】
一方、ＣＰＵ６２は、候補再配置領域のアスペクト比Ｗ／Ｈが対象目標領域のアスペクト比ＴＷ／ＴＨに近似すると判断する場合（Ｓ４７０でＹＥＳ）には、Ｓ４８０において、まず、横方向の長さＷと縦方向の長さＨとを有する候補再配置領域を再配置領域（例えば図２のＲＡ１）として決定する。そして、ＣＰＵ６２は、図１１のＳ４５３で１個以上の分断候補位置を選択済みである場合には、当該１個以上の分断候補位置で対象結合画像データを分断して、２個以上の分断画像を表わす２個以上の分断画像データを生成する。次いで、ＣＰＵ６２は、２個以上の分断画像が縦方向に沿って並ぶように、２個以上の分断画像データを再配置領域内に配置する。この際に、ＣＰＵ６２は、縦方向に沿って隣接する２個の分断画像の間にＳ４４０で決定された行間が形成されるように、２個の分断画像データを配置する。この結果、例えば、図２のＳ４００に示されるように、複数個の文字「Ａ」〜「Ｍ」が再配置領域ＲＡ１内に再配置されている再配置画像ＲＩ１を表わす再配置画像データが生成される。再配置画像ＲＩ１内の複数個の文字「Ａ」〜「Ｍ」のサイズは、スキャン画像ＳＩ内の複数個の文字「Ａ」〜「Ｍ」のサイズに等しい。
【００８２】
Ｓ４９０では、ＣＰＵ６２は、全てのテキスト領域ＯＡ１，ＯＡ２について、Ｓ４１０〜Ｓ４８０の処理が終了したのか否かを判断する。ＣＰＵ６２は、処理が終了していないと判断する場合（Ｓ４９０でＮＯ）には、Ｓ４１０において、未処理のテキスト領域（例えばＯＡ２）を処理対象として決定して、Ｓ４１２以降の各処理を再び実行する。この結果、例えば、図２のＳ４００に示されるように、複数個の文字「Ｎ」〜「Ｗ」が再配置領域ＲＡ２内に再配置されている再配置画像ＲＩ２を表わす再配置画像データが生成される。そして、ＣＰＵ６２は、処理が終了したと判断する場合（Ｓ４９０でＹＥＳ）には、図１０の処理を終了する。
【００８３】
（ケースＡ；図１２）
続いて、図１２を参照して、図２のＳ４００の再配置処理（図１０参照）とＳ５００の拡大処理について、具体的なケースＡを説明する。（Ａ１）に示されるように、候補再配置領域の横方向の長さＷの初期値、縦方向の長さＨの初期値として、それぞれ、対象テキスト領域ＯＡ１の横方向の長さＯＰｘ、縦方向の長さＯＰｙが設定される（図１０のＳ４２０）。本ケースでは、Ｗ／ＨがＴＷ／ＴＨ未満である。即ち、対象目標領域ＴＡ１は、対象テキスト領域ＯＡ１と比べると、横長の形状を有する。この場合、候補再配置領域を横長の形状にしていけば、候補再配置領域のアスペクト比が対象目標領域ＴＡ１のアスペクト比に近づくことになる。従って、（Ａ２）に示されるように、候補再配置領域の横方向の現在の長さＷに固定値βが加算されて、候補再配置領域の横方向の新たな長さＷが決定される（Ｓ４３２）。この場合、行数として、文字列「Ａ〜Ｅ」と文字列「Ｆ〜Ｊ」と文字列「Ｋ〜Ｍ」とを含む３行が決定される（Ｓ４５０）。そして、候補再配置領域の縦方向の新たな長さＨが決定される（Ｓ４６０）。
【００８４】
（Ａ２）の状態では、候補再配置領域のアスペクト比Ｗ／Ｈが対象目標領域ＴＡ１のアスペクト比ＴＷ／ＴＨに近似しないので（Ｓ４７０でＮＯ）、（Ａ３）に示されるように、候補再配置領域の横方向の現在の長さＷに固定値βが再び加算されて、候補再配置領域の横方向の新たな長さＷが再び決定される（Ｓ４３２）。この場合、行数として、文字列「Ａ〜Ｆ」と文字列「Ｇ〜Ｌ」と文字列「Ｍ」とを含む３行が決定される（Ｓ４５０）。即ち、候補再配置領域の横方向の長さＷが大きくなったことに起因して、候補再配置領域内の１行の文字列を構成することが可能な最大の文字数が増える。そして、候補再配置領域の縦方向の新たな長さＨが決定される（Ｓ４６０）。
【００８５】
（Ａ３）の状態では、候補再配置領域のアスペクト比Ｗ／Ｈが対象目標領域ＴＡ１のアスペクト比ＴＷ／ＴＨに近似する（Ｓ４７０でＹＥＳ）。従って、（Ａ４）に示されるように、（Ａ３）の候補再配置領域が再配置領域ＲＡ１として決定される（Ｓ４８０）。この場合、再配置領域ＲＡ１のアスペクト比Ｗ／Ｈは、通常、対象テキスト領域ＯＡのアスペクト比よりも対象目標領域ＴＡ１のアスペクト比ＴＷ／ＴＨに近い。次いで、対象結合画像ＣＩ１を表わす対象結合画像データが分断されて、３個の分断画像ＤＩ１〜ＤＩ３を表わす３個の分断画像データが生成される（Ｓ４８０）。そして、３個の分断画像ＤＩ１〜ＤＩ３が縦方向に沿って並び、かつ、隣接する２個の分断画像の間に長さｍを有する行間が形成されるように、３個の分断画像データが再配置領域ＲＡ１内に配置される。この結果、再配置画像ＲＩ１を表わす再配置画像データが生成される（Ｓ４８０）。
【００８６】
次いで、再配置画像データが拡大されて、拡大画像を表わす拡大画像データが生成される（図２のＳ５００）。具体的には、再配置画像ＲＩ１の対角線が伸びる方向に再配置画像ＲＩ１が拡大され、その結果、拡大画像を表わす拡大画像データが生成される。例えば、再配置領域ＲＡ１のアスペクト比Ｗ／Ｈが対象目標領域ＴＡ１のアスペクト比ＴＷ／ＴＨに等しい場合には、拡大画像の４個の辺の全てが、対象目標領域ＴＡ１の４個の辺に一致する。即ち、この場合、拡大画像のサイズが目標領域ＴＡ１のサイズに一致する。ただし、例えば、再配置領域ＲＡ１のアスペクト比Ｗ／Ｈが対象目標領域ＴＡ１のアスペクト比ＴＷ／ＴＨに等しくない場合には、再配置画像ＲＩ１を徐々に拡大していく過程において、拡大画像のいずれかの辺が対象目標領域ＴＡ１のいずれかの辺に一致した段階で、再配置画像ＲＩ１の拡大が終了する。即ち、この場合、拡大画像のサイズが目標領域ＴＡ１のサイズよりも小さくなる。
【００８７】
続いて、（Ａ５）に示されるように、再配置画像ＲＩ１を表わす再配置画像データが拡大された拡大画像データが、スキャン画像データＳＩＤの目標領域ＴＡ１内に上書きされる（図２のＳ５００）。同様に、図２の再配置画像ＲＩ２を表わす再配置画像データが拡大された拡大画像を表わす拡大画像データが、スキャン画像データＳＩＤの目標領域ＴＡ２内に上書きされる。この結果、処理済み画像ＰＩを表わす処理済み画像データＰＩＤが完成する。
【００８８】
上述したように、本実施例では、図１０のＳ４４０において、比較的に小さい行間の長さｍ（例えば１画素、２画素等）が決定され、当該行間の長さｍが再配置画像ＲＩ１で採用される。従って、再配置画像ＲＩ１内の行間の長さｍは、通常、スキャン画像ＳＩ内の行間の長さよりも小さい。この結果、再配置画像ＲＩ１が拡大されて得られる処理済み画像ＰＩ内の複数個の文字の縦方向の長さ（例えば文字「Ａ」の縦方向の長さ）に対する行間の長さの比は、スキャン画像ＳＩ内の複数個の文字の縦方向の長さに対する行間の長さの比よりも小さくなる。このように、本実施例では、処理済み画像ＰＩ内の行間の長さを相対的に小さくすることができ、その分、処理済み画像ＰＩ内において、各文字を適切に拡大することができる。
【００８９】
なお、図１０のＳ４１２において、対象テキスト領域のアスペクト比と対象目標領域とのアスペクト比とが等しいと判断される場合には、Ｓ４１４において、対象テキスト領域を表わす部分画像データが取得される。この場合、図２のＳ５００では、当該部分画像データが拡大されて、対象目標領域のサイズに一致する拡大画像を表わす拡大画像データが生成される。そして、当該拡大画像データが、スキャン画像データＳＩＤの対象目標領域（例えばＴＡ１）に上書きされる。
【００９０】
（ケースＢ；図１３）
続いて、図１３を参照して、ケースＢを説明する。（Ｂ１）に示されるように、本ケースでは、比Ｗ／Ｈが比ＴＷ／ＴＨよりも大きい。即ち、対象目標領域ＴＡ１は、対象テキスト領域ＯＡ１と比べると、縦長の形状を有する。この場合、候補再配置領域を縦長の形状にしていけば、候補再配置領域のアスペクト比が対象目標領域ＴＡ１のアスペクト比に近づくことになる。従って、（Ｂ２）に示されるように、候補再配置領域の横方向の現在の長さＷから固定値βが減算されて、候補再配置領域の横方向の新たな長さＷが決定される（Ｓ４３４）。この場合、行数として、文字列「Ａ〜Ｄ」と文字列「Ｅ〜Ｈ」と文字列「Ｉ〜Ｌ」と文字列「Ｍ」とを含む４行と決定される（Ｓ４５０）。即ち、この場合、候補再配置領域の横方向の長さＷが小さくなったことに起因して、候補再配置領域内の１行の文字列を構成することが可能な最大の文字数が減る。そして、候補再配置領域の縦方向の新たな長さＨが決定される（Ｓ４６０）。
【００９１】
（Ｂ２）の状態では、候補再配置領域のアスペクト比Ｗ／Ｈが対象目標領域ＴＡ１のアスペクト比ＴＷ／ＴＨに近似する（Ｓ４７０でＹＥＳ）。従って、（Ｂ３）に示されるように、（Ｂ２）の候補再配置領域が再配置領域ＲＡ１として決定される（Ｓ４８０）。次いで、対象結合画像ＣＩ１を表わす対象結合画像データが分断されて、４個の分断画像ＤＩ４〜ＤＩ７を表わす４個の分断画像データが生成される（Ｓ４８０）。そして、図１２のケースＡと同様に、再配置画像ＲＩ１を表わす再配置画像データが生成され（Ｓ４８０）、（Ｂ４）に示されるように、再配置画像データが拡大された拡大画像データが生成され、当該拡大画像データがスキャン画像データＳＩＤの目標領域ＴＡ１内に上書きされる（図２のＳ５００）。この結果、処理済み画像ＰＩを表わす処理済み画像データＰＩＤが完成する。
【００９２】
（第１実施例の効果）
本実施例によると、図８及び図９に示されるように、画像処理サーバ５０は、テキスト領域ＯＡ１と余白領域ＢＡ１との間の横方向の２個の余白の長さＰｘ１，Ｐｘ２と、縦方向の２個の余白の長さＰｙ１，Ｐｙ２と、に基づいて、目標領域ＴＡ１（図２のＳ３００参照）の位置を決定することができる。また、図９に示されるように、画像処理サーバ５０は、横方向の２個の余白の長さＰｘ１，Ｐｘ２と、縦方向の２個の余白の長さＰｙ１，Ｐｙ２と、に基づいて、テキスト領域ＯＡ１のアスペクト比とは異なるアスペクト比を有する目標領域ＴＡ１のアスペクト比及びサイズを決定することができる。このために、画像処理サーバ５０は、スキャン画像ＳＩ内の複数個のオブジェクトＯＢ１〜ＯＢ３の位置関係がほぼ維持されるように、処理済み画像ＰＩ内の各目標領域ＴＡ１，ＴＡ２（図２のＳ３００参照）を適切に決定することができる。また、図５に示されるように、画像処理サーバ５０は、２個以上の目標領域ＴＡ１，ＴＡ２が重複しないように、各目標領域ＴＡ１，ＴＡ２を決定することができる（図５のＳ３７０，Ｓ３７２，Ｓ３８０，Ｓ３８２参照）。従って、画像処理サーバ５０は、スキャン画像ＳＩ内の複数個のオブジェクトＯＢ１〜ＯＢ３の位置関係をほぼ維持しながら、各テキストオブジェクトＯＢ１，ＯＢ２が拡大されて表現されている処理済み画像ＰＩを表わす処理済み画像データＰＩＤを適切に生成することができる。
【００９３】
また、本実施例によると、図１０〜図１３に示されるように、画像処理サーバ５０は、目標領域ＴＡ１を決定した後に、目標領域ＴＡ１のアスペクト比に基づいて、再配置領域ＲＡ１を決定する。従って、画像処理サーバ５０は、目標領域ＴＡ１のアスペクト比に近似するアスペクト比を有する再配置領域ＲＡ１を決定することができる。このために、画像処理サーバ５０は、スキャン画像ＳＩ内の複数個の文字が再配置されるべき目標領域ＴＡ１が決定されている状態で、再配置領域ＲＡ１を適切に決定することができ、この結果、再配置領域ＲＡ１内に複数個の文字を再配置して、再配置画像ＲＩ１（図１２及び図１３参照）を表わす再配置画像データを適切に生成することができる。そして、再配置領域ＲＡ１のアスペクト比が目標領域ＴＡ１のアスペクト比に近似するので、画像処理サーバ５０は、目標領域ＴＡ１のサイズに近似するサイズまで再配置画像ＲＩ１を適切に拡大することができる。この結果、画像処理サーバ５０は、目標領域ＴＡ１内に複数個の文字が拡大されて表現されている処理済み画像ＰＩを表わす処理済み画像データＰＩＤを適切に生成することができる。
【００９４】
（対応関係）
画像処理サーバ５０が、「画像処理装置」の一例である。スキャン画像ＳＩ、テキストオブジェクトＯＢ１，ＯＢ２、写真オブジェクトＯＢ３が、それぞれ、「原画像」、「２個以上の特定オブジェクト」、「他のオブジェクト」の一例である。オブジェクト領域ＯＡ１，ＯＡ２、余白領域ＢＡ１，ＢＡ２が、それぞれ、「２個以上の特定オブジェクト領域」、「２個以上のスペース領域」の一例である。
【００９５】
横方向、縦方向が、それぞれ、「第１方向」、「第２方向」の一例である。横方向の左側、右側が、それぞれ、「第１方向の第１側」、「第１方向の第２側」の一例である。縦方向の上側、下側が、それぞれ、「第２方向の第１側」、「第２方向の第２側」の一例である。図６のＳ３１２の拡大で利用される左上向きが、「最初の拡大に利用されるべき向き」の一例である。
【００９６】
図８及び図９において、横方向の２個の余白の長さＰｘ１，Ｐｘ２、縦方向の２個の余白の長さＰｙ１，Ｐｙ２が、それぞれ、「第１方向に沿った２個の余白の長さ」、「第２方向に沿った２個の余白の長さ」の一例である。横方向の差分長さ（即ちｄｘ１＋ｄｘ２（図９参照））、縦方向の差分長さ（即ちｄｙ１＋ｄｙ２）が、それぞれ、「第１の差分長さ」、「第２の差分長さ」の一例である。図７のＳ３５４のルートＥＲ、ＣＰｘ、ＣＰｙが、それぞれ、「目標値」、「第１の候補長さ」、「第２の候補長さ」の一例である。図７のＳ３５６において、ＣＰｘ≦ＢＰｘかつＣＰｙ≦ＢＰｙを満たす場合が、「特定の条件が満たされる場合」の一例である。図５のＳ３８０の所定値（例えば１．４）が、「目標倍率」の一例である。
【００９７】
（第２実施例；図１４）
本実施例では、図７のＳ３６０の処理の内容が第１実施例とは異なる。画像処理サーバ５０のＣＰＵ６２は、図９の手法に代えて、図１４の手法を利用して、拡大領域ＣＡ（即ち後の目標領域ＴＡ１等）を決定する。図１４内の各矩形は、図９内の各矩形と同様である。ＣＰＵ６２は、図１４内の数式（１）〜（６）を利用して、４個の対象長さｄｘ１，ｄｘ２，ｄｙ１，ｄｙ２を算出することによって、変形拡大領域ＣＡの位置、アスペクト比、及び、サイズを決定する。
【００９８】
数式（１）は、各対象長さｄｘ１，ｄｘ２，ｄｙ１，ｄｙ２を算出するための数式を示す。ここで、Ｅｘは、テキスト領域ＯＡ１の横方向の長さＯＰｘに対する拡大領域ＣＡの横方向の長さ（即ちＯＰｘ＋ｄｘ１＋ｄｘ２）の倍率（以下では「横方向の拡大率Ｅｘ」と呼ぶ）である。また、Ｅｙは、テキスト領域ＯＡ１の縦方向の長さＯＰｙに対する拡大領域ＣＡの縦方向の長さ（即ちＯＰｙ＋ｄｙ１＋ｄｙ２）の倍率（以下では「縦方向の拡大率Ｅｙ」と呼ぶ）である。数式（２）は、テキスト領域ＯＡ１に対する拡大領域ＣＡの面積の拡大率ＥＲ（図５のＳ３４０参照）が、横方向の拡大率Ｅｘと縦方向の拡大率Ｅｙとを乗算することによって得られることを示す。数式（３）は、横方向の拡大率Ｅｘと縦方向の拡大率Ｅｙとの比が、横方向の２個の余白の長さＰｘ１，Ｐｘ２の和と縦方向の２個の余白の長さＰｙ１，Ｐｙ２の和との比に等しいことを示す。数式（４）は、数式（２）のＥｙを数式（３）に代入することによって得られる数式を示す。数式（５）は、数式（４）を展開することによって得られる数式を示す。数式（６）は、数式（５）に基づいて算出される横方向の拡大率Ｅｘ及び縦方向の拡大率Ｅｙを示す。そして、数式（６）で得られる横方向の拡大率Ｅｘ及び縦方向の拡大率Ｅｙを数式（１）に代入すれば、４個の対象長さｄｘ１，ｄｘ２，ｄｙ１，ｄｙ２を算出することができる。
【００９９】
図１４内の数式（１）〜（６）によると、以下の変形拡大領域ＣＡが得られる。数式（３）に示されるように、横方向の２個の余白の長さＰｘ１，Ｐｘ２の和が、縦方向の２個の余白の長さＰｙ１，Ｐｙ２の和よりも大きい場合に、横方向の拡大率Ｅｘが縦方向の拡大率Ｅｙよりも大きくなるように、変形拡大領域ＣＡのアスペクト比が決定される。また、横方向の２個の余白の長さＰｘ１，Ｐｘ２の和が、縦方向の２個の余白の長さＰｙ１，Ｐｙ２の和よりも小さい場合に、横方向の拡大率Ｅｘが縦方向の拡大率Ｅｙよりも小さくなるように、変形拡大領域ＣＡのアスペクト比が決定される。このように、横方向の２個の余白の長さＰｘ１，Ｐｘ２と、縦方向の２個の余白の長さＰｙ１，Ｐｙ２と、に基づいて、テキスト領域ＯＡ１のアスペクト比とは異なる変形拡大領域のアスペクト比と、変形拡大領域のサイズ（即ち横方向の長さ及び縦方向の長さ）と、変形拡大領域の位置と、が決定される。そして、変形拡大領域が目標領域として決定され得る（図５のＳ３７２，Ｓ３８２参照）。
【０１００】
本実施例によっても、画像処理サーバ５０は、テキスト領域（例えばＯＡ１）と余白領域（例えばＢＡ１）との間の横方向の２個の余白の長さＰｘ１，Ｐｘ２と、縦方向の２個の余白の長さＰｙ１，Ｐｙ２と、に基づいて、目標領域（例えばＴＡ１）を適切に決定することができる。
【０１０１】
以上、本発明の具体例を詳細に説明したが、これらは例示にすぎず、特許請求の範囲を限定するものではない。特許請求の範囲に記載の技術には以上に例示した具体例を様々に変形、変更したものが含まれる。上記の実施例の変形例を以下に列挙する。
【０１０２】
（変形例１）上記の実施例では、画像処理サーバ５０が、スキャン画像データＳＩＤに対して画像処理（即ち図２のＳ１００〜Ｓ５００の各処理）を実行して処理済み画像データＰＩＤを生成し、当該処理済み画像データＰＩＤを多機能機１０に送信する（Ｓ６００）。これに代えて、多機能機１０が、スキャン画像データＳＩＤに対して画像処理を実行して処理済み画像データＰＩＤを生成してもよい（即ち画像処理サーバ５０が存在しなくてもよい）。本変形例では、多機能機１０が、「画像処理装置」の一例である。
【０１０３】
（変形例２）画像処理サーバ５０によって実行される画像処理の対象は、スキャン画像データＳＩＤでなくてもよく、文書作成ソフト、表編集ソフト、描画作成ソフト等によって生成されるデータであってもよい。即ち、「原画像データ」は、スキャン対象シートのスキャンによって得られるデータに限られず、他の種類のデータであってもよい。
【０１０４】
（変形例３）上記の実施例では、画像処理サーバ５０は、文字を含むテキストオブジェクトＯＢ１，ＯＢ２が拡大されて表現されている処理済み画像ＰＩを表わす処理済み画像データＰＩＤを生成する。これに代えて、画像処理サーバ５０は、写真オブジェクトＯＢ３が拡大されて表現されている処理済み画像を表わす処理済み画像データを生成してもよい。また、画像処理サーバ５０は、テキストオブジェクト及び写真オブジェクトとは異なるオブジェクト（例えばグラフ、図形等を含むオブジェクト）が拡大されて表現されている処理済み画像を表わす処理済み画像データを生成してもよい。即ち、「特定オブジェクト」は、テキストオブジェクトに限られず、他の種類のオブジェクトであってもよい。
【０１０５】
（変形例４）処理済み画像データＰＩＤは、多機能機１０での印刷に利用されるデータでなくてもよく、例えば、ディスプレイでの表示に利用されるデータであってもよい。一般的に言うと、処理済み画像データＰＩＤによって表わされる処理済み画像ＰＩは、出力（印刷、表示等）のための画像であればよい。
【０１０６】
（変形例５）上記の実施例では、スキャン画像ＳＩは、横方向の左側から右側に向かってセンテンスが進むと共に、縦方向の上側から下側に向かってセンテンスが進む文字列（即ち横書きの文字列）を含む。これに代えて、スキャン画像ＳＩは、縦方向の上側から下側に向かってセンテンスが進むと共に、横方向の右側から左側に向かってセンテンスが進む文字列（即ち縦書きの文字列）を含んでいてもよい。この場合、画像処理サーバ５０は、図３のＳ１６０において、横方向の射影ヒストグラムに基づいて、通常、帯状領域を決定することができない。このために、画像処理サーバ５０は、さらに、縦方向の射影ヒストグラムを生成して、帯状領域を決定する。その後、画像処理サーバ５０は、横方向の代わりに縦方向を利用し、縦方向の代わりに横方向を利用して、上記の実施例と同様の処理を実行すればよい。本変形例では、縦方向、横方向が、それぞれ、「第１方向」、「第２方向」の一例である。縦方向の上側、下側が、それぞれ、「第１方向の第１側」、「第１方向の第２側」の一例である。横方向の右側、左側が、それぞれ、「第２方向の第１側」、「第２方向の第２側」の一例である。そして、図６の余白領域決定処理では、センテンスが開始される上側及び右側の中間である右上向きが、最初の拡大に利用される。
【０１０７】
（変形例６）上記の実施例では、例えば、図１２に示されるように、画像処理サーバ５０は、スキャン画像ＳＩ内の３行の文字列「Ａ〜Ｍ」が結合された結合文字列「Ａ〜Ｍ」を含む結合画像ＣＩ１を表わす結合画像データを生成し、当該結合画像データを分断して、再配置画像ＲＩ１を表わす再配置画像データを生成する。これに代えて、画像処理サーバ５０は、結合画像データを生成せずに、再配置画像データを生成してもよい。例えば、画像処理サーバ５０は、スキャン画像ＳＩ内の１個の文字毎に、当該文字を表わす部分画像データを取得して、当該部分画像データを再配置領域ＲＡ１内に再配置して、再配置画像ＲＩ１を表わす再配置画像データを生成してもよい。
【０１０８】
（変形例７）上記の実施例では、画像処理サーバ５０のＣＰＵ６２がプログラム６６（即ちソフトウェア）を実行することによって、図２〜図１４の各処理が実現される。これに代えて、図２〜図１４の各処理のうちの少なくとも１つの処理は、論理回路等のハードウェアによって実現されてもよい。
【０１０９】
また、本明細書または図面に説明した技術要素は、単独であるいは各種の組合せによって技術的有用性を発揮するものであり、出願時請求項記載の組合せに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。
【符号の説明】
【０１１０】
２：通信システム、４：インターネット、１０：多機能機、５０：画像処理サーバ、５２：ネットワークインターフェース、６０：制御部、６２：ＣＰＵ、６４：メモリ、６６：プログラム、ＳＩ：スキャン画像、ＰＩ：処理済み画像、ＯＢ１，ＯＢ２：テキストオブジェクト、ＯＢ３：写真オブジェクト、ＯＡ１，ＯＡ２：テキストオブジェクト領域（テキスト領域）、ＯＡ３：写真オブジェクト領域、ＬＡ１１〜ＬＡ１３，ＬＡ２１，ＬＡ２２：帯状領域、ＢＡ１，ＢＡ２：余白領域、ＣＡ：拡大領域、ＴＡ１，ＴＡ２：目標領域、ＲＡ１，ＲＡ２：再配置領域、ＳＩＤ：スキャン画像データ、ＣＩ１，ＣＩ２：結合画像、ＤＩ１〜ＤＩ７：分断画像、ＲＩ１，ＲＩ２：再配置画像、ＰＩＤ：処理済み画像データ
【図１】
2015170128.tif 000003
【図２】
2015170128.tif 000004
【図３】
2015170128.tif 000005
【図４】
2015170128.tif 000006
【図５】
2015170128.tif 000007
【図６】
2015170128.tif 000008
【図７】
2015170128.tif 000009
【図８】
2015170128.tif 000010
【図９】
2015170128.tif 000011
【図１０】
2015170128.tif 000012
【図１１】
2015170128.tif 000013
【図１２】
2015170128.tif 000014
【図１３】
2015170128.tif 000015
【図１４】
2015170128.tif 000016