説明

画像の標題付与装置、およびカメラ

【課題】画像の標題をつける処理の負担を軽減すること。
【解決手段】画像の標題付与装置1は、画像に対して所定数の標題候補を与える標題候補付与手段11と、所定数の標題候補のそれぞれに対応させて画像の特徴量を算出する特徴量算出手段11と、標題候補ごとに算出された画像の特徴量に基づいて、標題候補の中から画像の標題を決定する標題決定手段11とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像に対して標題をつける技術に関する。
【背景技術】
【0002】
画像自体または画像の属性情報から識別情報を抽出し、抽出した識別情報に基づいて該画像のイベントを識別する技術が知られている(特許文献1参照)。
【0003】
【特許文献1】特開2007−129434号公報
【発明の開示】
【発明が解決しようとする課題】
【0004】
従来技術によれば、識別しようとする画像の標題(イベントや被写体名など)の種類が多くなると抽出すべき識別情報が増える上に、該識別情報に基づいて行う識別処理の負担が大きくなるという問題があった。
【課題を解決するための手段】
【0005】
(1)本発明による画像の標題付与装置は、画像に対して所定数の標題候補を与える標題候補付与手段と、所定数の標題候補のそれぞれに対応させて画像の特徴量を算出する特徴量算出手段と、標題候補ごとに算出された画像の特徴量に基づいて、標題候補の中から画像の標題を決定する標題決定手段とを備えることを特徴とする。
(2)請求項1に記載する画像の標題付与装置において、標題候補付与手段は、撮影日時情報に応じて標題候補を所定数選ぶこともできる。
(3)請求項1または2に記載する画像の標題付与装置において、標題候補付与手段は、撮影位置情報に応じて標題候補を所定数選ぶこともできる。
(4)請求項1〜3のいずれか一項に記載する画像の標題付与装置はさらに、画像のデータに基づいて当該画像における人物の顔を検出する顔検出手段を備えてもよい。この場合の標題候補付与手段は、顔検出手段による顔の検出の有無に応じて標題候補を所定数選ぶこともできる。
(5)請求項4に記載する画像の標題付与装置はさらに、人物の顔を識別する顔識別手段を備えてもよい。この場合の標題候補付与手段は、顔識別手段による顔の識別結果に応じて標題候補を所定数選ぶこともできる。
(6)請求項1〜5のいずれか一項に記載する画像の標題付与装置において、標題候補付与手段は、複数の画像を有する画像群に対して所定数の標題候補を与え、特徴量算出手段は、所定数の標題候補のそれぞれに対応させて画像群に含まれる複数の画像の特徴量を個々に算出し、標題決定手段は、標題候補ごとに算出された画像の特徴量に基づいて、標題候補の中から画像群を代表する標題を決定することもできる。
(7)本発明によるカメラは、請求項1〜請求項6のいずれか一項に記載する画像の標題付与装置を備えることを特徴とする。
【発明の効果】
【0006】
本発明によれば、画像に標題をつける処理の負担を軽減できる。
【発明を実施するための最良の形態】
【0007】
以下、図面を参照して本発明を実施するための最良の形態について説明する。
(第一の実施形態)
図1は、本発明の第一の実施形態による電子カメラ1の要部構成を説明するブロック図である。電子カメラ1は、メインCPU11によって制御される。
【0008】
撮影レンズ21は、撮像素子22の撮像面上に被写体像を結像させる。撮像素子22はCCDイメージセンサなどで構成され、撮像面上の被写体像を撮像し、撮像信号を撮像回路23へ出力する。撮像素子22の撮像面には、それぞれR(赤)、G(緑)およびB(青)のカラーフィルタが画素位置に対応するように設けられている。撮像素子22がカラーフィルタを通して被写体像を撮像するため、撮像素子22から出力される光電変換信号は、RGB表色系の色情報を有する。
【0009】
撮像回路23は、撮像素子22から出力される光電変換信号に対するアナログ処理(ゲインコントロールなど)を行う他、内蔵するA/D変換回路でアナログ撮像信号をディジタルデータに変換する。
【0010】
メインCPU11は、各ブロックから出力される信号を入力して所定の演算を行い、演算結果に基づく制御信号を各ブロックへ出力する。画像処理回路12は、たとえばASICとして構成され、撮像回路23から入力されるディジタル画像信号に対して画像処理を行う。画像処理には、たとえば、輪郭強調や色温度調整(ホワイトバランス調整)処理、画像信号に対するフォーマット変換処理が含まれる。
【0011】
画像圧縮回路13は、画像処理回路12による処理後の画像信号に対して、たとえばJPEG方式で所定の圧縮比率の画像圧縮処理を行う。表示画像作成回路15は、撮像画像を液晶モニタ16に表示させるための表示データを作成する。
【0012】
バッファメモリ14は、画像処理前後および画像処理途中のデータを一時的に格納する他、記録媒体30へ記録する前の画像ファイルを格納したり、記録媒体30から読み出した画像ファイルを格納したりするために使用される。
【0013】
記録媒体30は、電子カメラ1に対して着脱可能なメモリカードなどで構成される。記録媒体30には、メインCPU11からの指示によって撮影画像のデータおよびその情報を含む画像ファイルが記録される。記録媒体30に記録された画像ファイルは、メインCPU11からの指示によって読み出しが可能である。
【0014】
フラッシュメモリ19は、メインCPU11が実行するプログラムや、メインCPU11が行う処理に必要なデータなどが格納される。フラッシュメモリ19が格納するプログラムやデータの内容は、メインCPU11からの指示によって追加、変更が可能に構成されている。
【0015】
操作部材17は、電子カメラ1の各種ボタンやスイッチ類を含み、レリーズボタンの押下操作、モード切替スイッチの切換操作など、各操作部材の操作内容に応じた操作信号をメインCPU11へ出力する。
【0016】
GPS装置18は、メインCPU11からの指示に応じてGPS衛星からの電波を受信し、受信信号をメインCPU11へ出力する。メインCPU11は、GPS装置18からの受信信号に基づいて所定の演算を行い、電子カメラ1の測位情報(緯度、経度、高度)を検出する。
【0017】
電子カメラ1は、撮影時に撮像素子22で取得された画像信号に所定の画像処理および圧縮処理を施し、圧縮処理後の画像データに、測位情報、および当該撮影画像に関する情報などを含む付加情報を付加した画像ファイルを生成するように構成されている。具体的には、JPEG形式の画像データを画像データ部に格納し、付加情報を付加情報部に格納したExif形式の画像ファイルを生成する。Exif形式の画像ファイルは、JPEG画像フォーマットの画像データ内にサムネイル画像や付加情報データを埋め込むようにしたものである。生成した画像ファイルは、記録媒体30に格納される。
【0018】
また、電子カメラ1は撮影モードと再生モードとが切替え可能に構成される。撮影モードは、被写体像を撮影し、撮影画像のデータを記録媒体30に画像ファイルとして保存する動作モードである。再生モードは、撮影済みの画像データを記録媒体30から読み出すなどして、画像データによる再生画像を液晶モニタ16に表示するモードである。
【0019】
<撮影画像のグルーピング>
本実施形態の電子カメラ1は、撮影画像を自動的にグルーピングする機能を備える。具体的には、記録媒体30に記録済みの画像ファイルに対してグループ分けを行い、画像ファイルをグループごとに設けたフォルダ内に格納する。電子カメラ1はさらに、各フォルダ内に含まれる画像群に基づいて、画像群の撮影対象を表す標題(たとえば、撮影シーン)を決める。そして、この標題に基づいて、各フォルダ(グループ)の画像群を代表する画像ファイルをフォルダ(グループ)ごとにそれぞれ選ぶ。なお、画像ファイルをグループごとに設けたフォルダ内に格納しなくても、画像ファイルの管理テーブルを作成し、該テーブルに画像ファイルに対するグループ分け情報を格納するようにしてもよい。
【0020】
図2は、メインCPU11が実行する上記グルーピング処理の流れを説明するフローチャートである。メインCPU11は、操作部材17からグルーピング処理の実行を指示する操作信号が入力されると、図2による処理を開始する。
【0021】
図2のステップS10において、メインCPU11は、記録媒体30に記録されている画像ファイルに対してクラスタリング手法によってグループ分けを行い、ステップS20へ進む。クラスタリング処理の詳細については後述する。ステップS20において、メインCPU11は、クラスタ(グループ分け後の画像ファイルの集合)に含まれる画像ごとにイベント判定を行ってステップS30へ進む。「イベント」は画像の撮影シーンを表すもので、たとえば、「運動会」、「結婚式」、「花見」、「海水浴」、「北海道旅行」などをいう。画像ごとのイベント判定処理の詳細については後述する。
【0022】
ステップS30において、メインCPU11は、クラスタごとにイベント判定を行ってステップS40へ進む。「イベント」が標題である点は上記ステップS20の場合と共通であるが、ステップS20におけるイベント判定が個々の画像を対象とするものであるのに対し、ステップS30におけるイベント判定がクラスタを代表する「イベント」を判定する点において異なる。クラスタごとのイベント判定処理の詳細については後述する。
【0023】
ステップS40において、メインCPU11は、必要に応じてクラスタを統合し、ステップS50へ進む。クラスタの統合処理の詳細については後述する。ステップS50において、メインCPU11は、クラスタを代表する画像ファイルを決定して図2による処理を終了する。
【0024】
<クラスタリング処理>
クラスタリング処理(S10)の詳細について、図3に例示するフローチャートを参照して説明する。クラスタリング処理は、たとえば、撮影日時情報を用いて行う。図3のステップS11において、メインCPU11は全ての画像ファイルを対象に、画像ファイルの付加情報部に記録されている撮影日時を示す情報を抽出してステップS12へ進む。
【0025】
ステップS12において、メインCPU11は、全ての画像ファイルから撮影日時を示す情報を抽出したか否かを判定する。メインCPU11は、全画像ファイルから必要な情報を抽出済みの場合にステップS12を肯定判定してステップS13へ進み、必要な情報を全画像ファイルから抽出済みでない場合にはステップS12を否定判定してステップS11へ戻る。ステップS11へ戻る場合は、上記抽出処理を繰り返す。
【0026】
ステップS13において、メインCPU11は、階層的クラスタリングを用いる。その中で、たとえば最短距離法を用いてクラスタリングを行う。具体的には、1画像につき1クラスタを処理の起点として、撮影時刻が近いクラスタを逐次併合する処理を繰り返すことにより、画像ファイルを複数のクラスタ(撮影時刻が近い画像ファイルの集合)に分ける。メインCPU11は、クラスタ数が所定の数まで減った場合にステップS14へ進む。または、近接するクラスタ間において、一方の集合内で最も遅い撮影時刻と、他方の集合内で最も早い撮影時刻との差が所定時間(たとえば3時間)以上になった場合にステップS14へ進む。なお、階層的クラスタリングの中でも最短距離法以外の手法を用いてもよい。さらに、階層的クラスタリング以外の手法(たとえば、分割最適化法)を用いてもよい。
【0027】
ステップS14において、メインCPU11は、上記クラスタに対応させてフォルダを記録媒体30内に生成してステップS15へ進む。ステップS15において、メインCPU11は、生成したフォルダ内へ対応する画像ファイルを移動させて図3による処理を終了する。これにより、クラスタに対応する各フォルダの中に、各クラスタに属する画像ファイルが格納される。なお、画像ファイルをグループごとに設けたフォルダ内に格納しなくても、画像ファイルの管理テーブルを作成し、該テーブルに画像ファイルに対するグループ分け情報を格納するようにしてもよい。
【0028】
<画像ごとのイベント判定処理>
画像単位のイベント判定処理(S20)の詳細について、図4に例示するフローチャートを参照して説明する。図4のステップS21において、メインCPU11は、複数のクラスタの中からクラスタを1つ特定してステップS22へ進む。特定順は、たとえば、撮影日時が古い順(最も早い撮影時刻の画像ファイルを有するクラスタを優先)とする。
【0029】
ステップS22において、メインCPU11は、判定対象とするイベント(イベント候補と呼ぶ)を決定する。メインCPU11は、図8に例示するイベント候補テーブルを参照し、クラスタを構成する画像ファイルの撮影日が属する月に対応するイベントを選ぶ。たとえば、画像ファイルが5月に撮影されたものである場合には、「花見」、「運動会」、および「結婚式」をイベント候補とする。イベント候補テーブルは、月ごとに発生頻度が高いイベントを記したものであり、過去のイベント発生月に基づいてあらかじめ作成され、フラッシュメモリ19内に記録されている。なお、各月に対応させるイベント候補の数は、所定数(本例においては3つ)に制限されている。
【0030】
図8によれば、発生月や季節との相関が強いイベントは該当月のみに含まれ、「結婚式」のように発生月との相関が弱いイベントは複数の月に含まれる。メインCPU11は、クラスタを構成する画像ファイルの撮影日が複数の月に属する場合は、一例として、より多くの画像ファイルが属する月に対応するイベント候補を選ぶ。メインCPU11は、以上のように判定対象とするイベントを決定したら、ステップS23へ進む。
【0031】
ステップS23において、メインCPU11は、特定したクラスタを構成する画像ファイルの中から画像ファイルを1つ特定してステップS24へ進む。ステップS24において、メインCPU11は、特定した画像ファイルに含まれる画像データに基づいて、当該画像の特徴量を算出してステップS25へ進む。
【0032】
メインCPU11は、ステップS22において決定したイベント候補の判定に適した画像の特徴量を算出する。イベント候補と算出すべき特徴量との関係は、あらかじめテーブル化されてフラッシュメモリ19内に記録されている。特徴量は、たとえば、画像の所定領域を構成する画素データに基づいて算出される色情報、鮮鋭度情報、質感情報、模様情報、および明るさ情報などである。また、画像サイズやカラーヒストグラムの情報を特徴量として扱ってもよい。特徴量算出は公知技術であるため、本説明では特徴量算出に関する詳細な説明を省略する。
【0033】
ステップS25−ステップS27において、メインCPU11は、ステップS22において決定したイベント候補に対応した識別器をそれぞれ用いて、各イベントらしさを表す確率を算出する。識別器は、複数のサンプル画像データに基づいてSVM(Support Vector Machine)手法を用いる機械学習によって算出された特徴量情報である。たとえば、「花見」用の識別器は、複数の「花見」および「非花見」のサンプル画像に基づいて算出された特徴量情報である。「運動会」用の識別器は、複数の「運動会」および「非運動会」のサンプル画像に基づいて算出された特徴量情報である。「結婚式」用の識別器は、複数の「結婚式」および「非結婚式」のサンプル画像に基づいて算出された特徴量情報である。本実施形態では、複数のイベント候補のそれぞれに対応する識別器があらかじめ生成され、フラッシュメモリ19内に記録されている。メインCPU11は、ステップS23において特定した1画像ごとに、イベント候補に挙げられたイベントらしさ(確率)Pを算出してステップS28へ進む。
【0034】
イベントらしさを表す確率Pは、識別器によって表される特徴量空間において空間を仕切る境界(たとえば、「運動会」領域と、「非運動会」領域との境界)と、ステップS24において算出された特徴量との距離に対応する。ある画像から算出した特徴量が、「運動会」用の識別器によって表される特徴量空間で「運動会」に対応する特徴量領域の奥に位置し、「非運動会」に対応する特徴量領域までの距離が長ければ、「運動会」らしさの確率が高い。一方、画像から算出した特徴量が、「運動会」に対応する特徴量領域の端に位置し、「非運動会」に対応する特徴量領域までの距離が短ければ、「運動会」らしさの確率が低い。メインCPU11は、上記距離に応じて確率を算出する。
【0035】
ステップS28において、メインCPU11は、特定したクラスタ内の全画像ファイルに対して処理を終了したか否かを判定する。メインCPU11は、クラスタ内の全ての画像について特徴量算出、およびイベントらしさ(確率)Pの算出を行った場合にステップS28を肯定判定してステップS29へ進む。メインCPU11は、クラスタ内の全ての画像について特徴量算出、およびイベントらしさ(確率)Pの算出を行っていない場合には、ステップS28を否定判定してステップS23へ戻る。ステップS23へ戻ったメインCPU11は、特定したクラスタを構成する画像ファイルのうち他の1つの画像ファイルを特定してステップS24へ進む。
【0036】
ステップS29において、メインCPU11は、全てのクラスタに対して処理を終了したか否かを判定する。メインCPU11は、全てのクラスタについて特徴量算出、およびイベントらしさ(確率)Pの算出を行った場合にステップS29を肯定判定して図4による処理を終了する。メインCPU11は、全てのクラスタについて特徴量算出、およびイベントらしさ(確率)Pの算出を行っていない場合には、ステップS29を否定判定してステップS21へ戻る。ステップS21へ戻ったメインCPU11は、他の1つのクラスタを特定してステップS22へ進む。
【0037】
<クラスタごとのイベント判定処理>
クラスタ単位のイベント判定処理(S30)の詳細について、図5に例示するフローチャートを参照して説明する。図5のステップS31において、メインCPU11は、複数のクラスタの中からクラスタを1つ特定してステップS32へ進む。特定順は、たとえば、撮影日時が古い順(最も早い撮影時刻の画像ファイルを有するクラスタを優先)とする。
【0038】
ステップS32において、メインCPU11は、イベント候補の中から判定対象とするイベントを1つ特定してステップS33へ進む。ステップS33において、メインCPU11は、S31において特定したクラスタを構成する画像ファイルの中から画像ファイルを1つ特定してステップS34へ進む。ステップS34において、メインCPU11は、S32において特定したイベントに対するイベントらしさ(確率)Pが所定の判定閾値Pth以上か否かを判定する。メインCPU11は、イベントらしさ(確率)Pが判定閾値Pth以上の場合にステップS34を肯定判定してステップS35へ進む。メインCPU11は、イベントらしさ(確率)Pが判定閾値Pth未満の場合にはステップS34を否定判定し、ステップS36へ進む。
【0039】
ステップS35において、メインCPU11は、Psum=Psum+Pを算出してステップS36へ進む。ステップS36において、メインCPU11は、特定したクラスタ内の全画像ファイルに対して処理を終了したか否かを判定する。メインCPU11は、クラスタ内の全ての画像について処理を行った場合にステップS36を肯定判定してステップS37へ進む。メインCPU11は、クラスタ内の全ての画像について処理を行っていない場合には、ステップS36を否定判定してステップS33へ戻る。ステップS33へ戻ったメインCPU11は、特定したクラスタを構成する画像ファイルのうち他の1つの画像ファイルを特定してステップS34へ進む。
【0040】
ステップS37において、メインCPU11は、上記Psumへ加算したイベントらしさ(確率)Pの個数がクラスタ内の全画像ファイル数のNパーセント以上か否かを判定する。メインCPU11は、加算したPの個数がNパーセント以上の場合にステップS37を肯定判定してステップS38へ進む。メインCPU11は、加算したPの個数がNパーセント未満の場合にはステップS37を否定判定し、ステップS41へ進む。ステップS41において、メインCPU11は、Psum=0としてステップS38へ進む。
【0041】
ステップS38において、メインCPU11は、イベント候補の全てについてPsumを算出する処理を終了したか否かを判定する。メインCPU11は、全てのイベントについて算出処理を終了した場合にステップS38を肯定判定してステップS39へ進む。メインCPU11は、全てのイベントについて算出処理を終了していない場合にはステップS38を否定判定し、ステップS32へ戻る。ステップS32へ戻ったメインCPU11は、イベント候補のうち判定対象とする他のイベント1つを特定してステップS33へ進む。
【0042】
ステップS39において、メインCPU11は、イベント候補ごとに算出したPsumのうち、その最大値に対応するイベント候補を当該クラスタの標題イベントに決定してステップS42へ進む。
【0043】
ステップS42において、メインCPU11は、全てのクラスタについてPsumの算出、および標題イベントを決定する処理を終了したか否かを判定する。メインCPU11は、全てのクラスタについて処理を終了した場合にステップS42を肯定判定して図5による処理を終了する。メインCPU11は、全てのクラスタについて処理を終了していない場合にはステップS42を否定判定し、ステップS31へ戻る。ステップS31へ戻ったメインCPU11は、他のクラスタ1つを特定してステップS32へ進む。
【0044】
図9−図11は、画像ファイルの集合(画像数=5)を含むクラスタに対するイベント判定を例示する図である。イベント候補は、たとえば「運動会」、「結婚式」、および「花見」であり、画像1−画像5のそれぞれについて、「運動会」らしさ、「結婚式」らしさ、および「花見」らしさの確率Pが算出されている。本例では、判定閾値Pth=40パーセントとし、判定閾値N=40パーセントとする。
【0045】
図9の場合、「運動会」らしさについてのPsumは、「運動会」らしさを示すPが判定閾値Pth以上の画像(すなわち、画像4以外の画像1−画像3、および画像5)について、それぞれのPを加算する(ステップS35)。この場合のPsumは、85(画像1)+90(画像2)+80(画像3)+75(画像5)=330である。
【0046】
図10の場合、「結婚式」らしさを示すPが判定閾値Pth以上となるのは画像4のみであるため、「結婚式」らしさについてのPsumは、画像4について算出されているPのみを加算対象にする。これにより、Psum=45(画像4)を得る。ここで、画像4(1画像)は、画像数5のうち20パーセントに相当するため上記N(40パーセント)に満たない。そこでメインCPU11は、図10の場合のPsumを0とする(ステップS41)。
【0047】
図11において、「花見」らしさについてのPsumは、「花見」らしさを示すPが判定閾値Pth以上の画像(すなわち、画像3以外の画像1−画像2、および画像4−画像5)について、それぞれのPを加算する(ステップS35)。この場合のPsumは、60(画像1)+70(画像2)+65(画像4)+75(画像5)=270である。
【0048】
メインCPU11は、イベント候補(「運動会」、「結婚式」、および「花見」)のうち、最大Psumに対応する「運動会」を、当該クラスタの標題イベントとする。
【0049】
<クラスタの統合処理>
クラスタの統合処理(S40)の詳細について、図6に例示するフローチャートを参照して説明する。図6のステップS51において、メインCPU11は、複数のクラスタのうち、近接するクラスタ間の時間差が判定閾値T以下か否かを判定する。メインCPU11は、たとえば、一方のクラスタで最も遅い撮影時刻と、他方のクラスタ内で最も早い撮影時刻との差が上記T以下の場合にステップS51を肯定判定してステップS52へ進む。メインCPU11は、時間差が上記Tを超える場合にはステップS51を否定判定して図6による処理を終了する。ステップS51を否定判定する場合は、クラスタの統合を行わない。
【0050】
ステップS52において、メインCPU11は、時間差T以下で近接するクラスタ同士の標題イベントが同一か否かを判定する。メインCPU11は、標題イベントが同一の場合にステップS52を肯定判定してステップS53へ進む。メインCPU11は、標題イベントが同一でない場合にはステップS52を否定判定して図6による処理を終了する。ステップS52を否定判定する場合は、クラスタの統合を行わない。
【0051】
ステップS53において、メインCPU11は、2つのクラスタを1つのクラスタに統合して図6による処理を終了する。メインCPU11は、全クラスタに対してクラスタの統合処理を繰り返す。以上の処理により、クラスタ数が減少する。
【0052】
<クラスタごとの代表画像の決定処理>
クラスタ単位の代表画像決定処理の詳細について、図7に例示するフローチャートを参照して説明する。図7のステップS61において、メインCPU11は、複数のクラスタの中からクラスタを1つ特定してステップS62へ進む。特定順は、たとえば、撮影日時が古い順(最も早い撮影時刻の画像ファイルを有するクラスタを優先)とする。
【0053】
ステップS62において、メインCPU11は、ステップS39において決定した標題イベントに対応する選択基準情報をフラッシュメモリ19から読み出してステップS63へ進む。選択基準情報は、代表画像の決定方法をあらかじめ標題イベントごとに定め、テーブル化してフラッシュメモリ19内に記録したものである。
【0054】
ステップS63において、メインCPU11は、クラスタ内に含まれる画像ファイル群の中から、選択基準情報に基づいて代表画像を選んでステップS64へ進む。ステップS64において、メインCPU11は、全てのクラスタについて代表画像を選んだか否かを判定する。メインCPU11は、全てのクラスタについて処理を終了した場合にステップS64を肯定判定して図7による処理を終了する。メインCPU11は、全てのクラスタについて処理を終了していない場合にはステップS64を否定判定し、ステップS61へ戻る。ステップS61へ戻ったメインCPU11は、他のクラスタ1つを特定してステップS62へ進む。
【0055】
上記選択基準情報について説明する。メインCPU11は、図12に例示する選択基準情報テーブルを参照し、クラスタの標題イベントに対応する選択基準情報を選ぶ。選択基準情報テーブルは、あらかじめ作成されてフラッシュメモリ19内に記録されている。たとえば、クラスタの標題イベントが「結婚式」、「初詣」、「ひな祭り」、「入学式」、「卒業式」の場合は、当該クラスタに含まれる画像のうち、画像に含まれる顔領域の割合が所定割合に最も近いものを代表画像として選ぶ。なお、画像データに基づいて顔検出処理を行い、画像に含まれている人物の「顔」を検出する顔検出処理は、公知の技術であるため説明を省略する。
【0056】
また、クラスタの標題イベントが「海水浴」、「ダイビング」、「紅葉狩」、「ゴルフ」の場合は、当該クラスタに含まれる画像のうち、画像に含まれる所定色領域の割合が所定割合に最も近いものを代表画像として選ぶ。所定色は、たとえば、青色領域(海水浴、ダイビング)、赤色または黄色領域(紅葉狩)、緑色領域(ゴルフ)である。
【0057】
また、クラスタに含まれる画像のうち、当該クラスタの標題イベントに対応するイベントらしさを示す確率Pが最大となる画像を代表画像として選ぶようにしてもよい。このように、あらかじめ標題イベントごとに代表画像決定条件を決めておき、その決定条件に基づいて標題イベントを代表する画像を決定する。
【0058】
以上説明した第一の実施形態によれば、以下の作用効果が得られる。
(1)クラスタ(画像ファイルの集合)に対して複数のイベント候補(運動会、結婚式、花見)を与え、各イベント候補の判定に適した特徴量をクラスタ内の画像ごとに算出し、算出した個々の画像の特徴量に基づいて当該クラスタ(画像ファイルの集合)を代表するイベントをイベント候補の中から決定するようにした。従来技術と異なり、クラスタに対してSVM手法を使わない、すなわち、クラスタに対する特徴量の算出を必要とせずに、画像ごとのイベントらしさ(確率)Pの和Psumを算出する単純加算、和Psumに加算した画像数のカウント、イベント候補間におけるPsumの大小比較、判定閾値Pthと確率Pとの大小比較のみでよいので、画像群に対する特徴量算出をする場合に比べて短時間で処理することができる。
【0059】
(2)画像ごとのイベントらしさ(確率)Pの和Psumの最大値に対応するイベント候補に決定するようにしたので、画像ファイルの集合を代表するイベントを適切に決めることができる。
【0060】
(3)画像ごとのイベントらしさ(確率)Pが判定閾値Pthに満たない場合は和Psumに加えないようにしたので、イベント候補に該当する確率が低い画像が和Psumに寄与する度合いを抑えることができる。
【0061】
(4)判定閾値Pthを満たす画像数(すなわち、和PsumにPを加算した画像数)がクラスタ内の画像数に対して所定割合に満たない場合は、Psumを0にして当該イベント候補を除外するようにした。これにより、画像ファイルの集合を代表するイベントを適切に決めることができる。
【0062】
(5)クラスタ(画像ファイルの集合)は、画像の撮影日時に応じてクラスタリングしたものを用いるようにした。これにより、撮影日時に応じたイベント候補を与えることができる。
【0063】
(6)クラスタに対して複数のイベント候補を与えるようにしたので、これら複数のイベント候補の中から最も適切なものを決定することができる。なお、画像ファイルの集合でなく単一の画像に対しても複数のイベント候補を与え、これら複数のイベント候補の中から最も適切なものを決定させてもよい。
【0064】
(7)過去のイベント発生月に基づいてあらかじめ作成したイベント候補テーブルに基づいて複数のイベント候補を与えるようにしたので、適合率が高いイベント候補を与えることができる。
【0065】
(8)イベント候補テーブルにおいて各月に対応させるイベント候補の数の上限を3つに制限したので、イベント候補の数の上限を制限しない場合に比べて、画像ごとのイベントらしさ(確率)Pを算出する処理の負担を抑えることができる。なお、各月に対応させるイベント候補の数を3つ以上許容して、クラスタに対してイベント候補を与える際に、優先度が高いものから3つ選ぶように構成しても構わない。
【0066】
(9)複数のクラスタのうち、近接するクラスタ間の時間差が判定閾値T以下であって、かつ当該クラスタ同士の標題イベントが同一の場合に両クラスタを1つに統合するようにした。これにより、撮影日時のみでクラスタリングしたものより、必要以上に細かくクラスタリングすることを避けられ、画像を分類整理する時の意図に沿ったものとなる。
【0067】
(10)一方のクラスタで最も遅い撮影時刻と、他方のクラスタ内で最も早い撮影時刻との差が上記T以下の場合にステップS51を肯定判定するようにした。同じイベントに対しては、撮影間隔をあけずに続けて撮影することが多いので、当該クラスタ同士の標題イベントが同一である可能性が高い場合を検出できる。
【0068】
(11)イベント候補と算出すべき特徴量との関係をあらかじめテーブル化してフラッシュメモリ19内に記録しておくようにした。これにより、イベント候補の判定に適した画像の特徴量を算出でき、画像ファイルの集合を代表するイベントを適切に決めることができる。
【0069】
(変形例1)
クラスタリング(S10)の際、撮影日単位でクラスタリングを行うようにしてもよい。
【0070】
(変形例2)
図8に例示したイベント候補テーブルは、ユーザ操作によって変更可能に構成してもよい。たとえば、液晶モニタ16にイベント候補テーブルの編集画面を表示させて、ユーザが操作部材17を操作することによってテーブル内容を変更する。変更内容は、フラッシュメモリ19へ記録する。なお、各月に対応させるイベント候補の数は、上述した通り、通常は所定数(たとえば3つ)に制限しておくのが好ましい。
【0071】
(変形例3)
撮影時刻に応じてイベント候補を与えるようにしてもよい。この場合には、たとえば、撮影時刻が18時以降の場合のイベント候補に、「新年会」、「忘年会」、「宴会」などを含める。一方、「運動会」、「ゴルフ」、「遠足」、「ダイビング」など、過去のイベント発生時刻に基づいて18時以降に行わないものは、イベント候補に含めない。イベント候補の数を減らすことで、画像ごとのイベントらしさ(確率)Pを算出する処理の負担を抑えることができる。
【0072】
(変形例4)
イベントらしさ(確率)Pが判定閾値Pthを超えた画像数に応じて、クラスタ(画像ファイルの集合)の標題イベントを決定してもよい。たとえば、イベント候補(「運動会」、「結婚式」、および「花見」)のうち、判定閾値Pthを超えた画像数が多い方に対応するイベント候補を当該クラスタの標題イベントとする。
【0073】
(変形例5)
また、イベントらしさ(確率)Pが判定閾値Pthを超えた画像数が多いイベント候補を標題イベントと決定する決定方法と、最大Psumに対応するイベント候補を標題イベントと決定する決定方法とを組み合わせてもよい。この場合、いずれか一方の決定方法で優劣がつかなかった場合に、他方の決定方法を用いて判定を行う。たとえば、図9−図11の例では、イベント候補「運動会」および「花見」においてイベントらしさ(確率)Pが判定閾値Pthを超える画像数が同じであって優劣がつかない。そこで、最大Psumに対応するイベント候補「運動会」を当該クラスタの標題イベントとする。
【0074】
(変形例6)
近接するクラスタ間の時間差が判定閾値T以下か否かを判定する場合、各クラスタの重心に対応する時間差に基づいて判定してもよい。この場合のメインCPU11は、ステップS51(図6)において、一方のクラスタに属する画像群の平均撮影時刻と、他方のクラスタに属する画像群の平均撮影時刻との差が上記T以下の場合にステップS51を肯定判定してステップS52へ進む。
【0075】
(第二の実施形態)
クラスタリング処理(S10)の際、撮影日時情報に応じてでなく、撮影位置情報に応じて分けるようにしてもよい。具体的には、ステップS11(図3)において、メインCPU11が全ての画像ファイルを対象に、画像ファイルの付加情報部に記録されている撮影位置を示す測位情報を抽出する。そして、メインCPU11は、ステップS13(図3)において、1画像につき1クラスタを処理起点として、撮影位置が近いクラスタを逐次併合する処理を繰り返すことにより、画像ファイルを複数のクラスタ(撮影位置が近い画像ファイルの集合)に分ける。メインCPU11は、近接するクラスタ間において、撮影位置と撮影位置との間隔(距離)が所定距離(たとえば1Km)以上の場合にステップS14へ進む。
【0076】
第二の実施形態の場合のイベント候補テーブルは、撮影位置を含む地域ごとにイベント候補を対応させる。図14は、第二の実施形態において参照するイベント候補テーブルを例示する図である。たとえば関東地方の場合、東京都、神奈川県、千葉県、埼玉県、群馬県、茨城県、および栃木県ごとに複数のイベント候補を対応させる。イベント候補は、地域名、名所、公園、テーマパーク、ランドマークなどとする。メインCPU11は、イベント候補テーブルを参照することにより、クラスタを構成する画像ファイルの撮影位置情報が示す地域(都、県)に対応するイベントを選ぶ。たとえば、画像ファイルが千葉県で撮影されたものである場合には、「ディズニーリゾート」、「成田空港」、「マザー牧場(登録商標)」などをイベント候補とする。イベント候補テーブルは、地域ごとに発生頻度が高いイベントを記したものであり、過去のイベント発生地に基づいてあらかじめ作成し、フラッシュメモリ19内に記録しておく。また、各地域(本例では都、県)に対応させるイベント候補の数は、所定数(本例においては3つ)に制限しておく。
【0077】
メインCPU11は、近接するクラスタ間の距離が判定閾値D以下か否かを判定する。具体的には、ステップS51(図6)において、一方のクラスタに属する画像群の撮影位置と、他方のクラスタに属する画像群の撮影位置との間の距離のうち最短のものが、上記D以下の場合にステップS51を肯定判定してステップS52へ進む。同じイベントに対しては、同じエリア内で続けて撮影することが多いので、当該クラスタ同士の標題イベントが同一である可能性が高い場合を検出できる。
【0078】
以上説明した第二の実施形態によれば、複数のクラスタのうち、近接するクラスタ間の距離差が判定閾値D以下であって、かつ当該クラスタ同士の標題イベントが同一の場合に両クラスタが1つに統合される。これにより、撮影位置のみでクラスタリングしたものより、必要以上に細かくクラスタリングされることを避けられ、画像を分類整理する時の意図に沿ったものになる。
【0079】
また、過去のイベント発生地に基づいてあらかじめ作成したイベント候補テーブルに基づいて複数のイベント候補を与えるようにしたので、適合率が高いイベント候補を与えることができる。
【0080】
さらにまた、第一の実施形態と同様に、イベント候補テーブルにおいて各地域に対応させるイベント候補の数の上限を3つに制限したので、イベント候補の数の上限を制限しない場合に比べて、画像ごとのイベントらしさ(確率)Pを算出する処理の負担を抑えることができる。
【0081】
(変形例7)
撮影日時情報や撮影位置情報に代えて、撮影条件に応じてイベント候補を与えるようにしてもよい。この場合には、撮影条件ごとにイベント候補を対応させたイベント候補テーブルを備える。たとえば、付加情報データに格納しておいた撮影条件(シャッター速度、絞り、フォーカス調節情報、フラッシュ発光の有無、色温度調整係数など)を用い、シャッター速度が所定値より高速の場合のイベント候補に、「カーレース」、「オートレース」、および「スポーツ競技会」などを含める。また、フラッシュ発光の有の場合のイベント候補には、「結婚式」、「クリスマス」、「宴会」などを含める。一方、「スキー」、「花見」、「遠足」、「海水浴」など、過去のイベント発生時の撮影においてフラッシュ発光させないものは、イベント候補に含めない。イベント候補の数を減らすことで、画像ごとのイベントらしさ(確率)Pを算出する処理の負担を抑えることができる。
【0082】
(変形例8)
画像における特定被写体の有無に応じてイベント候補を与えるようにしてもよい。たとえば、画像データに基づいて顔検出処理を行い、画像に人物の「顔」が含まれている場合には、「新年会」、「卒業式」、「入学式」、「忘年会」などをイベント候補に含める。一方、「紅葉狩」、「ダイビング」など、過去のイベント発生時の撮影画像に「顔」が含まれないものは、イベント候補に含めない。イベント候補の数を減らすことで、画像ごとのイベントらしさ(確率)Pを算出する処理の負担を抑えることができる。
【0083】
(変形例9)
さらに、特定人物の「顔」を識別するように構成した上で、画像に家族など特定人物の「顔」が含まれていれば、イベント候補に「初詣」、「七五三」、「ひな祭り」などを含めるとよい。この場合、家族が参加しない催事についてはイベント候補に含めない。イベント候補の数を減らすことで、画像ごとのイベントらしさ(確率)Pを算出する処理の負担を抑えることができる。なお、画像に含まれている人物の「顔」を識別する顔識別処理は、公知の技術であるため説明を省略する。
【0084】
(変形例10)
さらにまた、人物の「顔」が大人の「顔」と子供の「顔」かを判定したり、男の「顔」か女の「顔」かを判定するように構成した上で、それぞれに合致するイベント候補を含めたり、あるいは合致しないイベント候補を除外したりするようにしてもよい。イベント候補の数を減らすことで、画像ごとのイベントらしさ(確率)Pを算出する処理の負担を抑えることができる。
【0085】
(変形例11)
なお、以上説明した撮影日時情報、撮影位置情報、撮影条件、および特定被写体の有無に応じたイベント候補の付与について、少なくとも2つを組み合わせることにより、多次元のイベント候補テーブルを備えるように構成してもよい。
【0086】
(変形例12)
電子カメラ1内で画像をグルーピングし、その標題を付与する例を説明したが、図2−図7による処理を行う標題付与プログラムを図13に示すコンピュータ装置10に実行させることにより、画像の標題付与装置を構成してもよい。標題付与プログラムをパーソナルコンピュータ10に取込んで使用する場合には、パーソナルコンピュータ10のデータストレージ装置にプログラムをローディングした上で、当該プログラムを実行させることによって画像群の標題付与装置として使用する。
【0087】
パーソナルコンピュータ10に対するプログラムのローディングは、プログラムを格納したCD−ROMなどの記録媒体104をパーソナルコンピュータ10にセットして行ってもよいし、ネットワークなどの通信回線101を経由する方法でパーソナルコンピュータ10へローディングしてもよい。通信回線101を経由する場合は、通信回線101に接続されたサーバー(コンピュータ)102のハードディスク装置103などにプログラムを格納しておく。標題付与プログラムは、記録媒体104や通信回線101を介する提供など、種々の形態のコンピュータプログラム製品として供給することができる。
【0088】
また、ASP(Application Service Provider)のような形態でサーバー側で実行させるようにしてもよい。
【0089】
以上の説明はあくまで一例であり、上記の実施形態の構成に何ら限定されるものではない。
【図面の簡単な説明】
【0090】
【図1】本発明の第一の実施形態による電子カメラ1の要部構成を説明するブロック図である。
【図2】メインCPUが実行するグルーピング処理の流れを説明するフローチャートである。
【図3】クラスタリング処理を説明するフローチャートである。
【図4】画像ごとのイベント判定処理を説明するフローチャートである。
【図5】クラスタごとのイベント判定処理を説明するフローチャートである。
【図6】クラスタの統合処理を説明するフローチャートである。
【図7】代表画像を決める処理を説明するフローチャートである。
【図8】イベント候補テーブルを例示する図である。
【図9】クラスタに対するイベント判定(運動会)を例示する図である。
【図10】クラスタに対するイベント判定(結婚式)を例示する図である。
【図11】クラスタに対するイベント判定(花見)を例示する図である。
【図12】選択基準情報テーブルを例示する図である。
【図13】コンピュータ装置を例示する図である。
【図14】第二の実施形態によるイベント候補テーブルを例示する図である。
【符号の説明】
【0091】
1…電子カメラ
11…メインCPU
14…バッファメモリ
15…表示画像作成回路
16…液晶モニタ
17…操作部材
18…GPS装置
19…フラッシュメモリ
30…記録媒体

【特許請求の範囲】
【請求項1】
画像に対して所定数の標題候補を与える標題候補付与手段と、
前記所定数の標題候補のそれぞれに対応させて前記画像の特徴量を算出する特徴量算出手段と、
前記標題候補ごとに算出された前記画像の特徴量に基づいて、前記標題候補の中から前記画像の標題を決定する標題決定手段とを備えることを特徴とする画像の標題付与装置。
【請求項2】
請求項1に記載する画像の標題付与装置において、
前記標題候補付与手段は、撮影日時情報に応じて標題候補を所定数選ぶことを特徴とする画像の標題付与装置。
【請求項3】
請求項1または2に記載する画像の標題付与装置において、
前記標題候補付与手段は、撮影位置情報に応じて標題候補を所定数選ぶことを特徴とする画像の標題付与装置。
【請求項4】
請求項1〜3のいずれか一項に記載する画像の標題付与装置において、
前記画像のデータに基づいて当該画像における人物の顔を検出する顔検出手段をさらに備え、
前記標題候補付与手段は、前記顔検出手段による顔の検出の有無に応じて標題候補を所定数選ぶことを特徴とする画像の標題付与装置。
【請求項5】
請求項4に記載する画像の標題付与装置において、
前記人物の顔を識別する顔識別手段をさらに備え、
前記標題候補付与手段は、前記顔識別手段による顔の識別結果に応じて標題候補を所定数選ぶことを特徴とする画像の標題付与装置。
【請求項6】
請求項1〜5のいずれか一項に記載する画像の標題付与装置において、
前記標題候補付与手段は、複数の画像を有する画像群に対して所定数の標題候補を与え、
前記特徴量算出手段は、前記所定数の標題候補のそれぞれに対応させて前記画像群に含まれる複数の画像の特徴量を個々に算出し、
前記標題決定手段は、前記標題候補ごとに算出された前記画像の特徴量に基づいて、前記標題候補の中から前記画像群を代表する標題を決定することを特徴とする画像の標題付与装置。
【請求項7】
請求項1〜請求項6のいずれか一項に記載する画像の標題付与装置を備えることを特徴とするカメラ。

【図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


【公開番号】特開2009−267683(P2009−267683A)
【公開日】平成21年11月12日(2009.11.12)
【国際特許分類】
【出願番号】特願2008−113709(P2008−113709)
【出願日】平成20年4月24日(2008.4.24)
【出願人】(000004112)株式会社ニコン (12,601)
【Fターム(参考)】