説明

画像処理装置、画像処理システム、画像処理プログラムおよび記憶媒体

【課題】検索の結果得られた画像を、閲覧や印刷に対して効率的にレイアウト可能とする。
【解決手段】検索結果取得部は、画像処理装置の内部または外部で画像検索を行った結果である複数の画像データと、検索順位を含む検索結果属性データとを取得する。出力画像決定部が検索順位Nまでの画像データを出力画像に用いる画像データとして決定し、レイアウト決定部が決定された画像データをページに対してレイアウトする。レイアウト決定部は、画像データの検索順位に従い、順位が高い順に画像データを並べることで、画像データのレイアウトを生成する。出力画像生成部は、決定したレイアウトに従い、印刷のための出力画像を生成する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像データのページに対するレイアウトを生成する画像処理装置、画像処理システム、画像処理プログラムおよび記憶媒体に関する。
【背景技術】
【0002】
インターネットなどのネットワーク上で検索された画像や、ローカルなストレージから検索された画像を、印刷設定に応じたページにレイアウトして印刷出力する技術が知られている。特許文献1には、入力された検索条件に合致する画像データそれぞれのサムネイル画像を生成し、生成されたサムネイル画像をページにレイアウトした一覧サムネイル画像を印刷出力する技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【0003】
しかしながら、従来では、検索した画像がレイアウトされる各ページの効率的な利用が考慮されていなかったという問題点があった。すなわち、従来では、検索結果の画像をページ内に収まるように拡大縮小などの加工を施し単純に並べるだけであり、閲覧や印刷に対する効率を考慮したものではなかった。そのため、検索の際の検索ワードのヒット数や画像の類似度など、検索結果を示す情報を反映させた画像レイアウトを生成し印刷出力することが求められている。
【0004】
本発明は、上記に鑑みてなされたものであって、検索の結果得られた画像を、閲覧や印刷に対して効率的にレイアウト可能とすることを目的とする。
【課題を解決するための手段】
【0005】
上述した課題を解決し、目的を達成するために、本発明は、画像検索手段で検索された画像データを取得すると共に、少なくとも画像データの検索順位を含む検索結果属性データを画像検索手段から取得する検索結果取得手段と、検索された画像データのうち出力画像に用いる画像データを決定する出力画像決定手段と、出力画像の画像形成を行う印刷用紙によるページに対する画像データのレイアウトを、検索結果属性データに従い決定するレイアウト決定手段と、レイアウト決定手段で決定されたレイアウトに従って出力画像に用いる画像データを配置して出力画像を生成する出力画像生成手段とを有することを特徴とする。
【0006】
また、本発明は、画像検索手段で検索された画像データを取得すると共に、少なくとも画像データの検索順位を含む検索結果属性データを画像検索手段から取得する検索結果取得ステップと、検索された画像データのうち出力画像に用いる画像データを決定する出力画像決定ステップと、出力画像の画像形成を行う印刷用紙によるページに対する画像データのレイアウトを、検索結果属性データに従い決定するレイアウト決定ステップと、レイアウト決定ステップで決定されたレイアウトに従って出力画像に用いる画像データを配置して出力画像を生成する出力画像生成ステップとをコンピュータに実行させることを特徴とする。
【発明の効果】
【0007】
本発明によれば、検索の結果得られた画像を、閲覧や印刷に対して効率的にレイアウトすることが可能となるという効果を奏する。
【図面の簡単な説明】
【0008】
【図1】図1は、本発明に適用可能な画像処理装置の一例の構成を示すブロック図である。
【図2】図2は、第1の実施形態による画像処理装置の機能を概略的に示す一例の機能ブロック図である。
【図3】図3は、第1の実施形態による一例の画像処理方法を示すフローチャートである。
【図4】図4は、ブロックおよび行を説明するための略線図である。
【図5】図5は、ネクストフィットアルゴリズムを説明するための一例のフローチャートである。
【図6】図6は、ネクストフィットアルゴリズムを説明するための略線図である。
【図7】図7は、ネクストフィットアルゴリズムを説明するための略線図である。
【図8】図8は、第2の実施形態に適用可能な画像処理装置の機能を示す一例の機能ブロック図である。
【図9】図9は、第2の実施形態による画像データの一例のレイアウト方法を示すフローチャートである。
【図10】図10は、第3の実施形態に適用可能な画像処理装置の機能を示す一例の機能ブロック図である。
【図11】図11は、第3の実施形態による画像データの一例のレイアウト方法を示すフローチャートである。
【図12】図12は、1ページにレイアウトされた画像データに基づき外接矩形を求める例を示す略線図である。
【図13】図13は、ページ内の外接矩形を拡大する例を示す略線図である。
【図14】図14は、拡大処理の後にレイアウトが確定された例を示す略線図である。
【発明を実施するための形態】
【0009】
以下に添付図面を参照して、この発明にかかる画像処理装置の実施形態を詳細に説明する。図1は、本発明に適用可能な画像処理装置の一例の構成を示す。図1において、画像処理装置100は、例えば一般的なコンピュータを用いることができ、内部バス110に対してCPU(Central Processing Unit)101、I/O(Input/Output)部102、ROM(Read Only Memory)103、RAM(Random Access Memory)104、ハードディスクドライブ(HDD)105および通信I/F106が接続される。内部バス110に接続される各部は、内部バス110を介して互いにデータのやりとりを行うことができるようになっている。
【0010】
HDD105は、各種のプログラムやデータが格納される。例えばOS(Operating System)や、この発明に係る画像処理方法を実行するための画像処理プログラムや、画像処理プログラムで画像処理された画像データをプリンタ装置で印刷させるためのプリンタドライバプログラムなどがHDD105に格納される。また、データ入力部11から入力されたデータがHDD105に格納される。CPU101は、ROM103に予め記憶されたプログラムや、HDD105に格納されたプログラムに従い、RAM104をワークメモリとして用いて、この画像処理装置100の全体の動作を制御する。
【0011】
I/O部102は、データ入力部11および画像出力部12などを含む、この画像処理装置100に対するデータの入出力を管理する。また、I/O部102に対して、キーボードやポインティングデバイス(マウスなど)といった、ユーザ操作を受け付ける入力デバイスが接続される(図示しない)。通信I/F106は、インターネットやLAN(Local Area Network)といったネットワークとの通信を制御し、画像処理装置100と外部の機器とを接続する。
【0012】
データ入力部11は、何らかの画像検索手段で検索された複数の画像データが入力される。画像データの検索は、この画像処理装置100の外部の機器における画像検索手段で行ってもよいし、この画像処理装置100が持つ画像検索手段で行うこともできる。画像処理装置100が持つ画像検索手段は、例えばHDD105に格納される検索プログラムをCPU101が実行することで実現される。
【0013】
画像検索は、画像検索手段を有する機器の内部に蓄積される画像データを対象に行ってもよいし、ネットワークを介した外部に存在する画像データを対象としてもよい。例えば、この画像処理装置100が有する画像処理手段を用いる場合、HDD105に蓄積される画像データを対象として画像検索を行うことができる。また、通信I/F106を介してインターネットなどのネットワークに接続し、ネットワーク上の記憶装置に分散的に蓄積される画像データを画像検索の対象とすることもできる。さらには、HDD105と、ネットワーク上の記憶装置とをシームレスに検索することも可能である。
【0014】
データ入力部11には、さらに、画像データそれぞれの検索結果の属性を示す検索結果属性データが入力される。詳細は後述するが、検索結果属性データとしては、例えば、検索された画像データの検索順位を用いることができる。
【0015】
画像処理装置100は、データ入力部11に入力された、検索結果である複数の画像データと、これら複数の画像データそれぞれの検索結果属性データとに基づき、複数の画像データをページ単位に配置したレイアウト情報を生成する。生成されたレイアウト情報は、画像出力部12から外部に出力される。例えば、レイアウト情報をPDL(Page Description Language)で生成して出力することで、プリンタ装置などで直接的に印刷させることができる。このとき、レイアウト情報をPDF(Portable Document Format)形式で生成して出力することで、印刷や表示、他の機器への送信などを容易に行うことができる。なお、レイアウト情報のデータ形式は、これらに限られない。
【0016】
なお、上述では、既に存在する画像データを検索して検索結果の画像データおよび検索結果属性データをデータ入力部11に入力するように説明したが、これはこの例に限定されない。例えば、データ入力部11としてスキャナ装置などの画像入力装置を用い、スキャナ装置で原稿か読み取った画像データから所望の画像データを検索するようにしてもよい。
【0017】
また、上述では、画像出力部12が、画像データがページ単位にレイアウトされたレイアウト情報を出力するように説明したが、これはこの例に限定されない。例えば、画像出力部12が、レイアウト情報に従い用紙に印刷を行う画像形成装置を含んでいてもよい。さらに、画像入力装置であるデータ入力部11と、画像形成装置である画像出力部12とが一体的に構成された複合機であって、この複合機が画像処理装置100に接続されてなる画像処理システムであってもよい。
【0018】
<第1の実施形態>
次に、本発明の第1の実施形態について説明する。図2は、本第1の実施形態による画像処理装置100の機能を概略的に示す一例の機能ブロック図である。画像処理装置100は、検索結果取得部200と、出力画像決定部201と、レイアウト決定部202と、出力画像生成部203とを有する。検索結果取得部200は、画像データの検索結果を取得する。出力画像決定部201は、検索結果取得部200で取得された画像データから出力画像に用いる画像データを決定する。レイアウト決定部202は、図示されないプリンタドライバから印刷設定情報を取得し、出力画像決定部201で出力画像として決定された画像データのページに対するレイアウトを、取得した印刷設定情報に従い決定する。出力画像生成部203は、レイアウト決定部202で決定された画像データのページ毎のレイアウトに従い、出力画像データを生成する。
【0019】
これら検索結果取得部200、出力画像決定部201、レイアウト決定部202および画像出力生成部203は、CPU101で動作される画像処理プログラムにより実現される。この画像処理プログラムは、例えば、起動指示によりHDD105から読み出されてRAM104上に展開され、CPU101に読み込まれて実行される。
【0020】
図3は、本第1の実施形態による一例の画像処理方法を示すフローチャートである。先ず、ステップS10で、画像処理装置100内または外部の画像検索手段で画像データの検索が行われた検索結果である複数の画像データと、当該複数の画像データそれぞれに対する検索結果属性データとがデータ入力部11から入力され、検索結果取得部200により取得される。
【0021】
画像検索手段による画像データの検索方法としては、例えば特開2009−271577号公報に開示されるように、人物特徴データ(顔、色、形状など)を保管する人物特徴データベースに対して、例えば所望の画像データを検索条件として設定して検索を行い、類似度の高い順から検索結果の画像データに対して順序付けを行う方法が考えられる。
【0022】
この特開2009−271577号公報に開示される方法によれば、画像から切り出した移動体の画像データ、画像に含まれる形状、色、大きさ、動きなどから移動体を特定する情報、または、画像に含まれる顔の目、鼻、口の形状や位置などを特定する情報を、人物特徴データとして画像データから抽出する。この場合、検索結果属性データとして、当該複数の画像データそれぞれの検索順位、類似度、日時(撮影日時)、場所(撮影場所)などのリストを取得できる。
【0023】
一例として、画像データベースに蓄積される各画像データについて人物特徴データを抽出し、各画像データにそれぞれ関連付けて人物特徴データベースに保管する。所望の画像データから抽出した人物特徴データを検索条件として人物特徴データベースを検索し、得られた人物特徴データに関連付けられた画像データを、検索結果として取得する。画像データと共に、当該画像データの検索順位、類似度、日時(撮影日時)、場所(撮影場所)などの情報を、検索結果属性データとして取得できる。
【0024】
また、特定のデータベースではなく、インターネット上に分散して存在する画像データから、所望の画像データに類似する画像データを検索する技術も知られている。この場合、例えば検索結果として表示される画像データの表示順が検索順位または類似度に対応すると考えることができる。
【0025】
次のステップS11で、出力画像決定部201は、ステップS10で検索された画像データの中から、出力する画像データを決定する。ここでは、画像データの検索順位が第N位までの画像データを出力画像として決定するものとする。検索順位Nは、ユーザが入力デバイスを用いて直接的に入力したり、複数の検索順位候補から所望の順位Nを選択する。
【0026】
次に、ステップS12で、レイアウト決定部202は、ステップS11で決定された検索順位Nまでの出力画像の、各ページに対するレイアウトを決定する。このとき、レイアウト決定部202は、プリンタドライバの印刷設定情報を取得し、取得した印刷設定情報からページのサイズを示す情報を抽出する。そして、抽出されたページサイズ情報に従い、レイアウトの生成および決定を行う。
【0027】
また、本第1の実施形態では、出力画像が、レイアウトの先頭から、検索順位に従い配置される。なお、ここで検索順位は、画像データの類似度に対応するものとする。すなわち、検索条件に対してより類似度の高い画像データが、より検索順位が高いものとする。
【0028】
レイアウトが決定されると、次のステップS13で、出力画像生成部203は、決定されたレイアウトに従い出力画像を生成する。出力画像は、例えばPDLの形式で生成され、プリンタ装置に出力される。これに限らず、他のコンピュータで表示可能とするように、出力画像をPDFの形式や他の一般的な画像データの形式で生成してもよい。
【0029】
ここで、ステップS12に適用可能な、レイアウト決定部202により実行される、画像データのレイアウト生成方法について、図4〜図7を用いて説明する。本第1の実施形態に適用可能なレイアウト生成方法では、様々な大きさ(幅×高さ)を有する複数の矩形コンテンツを、幅W、高さHの配置領域上に配置する際のレイアウトを生成する。幅Wおよび高さHは、それぞれ有限の値を持ち、一度に表示を行うための領域(ページ)に対応する。ページは、例えば出力画像を用紙上に形成する場合、当該用紙における印刷可能範囲に対応する。また、配置領域の幅を持ち、横方向に隣接し上辺を揃えて並ぶ画像データのうち高さが最大の画像データの上下端で高さおよび配置領域における高さ方向の位置が規定される領域を、「ブロック」と呼び、ブロックとブロックとの区切りを、「行」と呼ぶ(図4参照)。
【0030】
ステップS12のレイアウト生成では、ページに対して、下記の条件を満たすように複数のコンテンツを配置する。
(1)コンテンツの形状が矩形であって、幅および高さが有理数値である。
(2)回転を許容しない。
(3)各コンテンツが互いに重ならない。
【0031】
本第1の実施形態では、ネクストフィット(Next-Fit)アルゴリズムを用いて、上記(1)〜(3)の条件を満たすように、各ページに対する画像データのレイアウトを決定する。図5は、ネクストフィットアルゴリズムを説明するための一例のフローチャートである。図5のフローチャートにおける各処理は、レイアウト決定部202において実行される。
【0032】
図5のフローチャートによる処理に先立って、出力画像として決定された検索順位Nまでの画像データが、検索順位の高い順位から低い順位に向けて並ぶようにソートされているものとする。なお、検索順位は、検索順位を示す値が大きい場合に低いものとする。すなわち、検索順位として順位Nが指定されている場合、検索順位「1」が最も検索順位が高く、検索順位「N」が最も検索順位が低い。
【0033】
先ず、ステップS20で、第mページ目の左上隅に、未配置の画像データのうちソート順で最も検索順位の高い検索順位n(1≦n≦N)の画像データを配置する。第1ページ目の場合には、出力画像として選択された検索順位Nまでの画像データのうち、検索順位「1」の画像データが配置されることになる。
【0034】
次のステップS21で、次の画像データ、すなわち検索順位(n+1)の画像データによる画像のサイズ(幅×高さ)が取得される。ここでの画像データによる画像のサイズは、プリンタドライバから取得した印刷設定情報に含まれる印刷解像度によるサイズである。なお、以下では、適宜、「画像データによる画像」を単に「画像データ」として記述する。
【0035】
次のステップS22で、ステップS21で取得された画像データによる画像のサイズと、配置済みの画像データによる画像のサイズとに基づき、最後に配置した画像データ(検索順位n)の右隣に検索順位(n+1)の画像データが配置可能か否かが判定される。
【0036】
このステップS22では、当該検索順位(n+1)の画像データによる画像の幅および高さに関して、それぞれ配置可能か否かが判定される。すなわち、検索順位nの画像データによる画像の右辺とページ右端との間が当該検索順位(n+1)の画像データによる画像の幅より狭いか、若しくは、検索順位nの画像データによる画像と当該検索順位(n+1)の画像データによる画像とで上辺とを一致させたときに当該検索順位(n+1)の下辺がページの下端を超える場合に、当該検索順位(n+1)の画像データが検索順位nの画像データの右隣に配置不可であると判定される。
【0037】
若し、ステップS22で、検索順位nの画像データの右隣に検索順位(n+1)の画像データが配置可能であると判定されたら、処理はステップS23に移行される。ステップS23では、検索順位(n+1)の画像データが検索順位nの画像データの右隣に配置される。
【0038】
一方、ステップS22で、検索順位nの画像データの右隣に検索順位(n+1)の画像データが配置不可能であると判定されたら、処理はステップS24に移行される。ステップS24では、当該検索順位(n+1)の画像データを、検索順位nの画像データが含まれるブロックの直下に配置すると仮定したときに、当該検索順位(n+1)の画像データがページ内に収まるか否かが判定される。若し、収まらない、すなわち、当該検索順位(n+1)の画像データによる画像の下辺がページの下端を超えると判定されたら、処理はステップS20に戻され、次のページの左上隅に、当該検索順位(n+1)の画像データが配置される。
【0039】
一方、ステップS24で、検索順位(n+1)の画像データがページ内に収まると判定されたら、処理はステップS25に移行され、当該検索順位(n+1)の画像データが検索順位nの画像データが含まれるブロックの直下、且つ、ページの左端に配置される。
【0040】
図6および図7を用いて、より具体的に説明する。図6に例示されるように、ブロック内に画像データ#1〜#5が既に配置されている状態で、画像データ#6を配置する例について考える。この場合、ステップS21で画像データ#6による画像のサイズが取得され、次のステップS22で、最後に配置した画像データ#5の右隣にこの画像データ#6が配置可能か否かが判定される。図6の例では、画像データ#5による画像の右辺とページの右端との間の長さよりも、新たに配置する画像データ#6による画像の幅の方が大きいため、配置不可であると判定される。
【0041】
画像データ#6が画像データ#5の右隣に配置できないと判定され、処理がステップS24に移行される。そして、画像データ#6を画像#1〜#5が配置されたブロックの直下に配置した際に、当該画像データ#6による画像が高さ方向でページ内に収まるか否かが判定される。図6の例では、画像データ#6による画像が高さ方向でページ内に収まるため、処理がステップS25に移行される。ステップS25では、図7に例示されるように、当該画像データ#6が画像データ#5の属するブロックの直下に対し、左に詰めて配置される。
【0042】
ステップS23またはステップS25で検索順位(n+1)の画像データが配置されたら、処理はステップS26に移行され、出力画像として選択された検索順位Nまでの画像データについて、全ての配置が完了したか否かが判定される。若し、完了したと判定されたら、図5のフローチャートによる一連の処理が終了される。一方、完了していない、すなわち、未だ配置されていない画像データが存在すると判定されたら、処理はステップS21に戻され、次の画像データすなわち検索順位(n+2)の画像データについて、同様に処理が行われる。
【0043】
なお、上述の処理において、ステップS21で次に配置する画像データのサイズを取得した際に、当該画像データの幅または高さがページのサイズを超える場合には、当該画像データをページ内に配置することができない。この場合、例えば、当該画像データのサイズを、当該画像データがページ内に収まるように縮小する。
【0044】
上述では、画像データの検索結果属性データとして検索順位(類似度)を用いたが、これはこの例に限定されない。検索結果属性データとして、類似度以外の情報、例えば画像データが写真データの場合、撮影日時や撮影場所を用いてレイアウトを決定することもできる。また、画像データの検索を、検索条件に応じた検索結果を評価してランク付けを行い、このランク付けした結果を最終的な検索結果として用いて行うような場合、このランクを示す情報を検索結果属性データとして用いてレイアウトを決定してもよい。
【0045】
このように、本第1の実施形態によれば、画像検索の結果として得られた複数の画像データを纏めた文書を自動的に生成および出力することができる。このとき、検索結果として画像データと共に得られる検索結果属性データに基づきページ割付やレイアウト決定を行うことで、例えば検索結果の画像一覧画面を印刷する場合と比べて、より効率的に活用可能な文書を作成することができる。
【0046】
<第2の実施形態>
次に、本発明の第2の実施形態について説明する。本第2の実施形態では、出力画像のレイアウトが複数ページに亘る場合に、ページ毎のレイアウトを効率的に決定する。
【0047】
一例として、20枚の画像データを配置可能なページに対して、検索結果の画像データのうち検索順位が第50位までの50枚の画像データをレイアウトする場合について考える。上述の第1の実施形態により、検索順位に従い、第1ページ目および第2ページ目にそれぞれ20枚の画像データが配置され、第3ページ目には10枚の画像データが配置されたものとする。この場合、第3ページ目は、ページの下半分などに無駄な空白が発生してしまい、効率的なレイアウトが行われない可能性がある。
【0048】
本第2の実施形態では、各ページの画像密度(ページ内で画像データが占める割合)を均等化することで、各ページの効率的な利用を図る。各ページの画像密度を均等化するレイアウト方法として、各ページに略同数の画像データを割り付ける方法がある。以下では、各ページに略同数の画像データを割り付ける例について説明する。
【0049】
図8は、本第2の実施形態に適用可能な画像処理装置100’の機能を示す一例の機能ブロック図である。なお、図8において、上述した図2と共通する部分には同一の符号を付し、詳細な説明を省略する。
【0050】
図8において、画像処理装置100’は、検索結果取得部200、レイアウト決定部202および出力画像生成部203を有すると共に、画像数決定部210および画像割り付け部211を有する。画像数決定部210は、検索結果取得部200で取得された画像データから出力画像に用いる画像データを決定し、決定された画像データの枚数に基づき、各ページに割り付ける画像データ数を決定する。画像割り付け部211は、各ページに対し、検索順位に従い画像データを割り付ける。レイアウト決定部202は、この画像割り付け部211による各ページに対する画像データの割り付け結果に基づき、各ページにおけるレイアウトを決定する。
【0051】
図9は、本第2の実施形態による画像データの一例のレイアウト方法を示すフローチャートである。先ず、ステップS40で、検索結果取得部200が画像検索の結果得られた画像データと、検索結果属性データとを取得する。例えば、上述と同様に、検索順位Nまでの画像データを出力画像データとして選択するものとする。検索結果取得部200は、画像データを取得する際に、取得した画像データ数を計数する。
【0052】
次のステップS41で、画像数決定部210は、各ページに割り付ける画像データ数を決定する。ここで、出力画像を形成するためのページ数の設定方法は、様々に考えられる。例えば、I/O部102に接続された入力デバイスを用いて、ユーザがページ数を入力することが考えられる。これに限らず、割り付けを行うページ数を、検索結果取得部200で計数された画像データ数とページのサイズとから算出するようにもできる。この場合、画像データによる画像のサイズを考慮すると、より好ましい。画像データによる画像のサイズは、検索結果属性データとして取得してもよいし、予め決められた値をデフォルト値として用いてもよい。
【0053】
次のステップS42で、画像割り付け部211が、ステップS41で決定されたページ毎の画像データ数に従い、ステップS40で取得された各画像データを、検索順位に従い各ページに割り付ける。すなわち、ステップS42では、ステップS40で取得された各画像データを、どのページに割り付けるかが決定される。
【0054】
このとき、各ページに対し、略均等に画像データを割り付ける。一例として、ステップS40で取得された画像データ数が50、ステップS41で決定されたページ数が3ページである場合に、画像割り付け部211は、第1〜第3ページに対し、それぞれ画像データを17枚、17枚および16枚、のように、各ページに対して略均等な数の画像データを割り付ける。また、画像割り付け部211は、画像データを、第1ページから検索順位に従い画像データの割り付けを行う。すなわち、第1ページ目には検索順位が1位から17位の画像データを割り付け、第2ページ目には検索順位が18位から34位の画像データを割り付ける。また、第3ページに対して、検索順位が35位から50位の画像データを割り付ける。
【0055】
画像データの各ページへの割り付けが完了すると、処理はステップS43に移行され、レイアウト決定部202により、各ページにおいて画像データのレイアウトが決定される。本第2の実施形態では、各ページにおいて、画像データの検索順位に従いレイアウトが生成される。ステップS43でのレイアウト決定に際し、図5のフローチャートを用いて説明したレイアウト決定方法を適用することができる。
【0056】
レイアウト対象のページに割り付けられた画像データのうち、検索順位が最も高い画像データが当該ページの左上に配置され(ステップS20)、次に配置される画像データによる画像のサイズが取得される(ステップS21)。取得された画像データによる画像のサイズと、既に配置された画像データによる画像のサイズとに基づき最後に配置された画像データの右隣に次に配置される画像データが配置可能か否かが判定され(ステップS22)、可能であれば当該画像データが最後に配置された画像データの右隣に配置される(ステップS23)。配置可能でなければ、処理がステップS24に移行される。
【0057】
ステップS24で、次に配置される画像データを最後に配置された画像データが属するブロックの直下に配置した際に、画像の高さに関してページ内に収まると判定されたら、ステップS25で、次に配置される画像データが最後に配置された画像データが属するブロックの直下に、左に詰めて配置される。ステップS23またはステップS25で画像データの配置が行われたら、当該ページに割り付けられた全画像データの配置が完了したか否かが判定され、完了したと判定されたら、処理をステップS20に戻し、次のページに対する画像データ配置に処理が移行される。
【0058】
ここで、本第2の実施形態においては、各ページに対して割り付ける画像データ数が決められている。そのため、例えば図5におけるステップS24において、次に配置する画像データを1ブロック下に配置した際に当該画像データによる画像が高さ方向でページ内に収まらない場合に、当該画像データを次のページに配置するという選択ができない。このような場合、例えば、当該ページに対するレイアウト処理を一旦中止させ、当該ページに割り付けられた全画像データによる画像のサイズを所定の割合で縮小して、再度、当該ページに対するレイアウト生成を試みることが考えられる。これに限らず、ページに収まらなかった画像データの画像のみを縮小してもよい。
【0059】
ステップS43で、各ページに対する画像データのレイアウトが決定されたら、処理はステップS44に移行される。ステップS44で、出力画像生成部203は、決定されたレイアウトに従い、各ページの出力画像を生成する。
【0060】
なお、上述では、各ページに割り付ける画像データ数を略均等としているが、これはこの例に限定されない。例えば、画像データによる画像の面積に基づいて各ページに対する画像データの割り付けを決定することでも、各ページの画像密度を均等化できる。
【0061】
例えば、検索結果取得部200は、検索結果として取得し出力画像として用いる画像データについて、画像データ毎に画像の面積を求める。画像数決定部210は、出力画像として用いる全画像データによる画像の面積の総和を求め、求められた全画像による面積の総和と、1ページ内に配置可能な画像の総面積とに基づき、出力画像を出力するページ数を決定する。1ページ内に配置可能な画像の総面積は、例えばページのサイズに応じて予め決めておく。
【0062】
画像割り付け部211は、出力画像として用いる全画像データから、検索順位に従い、ページ内に配置可能な画像の総面積を超えないように画像データを抽出し、各ページに対して割り付ける。レイアウト決定部202は、画像割り付け部211による画像データの各ページに対する割り付けに従い、各ページにおけるレイアウトを決定する。
【0063】
このように、本第2の実施形態では、各ページの画像密度が略均等になるように、各ページに対する画像データの割り付けを行っているので、各ページを効率的に利用することができる。また、各ページに対して割り付ける画像データ数が略均等になるようにしているので、最終ページに無駄な余白が生じることが防がれる。また、各ページに対して略均等な数が割り付けられた画像データが、ページ内で検索順位に従った順序で配置されるため、ページと検索順位とを関連付けて認識することが可能となる。
【0064】
<第3の実施形態>
次に、本発明の第3の実施形態について説明する。本第3の実施形態は、各ページの画像密度を均等化するレイアウト方法の別の例である。本第3の実施形態では、各ページにレイアウトされた画像データによる画像のサイズを変更してレイアウトを確定することで、各ページの画像密度を均等化し、各ページの効率的な利用を図る。
【0065】
図10は、本第3の実施形態に適用可能な画像処理装置100”の機能を示す一例の機能ブロック図である。なお、図10において、上述した図2および図8と共通する部分には同一の符号を付し、詳細な説明を省略する。図10において、画像処理装置100”は、検索結果取得部200、レイアウト決定部202および出力画像生成部203を有すると共に、外接矩形取得部220および画像拡大部221を有する。
【0066】
外接矩形取得部220は、レイアウト決定部202からページ内における画像データのレイアウト情報を受け取り、ブロック毎に、ブロック内に配置される画像データによる画像全てを含む最小の矩形(外接矩形と呼ぶ)を算出する。画像拡大部221は、ページ内に含まれる外接矩形のうち少なくとも1つがページの右端または下端に接するまで、ページ内に配置される画像データによる画像のサイズを拡大する。
【0067】
図11は、本第3の実施形態による画像データの一例のレイアウト方法を示すフローチャートである。先ず、図11のフローチャートの処理に先立って、上述の図9のフローチャートにおけるステップS40〜ステップS42の処理により、各ページに対する画像データの割り付けが行われる。これに限らず、上述したように、画像データによる画像の面積に基づいて各ページに対する画像データの割り付けを決定してもよい。
【0068】
各ページに対する画像データの割り付けが完了すると、処理が図11のステップS50に移行される。ステップS50で、外接矩形取得部220は、レイアウト決定部202から、1ページ分のレイアウト情報を受け取り、次のステップS51で、ブロック毎に、ブロック内に配置される画像全てを含む最小の矩形を算出し、外接矩形を取得する。
【0069】
図12は、1ページにレイアウトされた画像データに基づき外接矩形を求める例を示す。ページ330に対し、複数の画像データによる画像が配置され、ブロックが形成される。図12の例では、画像300〜303によりブロック310が形成される。同様にして、ブロック310の直下にブロック311が形成され、さらに、ブロック311の直下にブロック312が形成されている。ここで、例えばブロック310において、画像300〜303全てを含む最小の矩形が求められ、外接矩形320とされる。同様に、ブロック311において外接矩形321が求められ、ブロック312において外接矩形322が求められる。これら外接矩形320、321および322は、高さがブロックの高さに等しく、幅がページ幅以内となる。
【0070】
次のステップS52で、画像拡大部221は、ページ内の各外接矩形に含まれる画像データによる画像を、外接矩形毎に所定の割合で拡大する。このとき、画像拡大部221は、当該各外接矩形が互いに重ならないように、拡大処理を行う。より具体的には、図13に例示されるように、図12に例示したページ330に含まれる外接矩形320、321および322を一纏めとして、縦方向および横方向とで等倍に拡大する。
【0071】
次のステップS53で、画像拡大部221は、ページ内の少なくとも1つの外接矩形がページの右端または下端に接するか否かを判定する。より詳細には、画像拡大部221は、ページ内の少なくとも1つの外接矩形の右辺がページの右端に接するか、または、ページ内の最も下に形成される外接矩形の下辺がページの下端に接するかを判定する。
【0072】
若し、何れも接しない、すなわち、ページ内の何れの外接矩形の右辺がページの右端に接しておらず、且つ、ページ内の最も下に形成される外接矩形の下辺がページの下端に接していないと判定されたら、処理はステップS52に戻され、ページ内の各外接矩形に対してさらに拡大処理を行う。
【0073】
一方、ステップS53で、ページ内の少なくとも1つの外接矩形がページの右端または下端に接すると判定されたら、処理がステップS54に移行される。ステップS54では、レイアウト決定部202は、現在の各画像データの画像サイズおよび配置で当該ページ対するレイアウトを確定する。
【0074】
図14は、拡大処理の後にレイアウトが確定された例を示す。図14の例では、図13に例示したように各外接矩形320、321および322に対する拡大処理を行った結果、ブロック312に含まれる外接矩形322の下辺がページ330の下端に接し、拡大処理が終了している。拡大処理により、例えば外接矩形320に含まれる元の画像300、301、302および303が拡大された画像300’、301’、302’および303’となる。外接矩形320およびブロック310は、画像の拡大に伴い拡大され外接矩形320’およびブロック310’となる。他の画像も同様に拡大され、外接矩形321および322が拡大された外接矩形321’および322’とされ、ブロック311および312が拡大されたブロック311’および312’とされる。
【0075】
ステップS54でページ内のレイアウトが確定されると、処理は次のステップS55に移行され、全ページにおいてレイアウトが確定されたか否かが判定される。若し、確定されたと判定されたら、図11のフローチャートによる一連の処理が終了される。一方、まだレイアウトが確定されていないページが存在すると判定されたら、処理はステップS50に戻され、次のページに対する処理が行われる。
【0076】
このように、本第3の実施形態によれば、各ページにレイアウトされた画像データによる画像のサイズを拡大してレイアウトを確定しているため、ページ間で画像密度が均一化され、少ないページ数で効率的に画像データをレイアウトすることが可能になる。
【0077】
なお、上述の各実施形態では、画像データの検索結果を示す検索結果属性データとして、検索条件に対する類似度に従った検索順位を直接的に用いたが、これはこの例に限定されない。例えば、出力画像として用いる画像データ数に閾値を設けることができる。すなわち、画像データの検索の結果、検索順位が同一の画像データが多数、取得された場合、検索順位と検索された画像データ数とが略等しくなるとは限らない。上述の第2および第3の実施形態のように、出力画像に用いる画像データ数を指定してからレイアウトを決定する場合には、検索された画像データを、検索順位の高い方から、閾値として設定された数だけ取得して、レイアウトを行うことが考えられる。
【0078】
また、別の例として、検索結果属性データにおいて、類似度に閾値を設けることができる。すなわち、検索結果の質が悪い場合、検索条件に対する類似度に従った検索順位のみにより、出力画像として用いる画像データを選択すると、明らかに類似していない画像による画像データまで、検索結果の画像データとして取得されてしまう可能性がある。そのため、検索順位として類似度を用いる場合に、類似度に対して閾値を設け、検索結果の画像データのうちこの閾値よりも類似度が高い画像データを、出力画像に用いる画像データとして選択することが考えられる。
【0079】
<他の実施形態>
上述した各実施形態による画像処理装置100、100’または100”で実行される画像処理プログラムは、インストール可能な形式または実行可能な形式のファイルでフレキシブルディスク(FD)、CD(Compact Disk)、DVD(Digital Versatile Disk)などのコンピュータで読み取り可能な記録媒体に記録されて提供される。
【0080】
また、上述した各実施形態による画像処理装置100、100’または100”で実行される画像処理プログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するように構成しても良い。また、上述した各実施形態による画像処理装置100、100’または100”で実行される画像処理プログラムをインターネットなどのネットワーク経由で提供または配布するように構成しても良い。
【0081】
また、上述した各実施形態による画像処理装置100、100’または100”で実行される画像処理プログラムを、ROM等に予め組み込んで提供するように構成してもよい。
【0082】
上述した各実施形態による画像処理装置100、100’または100”で実行される画像処理プログラムは、図2、図8または図10を用いて説明した画像処理装置100、100’または100”の各部をそれぞれ生成するモジュールを含むモジュール構成となっており、実際のハードウェアとしてはCPU101(プロセッサ)が例えばHDD105から画像処理プログラムを読み出して実行することにより、上述の各モジュールが主記憶装置(RAM104)上にロードされ、各モジュールが主記憶装置上に生成されるようになっている。
【符号の説明】
【0083】
11 データ入力部
12 画像出力部
100,100’,100” 画像処理装置
101 CPU
200 検索結果取得部
201 出力画像決定部
202 レイアウト決定部
203 出力画像生成部
210 画像数決定部
211 画像割り付け部
220 外接矩形取得部
221 画像拡大部
【先行技術文献】
【特許文献】
【0084】
【特許文献1】特開2003−18385号公報

【特許請求の範囲】
【請求項1】
画像検索手段で検索された画像データを取得すると共に、少なくとも該画像データの検索順位を含む検索結果属性データを該画像検索手段から取得する検索結果取得手段と、
前記検索された画像データのうち出力画像に用いる画像データを決定する出力画像決定手段と、
前記出力画像の画像形成を行う印刷用紙によるページに対する画像データのレイアウトを、前記検索結果属性データに従い決定するレイアウト決定手段と、
前記レイアウト決定手段で決定された前記レイアウトに従って前記出力画像に用いる画像データを配置して前記出力画像を生成する出力画像生成手段と
を有する
ことを特徴とする画像処理装置。
【請求項2】
前記出力画像決定手段は、前記検索順位に従い前記出力画像に用いる画像データを決定し、
前記レイアウト決定手段は、1または複数の前記ページに対して、前記検索順位が高い順位から低い順位に向けて前記画像データを配置する前記レイアウトを決定する
ことを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記レイアウト決定手段は、
前記ページにレイアウトされる画像データによる該ページ内での画像密度が複数の前記ページのそれぞれで略均等になるように前記レイアウトを決定する
ことを特徴とする請求項2に記載の画像処理装置。
【請求項4】
前記レイアウト決定手段は、
前記複数のページのそれぞれに略同数の前記画像データを配置する前記レイアウトを決定する
ことを特徴とする請求項3に記載の画像処理装置。
【請求項5】
前記レイアウト決定手段は、
前記複数のページのそれぞれに配置される画像データによる画像の面積の和を該複数のページのそれぞれで均等にするように前記レイアウトを決定する
ことを特徴とする請求項3に記載の画像処理装置。
【請求項6】
前記レイアウト決定手段は、
前記ページに配置された画像データによる画像を全て含む最小の矩形と前記ページとで幅および高さのうち少なくとも一方が一致するように該ページに配置された画像データを纏めて拡大して前記レイアウトを決定する
ことを特徴とする請求項3乃至請求項5の何れか1項に記載の画像処理装置。
【請求項7】
前記印刷用紙による前記ページに対する前記出力画像の画像形成を行う画像形成装置に対する設定を行う設定手段から、少なくとも該画像形成を行う前記ページのサイズを示す情報を含む設定情報を取得する設定情報取得手段をさらに有する
ことを特徴とする請求項1乃至請求項6の何れか1項に記載の画像処理装置。
【請求項8】
請求項1乃至請求項7の何れか1項に記載の画像処理装置と、
前記出力画像生成手段により生成された前記出力画像に従い前記印刷用紙に対して画像を形成する画像形成装置と
を備える
ことを特徴とする画像処理システム。
【請求項9】
画像検索手段で検索された画像データを取得すると共に、少なくとも該画像データの検索順位を含む検索結果属性データを該画像検索手段から取得する検索結果取得ステップと、
前記検索された画像データのうち出力画像に用いる画像データを決定する出力画像決定ステップと、
前記出力画像の画像形成を行う印刷用紙によるページに対する画像データのレイアウトを、前記検索結果属性データに従い決定するレイアウト決定ステップと、
前記レイアウト決定ステップで決定された前記レイアウトに従って前記出力画像に用いる画像データを配置して前記出力画像を生成する出力画像生成ステップと
をコンピュータに実行させるための画像処理プログラム。
【請求項10】
請求項9に記載の画像処理プログラムを記憶したコンピュータに読み取り可能な記憶媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate


【公開番号】特開2011−141613(P2011−141613A)
【公開日】平成23年7月21日(2011.7.21)
【国際特許分類】
【出願番号】特願2010−635(P2010−635)
【出願日】平成22年1月5日(2010.1.5)
【出願人】(000006747)株式会社リコー (37,907)
【Fターム(参考)】