(57)【要約】【課題】トリミングされた表示画像に対するユーザーの調整作業の負担を軽減する。【解決手段】本発明に係るコンテンツ管理装置は、画像の構図を分類する構図パターンを記憶する記憶手段と、画像を取得する画像取得手段と、画像内に存在する対象物の分布領域と一致する構図パターンを特定するパターン特定手段と、所定の画像表示領域に対応するサイズのトリミング領域が、特定された構図パターンに係る対象物の分布領域を包含する位置に構図を決定する構図決定手段と、構図に基づいて画像からトリミング領域を表示画像として切り取るトリミング手段と、画像表示領域に表示画像を表示させる表示制御手段とを備える。【選択図】図４
2019139307.tif 000002
【特許請求の範囲】
【請求項１】
画像の構図を分類する構図パターンを記憶する記憶手段と、
前記画像を取得する画像取得手段と、
前記画像内に存在する対象物の分布領域と一致する前記構図パターンを特定するパターン特定手段と、
所定の画像表示領域に対応するサイズのトリミング領域が、前記特定された前記構図パターンに係る前記対象物の前記分布領域を包含する位置に前記構図を決定する構図決定手段と、
前記構図に基づいて前記画像から前記トリミング領域を表示画像として切り取るトリミング手段と、
前記画像表示領域に前記表示画像を表示させる表示制御手段とを備えることを特徴とするコンテンツ管理装置。
【請求項２】
前記構図パターンは、前記対象物の前記分布領域の形状を模式化した図形によって定義され、
前記パターン特定手段は、前記図形と前記対象物の前記分布領域との比較結果に基づいて前記構図パターンを前記特定することを特徴とする請求項１に記載のコンテンツ管理装置。
【請求項３】
前記構図決定手段は、前記画像に対して複数の前記構図が候補として存在する場合、所定の構図優先度に従って前記構図を選択することを特徴とする請求項１又は２に記載のコンテンツ管理装置。
【請求項４】
前記構図優先度は、前記トリミング領域に対して前記対象物の占める割合が高い前記構図を優先することを定めることを特徴とする請求項３に記載のコンテンツ管理装置。
【請求項５】
前記トリミング領域内に前記構図パターンに係る前記対象物以外の物体が存在する場合に、前記対象物の前記分布領域が包含された状態を維持しつつ、前記トリミング領域に対して前記対象物の占める割合が高くなる方向へ前記トリミング領域を移動する構図補正手段を更に備えることを特徴とする請求項１乃至４のいずれか一項に記載のコンテンツ管理装置。
【請求項６】
前記トリミング領域内に前記構図パターンに係る前記対象物以外の物体が存在する場合に、前記対象物の前記分布領域が包含された状態を維持しつつ、前記トリミング領域を縮小する構図補正手段を更に備え、
前記トリミング手段は、前記縮小された前記トリミング領域から切り取ったトリミング画像を前記画像表示領域に対応するサイズへ拡大して前記表示画像を作成することを特徴とする請求項１乃至４のいずれか一項に記載のコンテンツ管理装置。
【請求項７】
前記トリミング領域内に前記構図パターンに係る前記対象物以外の物体を複数存在する場合に、前記対象物の前記分布領域が包含された状態を維持しつつ、前記物体の数が少なくなる方向へ前記トリミング領域を移動する構図補正手段を更に備えることを特徴とする請求項１乃至４のいずれか一項に記載のコンテンツ管理装置。
【請求項８】
画像を取得する画像取得ステップと、
前記画像の構図を分類する構図パターンを取得するパターン取得ステップと、
前記画像内に存在する対象物の分布領域と一致する前記構図パターンを特定するパターン特定ステップと、
所定の画像表示領域に対応するサイズのトリミング領域が、前記特定された前記構図パターンに係る前記対象物の前記分布領域を包含する位置に前記構図を決定する構図決定ステップと、
前記画像から前記トリミング領域を表示画像として切り取るトリミングステップと、
前記画像表示領域に前記表示画像を表示させる表示制御ステップとを備えることを特徴とするコンテンツ管理方法。
【請求項９】
コンピュータに、
画像を取得する画像取得ステップと、
前記画像の構図を分類する構図パターンを取得するパターン取得ステップと、
前記画像内に存在する対象物の分布領域と一致する前記構図パターンを特定するパターン特定ステップと、
所定の画像表示領域に対応するサイズのトリミング領域が、前記特定された前記構図パターンに係る前記対象物の前記分布領域を包含する位置に前記構図を決定する構図決定ステップと、
前記画像から前記トリミング領域を表示画像として切り取るトリミングステップと、
前記画像表示領域に前記表示画像を表示させる表示制御ステップとを実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザーから入力される画像をトリミングして所定の画像表示領域に表示するコンテンツ管理装置、コンテンツ管理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、画像等のコンテンツを登録して管理するコンテンツ管理装置が普及している。ユーザーは、コンテンツ管理装置に画像を入力することで画像を登録する。そして、ユーザーは、コンテンツ管理装置に登録された画像を利用し、フォトブックや文書等のような新たなコンテンツを作成できる。尚、ユーザーから入力された画像と所定の画像表示領域との間でサイズが異なる場合には、画像サイズの調整が必要になる。特許文献１には、画像表示領域のサイズに合わせて自動的に画像をトリミングして表示できる装置が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００５−２２１６３４号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、一般的なコンテンツ管理装置において、画像表示領域にトリミング表示された画像がユーザーの期待する表示内容と異なる場合には、ユーザーは画像表示領域の中で所望の位置に対象物を移動する調整作業を行う必要があった。
【０００５】
そこで、本発明は上述の課題に鑑み、トリミングされた表示画像に対するユーザーの調整作業の負担を軽減できるコンテンツ管理装置、コンテンツ管理方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００６】
本発明に係るコンテンツ管理装置は、画像の構図を分類する構図パターンを記憶する記憶手段と、前記画像を取得する画像取得手段と、前記画像内に存在する対象物の分布領域と一致する前記構図パターンを特定するパターン特定手段と、所定の画像表示領域に対応するサイズのトリミング領域が、前記特定された前記構図パターンに係る前記対象物の前記分布領域を包含する位置に前記構図を決定する構図決定手段と、前記構図に基づいて前記画像から前記トリミング領域を表示画像として切り取るトリミング手段と、前記画像表示領域に前記表示画像を表示させる表示制御手段とを備えることを特徴とする。
【発明の効果】
【０００７】
本発明によれば、トリミングされた表示画像に対するユーザーの調整作業の負担を軽減できるコンテンツ管理装置、コンテンツ管理方法及びプログラムを提供することができる。
【図面の簡単な説明】
【０００８】
【図１】第１の実施形態に係るコンテンツ管理装置のハードウェア構成の具体例を示すブロック図である。
【図２】第１の実施形態に係るコンテンツ管理装置の機能を示すブロック図である。
【図３】一般的なコンテンツ管理装置における構図の決定方法を説明する図である。
【図４】第１の実施形態に係るコンテンツ管理装置における構図の決定方法を説明する図である。
【図５】第１の実施形態に係るコンテンツ管理装置において、構図決定処理に使用される情報を格納する各種テーブルの具体例を示す図である。
【図６】第１の実施形態に係るコンテンツ管理装置における表示制御処理の具体例を示すフローチャートである。
【図７】第１の実施形態に係るコンテンツ管理装置における構図決定処理の具体例を示すフローチャートである。
【図８】第２の実施形態に係るコンテンツ管理装置の機能を示すブロック図である。
【図９】第２の実施形態に係るコンテンツ管理装置における構図の補正方法を説明する図である。
【図１０】第２の実施形態に係るコンテンツ管理装置における構図補正処理の具体例を示すフローチャートである。
【図１１】第３の実施形態に係るコンテンツ管理装置における構図の補正方法を説明する図である。
【図１２】第３の実施形態に係るコンテンツ管理装置における構図補正処理の具体例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下に、図面を参照して、この発明の好適な実施形態を例示的に詳しく説明する。ただし、各実施形態に記載されている構成要素はあくまで例示であり、この発明の範囲をそれらのみに限定する趣旨のものではない。
【００１０】
＜第１の実施形態＞
図１は、本実施形態に係るコンテンツ管理装置１００のハードウェア構成の具体例を示すブロック図である。尚、コンテンツ管理装置１００は、単一のコンピュータ装置で実現してもよいし、必要に応じた複数のコンピュータ装置に各機能を分散して実現するようにしてもよい。複数のコンピュータ装置で構成される場合は、互いに通信可能なようにＬＡＮ（Local Area Network）等で接続される。
【００１１】
コンテンツ管理装置１００は、ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、外部記憶装置１０４、操作入力Ｉ／Ｆ１０５、表示Ｉ／Ｆ１０６、ネットワークＩ／Ｆ１０７、及び画像入力Ｉ／Ｆ１０８を備えている。ＣＰＵ１０１、ＲＯＭ１０２、ＲＡＭ１０３、外部記憶装置１０４、操作入力Ｉ／Ｆ１０５、表示Ｉ／Ｆ１０６、ネットワークＩ／Ｆ１０７、及び画像入力Ｉ／Ｆ１０８は、システムバス１１２に電気的に接続されている。
【００１２】
ＣＰＵ（Central Processing Unit）１０１は、コンテンツ管理装置１００の全体を制御する。ＣＰＵ１０１は、操作入力Ｉ／Ｆ１０５を介してポインティングデバイス及びキーボード等の入力装置１０９から入力された信号に基づき、ＲＡＭ１０３に記憶されたプログラムを読み出して実行する。ＣＰＵ１０１は、表示Ｉ／Ｆ１０６を制御し、表示装置１１１に画像を表示させる。ＣＰＵ１０１は、ネットワークＩ／Ｆ１０７を制御し、インターネット１１４を介して外部装置（図示省略する）との通信制御を行う。ＣＰＵ１０１は、画像入力Ｉ／Ｆ１０８を制御して、画像入力装置１１３から画像を取得する。
【００１３】
ＲＯＭ（Read Only Memory）１０２は、各種の制御プログラムやパラメータを格納する。ＲＡＭ（Random Access Memory）１０３は、外部記憶装置１０４又はインターネット１１４等から取得されるプログラムやデータを一時的に記憶する。また、ＲＡＭ１０３は、ＣＰＵ１０１のワーク領域、プログラムのロード領域等のワーキングメモリとしても用いられる。
【００１４】
外部記憶装置１０４は、コンテンツ管理装置１００と一体に設けられたハードディスク及びメモリカード、又はコンテンツ管理装置１００から着脱可能な光ディスク、磁気光カード、ＩＣカード等を含む。操作入力Ｉ／Ｆ１０５は、ユーザーの操作を受け、各種データを入力するポインティングデバイスやキーボード等の入力装置１０９とのインターフェイスである。
【００１５】
表示Ｉ／Ｆ１０６は、液晶ディスプレイ等の表示装置１１１とのインターフェイスである。ネットワークＩ／Ｆ１０７は、インターネット１１４等のネットワーク回線に接続するためのネットワークインターフェイスであり、通信可能な外部装置との通信を行う。画像入力Ｉ／Ｆ１０８は、画像入力装置１１３とのインターフェイスである。システムバス１１２は、各デバイスを通信可能に接続する伝送路である。ＣＰＵ１０１は、画像入力Ｉ／Ｆ１０８を介して画像入力装置１１３から画像データを取得し、外部記憶装置１０４に記憶する。画像入力装置１１３としては、例えばデジタルカメラ、ビデオカメラ、スキャナー等が挙げられる。
【００１６】
図２は、本実施形態に係るコンテンツ管理装置１００の機能を示すブロック図である。コンテンツ管理装置１００は、記憶部２０１、画像取得部２０２、構図パターン特定部２０３、構図決定部２０４、トリミング部２０５、及び表示制御部２０６を備える。尚、以降に説明する各部の機能は、コンテンツ管理装置１００のＣＰＵ１０１が外部記憶装置１０４又はインターネット１１４等から供給されるプログラムを読み出して起動し、これらに従って各種デバイスを制御することにより実現される。
【００１７】
記憶部２０１は、画像の構図を分類する構図パターンを構図情報として記憶する。また、記憶部２０１は、画像取得部２０２における取得画像を記憶する。更に、記憶部２０１は、構図パターン特定部２０３及び構図決定部２０４から記憶情報を読み出されるとともに、各部における処理結果を記憶する。記憶部２０１としては、外部記憶装置１０４、ＲＯＭ１０２、及びＲＡＭ１０３が該当する。
【００１８】
画像取得部２０２は、ユーザーが所定の画像表示領域への表示対象として選択した画像を取得し（画像取得ステップ）、記憶部２０１に記憶する。構図パターン特定部２０３は、画像解析によって画像内に存在する対象物（被写体）を抽出するとともに、画像内における対象物の位置及び分布領域を算出する。構図パターン特定部２０３は、記憶部２０１に記憶されている複数の構図パターンを取得する（パターン取得ステップ）。そして、構図パターン特定部２０３は、記憶部２０１から取得した複数の構図パターンの中から、画像内における対象物の分布領域と一致する構図パターンを特定する（パターン特定ステップ）。尚、画像内に存在する対象物に対し、複数の構図パターンが一致する場合もある。このような場合、本実施形態では、記憶部２０１に記憶されている構図優先度に基づいて表示を行う。構図優先度の詳細については後述する。
【００１９】
構図決定部２０４は、所定の画像表示領域に対応するサイズのトリミング領域が、構図パターン特定部２０３で特定された構図パターンに係る対象物の分布領域を包含する位置を求めることで、表示画像の構図を決定する（構図決定ステップ）。トリミング部２０５は、構図決定部２０４において決定された構図に基づいて、画像の中からトリミング領域を表示画像（トリミング画像）として切り取る（トリミングステップ）。表示制御部２０６は、画像表示領域に表示画像を表示させる（表示制御ステップ）。尚、「トリミング」の方法としては、元の画像からトリミング領域を切り取って別の画像を生成する方法と、別の画像は生成せずに、元の画像の中で表示画像として表示する範囲を指定する方法を任意に使用することができる。
【００２０】
続いて、本実施形態に係るコンテンツ管理装置１００と一般的なコンテンツ管理装置における構図の決定方法を比較して説明する。図３は、一般的なコンテンツ管理装置における構図の決定方法を説明する図である。図３（ａ）は、コンテンツ表示画面３００を示している。コンテンツ表示画面３００の中央には、固定サイズの画像表示領域３０１が設けられている。また、図３（ｂ）は、ユーザーがコンテンツ管理装置に対して入力操作を行う画像３１０を示している。図３（ａ）及び図３（ｂ）において、画像３１０のサイズは画像表示領域３０１のサイズよりも大きい。このような場合、一般的なコンテンツ管理装置は、入力された画像３１０が画像表示領域３０１の中に収まるように、例えば画像３１０を中央位置からトリミングした上で画像表示領域３０１に表示する。図３（ｃ）は、画像表示領域３０１における表示画像３１２の表示状態を示している。
【００２１】
しかしながら、画像が一律に中央位置からトリミングされる場合には、ユーザーが着目する対象物（被写体）３１１は、画像の中央位置に存在していなければ画像表示領域３０１内に収まりきらない場合がある。その結果、表示画像３１２は、図３（ｃ）のようにユーザーが期待する表示内容とは異なってしまう。このような場合、ユーザーが表示画像３１２に対してフリック等の操作を行い、例えば画像表示領域３０１の中で矢印Ａ方向へ対象物３１１を移動する調整作業が必要になる。図３（ｄ）は、図３（ｃ）に示す表示画像３１２において、ユーザーが対象物３１１を所望の位置に移動したときの画面例を示している。
【００２２】
図４は、本実施形態に係るコンテンツ管理装置１００における構図の決定方法を説明する図である。図４（ａ）は、ユーザーがコンテンツ管理装置１００に対して入力操作を行う画像４００を示している。画像４００内には、対象物４０１が全体として三角形の配置で分布している。図４（ｂ）は、記憶部２０１が記憶している構図情報４１０を示している。構図情報４１０は、複数の構図パターン４１１を含んでいる。構図パターン４１１は、対象物の分布領域の形状を模式化した図形によって定義されている。構図パターン特定部２０３は、構図情報４１０を参照し、図形と対象物の分布領域との比較結果に基づいて構図パターンを特定する。
【００２３】
図４（ｃ）及び図４（ｄ）は、コンテンツ管理装置１００が画像４００に対してトリミング領域を設定するときの内部での動作イメージを示している。先ず、図４（ｃ）に示す初期状態では、破線で示すトリミング領域４２０が画像４００の中央に位置している。すなわち、トリミング領域４２０の重心は、画像４００の重心と一致している。本実施形態におけるトリミング領域４２０のサイズは、後述するコンテンツ表示画面４３０の画像表示領域４３１のサイズと等しく設定されているものとする。
【００２４】
また、図４（ｃ）においては、対象物４０１の分布領域と構図情報４１０の構図パターン４１１とを比較した結果、三角形の構図パターン４１１が対象物４０１の分布領域に一致したことを示している。しかしながら、構図パターン４１１が適用された対象物４０１は、初期状態においてトリミング領域４２０の中に収まっていない。このため、コンテンツ管理装置１００は、対象物４０１の全体がトリミング領域４２０の中に収まるように、図中矢印Ｂの方向へトリミング領域４２０の位置を自動調整する。
【００２５】
図４（ｄ）は、トリミング領域４２０が自動調整された後の状態を示している。図４（ｄ）においては、対象物４０１の全体がトリミング領域４２０の中に収まり、三角形の構図パターン４１１がトリミング領域４２０の中で維持されている。このように、コンテンツ管理装置１００は、図４（ｄ）に示すように、画像４００内におけるトリミング領域４２０の位置を自動調整することで後述する表示画像４３２の構図を決定する。そして、コンテンツ管理装置１００は、決定した構図に基づいて、画像４００の中からトリミング領域４２０を切り取る。
【００２６】
図４（ｅ）は、コンテンツ表示画面４３０を示している。コンテンツ表示画面４３０は、表示装置１１１に表示される画面又はコンテンツ管理装置１００に接続されたユーザー端末（図示省略する）に表示される画面である。図４（ｅ）に示すコンテンツ表示画面４３０は、表示画像（トリミング画像）４３２を表示するための画像表示領域４３１及びボタン４３３を有している。
【００２７】
画像表示領域４３１には、図４（ｄ）に示すトリミング領域４２０が表示画像４３２として表示される。ボタン４３３は、ユーザーが画像表示領域４３１にトリミング表示する表示画像４３２の内容を、画像４００内に存在する他の構図パターンに基づいて別の構図に表示切替するためのボタンである。例えば、コンテンツ管理装置１００は、ユーザーによるボタン４３３の押下を検出すると、ボタン４３３の押下時の構図とは別の構図に切り替えて、その新しい構図に合わせて、図４（ｆ）に示すように画像表示領域４３１に表示画像４３２を表示する。図４（ｆ）では、他の対象物４０１ａの分布領域に対して他の構図パターン４１１が特定されている。
【００２８】
尚、コンテンツ管理装置１００が画像内の対象物と構図情報との比較結果に基づいて固定サイズの画像表示領域に収まるように表示画像の構図を決定する際、図４（ｅ）及び（ｆ）に示すように、複数の構図が候補になる場合がある。このような場合、コンテンツ管理装置１００は、外部記憶装置１０４に予め記憶されている構図優先度に従って構図を選択する。例えば、対象物に構図を適用した範囲の大きさを優先する。
【００２９】
具体的には、コンテンツ管理装置１００は、構図パターンを適用した対象物の分布領域がトリミング領域に対して占める割合が大きいものを優先して表示する。つまり、対象物の分布領域がトリミング領域に対して４割を占める構図パターンと、トリミング領域に対して３割を占める構図パターンとがある場合には、前者の４割を占める構図パターンに基づく構図を優先して、画像表示領域に画像をトリミング表示する。
【００３０】
次に、コンテンツ管理装置１００が画像内におけるトリミング領域の設定位置の算出（構図決定）に用いる情報について図５を参照して説明する。図５は、本実施形態に係るコンテンツ管理装置１００において、構図決定処理に使用される情報を格納する各種テーブルの具体例を示す図である。
【００３１】
図５（ａ）に示す表示領域情報テーブル５００は、コンテンツ管理装置１００がコンテンツ表示画面の画像表示領域のサイズを定義するためのテーブルである。表示領域情報テーブル５００は、フィールド５０１から構成されている。フィールド５０１には、表示領域サイズが格納されている。尚、レコード５０２は、表示領域情報テーブル５００のレコードである。図５（ａ）の例では、「８００×６００」という値がフィールド５０１に表示領域サイズの値として格納されている。このような場合、コンテンツ管理装置１００のＣＰＵ１０１は、コンテンツ表示画面の画像表示領域に画像を表示する際に、「８００×６００」という固定サイズによる表示を行う。尚、サイズの異なる複数の画像表示領域がある場合には、画像表示領域ごとにサイズを定義するものとする。
【００３２】
図５（ｂ）に示す構図情報テーブル５１０は、コンテンツ管理装置１００のＣＰＵ１０１がユーザーから入力された画像を解析し、対象物の位置から構図に係るトリミング領域の設定位置を算出する処理に利用する構図情報を管理するためのテーブルである。構図情報テーブル５１０は、フィールド５１１〜５１３から構成されている。フィールド５１１には、構図を一意に識別するための識別子である構図ＩＤが格納されている。フィールド５１２には、構図の名称が格納されている。フィールド５１３には、構図のパターンが格納されている。レコード５１４は、構図情報テーブル５１０のレコードである。
【００３３】
図５（ｃ）に示す構図優先度テーブル５２０は、コンテンツ管理装置１００のＣＰＵ１０１がユーザーから入力された画像における対象物の分布をもとに構図を算出する時にどのような基準で最適な構図を決定するかを示す情報を管理するためのテーブルである。構図優先度テーブル５２０は、フィールド５２１から構成されている。フィールド５２１には、画像の構図を決定する時にどのような基準で最適な構図を決定すべきかを示す条件が格納されている。尚、レコード５２２は構図優先度テーブル５２０のレコードである。構図優先度の具体例としては、「構図パターンを適用した範囲の大きさを優先する」、「構図パターンの間で予め設定されている優先順位が高い方の構図パターンを優先する」等が挙げられる。
【００３４】
続いて、本実施形態に係るコンテンツ管理装置１００の動作について図６及び図７を参照しながら説明する。図６は、本実施形態に係るコンテンツ管理装置１００における表示制御処理の具体例を示すフローチャートである。
【００３５】
先ず、コンテンツ管理装置１００のＣＰＵ１０１は、コンテンツ表示画面の画像表示領域に対して、ユーザーがドラッグ＆ドロップ等の入力操作を行ったときに、当該画像の入力を検出したか否か判定する（ステップＳ６０１）。ここで、ＣＰＵ１０１は、画像の入力を検出した場合（ステップＳ６０１：ＹＥＳ）には、入力した画像を取得し（ステップＳ６０２）、ステップＳ６０３の処理へ移る。これに対し、ＣＰＵ１０１は、画像の入力を検出していない場合（ステップＳ６０１：ＮＯ）には、ステップＳ６０１の処理を継続する。
【００３６】
ステップＳ６０３において、ＣＰＵ１０１は、画像解析処理を実行し、画像内に存在する対象物（被写体）を抽出する。
次に、ＣＰＵ１０１は、ステップＳ６０３で抽出した対象物の画像内における位置（座標）を取得する（ステップＳ６０４）。尚、対象物が複数抽出された場合には、対象物ごとに位置を取得するものとする。
【００３７】
次に、ＣＰＵ１０１は、構図情報テーブル５１０から構図情報の構図パターンを取得する（ステップＳ６０５）とともに、表示領域情報テーブル５００からコンテンツ表示画面における画像表示領域のサイズを取得する（ステップＳ６０６）。
【００３８】
次に、ＣＰＵ１０１は、取得した画像内の対象物の位置、構図情報、及び画像表示領域のサイズの情報に基づいてコンテンツ表示画面の画像表示領域において表示する表示画像の構図を決定する（ステップＳ６０７）。ステップＳ６０７の処理の詳細については、後述する。
【００３９】
そして、ＣＰＵ１０１は、ステップＳ６０７で決定された構図に従って、画像を画像表示領域のサイズに合わせてトリミングし、コンテンツ表示画面の画像表示領域にトリミングされた画像を表示する（ステップＳ６０８）。尚、ここで扱う画像は、パノラマ画像等、全方位の画像も対象である。例えば、ＣＰＵ１０１は、垂直又は水平方向に連続する対象物を取得して構図を決定した上で、画像をトリミング表示することもできる。
【００４０】
図７は、本実施形態に係るコンテンツ管理装置１００における構図決定処理（図６のステップＳ６０７）の具体例を示すフローチャートである。先ず、コンテンツ管理装置１００のＣＰＵ１０１は、画像内における対象物の位置から対象物の分布領域を算出する（ステップＳ７０１）。
次に、ＣＰＵ１０１は、構図情報テーブル５１０の中から例えば構図ＩＤの順に構図パターンを選択する（ステップＳ７０２）。
【００４１】
次に、ＣＰＵ１０１は、算出した対象物の分布領域と選択した構図パターンとが一致するか否かを判定する（ステップＳ７０３）。ここで、ＣＰＵ１０１は、対象物の分布領域と構図パターンとが一致すると判定した場合（ステップＳ７０３：ＹＥＳ）には、当該構図パターンを所定の記憶領域（例えばＲＡＭ１０３）に保持する（ステップＳ７０４）。これに対し、ＣＰＵ１０１は、対象物の分布と構図パターンとが一致しないと判定した場合（ステップＳ７０３：ＮＯ）には、ステップＳ７０５の処理へ移る。
【００４２】
ステップＳ７０５において、ＣＰＵ１０１は、画像内の対象物の分布とすべての構図パターンとの比較処理が完了したか否かを判定する。ここで、ＣＰＵ１０１は、比較処理が完了したと判定した場合（ステップＳ７０５：ＹＥＳ）には、ステップＳ７０６の処理へ移る。これに対し、ＣＰＵ１０１は、比較処理が完了していないと判定した場合（ステップＳ７０５：ＮＯ）には、ステップＳ７０２の処理へ戻る。
【００４３】
ステップＳ７０６において、ＣＰＵ１０１は、対象物の分布領域と一致した構図パターンを記憶領域から読み出すとともに、構図パターンに基づいて対象物が固定サイズの表示領域内に収まるように、画像内におけるトリミング領域の設定位置を算出する。これにより、ＣＰＵ１０１は表示画像の構図を決定する。
【００４４】
尚、対象物の分布領域と一致する構図パターンが複数存在する場合がある。このような場合には、記憶領域に保持されている構図パターンごとに構図を決定するものとする。また、構図パターンが適用された対象物とトリミング領域との位置関係は、任意に定めることができる。例えば、トリミング領域の重心と構図パターンを表す図形の重心とが一致すること、あるいは、当該図形の重心がトリミング領域の所定の分割線上にあること、等を条件としてトリミング領域の位置を設定することができる。
【００４５】
次に、ＣＰＵ１０１は、ステップＳ７０６において決定された構図が複数存在するか否かを判定する（ステップＳ７０７）。ここで、ＣＰＵ１０１は、構図が複数存在すると判定した場合（ステップＳ７０７：ＹＥＳ）には、構図優先度テーブル５２０の構図優先度に基づいて優先度の最も高い構図を選択する（ステップＳ７０８）。これに対し、ＣＰＵ１０１は、構図が複数存在しないと判定した場合（ステップＳ７０７：ＮＯ）には、構図優先度テーブル５２０を参照することなく、処理を終了する。
【００４６】
このように、本実施形態に係るコンテンツ管理装置１００によれば、ユーザーが画像を入力すると、内部に保持する構図パターンと当該画像の解析結果とを比較して、画像内の対象物の分布領域に一致する構図パターンを特定する。そして、コンテンツ管理装置１００は、構図パターンが維持される範囲内で、固定サイズの画像表示領域に収まるように画像をトリミングする。その結果、ユーザーがコンテンツ管理装置１００に画像を入力したとき、トリミングされた表示画像がユーザーの期待する表示内容になる可能性が高まり、ユーザーが手動でトリミング領域の位置を調整する負担を軽減することができる。
【００４７】
＜第２の実施形態＞
以下、本発明の第２の実施形態について説明する。本実施形態は、第１の実施形態に対して、構図の補正機能を更に備える点が異なっている。従って、第１の実施形態と同様の構成については、同一の符号を付して説明を省略し、異なる箇所について詳細に説明する。
【００４８】
図８は、本実施形態に係るコンテンツ管理装置１００の機能を示すブロック図である。構図補正部２０７は、トリミング領域内に構図パターンに係る対象物以外の物体が存在する場合に、対象物が包含された状態を維持しつつ、トリミング領域に対して対象物の占める割合が高くなる方向へトリミング領域を移動する。尚、「対象物を包含した状態を維持」とは、移動の前後を通じて、構図パターンを維持することを意味する。
【００４９】
図９は、本実施形態に係るコンテンツ管理装置１００における構図補正方法を説明する図である。図９（ａ）は、最初に構図が決定されたときの状態を示す図である。図９（ｂ）は、破線で示すトリミング領域４２０を移動することで構図を補正した状態を示す。図９（ｃ）は、図９（ｂ）で補正された構図に基づく表示例を示す図である。
【００５０】
図９（ａ）に示すように、コンテンツ管理装置１００のＣＰＵ１０１は、ユーザーから入力された画像４００の構図パターン４１１を特定し、当該構図パターン４１１を維持できる範囲内で画像内におけるトリミング領域４２０の設定位置を算出する。しかしながら、図９（ａ）に示すように、構図パターン４１１とは直接関係しない、対象物４０１以外の物体Ｘがトリミング領域４２０内に入り込んでしまう場合がある。
【００５１】
このような場合、コンテンツ管理装置１００は、図９（ｂ）に示すように、構図パターン４１１とは直接関係しない物体Ｘがトリミング領域４２０内に入り込まないように、物体Ｘから離間する方向（矢印Ｃ方向）へトリミング領域４２０を移動する。
【００５２】
そして、コンテンツ管理装置１００は、画像４００の中から移動後のトリミング領域４２０をトリミングし、図９（ｃ）に示すようにコンテンツ表示画面４３０の画像表示領域４３１に表示画像４３２として表示する。また、ボタン４３３を押下した場合には、画像表示領域４３１を別の構図に切り替える。
【００５３】
尚、画像の構図とは直接関係しない物体が複数存在する場合も考えられる。このような場合、コンテンツ管理装置１００は、画像の構図と直接関係しない物体が最小数になるように画像をトリミングしてもよい。同様に、コンテンツ管理装置１００は、画像の構図と直接関係しない物体が画像全体に占める大きさを最小にするようにトリミングしてもよい。
【００５４】
図１０は、本実施形態に係るコンテンツ管理装置１００における構図補正処理の具体例を示すフローチャートである。この処理は、図７に示す処理に続けて実行される。
【００５５】
先ず、構図補正部２０７としてのＣＰＵ１０１は、画像解析により、対象物以外の物体がトリミング領域内に存在するか否かを判定する（ステップＳ１００１）。ここで、ＣＰＵ１０１は、対象物以外の物体がトリミング領域内に存在すると判定した場合（ステップＳ１００１：ＹＥＳ）には、ステップＳ１００２の処理へ移る。これに対し、ＣＰＵ１０１は、対象物以外の物体がトリミング領域内に存在しないと判定した場合（ステップＳ１００１：ＮＯ）には、処理を終了する。
【００５６】
ステップＳ１００２において、ＣＰＵ１０１は、物体がトリミング領域に対して占める割合を算出する。これに伴い、ＣＰＵ１０１は、算出した割合をトリミング領域の設定位置と対応付けて記憶領域に記憶する（ステップＳ１００３）。
【００５７】
次に、ＣＰＵ１０１は、物体から離間する方向へ所定の移動幅（例えば１ピクセル）だけトリミング領域の設定位置を移動する（ステップＳ１００４）。トリミング領域の移動幅や移動方向の条件は、予め設定されているものとする。
【００５８】
次に、ＣＰＵ１０１は、移動後のトリミング領域において構図パターンを維持しているか否かを判定する（ステップＳ１００５）。ここで、ＣＰＵ１０１は、構図パターンを維持していると判定した場合（ステップＳ１００５：ＹＥＳ）には、ステップＳ１００６の処理へ移る。これに対し、ＣＰＵ１０１は、構図パターンを維持していないと判定した場合（ステップＳ１００５：ＮＯ）には、ステップＳ１０１０の処理へ移る。
【００５９】
ステップＳ１００６において、ＣＰＵ１０１は、物体が移動後のトリミング領域に対して占める割合を算出する。これに伴い、ＣＰＵ１０１は、算出した割合をトリミング領域の設定位置と対応付けて記憶領域に記憶する（ステップＳ１００７）。例えば、図９（ａ）に示すように、トリミング領域の左上に対象物以外の物体が存在する場合には、トリミング領域を右方向あるいは右下方向に少しずつ移動しながら算出処理を実行する。
【００６０】
次に、ＣＰＵ１０１は、移動後のトリミング領域において物体が占める割合が０になったか否かを判定する（ステップＳ１００８）。すなわち、トリミング領域から物体が除外できたか否かを判定する。ここで、ＣＰＵ１０１は、物体が占める割合が０になったと判定した場合（ステップＳ１００８：ＹＥＳ）には、ステップＳ１００９の処理へ移る。これに対し、ＣＰＵ１０１は、物体が占める割合が０になっていないと判定した場合（ステップＳ１００８：ＮＯ）には、ステップＳ１００４の処理へ戻る。
【００６１】
ステップＳ１００９において、ＣＰＵ１０１は、物体の占める割合が０となった位置にトリミング領域を設定することで、表示画像（トリミング画像）の構図を補正し、処理を終了する。
ステップＳ１０１０において、ＣＰＵ１０１は、物体の占める割合が最も低い位置、すなわち、対象物の占める割合が最も高い位置に、トリミング領域を設定することで、表示画像（トリミング画像）の構図を補正し、処理を終了する。
【００６２】
このように、本実施形態に係るコンテンツ管理装置１００によれば、構図と無関係な物体がトリミング表示される領域から除かれる、あるいは、当該物体がトリミング領域に占める割合を低く抑えるように構図を補正することができる。
その結果、ユーザーがコンテンツ管理装置１００に画像を入力したとき、トリミングされた表示画像がユーザーの期待する表示内容になる可能性が更に高まり、ユーザーが手動でトリミング領域の位置を調整する負担を軽減することができる。
【００６３】
＜第３の実施形態＞
以下、本発明の第３の実施形態について説明する。本実施形態は、第２の実施形態に対して、構図補正部２０７における構図補正方法のみが異なる。従って、第１及び第２の実施形態と同様の構成については、同一の符号を付して説明を省略し、異なる箇所について詳細に説明する。
【００６４】
本実施形態における構図補正部２０７は、トリミング領域内に構図パターンに係る対象物以外の物体が存在する場合に、トリミング領域内に対象物が包含された状態を維持しつつ、トリミング領域を縮小する。これに伴い、トリミング部２０５は、縮小されたトリミング領域から切り取ったトリミング画像を画像表示領域に対応するサイズへ拡大して表示画像を作成する。尚、「対象物が包含された状態を維持」とは、縮小の前後を通じて、トリミング領域内で構図パターンが維持されることを意味する。
【００６５】
図１１は、本実施形態に係るコンテンツ管理装置１００における構図の補正方法を説明する図である。図１１（ａ）は、最初に構図が決定されたときの状態を示す図である。図１１（ｂ）は、トリミング領域の大きさを縮小することで構図を補正した状態を示す。また、図１１（ｃ）は、図１１（ｂ）で決定された構図に基づく表示例を示す図である。
【００６６】
図１１（ａ）に示すように、コンテンツ管理装置１００のＣＰＵ１０１は、ユーザーから入力された画像４００の構図パターン４１１を特定し、当該構図パターン４１１を維持する範囲で画像内におけるトリミング領域４２０の位置を設定する。しかしながら、図１１（ａ）に示すように、構図パターン４１１とは直接関係しない、対象物４０１以外の物体Ｘがトリミング領域４２０内に含まれてしまう場合がある。
【００６７】
これに対し、本実施形態に係るコンテンツ管理装置１００は、図１１（ｂ）に示すように、構図パターン４１１とは直接関係しない物体Ｘがトリミング領域に入り込まないように、破線で示す初期のトリミング領域４２０を縮小する。そして、コンテンツ管理装置１００は、一点鎖線で示す新たなトリミング領域４２０ａを設定する。コンテンツ管理装置１００は、画像４００の中から新たなトリミング領域４２０ａをトリミングし、図１１（ｃ）に示すようにコンテンツ表示画面４３０の画像表示領域４３１に表示画像４３２として表示する。ボタン４３３を押下した場合には、画像表示領域４３１を別の構図に切り替える。
【００６８】
図１２は、本実施形態に係るコンテンツ管理装置１００における構図補正処理の具体例を示すフローチャートである。この処理は、図７に示す処理に続けて実行される。
【００６９】
先ず、構図補正部２０７としてのＣＰＵ１０１は、対象物以外の物体がトリミング領域内に存在するか否かを判定する（ステップＳ１２０１）。ここで、ＣＰＵ１０１は、対象物以外の物体がトリミング領域内に存在すると判定した場合（ステップＳ１２０１：ＹＥＳ）には、ステップＳ１２０２の処理へ移る。これに対し、ＣＰＵ１０１は、対象物以外の物体がトリミング領域内に存在しないと判定した場合（ステップＳ１２０１：ＮＯ）には、構図補正を行うことなく、処理を終了する。
【００７０】
ステップＳ１２０２において、ＣＰＵ１０１は、物体がトリミング領域に対して占める割合を算出する。これに伴い、ＣＰＵ１０１は、算出した割合をトリミング領域の倍率（１００％）と対応付けて記憶領域に記憶する（ステップＳ１２０３）。
【００７１】
次に、ＣＰＵ１０１は、所定の変動条件でトリミング領域を縮小する（ステップＳ１２０４）。トリミング領域の縮小倍率の変動条件は、予め設定されているものとする。例えば、トリミング領域を１％ずつ縮小する。
【００７２】
次に、ＣＰＵ１０１は、縮小後のトリミング領域において構図パターンを維持しているか否かを判定する（ステップＳ１２０５）。ここで、ＣＰＵ１０１は、構図パターンを維持していると判定した場合（ステップＳ１２０５：ＹＥＳ）には、ステップＳ１２０６の処理へ移る。これに対し、ＣＰＵ１０１は、構図パターンを維持していないと判定した場合（ステップＳ１２０５：ＮＯ）には、ステップＳ１２１０の処理へ移る。
【００７３】
ステップＳ１２０６において、ＣＰＵ１０１は、物体が縮小後のトリミング領域に対して占める割合を算出する。これに伴い、ＣＰＵ１０１は、算出した割合をトリミング領域の縮小倍率と対応付けて記憶領域に記憶する（ステップＳ１２０７）。
【００７４】
次に、ＣＰＵ１０１は、移動後のトリミング領域において物体が占める割合が０になったか否かを判定する（ステップＳ１２０８）。ここで、ＣＰＵ１０１は、物体が占める割合が０になったと判定した場合（ステップＳ１２０８：ＹＥＳ）には、ステップＳ１２０９の処理へ移る。これに対し、ＣＰＵ１０１は、物体が占める割合が０になっていないと判定した場合（ステップＳ１２０８：ＮＯ）には、ステップＳ１２０４の処理へ戻る。
【００７５】
ステップＳ１２０９において、ＣＰＵ１０１は、物体の占める割合が０となった縮小倍率でトリミング領域を設定することで、表示画像（トリミング画像）の構図を補正し、処理を終了する。
【００７６】
ステップＳ１２１０において、ＣＰＵ１０１は、物体の占める割合が最も低くなる縮小倍率、すなわち、対象物の占める割合が最も高くなる縮小倍率で、トリミング領域を設定する。これにより、表示画像（トリミング画像）の構図を補正し、処理を終了する。
尚、トリミング領域が縮小された場合、図６に示すステップＳ６０８では、ＣＰＵ１０１は、縮小されたトリミング領域から切り取ったトリミング画像を画像表示領域に対応するサイズへ拡大して表示画像を作成し、画像表示領域へ表示する。
【００７７】
このように、本実施形態に係るコンテンツ管理装置１００によれば、構図と無関係な物体がトリミング領域から除かれる、あるいは、当該物体がトリミング領域に占める割合を低く抑えるように構図を補正することができる。特に、対象物以外の物体が対象物の周囲に分散して配置されている場合には、いずれの方向にトリミング領域を移動しても他の物体がトリミング領域の中に入り込んでしまうと考えられる。このような場合には、上述の第２の実施形態の構図補正方法よりも効率的に物体を除くことができる。
その結果、ユーザーがコンテンツ管理装置１００に画像を入力したとき、トリミングされた表示画像がユーザーの期待する表示内容になる可能性が更に高まり、ユーザーが手動でトリミング領域の位置を調整する負担を軽減することができる。
【００７８】
［変形実施形態］
以上、本発明をその好適な実施形態に基づいて詳述してきたが、本発明はこれら特定の実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の様々な形態も本発明に含まれる。上述の実施形態の一部を適宜組み合わせてもよい。
【００７９】
上述の第２の実施形態では、トリミング領域に対して対象物以外の物体が占める割合に基づいて構図の補正方法を説明したが、構図の補正方法はこれに限られない。構図補正部２０７は、トリミング領域内に構図パターンに係る対象物以外の物体を複数存在する場合に、対象物を包含した状態を維持しつつ、物体の数が少なくなる方向へトリミング領域を移動するように構成してもよい。更に、構図補正部２０７は、トリミング領域の移動と縮小とを適宜組み合わせて構図補正を実行してもよい。
【００８０】
また、上述の各実施形態では、ＣＰＵ１０１は、画像内の対象物の位置から対象物の分布領域を抽出して、構図情報（構図パターン）と比較することで構図を決定する。しかしながら、ＣＰＵ１０１が画像の構図を決定する方法は、対象物の分布を利用するものに限定されるものではない。画像に対してパターン認識技術を利用しながら、画像内の構図を決定する方法でもよい。例えば、パターン認識した人間の顔や体の配置を構図パターンとして複数保持してもよい。
【００８１】
また、上述の実施形態の機能を実現するソフトウェアのプログラムを、記録媒体から直接、或いは有線／無線通信を用いてプログラムを実行可能なコンピュータを有するシステム又は装置に供給し、そのプログラムを実行する場合も本発明に含む。
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータに供給、インストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明の機能処理を実現するためのコンピュータプログラム自体も本発明に含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
プログラムを供給するための記録媒体としては、例えば、ハードディスク、磁気テープ等の磁気記録媒体、光／光磁気登録媒体、不揮発性の半導体メモリでもよい。
また、プログラムの供給方法としては、コンピュータネットワーク上のサーバに本発明に係るプログラムを登録し、接続のあったクライアントコンピュータが当該プログラムをダウンロードして実行するような方法も考えられる。
【符号の説明】
【００８２】
１００・・・コンテンツ管理装置
１０１・・・ＣＰＵ
１０２・・・ＲＯＭ
１０３・・・ＲＡＭ
１０４・・・外部記憶装置
１１１・・・表示装置
１１３・・・画像入力装置
２０１・・・記憶部
２０２・・・画像取得部
２０３・・・構図パターン特定部
２０４・・・構図決定部
２０５・・・トリミング部
２０６・・・表示制御部
【図１】
2019139307.tif 000003
【図２】
2019139307.tif 000004
【図３】
2019139307.tif 000005
【図４】
2019139307.tif 000006
【図５】
2019139307.tif 000007
【図６】
2019139307.tif 000008
【図７】
2019139307.tif 000009
【図８】
2019139307.tif 000010
【図９】
2019139307.tif 000011
【図１０】
2019139307.tif 000012
【図１１】
2019139307.tif 000013
【図１２】
2019139307.tif 000014