(57)【特許請求の範囲】
【請求項１】
画像処理装置であって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得部と、
前記読取画像データを用いて、前記読取画像内に含まれる複数個のマーカによってそれぞれ指定される前記読取画像内の一部の領域である複数個の指定画像を抽出する抽出部と、
前記複数個の指定画像を表す複数個の指定画像データを用いて、前記複数個の指定画像が拡大された複数個の拡大画像を表す複数個の拡大画像データを生成する拡大画像生成部と、
１個の出力画像内における前記複数個の拡大画像の配置を決定する配置決定部と、
前記複数個の拡大画像データを用いて、前記配置決定部によって決定される配置に従って、前記複数個の拡大画像を含む１個の前記出力画像を表す出力画像データを生成する出力画像生成部と、
前記出力画像データを出力する出力部と、
を備え、
１個の前記出力画像は、１個の印刷媒体に印刷するための画像であり、
前記複数個の指定画像が特定の拡大率より大きな拡大率で拡大された前記複数個の拡大画像を１個の前記出力画像に配置できる場合には、
前記配置決定部は、前記複数個の拡大画像を１個の前記出力画像内に配置し、
前記出力画像生成部は、１個の前記出力画像を表す１個の前記出力画像データを生成し、
前記複数個の指定画像が特定の拡大率より大きな拡大率で拡大された前記複数個の拡大画像を１個の前記出力画像に配置できない場合には、
前記配置決定部は、前記複数個の拡大画像を複数個の前記出力画像内に配置し、
前記出力画像生成部は、複数個の前記出力画像を表す複数個の前記出力画像データを生成する、画像処理装置。
【請求項２】
画像処理装置であって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得部と、
前記読取画像データを用いて、前記読取画像内に含まれる複数個のマーカによってそれぞれ指定される前記読取画像内の一部の領域である複数個の指定画像を抽出する抽出部と、
前記複数個の指定画像を表す複数個の指定画像データを用いて、前記複数個の指定画像が拡大された複数個の拡大画像を表す複数個の拡大画像データを生成する拡大画像生成部と、
１個の出力画像内における前記複数個の拡大画像の配置を決定する配置決定部と、
前記複数個の拡大画像データを用いて、前記配置決定部によって決定される配置に従って、前記複数個の拡大画像を含む１個の前記出力画像を表す出力画像データを生成する出力画像生成部と、
前記出力画像を用紙に印刷するための印刷実行部に前記出力画像データを出力する出力部と、
前記用紙のサイズを特定する特定部と、
を備え、
前記拡大画像生成部は、前記用紙のサイズに基づいて決定される生成すべき前記出力画像の第１方向のサイズと、生成すべき第１の拡大画像の前記第１方向のサイズと、が一致するように、前記第１の拡大画像を表す第１の拡大画像データを生成する、画像処理装置。
【請求項３】
画像処理装置であって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得部と、
前記読取画像データを用いて、前記読取画像内に含まれる複数個のマーカによってそれぞれ指定される前記読取画像内の一部の領域である複数個の指定画像を抽出する抽出部と、
前記指定画像内のオブジェクトが文字であるか否かを判定するオブジェクト判定部と、
前記複数個の指定画像を表す複数個の指定画像データを用いて、前記複数個の指定画像が拡大された複数個の拡大画像を表す複数個の拡大画像データを生成する拡大画像生成部と、
１個の出力画像内における前記複数個の拡大画像の配置を決定する配置決定部と、
前記複数個の拡大画像データを用いて、前記配置決定部によって決定される配置に従って、前記複数個の拡大画像を含む１個の前記出力画像を表す出力画像データを生成する出力画像生成部と、
前記出力画像データを出力する出力部と、
を備え、
前記拡大画像生成部は、
前記指定画像に含まれるオブジェクトが文字である場合には、第１の手法を用いた拡大処理を実行して、前記拡大画像データを生成し、
前記指定画像に含まれるオブジェクトが文字でない場合には、前記第１の手法とは異なる第２の手法を用いた拡大処理を実行して、前記拡大画像データを生成する、画像処理装置。
【請求項４】
画像処理装置であって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得部と、
前記読取画像データを用いて、前記読取画像内に含まれる複数個の囲み線によってそれぞれ指定される前記読取画像内の一部の領域である複数個の指定画像を抽出する抽出部であって、前記囲み線は前記読取画像内の一部の領域を囲む線であり、前記囲み線に囲まれた領域が前記指定画像として抽出される、前記抽出部と、
前記複数個の指定画像を表す複数個の指定画像データを用いて、前記複数個の指定画像が拡大された複数個の拡大画像を表す複数個の拡大画像データを生成する拡大画像生成部と、
１個の出力画像内における前記複数個の拡大画像の配置を決定する配置決定部と、
前記複数個の拡大画像データを用いて、前記配置決定部によって決定される配置に従って、前記複数個の拡大画像を含む１個の前記出力画像を表す出力画像データを生成する出力画像生成部と、
前記出力画像データを出力する出力部と、
を備える、画像処理装置。
【請求項５】
請求項１〜４のいずれかに記載の画像処理装置であって、
前記拡大画像生成部は、第１の指定画像を第１の拡大率で拡大することによって、第１の拡大画像データを生成し、第２の指定画像を前記第１の拡大率とは異なる第２の拡大率で拡大することによって、第２の拡大画像データを生成する、画像処理装置。
【請求項６】
請求項１〜５のいずれかに記載の画像処理装置であって、さらに、
前記複数個の指定画像のそれぞれについて、前記指定画像を回転することによって、前記指定画像が前記出力画像に配置される際の前記指定画像の向きを変更するか否かを判断する回転判断部を備え、
前記拡大画像生成部は、
回転すると判断された前記指定画像を表す前記指定画像データに対して回転処理と拡大処理とを実行して、前記拡大画像データを生成し
回転しないと判断された前記指定画像を表す前記指定画像データに対して前記回転処理を実行せずに前記拡大処理を実行して、前記拡大画像データを生成する、画像処理装置。
【請求項７】
請求項１〜６のいずれかに記載の画像処理装置であって、
前記配置決定部は、
前記複数個の指定画像のサイズに基づいて、前記出力画像内に、前記複数個の拡大画像が配置される配置順序を決定し、
前記配置順序に従って、前記複数個の拡大画像が出力画像内に配置される位置を決定する、画像処理装置。
【請求項８】
画像処理装置であって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得部と、
前記読取画像データを用いて、前記読取画像内に含まれるマーカによって指定される前記読取画像内の一部の領域である指定画像を抽出する抽出部と、
前記指定画像の形状に基づいて前記指定画像を回転するか否かを判断する回転判断部と、
前記指定画像を表す指定画像データを用いて、前記指定画像が拡大された拡大画像を表す拡大画像データを生成する拡大画像生成部であって、前記指定画像を回転すると判断された場合には、前記指定画像データに対して回転処理と拡大処理とを実行して、前記拡大画像データを生成し、前記指定画像を回転しないと判断された場合には、前記指定画像を表す前記指定画像データに対して前記回転処理を実行せずに前記拡大処理を実行して、前記拡大画像データを生成する、前記拡大画像生成部と、
前記拡大画像データを用いて、前記拡大画像を含む出力画像を表す出力画像データを生成する出力画像生成部と、
前記出力画像を用紙に印刷するための印刷実行部に前記出力画像データを出力する出力部と、
前記用紙のサイズを特定する特定部と、
を備え、
前記拡大画像生成部は、前記用紙のサイズに基づいて決定される生成すべき前記出力画像の第１方向のサイズと、生成すべき第１の拡大画像の前記第１方向のサイズと、が一致するように、前記第１の拡大画像を表す第１の拡大画像データを生成する、画像処理装置。
【請求項９】
画像処理装置であって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得部と、
前記読取画像データを用いて、前記読取画像内に含まれるマーカによって指定される前記読取画像内の一部の領域である指定画像を抽出する抽出部と、
前記指定画像内のオブジェクトが文字であるか否かを判定するオブジェクト判定部と、
前記指定画像の形状に基づいて前記指定画像を回転するか否かを判断する回転判断部と、
前記指定画像を表す指定画像データを用いて、前記指定画像が拡大された拡大画像を表す拡大画像データを生成する拡大画像生成部であって、前記指定画像を回転すると判断された場合には、前記指定画像データに対して回転処理と拡大処理とを実行して、前記拡大画像データを生成し、前記指定画像を回転しないと判断された場合には、前記指定画像を表す前記指定画像データに対して前記回転処理を実行せずに前記拡大処理を実行して、前記拡大画像データを生成する、前記拡大画像生成部と、
前記拡大画像データを用いて、前記拡大画像を含む出力画像を表す出力画像データを生成する出力画像生成部と、
前記出力画像データを出力する出力部と、
を備え、
前記拡大画像生成部は、
前記指定画像に含まれるオブジェクトが文字である場合には、第１の手法を用いた拡大処理を実行して、前記拡大画像データを生成し、
前記指定画像に含まれるオブジェクトが文字でない場合には、前記第１の手法とは異なる第２の手法を用いた拡大処理を実行して、前記拡大画像データを生成する、画像処理装置。
【請求項１０】
画像処理装置であって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得部と、
前記読取画像データを用いて、前記読取画像内に含まれる囲み線によって指定される前記読取画像内の一部の領域である指定画像を抽出する抽出部であって、前記囲み線は前記読取画像内の一部の領域を囲む線であり、前記囲み線に囲まれた領域が前記指定画像として抽出される、前記抽出部と、
前記指定画像の形状に基づいて前記指定画像を回転するか否かを判断する回転判断部と、
前記指定画像を表す指定画像データを用いて、前記指定画像が拡大された拡大画像を表す拡大画像データを生成する拡大画像生成部であって、前記指定画像を回転すると判断された場合には、前記指定画像データに対して回転処理と拡大処理とを実行して、前記拡大画像データを生成し、前記指定画像を回転しないと判断された場合には、前記指定画像を表す前記指定画像データに対して前記回転処理を実行せずに前記拡大処理を実行して、前記拡大画像データを生成する、前記拡大画像生成部と、
前記拡大画像データを用いて、前記拡大画像を含む出力画像を表す出力画像データを生成する出力画像生成部と、
前記出力画像データを出力する出力部と、
を備える、画像処理装置。
【請求項１１】
請求項８〜１０のいずれかに記載の画像処理装置であって、さらに、
前記指定画像内のオブジェクトが文字であるか否かを判定するオブジェクト判定部を備え、
前記回転判断部は、前記指定画像内のオブジェクトが文字である場合には、前記指定画像の形状に拘わらずに、前記指定画像内の文字が特定の方向を向くように、前記指定画像を回転するか否かを判断する、画像処理装置。
【請求項１２】
請求項２または８に記載の画像処理装置であって、
前記拡大画像生成部は、
前記出力画像のうち、前記第１の拡大画像が配置される領域を除いた領域の第２方向のサイズと、生成すべき第２の拡大画像の前記第２方向のサイズと、が一致するように、前記第２の拡大画像を表す第２の拡大画像データを生成する、画像処理装置。
【請求項１３】
コンピュータプログラムであって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得機能と、
前記読取画像データを用いて、前記読取画像内に含まれる複数個のマーカによってそれぞれ指定される前記読取画像内の一部の領域である複数個の指定画像を抽出する抽出機能と、
前記複数個の指定画像を表す複数個の指定画像データを用いて、前記複数個の指定画像が拡大された複数個の拡大画像を表す複数個の拡大画像データを生成する拡大画像生成機能と、
１個の出力画像内における前記複数個の拡大画像の配置を決定する配置決定機能と、
前記複数個の拡大画像データを用いて、前記配置決定機能によって決定される配置に従って、前記複数個の拡大画像を含む１個の前記出力画像を表す出力画像データを生成する出力画像生成機能と、
前記出力画像データを出力する出力機能と、
をコンピュータに実現させ、
１個の前記出力画像は、１個の印刷媒体に印刷するための画像であり、
前記複数個の指定画像が特定の拡大率より大きな拡大率で拡大された前記複数個の拡大画像を１個の前記出力画像に配置できる場合には、
前記配置決定機能は、前記複数個の拡大画像を１個の前記出力画像内に配置し、
前記出力画像生成機能は、１個の前記出力画像を表す１個の前記出力画像データを生成し、
前記複数個の指定画像が特定の拡大率より大きな拡大率で拡大された前記複数個の拡大画像を１個の前記出力画像に配置できない場合には、
前記配置決定機能は、前記複数個の拡大画像を複数個の前記出力画像内に配置し、
前記出力画像生成機能は、複数個の前記出力画像を表す複数個の前記出力画像データを生成するコンピュータプログラム。
【請求項１４】
コンピュータプログラムであって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得機能と、
前記読取画像データを用いて、前記読取画像内に含まれる複数個のマーカによってそれぞれ指定される前記読取画像内の一部の領域である複数個の指定画像を抽出する抽出機能と、
前記複数個の指定画像を表す複数個の指定画像データを用いて、前記複数個の指定画像が拡大された複数個の拡大画像を表す複数個の拡大画像データを生成する拡大画像生成機能と、
１個の出力画像内における前記複数個の拡大画像の配置を決定する配置決定機能と、
前記複数個の拡大画像データを用いて、前記配置決定機能によって決定される配置に従って、前記複数個の拡大画像を含む１個の前記出力画像を表す出力画像データを生成する出力画像生成機能と、
前記出力画像を用紙に印刷するための印刷実行部に前記出力画像データを出力する出力機能と、
前記用紙のサイズを特定する特定機能と、
をコンピュータに実現させ、
前記拡大画像生成機能は、前記用紙のサイズに基づいて決定される生成すべき前記出力画像の第１方向のサイズと、生成すべき第１の拡大画像の前記第１方向のサイズと、が一致するように、前記第１の拡大画像を表す第１の拡大画像データを生成するコンピュータプログラム。
【請求項１５】
コンピュータプログラムであって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得機能と、
前記読取画像データを用いて、前記読取画像内に含まれる複数個のマーカによってそれぞれ指定される前記読取画像内の一部の領域である複数個の指定画像を抽出する抽出機能と、
前記指定画像内のオブジェクトが文字であるか否かを判定するオブジェクト判定機能と、
前記複数個の指定画像を表す複数個の指定画像データを用いて、前記複数個の指定画像が拡大された複数個の拡大画像を表す複数個の拡大画像データを生成する拡大画像生成機能と、
１個の出力画像内における前記複数個の拡大画像の配置を決定する配置決定機能と、
前記複数個の拡大画像データを用いて、前記配置決定機能によって決定される配置に従って、前記複数個の拡大画像を含む１個の前記出力画像を表す出力画像データを生成する出力画像生成機能と、
前記出力画像データを出力する出力機能と、
をコンピュータに実現させ、
前記拡大画像生成機能は、
前記指定画像に含まれるオブジェクトが文字である場合には、第１の手法を用いた拡大処理を実行して、前記拡大画像データを生成し、
前記指定画像に含まれるオブジェクトが文字でない場合には、前記第１の手法とは異なる第２の手法を用いた拡大処理を実行して、前記拡大画像データを生成するコンピュータプログラム。
【請求項１６】
コンピュータプログラムであって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得機能と、
前記読取画像データを用いて、前記読取画像内に含まれる複数個の囲み線によってそれぞれ指定される前記読取画像内の一部の領域である複数個の指定画像を抽出する抽出機能であって、前記囲み線は前記読取画像内の一部の領域を囲む線であり、前記囲み線に囲まれた領域が前記指定画像として抽出される、前記抽出機能と、
前記複数個の指定画像を表す複数個の指定画像データを用いて、前記複数個の指定画像が拡大された複数個の拡大画像を表す複数個の拡大画像データを生成する拡大画像生成機能と、
１個の出力画像内における前記複数個の拡大画像の配置を決定する配置決定機能と、
前記複数個の拡大画像データを用いて、前記配置決定機能によって決定される配置に従って、前記複数個の拡大画像を含む１個の前記出力画像を表す出力画像データを生成する出力画像生成機能と、
前記出力画像データを出力する出力機能と、
をコンピュータに実現させるコンピュータプログラム。
【請求項１７】
コンピュータプログラムであって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得機能と、
前記読取画像データを用いて、前記読取画像内に含まれるマーカによって指定される前記読取画像内の一部の領域である指定画像を抽出する抽出機能と、
前記指定画像の形状に基づいて前記指定画像を回転するか否かを判断する回転判断機能と、
前記指定画像を表す指定画像データを用いて、前記指定画像が拡大された拡大画像を表す拡大画像データを生成する拡大画像生成機能であって、前記指定画像を回転すると判断された場合には、前記指定画像データに対して回転処理と拡大処理とを実行して、前記拡大画像データを生成し、前記指定画像を回転しないと判断された場合には、前記指定画像を表す前記指定画像データに対して前記回転処理を実行せずに前記拡大処理を実行して、前記拡大画像データを生成する、前記拡大画像生成機能と、
前記拡大画像データを用いて、前記拡大画像を含む出力画像を表す出力画像データを生成する出力画像生成機能と、
前記出力画像を用紙に印刷するための印刷実行部に前記出力画像データを出力する出力機能と、
前記用紙のサイズを特定する特定機能と、
をコンピュータに実現させ、
前記拡大画像生成機能は、前記用紙のサイズに基づいて決定される生成すべき前記出力画像の第１方向のサイズと、生成すべき第１の拡大画像の前記第１方向のサイズと、が一致するように、前記第１の拡大画像を表す第１の拡大画像データを生成するコンピュータプログラム。
【請求項１８】
コンピュータプログラムであって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得機能と、
前記読取画像データを用いて、前記読取画像内に含まれるマーカによって指定される前記読取画像内の一部の領域である指定画像を抽出する抽出機能と、
前記指定画像内のオブジェクトが文字であるか否かを判定するオブジェクト判定機能と、
前記指定画像の形状に基づいて前記指定画像を回転するか否かを判断する回転判断機能と、
前記指定画像を表す指定画像データを用いて、前記指定画像が拡大された拡大画像を表す拡大画像データを生成する拡大画像生成機能であって、前記指定画像を回転すると判断された場合には、前記指定画像データに対して回転処理と拡大処理とを実行して、前記拡大画像データを生成し、前記指定画像を回転しないと判断された場合には、前記指定画像を表す前記指定画像データに対して前記回転処理を実行せずに前記拡大処理を実行して、前記拡大画像データを生成する、前記拡大画像生成機能と、
前記拡大画像データを用いて、前記拡大画像を含む出力画像を表す出力画像データを生成する出力画像生成機能と、
前記出力画像データを出力する出力機能と、
をコンピュータに実現させ、
前記拡大画像生成機能は、
前記指定画像に含まれるオブジェクトが文字である場合には、第１の手法を用いた拡大処理を実行して、前記拡大画像データを生成し、
前記指定画像に含まれるオブジェクトが文字でない場合には、前記第１の手法とは異なる第２の手法を用いた拡大処理を実行して、前記拡大画像データを生成するコンピュータプログラム。
【請求項１９】
コンピュータプログラムであって、
原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得機能と、
前記読取画像データを用いて、前記読取画像内に含まれる囲み線によって指定される前記読取画像内の一部の領域である指定画像を抽出する抽出機能であって、前記囲み線は前記読取画像内の一部の領域を囲む線であり、前記囲み線に囲まれた領域が前記指定画像として抽出される、前記抽出機能と、
前記指定画像の形状に基づいて前記指定画像を回転するか否かを判断する回転判断機能と、
前記指定画像を表す指定画像データを用いて、前記指定画像が拡大された拡大画像を表す拡大画像データを生成する拡大画像生成機能であって、前記指定画像を回転すると判断された場合には、前記指定画像データに対して回転処理と拡大処理とを実行して、前記拡大画像データを生成し、前記指定画像を回転しないと判断された場合には、前記指定画像を表す前記指定画像データに対して前記回転処理を実行せずに前記拡大処理を実行して、前記拡大画像データを生成する、前記拡大画像生成機能と、
前記拡大画像データを用いて、前記拡大画像を含む出力画像を表す出力画像データを生成する出力画像生成機能と、
前記出力画像データを出力する出力機能と、
をコンピュータに実現させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、読取画像を表す読取画像データを用いる画像処理に関し、特に、読取画像内の一部の画像の拡大処理を含む画像処理に関するものである。
【背景技術】
【０００２】
特許文献１に記載された技術では、原稿を読み取って得られる読取画像がモニタに表示され、モニタを介して受け付けられるユーザの操作に基づいて読取画像内の一部の画像が指定される。そして、指定された画像が用紙の幅に合わせて拡大され、拡大された画像がプリンタによって印刷される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平６−１８１５１１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
このように、ユーザが所望する画像の印刷などのために、ユーザによって指定される読取画像内の一部の指定画像が表現された出力画像を提供する技術が求められている。
【０００５】
本発明の目的は、読取画像内において指定される指定画像が適切に表現された出力画像データを生成することである。
【課題を解決するための手段】
【０００６】
本発明は、上述の課題の少なくとも一部を解決するためになされたものであり、以下の適用例として実現することが可能である。
【０００７】
［適用例１］画像処理装置であって、原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得部と、前記読取画像データを用いて、前記読取画像内に含まれる複数個のマーカによってそれぞれ指定される前記読取画像内の一部の領域である複数個の指定画像を抽出する抽出部と、前記複数個の指定画像を表す複数個の指定画像データを用いて、前記複数個の指定画像が拡大された複数個の拡大画像を表す複数個の拡大画像データを生成する拡大画像生成部と、１個の出力画像内における前記複数個の拡大画像の配置を決定する配置決定部と、前記複数個の拡大画像データを用いて、前記配置決定部によって決定される配置に従って、前記複数個の拡大画像を含む１個の前記出力画像を表す出力画像データを生成する出力画像生成部と、前記出力画像データを出力する出力部と、を備える、画像処理装置。
【０００８】
上記構成によれば、読取画像内の複数個のマーカによって指定された複数個の指定画像が拡大された複数個の拡大画像が生成される。そして、これらの拡大画像が配置された出力画像を表す出力画像データが生成される。この結果、読取画像内の複数個の指定画像が適切に表現された出力画像データを生成することができる。
［適用例２］
適用例１に記載の画像処理装置であって、
前記拡大画像生成部は、第１の指定画像を第１の拡大率で拡大することによって、第１の拡大画像データを生成し、第２の指定画像を前記第１の拡大率とは異なる第２の拡大率で拡大することによって、第２の拡大画像データを生成する、画像処理装置。
［適用例３］
適用例１または２に記載の画像処理装置であって、さらに、
前記複数個の指定画像のそれぞれについて、前記指定画像を回転することによって、前記指定画像が前記出力画像に配置される際の前記指定画像の向きを変更するか否かを判断する回転判断部を備え、
前記拡大画像生成部は、
回転すると判断された前記指定画像を表す前記指定画像データに対して回転処理と拡大処理とを実行して、前記拡大画像データを生成し
回転しないと判断された前記指定画像を表す前記指定画像データに対して前記回転処理を実行せずに前記拡大処理を実行して、前記拡大画像データを生成する、画像処理装置。
［適用例４］
適用例１〜３のいずれかに記載の画像処理装置であって、
前記配置決定部は、
前記複数個の指定画像のサイズに基づいて、前記出力画像内に、前記複数個の拡大画像が配置される配置順序を決定し、
前記配置順序に従って、前記複数個の拡大画像が出力画像内に配置される位置を決定する、画像処理装置。
［適用例５］
適用例１〜４のいずれかに記載の画像処理装置であって、
１個の前記出力画像は、１個の印刷媒体に印刷するための画像であり、
前記複数個の指定画像が特定の拡大率より大きな拡大率で拡大された前記複数個の拡大画像を１個の前記出力画像に配置できる場合には、
前記配置決定部は、前記複数個の拡大画像を１個の前記出力画像内に配置し、
前記出力画像生成部は、１個の前記出力画像を表す１個の前記出力画像データを生成し、
前記複数個の指定画像が特定の拡大率より大きな拡大率で拡大された前記複数個の拡大画像を１個の前記出力画像に配置できない場合には、
前記配置決定部は、前記複数個の拡大画像を複数個の前記出力画像内に配置し、
前記出力画像生成部は、複数個の前記出力画像を表す複数個の前記出力画像データを生成する、画像処理装置。
【０００９】
［適用例６］画像処理装置であって、原稿を光学的に読み取ることによって得られる読取画像を表す読取画像データを取得する画像データ取得部と、前記読取画像データを用いて、前記読取画像内に含まれるマーカによって指定される前記読取画像内の一部の領域である指定画像を抽出する抽出部と、前記指定画像の形状に基づいて前記指定画像を回転するか否かを判断する回転判断部と、前記指定画像を表す指定画像データを用いて、前記指定画像が拡大された拡大画像を表す拡大画像データを生成する拡大画像生成部であって、前記指定画像を回転すると判断された場合には、前記指定画像データに対して回転処理と拡大処理とを実行して、前記拡大画像データを生成し、前記指定画像を回転しないと判断された場合には、前記指定画像を表す前記指定画像データに対して前記回転処理を実行せずに前記拡大処理を実行して、前記拡大画像データを生成する、前記拡大画像生成部と、前記拡大画像データを用いて、前記拡大画像を含む出力画像を表す出力画像データを生成する出力画像生成部と、前記出力画像データを出力する出力部と、を備える、画像処理装置。
【００１０】
上記構成によれば、読取画像内のマーカによって指定された指定画像が拡大された拡大画像が生成される。また、拡大画像は指定画像の形状に応じて回転するか否かが判断される。そして、拡大画像が配置された出力画像を表す出力画像データが生成される。この結果、読取画像内の指定画像が適切に表現された出力画像データを生成することができる。
［適用例７］
適用例１〜６に記載の画像処理装置であって、
前記出力部は、前記出力画像を用紙に印刷するための印刷実行部に前記出力画像データを出力し、
前記画像処理装置は、さらに、
前記用紙のサイズを特定する特定部を備え、
前記拡大画像生成部は、前記用紙のサイズに基づいて決定される生成すべき前記出力画像の第１方向のサイズと、生成すべき第１の拡大画像の前記第１方向のサイズと、が一致するように、前記第１の拡大画像を表す第１の拡大画像データを生成する、画像処理装置。
［適用例８］
適用例７に記載の画像処理装置であって、
前記拡大画像生成部は、
前記出力画像のうち、前記第１の拡大画像が配置される領域を除いた領域の第２方向のサイズと、生成すべき第２の拡大画像の前記第２方向のサイズと、が一致するように、前記第２の拡大画像を表す第２の拡大画像データを生成する、画像処理装置。
［適用例９］
適用例６に記載の画像処理装置であって、さらに、
前記指定画像内のオブジェクトが文字であるか否かを判定するオブジェクト判定部を備え、
前記回転判断部は、前記指定画像内のオブジェクトが文字である場合には、前記指定画像の形状に拘わらずに、前記指定画像内の文字が特定の方向を向くように、前記指定画像を回転するか否かを判断する、画像処理装置。
［適用例１０］
適用例１〜９のいずれかに記載の画像処理装置であって、さらに、
前記指定画像内のオブジェクトが文字であるか否かを判定するオブジェクト判定部を備え、
前記拡大画像生成部は、
前記指定画像に含まれるオブジェクトが文字である場合には、第１の手法を用いた拡大処理を実行して、前記拡大画像データを生成し、
前記指定画像に含まれるオブジェクトが文字でない場合には、前記第１の手法とは異なる第２の手法を用いた拡大処理を実行して、前記拡大画像データを生成する、画像処理装置。
［適用例１１］
適用例１〜１０のいずれかに記載の画像処理装置であって、
前記マーカは、前記読取画像内の一部の領域を囲む囲み線であり、
前記抽出部は、前記囲み線に囲まれた領域を前記指定画像として抽出する、画像処理装置。
【００１１】
なお、本発明は、種々の形態で実現することが可能であり、例えば、画像読取装置、印刷装置、画像処理方法、これらの装置または方法を実現するためのコンピュータプ口グラム、そのコンピュータプログラムを記録した記録媒体、等の形態で実現することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施例としてのシステム９００を示す説明図である。
【図２】システム９００の動作のフローチャートである。
【図３】実施例で用いられる画像の一例を示す図である。
【図４】指定画像の一例を示す図である。
【図５】配置処理のフローチャートである。
【図６】拡大率決定処理のフローチャートである。
【図７】拡大率決定処理について説明するための図である。
【図８】配置処理について説明するための図である
【図９】拡大処理のフローチャートである。
【発明を実施するための形態】
【００１３】
Ａ．第１実施例：
図１は、本発明の一実施例としてのシステム９００を示す説明図である。このシステム９００は、ネットワーク５００と、ネットワーク５００に接続された複合機１００と、ネットワーク５００に接続されたサーバ３００と、を備えている。
【００１４】
複合機１００は、複合機１００の全体を制御するコントローラとしてのＣＰＵ１１０と、ＤＲＡＭ等の揮発性記憶装置１２０と、フラッシュメモリ等の不揮発性記憶装置１３０と、液晶パネル等の表示部１４０と、タッチパネル等の操作部１５０と、読取実行部１６０と、印刷実行部１７０と、他の装置（例えば、サーバ３００）と通信するための通信インタフェース１８０（例えば、ＩＥＥＥ８０２．１１ａ／ｂ／ｇ／ｎの規格に準拠した無線通信インタフェース）と、を備えている。不揮発性記憶装置１３０は、コンピュータプログラム１３２を格納している。通信インタフェース１８０は、ネットワーク５００に接続されている。
【００１５】
読取実行部１６０は、原稿を表す画像データを生成する装置である。具体的には、読取実行部１６０は、図示しない光学センサ（例えば、ＣＩＳ（Contact Image Sensor）を備え、読取実行部１６０に載置された原稿を光学的に読み取ることによって、原稿を表す画像データを生成する。以下、読取実行部１６０によって生成される画像データを「読取画像データ」とも呼ぶ。
【００１６】
印刷実行部１７０は、画像を印刷する装置であり、いわゆるインクジェットプリンタである。これに代えて、他の種類のプリンタ（例えば、いわゆるレーザプリンタ）を採用してもよい。
【００１７】
ＣＰＵ１１０は、揮発性記憶装置１２０と不揮発性記憶装置１３０とを用いてコンピュータプログラム１３２を実行することによって、後述するデータ処理を実行する。このように、ＣＰＵ１１０と揮発性記憶装置１２０と不揮発性記憶装置１３０との全体を、データ処理を実行するデータ処理部１９０とも呼ぶ。
【００１８】
本実施例の画像処理装置としてのサーバ３００は、サーバ３００の全体を制御するコントローラとしてのＣＰＵ３１０と、ＤＲＡＭ等の揮発性記憶装置３２０と、フラッシュメモリ等の不揮発性記憶装置３３０と、他の装置（例えば、複合機１００）と通信するための通信インタフェース３８０（例えば、ＩＥＥＥ８０２．３の規格に準拠した有線通信インタフェース）と、を備えている。不揮発性記憶装置３３０は、コンピュータプログラム３３２を格納している。このコンピュータプログラム３３２は、例えば、ＣＤ−ＲＯＭなどに格納される形態や、他のサーバなどの計算機からネットワーク５００を介してダウンロードされる形態で提供される。通信インタフェース３８０には、ネットワーク５００に接続されている。
【００１９】
ＣＰＵ３１０は、揮発性記憶装置３２０と不揮発性記憶装置３３０とを用いてコンピュータプログラム３３２を実行することによって、後述する画像処理を実行する。このように、ＣＰＵ３１０と揮発性記憶装置３２０と不揮発性記憶装置３３０との全体を、画像処理を実行する画像処理部３９０とも呼ぶ。
【００２０】
図２は、システム９００の動作のフローチャートである。図中には、複合機１００による処理と、サーバ３００による処理と、が示されている。これらの処理は、例えば、ユーザから、囲み線を用いる特定のコピーモードで、原稿内の画像をコピーする指示が、複合機１００によって受け付けられた場合に、複合機１００のＣＰＵ１１０によって開始される。この特定のコピーモードは、囲み線によって囲まれた原稿内の部分画像が拡大して配置された出力画像を印刷するモードである。このモードでのコピー指示とともに、出力画像が印刷される用紙のサイズに関する情報、具体的には、用紙のサイズの種類（例えば、Ａ４サイズ、Ａ３サイズなど）を示す情報が、ユーザによって入力される。
【００２１】
Ｓ１００では、複合機１００のＣＰＵ１１０（図１）は、読取実行部１６０を制御することによって、原稿を光学的に読み取り、原稿を表す読取画像データを生成する。読取画像データは、例えば、赤（Ｒ）、緑（Ｇ）、青（Ｂ）のそれぞれの成分値（本実施例では、２５６階調の階調値）で画素ごとの色を表すビットマップデータである。以下、赤（Ｒ）の成分値を「Ｒ成分値」と呼び、緑（Ｇ）の成分値を「Ｇ成分値」と呼び、青（Ｂ）の成分値を「Ｂ成分値」と呼ぶ。また、色を表す値を「色値」とも呼ぶ（例えば、Ｒ成分値とＧ成分値とＢ成分値との全体）。ここで、原稿は、複数のオブジェクト（例えば、文字や写真やイラスト等）を表し得る。本実施例では、ユーザは、所定の色（本実施例では、赤）のペンを用いて、原稿中のオブジェクトを指定するためのマーカである囲み線を記入することができる。
【００２２】
図３は、本実施例で用いられる画像の一例を示す図である。図３（Ａ）には、読取画像の例が示されている。この読取画像８０は、複数個のオブジェクト８１〜８４と、複数個の囲み線８６〜８８と、を含んでいる。オブジェクト８１〜８３は、文字とは異なるオブジェクト（非文字オブジェクトとも呼ぶ）、具体的には、描画や写真である。オブジェクト８４は、複数個の文字を含む文字オブジェクトである。囲み線８５〜８８は、予め定められた特定の色（例えば、赤）のペンを用いて、ユーザによって原稿上に記入されたオブジェクトである。
【００２３】
第１の囲み線８５は、非文字オブジェクト８１を囲んでいる。第２の囲み線８６は、非文字オブジェクト８２を囲んでいる。第３の囲み線８７は、文字オブジェクト８４の一部分を囲んでいる。第４の囲み線８８は、文字オブジェクト８４の別の一部分を囲んでいる。
【００２４】
Ｓ１１０では、複合機１００のＣＰＵ１１０（図１）は、読取画像データを、ネットワーク５００を介して、サーバ３００に送信する。このとき、ユーザによって入力された出力画像が印刷される用紙のサイズに関する情報も、読取画像データとともに、サーバ３００に送信される。次のＳ２００では、サーバ３００のＣＰＵ３１０は、複合機１００から送信される読取画像データを処理対象の画像データとして取得する。このとき、ＣＰＵ１１０は、用紙のサイズに関する情報も合わせて取得する。
【００２５】
Ｓ２０５では、ＣＰＵ３１０は、読取画像データによって表される読取画像８０内に含まれる囲み線８５〜８８を特定する。
【００２６】
具体的には、ＣＰＵ３１０は、読取画像データに対して、二値化処理を行うことによって、二値画像データを生成する。具体的には、読取画像データの複数の画素のそれぞれは、囲み線の特定の色（本実施例では赤）を示す色値を有する特定色画素と、他の色を示す色値を有する非特定色画素と呼ぶと、のいずれかに分類される。すなわち、この二値化処理によって、読取画像８０内の特定色画素が抽出される。例えば、囲み線の特定の色を示す所定の範囲（「囲み線色範囲」と呼ぶ）内の色値を有する画素は、特定色画素に分類され、囲み線色範囲外の色値を有する画素は、非特定色画素に分類される。特定色画素によって構成されるオブジェクトは、囲み線の候補となるオブジェクトであるので、候補オブジェクトとも呼ぶ。
【００２７】
図３（Ｂ）には、二値画像データによって表される二値画像８０ａの例が示されている。二値画像８０ａは、囲み線の候補となる４個の候補オブジェクト８５ａ〜８８ａを含む。ＣＰＵ３１０は、二値画像データに対して、互いに離れた候補オブジェクトに互いに異なる識別子を割り当てるラベリング処理を行う。具体的には、ＣＰＵ３１０は、連続する１以上の特定色画素で構成される連続な１つのオブジェクトに、候補オブジェクトとして１つの識別子を割り当てる。そして、ＣＰＵ３１０は、互いに離れた複数の候補オブジェクトに、互いに異なる識別子を割り当てる。この結果、複数個の候補オブジェクト８５ａ〜８８ａが抽出される。
【００２８】
次に、ＣＰＵ３１０は、抽出された候補オブジェクトに対して、囲み線判定処理を実行する。囲み線判定処理では、抽出された候補オブジェクトのそれぞれが、囲み線であるか否かを判定する処理である。二値画像データにラベリングを行うことによって抽出された候補オブジェクトは、囲み線以外のオブジェクトの全部または一部のうちの特定色を有する画像を含み得る。このために、読取画像８０内の囲み線８５〜８８のみを抽出すべく、囲み線判定処理が実行される。具体的には、囲み線判定処理は、抽出された候補オブジェクトが、囲み線としての所定の形状、すなわち、ループ状の形状を有するか否かを判定する。
【００２９】
なお、候補オブジェクトがループ状の形状を有するか否かを判定する方法としては、種々の方法を採用可能である。例えば、以下の方法を採用可能である。ここでは、図３（Ｃ）を参照して、二値画像８０ａの候補オブジェクト８５ａが判定対象の候補オブジェクトである場合を例として説明する。判定対象の候補オブジェクトを「対象オブジェクト」と呼び、対象オブジェクトを構成する特定色画素を「対象オブジェクト画素」と呼び、対象オブジェクトには含まれない画素、すなわち、非特定色画素や、他の候補オブジェクトを構成する特定色画素を「非対象オブジェクト画素」と呼ぶ。
【００３０】
まず、複数の非対象オブジェクト画素が連続する領域であって、二値画像８０ａの端を含む領域が、特定される。特定される領域は、対象オブジェクトの外側を全周に亘って囲む領域である（「外周領域」と呼ぶ）。候補オブジェクト８５ａが対象オブジェクトである場合、外周領域は、候補オブジェクト８５ａの外側の全体、すなわち、外側の背景を表す領域と、外側に配置された他の候補オブジェクト８６ａ〜８８ａと、の全体の領域ＯＡ１（図３（Ｃ）のハッチングされた領域）である。
【００３１】
二値画像８０ａから外周領域ＯＡ１を除いた残りの領域は、対象オブジェクトの最も外側の輪郭に囲まれた領域である（「判定領域」と呼ぶ）。候補オブジェクト８５ａが対象オブジェクトである場合、図３（Ｃ）の例では、判定領域は、候補オブジェクト８５ａと、候補オブジェクト８５ａの内側の背景を表す領域と、の全体である。
【００３２】
判定領域から、複数個の非対象オブジェクト画素が連続する領域が検出される場合、対象オブジェクトの形状がループ状である、と判定される。候補オブジェクト８５ａが対象オブジェクトである場合、判定領域から（具体的には、候補オブジェクト８５ａの内側から）、複数個の非対象オブジェクト画素が連続する領域（すなわち、背景を表す領域）が検出される。判定領域から、複数個の非対象オブジェクト画素が連続する領域が検出されない場合、対象オブジェクトの形状はループ状ではない、と判定される。図３（Ｂ）の例では、候補オブジェクト８５ａ〜８８ａは、ループ形状であると判断される。
【００３３】
ループ形状であると判断された候補オブジェクトは、囲み線として特定される。図３（Ｂ）の例では、二値画像８０ａ内の４個の候補オブジェクト８５ａ〜８８ａが、囲み線として特定される。この結果、図３（Ａ）の読取画像８０内の４個の囲み線８５〜８８が特定される。
【００３４】
囲み線が特定されると、図２のＳ２１０では、ＣＰＵ３１０は、指定画像を抽出する。指定画像は、ユーザによって指定された読取画像８０内の一部の領域（すなわち、部分画像）であり、具体的には、囲み線８５〜８８によって囲まれた領域内の画像である。具体的には、特定された囲み線に外接する外接矩形が特定される。そして、当該外接矩形内の画像が、指定画像として抽出される。そして、抽出された指定画像を表す指定画像データが生成されて、揮発性記憶装置１２０に格納される。なお、指定画像内に含まれる囲み線は、例えば、囲み線を構成する特定色画素の色値が背景色（例えば、読取画像８０の外縁部の画素の色）に置換されることによって、消去される。
【００３５】
図４は、指定画像の一例を示す図である。Ｓ２１０にて、図３（Ａ）の読取画像８０から、図４（Ａ）〜図４（Ｄ）の４個の指定画像８５Ａ〜８８Ａが抽出される。そして、これらの４個の指定画像８５Ａ〜８８Ａをそれぞれ表す４個の指定画像データが生成される。
【００３６】
Ｓ２１５では、ＣＰＵ３１０は、抽出された指定画像８５Ａ〜８８Ａのそれぞれについて、画像内のオブジェクトが文字であるか否かを判定するオブジェクト判定処理を実行する。具体的には、判定対象の指定画像内に文字を表す文字領域が含まれる場合には、当該指定画像内のオブジェクトは文字であると判定される。判定対象の指定画像内に文字領域が含まれない場合には、当該指定画像内のオブジェクトは文字でないと判定される。文字領域を特定する方法としては、公知の種々の方法を採用可能であり、例えば、特開平５−２２５３７８号公報、特開２００２−２８８５８９に開示された方法を採用することができる。指定画像内のオブジェクトが文字であるか否かの判定結果は、後述するＳ２２０の配置処理やＳ２２５の拡大処理において利用される。
【００３７】
Ｓ２２０では、ＣＰＵ３１０は、配置処理を実行する。配置処理は、指定画像を拡大する拡大率を決定し、当該拡大率で指定画像を拡大した拡大画像について、生成すべき出力画像内の配置を決定する処理である。
【００３８】
図５は、配置処理のフローチャートである。Ｓ３００では、ＣＰＵ３１０は、生成すべき出力画像が印刷される用紙のサイズを特定する。具体的には、特定のコピーモードでのコピーの指示とともに、ユーザによって入力された用紙のサイズに関する情報に基づいて、用紙のサイズが特定される。
【００３９】
Ｓ３０２では、ＣＰＵ３１０は、特定された用紙のサイズに基づいて、生成すべき出力画像のサイズを決定する。具体的には、予め定められた生成すべき出力画像のサイズを示す情報が、用紙の種類に対応付けて不揮発性記憶装置１３０に記録されている。ＣＰＵ３１０は、Ｓ３００にて特定された用紙のサイズ（例えば、Ａ４サイズ）に対応付けられた画像のサイズを、生成すべき出力画像のサイズとして決定する。生成すべき出力画像のサイズは、例えば、用紙のサイズから所定の余白分だけ小さなサイズであり、縦方向の画素数と、横方向の画素数と、によって決定される。ここで、決定された出力画像のサイズの縦方向の画素数をＡＨ１、横方向の画素数をＡＷ１とする。
【００４０】
Ｓ３０４では、ＣＰＵ３１０は、指定画像が１個であるか複数であるかを判断する。指定画像の個数は、ユーザによって原稿に記入される囲み線の個数によって決まるので、読み取られる原稿によってそれぞれ異なる。図３（Ａ）の読取画像８０の例では、図４（Ａ）〜（Ｄ）に示すように、指定画像は４個であるので、指定画像は複数であると判断される。
【００４１】
指定画像が１個である場合には（Ｓ３０４：ＹＥＳ）、ＣＰＵ３１０は、Ｓ３０５にて、当該１個の指定画像を注目指定画像として選択する。ここでは、図４（Ｃ）の指定画像８７Ａが、１個の指定画像であり、Ｓ３０５にて、注目指定画像として選択されたと仮定して説明する。Ｓ３１０では、ＣＰＵ３１０は、拡大率決定処理を実行する。
【００４２】
図６は、拡大率決定処理のフローチャートである。図７は、拡大率決定処理について説明するための図である。
【００４３】
Ｓ４００では、ＣＰＵ３１０は、注目指定画像のサイズ、すなわち、注目指定画像の縦方向の画素数ＳＨと、横方向の画素数ＳＷと、を取得する。注目指定画像が図４（Ｃ）の指定画像８７Ａである場合には、指定画像８７Ａの縦方向の画素数ＳＨ３と、横方向の画素数ＳＷ３と、が取得される。
【００４４】
Ｓ４１０では、ＣＰＵ３１０は、配置可能領域のサイズ、すなわち、配置可能領域の縦方向の画素数ＡＨと、横方向の画素数ＡＷと、を取得する。指定画像が１個である場合には、配置可能領域は、出力画像の全体の領域である。したがって、配置可能領域のサイズは、図５のＳ３０２にて用紙のサイズに基づいて決定される出力画像のサイズと等しい。したがって、この場合には、出力画像の縦方向の画素数ＡＨ１と、横方向の画素数ＡＷ１と、が取得される。
【００４５】
ここで、本実施例では、指定画像は、回転されることなく出力画像に配置されるか、左周りに９０度回転されて出力画像に配置されるか、のいずれかである。
【００４６】
Ｓ４２０では、ＣＰＵ３１０は、指定画像を回転しない場合の最大拡大率ＥＲｎを算出する。最大拡大率ＥＲｎは、注目指定画像の縦方向の画素数ＳＨおよび横方向の画素数ＳＷと、配置可能領域の縦方向の画素数ＡＨおよび横方向の画素数ＡＷと、を用いて、図６に示す式を用いて算出される。すなわち、注目指定画像の縦方向の画素数ＳＨと配置可能領域の縦方向の画素数ＡＨとが一致するように、注目指定画像を拡大するための拡大率（ＡＨ／ＳＨ）が、算出される。そして、注目指定画像の横方向の画素数ＳＷと配置可能領域の横方向の画素数ＡＨとが一致するように、注目指定画像を拡大するための拡大率（ＡＷ／ＳＷ）が、算出される。そして、２つの拡大率（ＡＨ／ＳＨ）と（ＡＷ／ＳＷ）のうちの小さい方の拡大率が、指定画像を回転しない場合の最大拡大率ＥＲｎとして決定される。
【００４７】
図７（Ａ）では、指定画像８７Ａを最大拡大率ＥＲｎ＝（ＡＷ１／ＳＷ３）で拡大した拡大画像８７Ｎの左上の画素が、出力画像９０Ａの左上の画素Ｐ１と、位置するように、拡大画像８７Ｎが、出力画像９０Ａ内に配置されている。最大拡大率ＥＲｎ＝（ＡＷ１／ＳＷ３）より大きな拡大率で指定画像８７Ａを拡大すると、拡大画像が出力画像９０Ａからはみ出すことにより、拡大画像を出力画像９０Ａ内に配置できないことが解る。
【００４８】
Ｓ４３０では、ＣＰＵ３１０は、指定画像を左周りに９０度回転する場合の最大拡大率ＥＲｒを算出する。最大拡大率ＥＲｒは、注目指定画像の縦方向の画素数ＳＨおよび横方向の画素数ＳＷと、配置可能領域の縦方向の画素数ＡＨおよび横方向の画素数ＡＷと、を用いて、図６に示す式を用いて算出される。すなわち、注目指定画像の横方向の画素数ＳＷ（すなわち、９０度回転後の縦方向の画素数ＳＷ）と配置可能領域の縦方向の画素数ＡＨとが一致するように、９０度回転された注目指定画像を拡大するための拡大率（ＡＨ／ＳＷ）が、算出される。そして、注目指定画像の縦方向の画素数ＳＨ（すなわち、９０度回転後の横方向の画素数ＳＨ）と配置可能領域の横方向の画素数ＡＷとが一致するように、９０度回転された注目指定画像を拡大するための拡大率（ＡＷ／ＳＨ）が算出される。そして、２つの拡大率（ＡＨ／ＳＷ）と（ＡＷ／ＳＨ）のうちの小さい方の拡大率が、指定画像を回転する場合の最大拡大率ＥＲｒとして決定される。
【００４９】
図７（Ｂ）では、指定画像８７Ａを最大拡大率ＥＲｒ＝（ＡＨ１／ＳＷ３）で拡大した拡大画像８７Ｒの左上の画素が、出力画像９０Ａの左上の画素Ｐ１と、位置するように、拡大画像８７Ｒが、出力画像９０Ａ内に配置されている。最大拡大率ＥＲｒ＝（ＡＨ１／ＳＷ３）より大きな拡大率で９０度回転された指定画像８７Ａを拡大すると、拡大画像が出力画像９０Ａからはみ出すことにより、拡大画像を出力画像９０Ａ内に配置できないことが解る。
【００５０】
Ｓ４４０では、ＣＰＵ３１０は、指定画像を９０度回転する場合の最大拡大率ＥＲｒが、指定画像を回転しない場合の最大拡大率ＥＲｎより大きいか否かを判断する。最大拡大率ＥＲｒが最大拡大率ＥＲｎより大きい場合には（Ｓ４４０：ＹＥＳ）、ＣＰＵ３１０は、Ｓ４５０にて、指定画像を９０度回転することを決定する。そして、ＣＰＵ３１０は、Ｓ４６０にて、指定画像を回転する場合の最大拡大率ＥＲｒを、採用すべき拡大率ＥＲとして決定する。
【００５１】
最大拡大率ＥＲｒが最大拡大率ＥＲｎ以下である場合には（Ｓ４４０：ＮＯ）、ＣＰＵ３１０は、Ｓ４７０にて、指定画像を回転しないことを決定する。そして、ＣＰＵ３１０は、Ｓ４８０にて、指定画像を回転しない場合の最大拡大率ＥＲｎを、採用すべき拡大率ＥＲとして決定する。
【００５２】
図７（Ａ）、図７（Ｂ）の例では、指定画像８７Ａを回転する場合の最大拡大率ＥＲｒ＝（ＡＨ１／ＳＷ３）は、指定画像８７Ａを回転しない場合の最大拡大率ＥＲｎ＝（ＡＷ１／ＳＷ３）より大きいので、採用すべき拡大率ＥＲは、回転する場合の最大拡大率ＥＲｒ＝（ＡＨ１／ＳＷ３）に決定される。
【００５３】
以上説明したように、拡大率決定処理によって、指定画像の拡大率が出来るだけ大きくなるように、指定画像を回転するか否かが決定されるとともに、採用すべき拡大率ＥＲが決定される。この結果、指定画像ができるだけ見やすく拡大されて表現された出力画像を生成することができる。
【００５４】
図５のＳ３１０にて拡大率決定処理が終了すると、ＣＰＵ３１０は、Ｓ３８０にて、注目指定画像について決定された拡大率ＥＲと、注目指定画像を回転するか否か（すなわち、回転の要否）と、注目指定画像の拡大画像の配置位置と、ページ番号と、を揮発性記憶装置１２０に記録する。拡大画像の配置位置は、配置可能領域の左上の画素の座標が記録される。図７のように、配置可能領域が、出力画像９０Ａの全体である場合には、出力画像９０Ａの左上の画素Ｐ１の座標が、拡大画像の配置位置として記録される。ページ番号は、出力画像に付される番号である。後述するように、指定画像が複数個である場合には、複数個の出力画像が生成される場合がある。このために、各出力画像を識別するための識別子として、ページ番号が記録される。
【００５５】
図５のＳ３０４にて、指定画像が１個でない場合、すなわち、指定画像が複数個である場合には（Ｓ３０４：ＮＯ）、ＣＰＵ３１０は、Ｓ３１５に処理を進める。ここでは、複数個の指定画像が、図４（Ａ）〜図４（Ｄ）に示す４個の指定画像８５Ａ〜８８Ａである場合を例に説明する。Ｓ３１５では、ＣＰＵ３１０は、各指定画像の基準画素数Ｍを取得する。ここで、基準画素数Ｍは、指定画像の縦方向の画素数と、横方向の画素数のうち、大きい方の画素数である。４個の指定画像８５Ａ〜８８Ａの基準画素数Ｍは、それぞれ、ＳＨ１（図４（Ａ））、ＳＷ２（図４（Ｂ））、ＳＷ３（図４（Ｃ））、ＳＷ４（図４（Ｃ））である。
【００５６】
Ｓ３２０では、ＣＰＵ３１０は、各指定画像の基準画素数Ｍに基づいて、複数個の指定画像を出力画像に配置する順序である配置順序を決定する。具体的には、基準画素数Ｍが大きい順に、配置順序が決定される。指定画像の基準画素数Ｍが大きいほど、すなわち、指定画像の縦方向の画素数と横方向の画素数のうち大きい方の画素数Ｍが大きいほど、当該指定画像の拡大率が小さくなる可能性が高い。また、配置順序が後になると、配置可能領域が小さくなる可能性が比較的高い。そこで、本実施例では、基準画素数Ｍが大きい順に、指定画像を配置することとしている。この結果、指定画像の拡大率が過度に小さくなることを抑制することができる。例えば、少なくとも基準画素数Ｍが最大の指定画像、すなわち、同じ大きさの配置可能領域に配置する場合には、拡大率が最も小さくなる指定画像は、最初に配置される。すなわち、基準画素数Ｍが最大の指定画像は、出力画像の全体が配置可能領域である状態で配置されるので、基準画素数Ｍが最大の指定画像の拡大率が過度に小さくなることを抑制することができる。
【００５７】
４個の指定画像８５Ａ〜８８Ａは、基準画素数Ｍが大きい順に、図４（Ｃ）の指定画像８７Ａ、図４（Ｂ）の指定画像８６Ａ、図４（Ａ）の指定画像８５Ａ、図４（Ｄ）の指定画像８８Ａであるので、この順番に、配置順序が決定される。
【００５８】
Ｓ３２５では、ＣＰＵ３１０は、決定された配置順序に従って、複数個の指定画像から１個の注目指定画像を選択する。例えば、４個の指定画像８５Ａ〜８８Ａのうち、図４（Ｃ）の指定画像８７Ａが、最初の注目指定画像として選択される。
【００５９】
Ｓ３３０では、ＣＰＵ３１０は、注目指定画像内のオブジェクトは文字であるか否かを判断する。図２のＳ２１５のオブジェクト判定処理での判定結果に従って、注目指定画像内のオブジェクトは文字であるか否かが判断される。
【００６０】
注目指定画像内のオブジェクトが文字である場合には（Ｓ３３０：ＹＥＳ）、ＣＰＵ３１０は、Ｓ３５５にて、注目指定画像を左周りに９０度回転することに決定する。すなわち、本実施例では、指定画像が複数個である場合であって、かつ、指定画像内のオブジェクトが文字である場合には、当該指定画像の形状に拘わらずに、当該指定画像は、常に９０度回転される。これは、出力画像内において、出力画像に含まれる全ての文字が特定の方向を向くようにするためである。この結果、文字が読みやすい出力画像を生成することができる。なお、指定画像内のオブジェクトが文字である場合には、指定画像について、回転について常に同じ処理が実行されればよい。例えば、本実施例に代えて、指定画像内のオブジェクトが文字である場合には、指定画像は、常に右回りに９０度回転されることとしても良いし、常に回転処理を実行しないこととしても良い。
【００６１】
Ｓ３６０では、ＣＰＵ３１０は、図６のＳ４００と同様に、注目指定画像のサイズ、すなわち、注目指定画像の縦方向の画素数ＳＨと、横方向の画素数ＳＷと、を取得する。
【００６２】
Ｓ３６５では、ＣＰＵ３１０は、図６のＳ４１０と同様に、配置可能領域のサイズ、すなわち、配置可能領域の縦方向の画素数ＡＨと、横方向の画素数ＡＷと、を取得する。注目指定画像が、配置順序が最初の指定画像である場合には、配置可能領域は、出力画像の全体の領域である。したがって、この場合には、出力画像の縦方向の画素数ＡＨ１と、横方向の画素数ＡＷ１と、が取得される。また、注目指定画像が、配置順序が２番目以降の指定画像である場合には、配置可能領域は、既に配置位置が決定済みの拡大画像が配置されるべき領域を出力画像の全体から除いた領域である。例えば、図７（Ｂ）に示すように、拡大画像８７Ｒの出力画像９０Ａへの配置位置が既に決定済みである場合には、ハッチングされた領域ＡＰが、配置可能領域である。したがって、この場合には、配置可能領域のサイズとして、縦方向の画素数ＡＨ２と、横方向の画素数ＡＷ２と、が取得される。
【００６３】
Ｓ３７０では、ＣＰＵ３１０は、図６のＳ４３０と同様に、指定画像を９０度回転する場合の最大拡大率ＥＲｒを算出する。そして、Ｓ３７５にて、ＣＰＵ３１０は、算出された最大拡大率ＥＲｒを、採用すべき拡大率ＥＲとして決定して、Ｓ３４０に処理を進める。
【００６４】
Ｓ３３０にて、注目指定画像内のオブジェクトが文字でない場合には（Ｓ３３０：ＮＯ）、ＣＰＵ３１０は、Ｓ３３５にて、拡大率決定処理を実行する。この拡大率決定処理は、上述した図６の拡大率決定処理と同じ処理である。ただし、指定画像が複数個である場合に行われるＳ３３５の拡大率決定処理では、配置可能領域が、出力画像の全体である場合と、既に配置位置が決定済みの拡大画像が配置されるべき領域を出力画像の全体から除いた領域である場合と、がある。拡大率決定処理が終了すると、ＣＰＵ３１０は、Ｓ３４０に処理を進める。
【００６５】
Ｓ３４０では、ＣＰＵ３１０は、Ｓ３３５の拡大決定処理、あるいは、Ｓ３７５の処理にて、決定された注目指定画像の拡大率ＥＲが１より大きいか否かを判断する。本実施例では、出力画像が印刷される用紙のサイズ（例えば、Ａ３やＡ４）は、読取データの生成に用いられる原稿のサイズ（例えば、Ａ４）以上であることが想定されている。このために、配置可能領域が出力画像の全体である場合には、注目指定画像の拡大率ＥＲが１以下になることはないと想定されている。出力画像への配置位置が決定済みの拡大画像があることによって、配置可能領域が出力画像の全体より小さい場合に、注目指定画像の拡大率ＥＲが１以下になり得る。
【００６６】
注目指定画像の拡大率ＥＲが１以下である場合には（Ｓ３４０：ＮＯ）、ＣＰＵ３１０は、Ｓ３５０にて、注目指定画像を配置する出力画像を、現在の出力画像から次ページの出力画像に変更して、処理をＳ３３０に戻す。この結果、現在の注目指定画像は、別の出力画像に配置される。こうすることによって、指定画像が拡大されることなく、出力画像に配置されることを防止することができる。
【００６７】
注目指定画像の拡大率ＥＲが１より大きい場合には（Ｓ３４０：ＹＥＳ）、ＣＰＵ３１０は、Ｓ３８０にて、注目指定画像の拡大率ＥＲと、注目指定画像を回転するか否かと、注目指定画像の拡大画像の配置位置と、出力画像のページ番号と、を揮発性記憶装置１２０に記録する。
【００６８】
Ｓ３８５では、ＣＰＵ３１０は、全ての指定画像を処理したか否かを判断する。未処理の指定画像がある場合には（Ｓ３８５：ＮＯ）、ＣＰＵ３１０は、Ｓ３２５に戻って、未処理の指定画像を注目指定画像として選択する。全ての指定画像を処理した場合には（Ｓ３８５：ＹＥＳ）、ＣＰＵ３１０は、配置処理を終了する。
【００６９】
図７に加えて、図８を参照して、図４の４個の指定画像８５Ａ〜８８Ａが配置される場合の配置処理を、さらに、説明する。図８は、配置処理について説明するための図である。配置順序が１番目の指定画像８７Ａ（図４（Ｃ））の拡大画像８７Ｒは、上述したように、図７（Ｂ）に示すように１ページ目の出力画像９０Ａに配置されることが決定される。従って、配置順序が２番目の指定画像８６Ａ（図４（Ｂ））が注目指定画像である場合には、配置可能領域は、図７（Ｂ）でハッチングされた領域ＡＰ２である。したがって、この場合の配置可能領域ＡＰ２のサイズ、すなわち、縦方向の画素数および横方向の画素数は、それぞれ、ＡＨ１、ＡＷ２である。
【００７０】
そして、配置順序が２番目の指定画像８６Ａは、画像内のオブジェクトが文字ではないので（Ｓ３３０：ＮＯ）、図６の拡大率決定処理が実行される（Ｓ３３５）。そして、拡大率決定処理によって、２番目の指定画像８６Ａの拡大率ＥＲと回転要否が決定される。この例では、図８（Ａ）に示すように、２番目の指定画像８６Ａは、９０度回転することが決定される（図６のＳ４５０）。そして、２番目の指定画像８６Ａの拡大率は、指定画像８６Ａを９０度回転後に拡大した拡大画像８６Ｒ（図８（Ａ））の横方向の画素数が、配置可能領域ＡＰ２の横方向の画素数ＡＷ２と一致するように決定される。すなわち、指定画像８６Ａの拡大率は、（ＡＷ２／ＳＨ２）に決定される（図６のＳ４６０）。また、出力画像９０Ａへの拡大画像８６Ｒの配置位置として、配置可能領域ＡＰ２の左上の画素Ｐ２の座標が記録される。この結果、配置順序が２番目の指定画像８６Ａの拡大画像８６Ｒは、図８（Ａ）に示すように１ページ目の出力画像９０Ａに配置されることが決定される。
【００７１】
そして、配置順序が３番目の指定画像８５Ａ（図４（Ａ））が注目指定画像である場合には、最初の配置可能領域は、図８（Ａ）でハッチングされた領域ＡＰ３である。したがって、この場合の配置可能領域ＡＰ３のサイズ、すなわち、縦方向の画素数および横方向の画素数は、それぞれ、ＡＨ２、ＡＷ２である。
【００７２】
配置順序が３番目の指定画像８５Ａは、画像内のオブジェクトが文字ではないので（Ｓ３３０：ＮＯ）、図６の拡大率決定処理が実行される（Ｓ３３５）。そして、拡大率決定処理によって、３番目の指定画像８５Ａの拡大率ＥＲと回転要否が決定される。ここで、１ページ目の出力画像９０Ａには既に２個の拡大画像８６Ｒ、８７Ｒが配置されることが決定されているので、配置可能領域ＡＰ３のサイズは比較的小さい。このために、３番目の指定画像８５Ａの拡大率ＥＲは、１以下の値に決定される。
【００７３】
そして、３番目の指定画像８５Ａの拡大率ＥＲは、１以下であるので（Ｓ３４０：ＮＯ）、３番目の指定画像８５Ａの拡大画像が配置される出力画像は、１ページ目の出力画像から２ページ目の出力画像に変更される（Ｓ３５０）。このために、配置可能領域が、２ページ目の出力画像９０Ｂ（図８（Ｂ））の全体に変更されて、図６の拡大率決定処理が再び実行される（Ｓ３３５）。この結果、３番目の指定画像８５Ａの拡大率ＥＲと回転要否が決定される。この例では、図８（Ｂ）に示すように、３番目の指定画像８５Ａは、回転しないことが決定される（図６のＳ４７０）。そして、３番目の指定画像８５Ａの拡大率は、指定画像８５Ａを回転せずに拡大した拡大画像８５Ｎ（図８（Ｂ））の縦方向の画素数が、出力画像９０Ｂの全体の縦方向の画素数ＡＨ１と一致するように決定される。すなわち、指定画像８５Ａの拡大率は、（ＡＨ１／ＳＨ１）に決定される（図６のＳ４８０）。また、出力画像９０Ｂへの拡大画像８５Ｎの配置位置として、出力画像９０Ｂの左上の画素Ｐ３の座標が記録される。この結果、配置順序が３番目の指定画像８５Ａの拡大画像８５Ｎは、図８（Ｂ）に示すように２ページ目の出力画像９０Ｂに配置されることが決定される。
【００７４】
そして、配置順序が４番目の指定画像８８Ａ（図４（Ｄ））が注目指定画像である場合には、最初の配置可能領域は、図８（Ｂ）でハッチングされた領域ＡＰ４である。したがって、この場合の配置可能領域ＡＰ４のサイズ、すなわち、縦方向の画素数および横方向の画素数は、それぞれ、ＡＨ１、ＡＷ３である。
【００７５】
配置順序が４番目の指定画像８８Ａは、画像内のオブジェクトが文字であるので（Ｓ３３０：ＹＥＳ）、指定画像８８Ａの形状に拘わらずに（例えば、縦方向に長細い形状であるか横方向に長細い形状であるかなどに拘わらずに）、９０度回転されることに決定される（Ｓ３５５）。そして、図８（Ｂ）に示すように、４番目の指定画像８８Ａの拡大率は、指定画像８８Ａを９０度回転後に拡大した拡大画像８８Ｒ（図８（Ｂ））の横方向の画素数が、配置可能領域ＡＰ４の横方向の画素数ＡＷ３と一致するように決定される。すなわち、指定画像８８Ａの拡大率は、（ＡＷ３／ＳＨ４）に決定される（図４のＳ３７５）。また、出力画像９０Ｂへの拡大画像８８Ｒの配置位置として、配置可能領域ＡＰ４の左上の画素Ｐ４の座標が記録される。この結果、配置順序が４番目の指定画像８８Ａの拡大画像８６Ｒは、図８（Ｂ）に示すように２ページ目の出力画像９０Ｂに配置されることが決定される。
【００７６】
以上のように、この例では、図５の配置処理によって、図８（Ａ）、図８（Ｂ）にそれぞれ示す２ページ分の出力画像９０Ａ、９０Ｂが生成されることが決定される。
【００７７】
配置処理が終了すると、図２のＳ２２５では、ＣＰＵ３１０は、拡大処理を実行する。拡大処理は、１個以上の指定画像を表す１個以上の指定画像データを用いて、１個以上の指定画像が拡大された１個の拡大画像を表す１個以上の拡大画像データを生成する処理である。
【００７８】
図９は、拡大処理のフローチャートである。Ｓ５００では、ＣＰＵ３１０は、１個以上の指定画像の中から、１個の注目指定画像を選択する。Ｓ５１０では、ＣＰＵ３１０は、注目指定画像を回転するか否かを判断する。回転するか否かは、上述したように、配置処理において、指定画像ごとに決定されている。
【００７９】
注目指定画像を回転する場合には（Ｓ５１０：ＹＥＳ）、ＣＰＵ３１０は、Ｓ５１５にて、注目指定画像を左周りに９０度回転する回転処理を、注目指定画像を表す指定画像データに対して実行して、Ｓ５２０に処理を進める。この結果、回転済みの注目指定画像を表す回転済みの指定画像データが生成される。注目指定画像を回転しない場合には（Ｓ５１０：ＮＯ）、ＣＰＵ３１０は、回転処理を行うことなく、Ｓ５２０に処理を進める。
【００８０】
Ｓ５２０では、ＣＰＵ３１０は、注目指定画像内のオブジェクトが文字であるか否かを判断する。図２のＳ２１５のオブジェクト判定処理での判定結果に従って、注目指定画像内のオブジェクトは文字であるか否かが判断される。
【００８１】
注目指定画像内のオブジェクトが文字である場合には（Ｓ５２０：ＹＥＳ）、ＣＰＵ３１０は、Ｓ５３０にて、拡大方法をニアレストネイバー法に決定する。ニアレストネイバー法は、拡大後の画像内の１個の注目画素の色値を、拡大前の画像内から選択される１個の対応画素の色値に決定する拡大方法である。対応画素は、拡大後の画像と拡大前の画像とを同じ寸法の画像として重ねた場合に、注目画素と最も近い位置にある画素である。ニアレストネイバー法では、拡大後の画像において、エッジの先鋭度（シャープネス）がバイキュービック法と比較して低下しにくい。したがって、ニアレストネイバー法を用いて文字を含む指定画像を拡大した場合には、生成される拡大画像内の文字の読みやすさを、後述するバイキュービック法を用いる場合より向上することができる。
【００８２】
注目指定画像内のオブジェクトが文字でない場合には（Ｓ５２０：ＮＯ）、ＣＰＵ３１０は、Ｓ５４０にて、拡大方法をバイキュービック法に決定する。バイキュービック法は、拡大後の画像内の１個の注目画素の色値を、拡大前の画像内から選択される複数個の対応画素の色値を用いた公知の演算式を用いて算出する拡大方法である。複数個の対応画素は、拡大後の画像と拡大前の画像とを同じ寸法の画像として重ねた場合に、注目画素と最も近い位置にある縦４個×横４個のブロック内の１６個の画素である。バイキュービック法では、拡大後の画像において、画像の階調性がバイキュービック法と比較して良好に表現される。したがって、バイキュービック法を用いて、写真や描画などの文字以外のオブジェクトを含む指定画像を拡大した場合には、生成される拡大画像の見栄えを、ニアレストネイバー法を用いる場合より向上することができる。
【００８３】
Ｓ５５０では、ＣＰＵ３１０は、ニアレストネイバー法とバイキュービック法とのうちの決定された方法を用いて、注目指定画像を拡大する拡大処理を実行する。この結果、注目指定画像を拡大した拡大画像を表す拡大画像データが生成される。
【００８４】
Ｓ５６０では、ＣＰＵ３１０は、全ての指定画像を処理したか否かを判断する。未処理の指定画像がある場合には（Ｓ５６０：ＮＯ）、ＣＰＵ３１０は、Ｓ５００に戻って、未処理の指定画像を注目指定画像として選択する。全ての指定画像を処理した場合には（Ｓ５６０：ＹＥＳ）、ＣＰＵ３１０は、拡大処理を終了する。この時点で、図３（Ａ）の読取画像８０を表す読取画像データが処理対象である例では、図４（Ａ）〜（Ｄ）の４個の指定画像８５Ａ〜８８Ａが拡大された複数個の拡大画像８５Ｎ、８６Ｒ、８７Ｒ、８８Ｒを表す複数個の拡大画像データが生成される。
【００８５】
拡大処理が終了すると、図２のＳ２３０では、ＣＰＵ３１０は、出力画像生成処理を実行する。出力画像生成処理は、１個以上の出力画像を表す１個以上の出力画像データを生成する処理である。具体的には、配置処理によって各指定画像について決定された出力画像のページ番号と出力画像内の配置位置とに基づいて拡大画像が配置されることによって、１個以上の出力画像を表す１個以上の出力画像データを生成される。具体的には、Ｓ２１０にて、図４の４個の指定画像８５Ａ〜８８Ａが抽出される例では、図８に示す２個の出力画像９０Ａ、９０Ｂを表す２個の出力画像データが生成される。
【００８６】
Ｓ２３５では、ＣＰＵ３１０は、生成された出力画像データを、ネットワーク５００を介して、複合機１００に送信する。Ｓ１２０では、複合機１００のＣＰＵ１１０は、サーバ３００から出力画像データを受信する。Ｓ１３０では、ＣＰＵ１１０は、出力画像データを用いて印刷データを生成し、生成した印刷データを印刷実行部１７０に供給する。印刷実行部１７０は、受信した印刷データに従って、画像を印刷する。例えば、図８に示す２個の出力画像９０Ａ、９０Ｂが２枚の用紙に印刷される。
【００８７】
以上説明した実施例によれば、読取画像８０内に含まれる複数個の囲み線８５〜８８によってそれぞれ指定される指定画像８５Ａ〜８８Ａ（図４）が抽出される（図２のＳ２１０）。図２のＳ２２５の拡大処理では、複数個の指定画像８５Ａ〜８８Ａが拡大された複数個の拡大画像８５Ｎ、８６Ｒ、８７Ｒ、８８Ｒを表す複数個の拡大画像データが生成される。図２の２２０では、出力画像９０Ａ、９０Ｂ内における複数個の拡大画像８５Ｎ、８６Ｒ、８７Ｒ、８８Ｒの配置が決定される（図７、図８）。そして、複数個の拡大画像データを用いて、配置処理によって決定される配置に従って、複数個の拡大画像８５Ｎ、８６Ｒ、８７Ｒ、８８Ｒを含む出力画像９０Ａ、９０Ｂを表す出力画像データが生成される（図２のＳ２３０）。この結果、読取画像８０内の複数個の指定画像８５Ａ〜８８Ａが適切に表現された出力画像データを生成することができる。したがって、例えば、ユーザは、原稿内の拡大したい領域を囲み線で囲み、当該原稿を複合機１００に読み取らせることで、容易に所望の領域内の画像が拡大されて表現された出力画像を複合機１００に印刷させることができる。例えば、ユーザが指定画像ごとに拡大率の指定などの煩わしい操作を行うことなく、指定画像が適切に拡大されて、適切に配置された出力画像を複合機１００に印刷させることができる。また、ユーザは、原稿内の必要な部分だけが抽出されて表現された出力画像を容易に入手することができる。例えば、一般的な拡大コピーでは、スキャナの原稿台に対する原稿の配置が不適切である場合などには、原稿内の不要な部分が大部分を占める出力画像が出力される可能性や、原稿内の必要な部分の一部または全部を含まない出力画像が出力される可能性があった。本実施例では、このような不具合の発生を抑制することができる。
【００８８】
また、上記実施例の図５の配置処理では、指定画像のサイズと配置可能領域のサイズとに応じて、指定画像ごとに拡大率が決定されている（Ｓ３０５、Ｓ３３０、Ｓ３６０〜Ｓ３７５）ので、複数個の指定画像の拡大率は、互いに異なり得る。すなわち、第１の指定画像（例えば、指定画像８７Ａ）を第１の拡大率（例えば、（ＡＨ１／ＳＷ３））で拡大することによって、第１の拡大画像データが生成される。また、第２の指定画像（例えば、指定画像８６Ａ）を前記第１の拡大率とは異なる第２の拡大率（例えば、（ＡＷ２／ＳＨ２））で拡大することによって、第２の拡大画像データが生成される。この結果、複数個の指定画像のそれぞれが適切な拡大率で拡大される。したがって、複数個の指定画像がより適切に表現された出力画像データを生成することができる。
【００８９】
さらに、上記実施例の配置処理では、複数個の指定画像８５Ａ〜８８Ａのそれぞれについて、指定画像を回転することによって、指定画像が出力画像９０Ａ、９０Ｂに配置される際の指定画像の向きを変更するか否かが判断される（図５のＳ３３０、Ｓ３５５、図６のＳ４４０〜Ｓ４７０）。そして、図９の拡大処理では、回転すると判断された指定画像を表す指定画像データに対して回転処理と拡大処理とが実行される（図９のＳ５１５、Ｓ５５０）。一方、回転しないと判断された指定画像を表す指定画像データに対して回転処理を実行せずに拡大処理が実行される（図９のＳ５５０）。このように、指定画像ごとに回転するか否かが判断されるので、複数個の指定画像がより適切に表現された出力画像データを生成することができる。例えば、各指定画像の拡大画像を配置可能領域に配置する場合に、なるべく拡大率ＥＲが大きくなるように、適切に拡大画像を配置することができる。
【００９０】
さらに、上記実施例の配置処理では、複数個の指定画像８５Ａ〜８８Ａのサイズ、具体的には、基準画素数Ｍに基づいて、出力画像９０Ａ、９０Ｂ内に、複数個の指定画像８５Ａ〜８８Ａの拡大画像が配置される配置順序が決定される（図５のＳ３２０）。そして、当該配置順序に従って、複数個の拡大画像が出力画像９０Ａ、９０Ｂ内に配置される位置が決定される（図５のＳ３２５〜Ｓ３８０）。このように、適切な順序で複数個の拡大画像が出力画像内に配置されるので、複数個の指定画像８５Ａ〜８８Ａがより適切に表現された出力画像データを生成することができる。例えば、上述したように、特定の指定画像の拡大率ＥＲが過度に小さくなることを抑制することができる。
【００９１】
さらに、上記実施例では、１個の出力画像は、１個の印刷媒体（例えば、Ａ４の用紙）に印刷するための画像である。そして、特定の条件が満たされる場合には、複数個の拡大画像が１個の出力画像内に配置される。例えば、２個の指定画像を出力画像に配置する場合において、２個の指定画像について算出される拡大率ＥＲがいずれも１より大きい場合には（Ｓ３４０：ＹＥＳ）、２個の指定画像の２個の拡大画像は、１個の出力画像に配置される。一方、特定の条件が満たされない場合には、複数個の拡大画像は、複数個の出力画像内に配置される。例えば、２個の指定画像を出力画像に配置する場合において、２個目の指定画像について算出される拡大率ＥＲが１以下である場合には、１個目の指定画像の拡大画像は、１ページ目の出力画像に配置され、２個目の指定画像の拡大画像は、２個目の出力画像に配置される。この結果、指定画像を適切に拡大できない可能性を低減して、複数個の指定画像がより適切に表現された出力画像データを生成することができる。
【００９２】
また、生成される出力画像データは、出力画像９０Ａ、９０Ｂを用紙に印刷するための印刷実行部としての複合機１００に出力される（図２のＳ２３５）。そして、ＣＰＵ３１０は、複合機１００から送信される用紙のサイズに関する情報に基づいて、用紙のサイズを特定する（図５のＳ３００）。そして、ＣＰＵ３１０は、用紙のサイズに基づいて決定される出力画像９０Ａの縦方向のサイズ（すなわち、縦方向の画素数ＡＨ１）と、生成すべき拡大画像８７Ｒの第１方向のサイズと、が一致するように、配置順序が１番目の指定画像８７Ａの拡大率を決定する（図７（Ｂ））。この結果、指定画像８７Ａが可能な限り大きく拡大された拡大画像８７Ｒが出力画像９０Ａに配置される。したがって、指定画像８７Ａが見やすく拡大されて表現された出力画像データを生成することができる。
【００９３】
そして、ＣＰＵ３１０は、出力画像のうち、指定画像８７Ａの拡大画像８７Ｒが配置される領域を除いた領域ＡＰ２（図７（Ｂ））の横方向のサイズ（すなわち、横方向の画素数ＡＷ１）と、生成すべき拡大画像８６Ｒ（図８（Ａ））の横方向のサイズと、が一致するように、配置順序が２番目の指定画像８６Ａの拡大率を決定する（図８（Ａ））。この結果、２個の指定画像８７Ａ、８６Ａが可能な限り大きく拡大された２個の拡大画像８７Ｒ、８６Ｒが出力画像９０Ａに配置される。したがって、複数個の指定画像が見やすく拡大されて表現された出力画像データを生成することができる。
【００９４】
さらに、上記実施例の配置処理では、指定画像内のオブジェクトが文字である場合には（図５のＳ３３０：ＹＥＳ）、当該指定画像の形状に拘わらずに、指定画像内の文字が特定の方向を向くように、指定画像を回転するか否かが決定される（図５のＳ３５５）この結果、出力画像９０Ａ、９０Ｂ内の文字の方向を揃えることができるので、文字を含む指定画像が読みやすく表現された出力画像データを生成することができる。
【００９５】
さらに、上記実施例の図９の拡大処理では、指定画像に含まれるオブジェクトが文字である場合には（図９のＳ５２０：ＹＥＳ）、第１の拡大処理（具体的には、ニアレストネイバー法を用いた拡大処理）が用いられる（図９のＳ５３０）。そして、指定画像に含まれるオブジェクトが文字でない場合には（図９のＳ５２０：ＮＯ）、第１の拡大処理とは異なる第２の拡大処理（具体的には、バイキュービック法を用いた拡大処理）が用いられる（図９のＳ５４０）。この結果、指定画像内のオブジェクトの種類に応じて、指定画像がより見やすく拡大されて表現された出力画像データを生成することができる。例えば、出力画像内の文字を含む画像がぼけて読みがたい画像となることを防止することができる。あるいは、出力画像内の写真や描画を含む画像が、階調性が損なわれた画質の低い画像となることを防止することができる。
【００９６】
Ｆ．変形例：
（１）上記実施例では、ユーザが指定画像を指定するためのマーカとして、囲み線が用いられている。これに代えて、例えば、指定画像に含むべきオブジェクトを指し示す矢印がマーカとして用いられても良い。あるいは、矩形の指定画像の４つの角の位置を示すカギ括弧が、マーカとして用いられても良い。
【００９７】
（２）上記実施例では、オブジェクトが文字である指定画像に対する第１の拡大処理として、ニアレストネイバー法が採用され、オブジェクトが文字である指定画像に対する第２の拡大処理として、バイキュービック法が用いられている。これに代えて、例えば、第１の拡大処理として、所定の拡大方法（例えば、バイキュービック法やバイリニア法）を用いて拡大画像を生成した後に、公知のエッジ強調処理を行う方法が採用されても良い。また、第２の拡大処理として、バイリニア法が採用されても良い。一般的には、第１の拡大処理には、描画や写真を表す画像の拡大よりも文字を表す画像の拡大に適した方法が採用されることが好ましく、第１の拡大処理には、文字を表す画像の拡大よりも描画や写真を表す画像の拡大に適した方法が採用されることが好ましい。例えば、第１の拡大処理は、第２の拡大処理よりも画像内のエッジの先鋭度が高くなる拡大処理であることが好ましい。また、第２の拡大処理は、第１の拡大処理よりも画像内の階調性の表現の表現に優れた画像処理であることが好ましい。
【００９８】
（３）上記実施例では、１個の原稿を読み取って得られる１個の読取画像データを用いて、１個以上の出力画像データが生成される。これに代えて、複数個の原稿を読み取って得られる複数個の読取画像データを用いて、１個以上の出力画像データが生成されても良い。この場合には、図２のＳ２００にて、複数個の読取画像データが取得される。そして、Ｓ２１０にて、複数個の読取画像データによって表される複数個の読取画像のそれぞれから、指定画像が抽出される。そして、抽出画像が抽出された後は、上記実施例と同様の処理が実行される。
【００９９】
（４）上記実施例では、指定画像ごとに拡大率が決定されている。これに代えて、全ての指定画像が同じ拡大率で拡大された複数個の拡大画像が、出力画像９０Ａに配置されても良い。
【０１００】
（５）上記実施例では、拡大率の上限は設定されていないが、拡大率の上限（例えば、２００％）が設定されていても良い。例えば、指定画像を上限の拡大率で拡大できる場合には、当該指定画像の拡大率は上限の拡大率で拡大されても良い。指定画像を上限の拡大率で拡大できない場合には、上記実施例と同様に、配置可能領域の縦方向の画素数および縦方向の画素数のうちの一方と、生成すべき拡大画像の縦方向の画素数および縦方向の画素数のうちの一方とが、一致するように、拡大率が決定されても良い。こうすれば、過度に高い拡大率で指定画像が拡大されることや、過度に多数の出力画像が生成されることを抑制できる。
【０１０１】
（６）上記実施例では、出力画像データの用途は、印刷であるが、これに限らず、任意の用途が採用可能である。例えば、複合機１００のＣＰＵ１１０は、取得した処理済データを、将来に利用するために、不揮発性記憶装置１３０に格納してもよい。また、出力画像データは、複合機１００以外の装置、例えば、ネットワーク５００に接続された他のサーバやユーザのパーソナルコンピュータ（図示省略）に、出力されてもよい。
【０１０２】
（７）上記実施例のサーバ３００のＣＰＵ３１０が実行する処理の一部は、適宜に省略され得る。例えば、図２のオブジェクト判定処理は省略され得る。この場合には、指定画像は、指定画像内のオブジェクトの種類によって区別されることなく、同じ処理によって拡大率や拡大方法が決定されても良い。また、複数個の指定画像は、回転されることなく、常に同じ向きで拡大されても良い。
【０１０３】
（８）上記実施例のサーバ３００が実行する画像処理は、サーバ３００と異なる種類の装置（例えば、複合機１００、プリンタ、デジタルカメラ、スキャナ、パーソナルコンピュータ、携帯電話）によって実現されてもよい。例えば、複合機１００のＣＰＵ１１０は、サーバ３００に読取データを送信することなく、上記実施例にてサーバ３００が実行する画像処理を全て実行しても良い。また、プリンタは、スキャナやデジタルカメラから読取画像データを取得し、当該読取画像データを用いて、上記実施例にてサーバ３００が実行する画像処理を実行しても良い。デジタルカメラやスキャナは、自身が作成した読取画像データを用いて、上記実施例にてサーバ３００が実行する画像処理を実行し、生成した出力画像データを、複合機１００やプリンタなどの印刷実行部に送信しても良い。このように、読取画像データは、デジタルカメラを用いて、原稿を光学的に読み取ることによって生成されても良い。
【０１０４】
（９）サーバ３００は、ネットワークを介して互いに通信可能な複数個の装置（例えば、コンピュータ）を含んでも良い。サーバ３００が実行する画像処理は、複数個の装置によって、一部ずつ実行され得る。この場合には、複数個の装置が、１個の画像処理装置として機能する。
【０１０５】
（１０）上記各実施例において、ハードウェアによって実現されていた構成の一部をソフトウェアに置き換えるようにしてもよく、逆に、ソフトウェアによって実現されていた構成の一部あるいは全部をハードウェアに置き換えるようにしてもよい。例えば、サーバ３００が実行する画像処理の全部または一部は、論理回路を含む専用のハードウェア回路によって実現されても良い。
【０１０６】
以上、実施例、変形例に基づき本発明について説明してきたが、上記した発明の実施の形態は、本発明の理解を容易にするためのものであり、本発明を限定するものではない。本発明は、その趣旨並びに特許請求の範囲を逸脱することなく、変更、改良され得ると共に、本発明にはその等価物が含まれる。
【符号の説明】
【０１０７】
１００...複合機、１１０...ＣＰＵ、１２０...揮発性記憶装置、１３０...不揮発性記憶装置、１３２...コンピュータプログラム、１４０...表示部、１５０...操作部、１６０...読取実行部、１７０...印刷実行部、１８０...通信インタフェース、１９０...データ処理部、３００...サーバ、３１０...ＣＰＵ、３２０...揮発性記憶装置、３３０...不揮発性記憶装置、３３２...コンピュータプログラム、３８０...通信インタフェース、３９０...画像処理部、５００...ネットワーク、９００...システム
【図１】
0006303897.tif 000002
【図２】
0006303897.tif 000003
【図３】
0006303897.tif 000004
【図４】
0006303897.tif 000005
【図５】
0006303897.tif 000006
【図６】
0006303897.tif 000007
【図７】
0006303897.tif 000008
【図８】
0006303897.tif 000009
【図９】
0006303897.tif 000010