(57)【要約】【課題】階層化された複数の被写体クラスが画像から検出された場合に、所定の選択基準に基づいて選択された階層に属する被写体クラスを優先して、複数の被写体クラスの一部をユーザに通知する技術を提供する。【解決手段】連続撮影を行う撮影制御手段と、前記連続撮影により得られた画像から、上位階層の被写体クラスが下位階層の被写体クラスを包含する階層構造に従って階層化された複数の被写体クラスを検出する検出手段と、所定の選択基準に基づいて特定の階層を選択する選択手段と、前記特定の階層に属する被写体クラスを優先して、前記複数の被写体クラスの一部をユーザに通知する通知手段と、を備えることを特徴とする撮像装置を提供する。【選択図】図２
2020195117.tif 000002
【特許請求の範囲】
【請求項１】
連続撮影を行う撮影制御手段と、
前記連続撮影により得られた画像から、上位階層の被写体クラスが下位階層の被写体クラスを包含する階層構造に従って階層化された複数の被写体クラスを検出する検出手段と、
所定の選択基準に基づいて特定の階層を選択する選択手段と、
前記特定の階層に属する被写体クラスを優先して、前記複数の被写体クラスの一部をユーザに通知する通知手段と、
を備えることを特徴とする撮像装置。
【請求項２】
前記選択手段は、ユーザ操作に基づいて前記特定の階層を選択する
ことを特徴とする請求項１に記載の撮像装置。
【請求項３】
前記連続撮影の間に広角側へのズーム操作が行われた場合、前記選択手段は、前回選択した階層よりも上位の階層を前記特定の階層として選択し、
前記連続撮影の間に望遠側へのズーム操作が行われた場合、前記選択手段は、前回選択した階層よりも下位の階層を前記特定の階層として選択する
ことを特徴とする請求項２に記載の撮像装置。
【請求項４】
前記選択手段は、前記複数の被写体クラスのうち合焦度合いが最も高い被写体クラスが属する階層を、前記特定の階層として選択する
ことを特徴とする請求項２に記載の撮像装置。
【請求項５】
前記通知手段が前記複数の被写体クラスの一部をユーザに通知することは、通知対象の被写体クラスを示す情報を表示手段に表示することを含む
ことを特徴とする請求項１乃至４のいずれか１項に記載の撮像装置。
【請求項６】
前記通知手段が前記複数の被写体クラスの一部をユーザに通知することは、通知対象の被写体クラスを示す音声を音声出力手段から出力することを含む
ことを特徴とする請求項１乃至５のいずれか１項に記載の撮像装置。
【請求項７】
前記複数の被写体クラスの数が閾値以下の場合、前記通知手段は、前記複数の被写体クラスの全てを前記ユーザに通知する
ことを特徴とする請求項１乃至６のいずれか１項に記載の撮像装置。
【請求項８】
画像から検出された、上位階層の被写体クラスが下位階層の被写体クラスを包含する階層構造に従って階層化された複数の被写体クラスを取得する取得手段と、
所定の選択基準に基づいて特定の階層を選択する選択手段と、
前記特定の階層に属する被写体クラスを優先して、前記複数の被写体クラスの一部をユーザに通知する通知手段と、
を備えることを特徴とする通知装置。
【請求項９】
前記選択手段は、ユーザ操作に基づいて前記特定の階層を選択する
ことを特徴とする請求項８に記載の通知装置。
【請求項１０】
前記画像を表示手段に表示する表示制御手段を更に備え、
前記選択手段は、前記画像の表示倍率が第１の倍率の場合、第１の階層を前記特定の階層として選択し、前記画像の表示倍率が前記第１の倍率より高い第２の倍率の場合、前記第１の階層より下位の第２の階層を前記特定の階層として選択する
ことを特徴とする請求項８に記載の通知装置。
【請求項１１】
前記画像のサムネイル画像を表示手段に表示する表示制御手段を更に備え、
前記選択手段は、前記表示手段に前記サムネイル画像が表示される場合、最上位の階層を前記特定の階層として選択する
ことを特徴とする請求項８に記載の通知装置。
【請求項１２】
前記表示手段に前記サムネイル画像が表示される場合、前記通知手段が前記複数の被写体クラスの一部をユーザに通知することは、通知対象の被写体クラスを示す情報を前記表示手段において前記サムネイル画像の近傍に表示することを含む
ことを特徴とする請求項１１に記載の通知装置。
【請求項１３】
前記複数の被写体クラスを前記画像から検出する検出手段を更に備える
ことを特徴とする請求項８乃至１２のいずれか１項に記載の通知装置。
【請求項１４】
前記複数の被写体クラスの数が閾値以下の場合、前記通知手段は、前記複数の被写体クラスの全てを前記ユーザに通知する
ことを特徴とする請求項８乃至１３のいずれか１項に記載の通知装置。
【請求項１５】
撮像装置が実行する通知方法であって、
連続撮影を行う撮影制御工程と、
前記連続撮影により得られた画像から、上位階層の被写体クラスが下位階層の被写体クラスを包含する階層構造に従って階層化された複数の被写体クラスを検出する検出工程と、
所定の選択基準に基づいて特定の階層を選択する選択工程と、
前記特定の階層に属する被写体クラスを優先して、前記複数の被写体クラスの一部をユーザに通知する通知工程と、
を備えることを特徴とする通知方法。
【請求項１６】
通知装置が実行する通知方法であって、
画像から検出された、上位階層の被写体クラスが下位階層の被写体クラスを包含する階層構造に従って階層化された複数の被写体クラスを取得する取得工程と、
所定の選択基準に基づいて特定の階層を選択する選択工程と、
前記特定の階層に属する被写体クラスを優先して、前記複数の被写体クラスの一部をユーザに通知する通知工程と、
を備えることを特徴とする通知方法。
【請求項１７】
コンピュータを、請求項１乃至７のいずれか１項に記載の撮像装置の各手段として機能させるためのプログラム。
【請求項１８】
コンピュータを、請求項８乃至１４のいずれか１項に記載の通知装置の各手段として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置、通知装置、通知方法、及びプログラムに関する。
【背景技術】
【０００２】
従来、記憶部に記憶された特徴情報に基づいて画像の被写体情報を表示する技術や、被写体の種類を階層に分類して記憶し、階層的な絞り込みにより画像から被写体の種類を検出する技術が知られていた。
【０００３】
例えば、特許文献１には、記憶部に記憶された特徴情報に基づいて被写体の名称が特定可能であれば、対応する名称情報を表示部に表示する技術が開示されている。また、特許文献２には、被写体種類を特定する被写体条件を階層に分類して記憶し、階層的な絞り込みにより画像から被写体種類を検出する技術が開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１３−１３５４４６号公報
【特許文献２】特開２００７−３０４７７１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
しかしながら、上述の特許文献１に開示された技術では、多数の被写体の名称が特定された場合には表示される名称情報が多くなり、ユーザにとって有用な情報を効率的に伝えることが困難になる。また、上述の特許文献２に開示された技術では、認識される被写体種類は下位階層に属する被写体条件に対応するので、状況によってはユーザにとって細かすぎる情報が得られる可能性がある。
【０００６】
本発明はこのような状況に鑑みてなされたものである。本発明は、階層化された複数の被写体クラスが画像から検出された場合に、所定の選択基準に基づいて選択された階層に属する被写体クラスを優先して、複数の被写体クラスの一部をユーザに通知する技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明は、連続撮影を行う撮影制御手段と、前記連続撮影により得られた画像から、上位階層の被写体クラスが下位階層の被写体クラスを包含する階層構造に従って階層化された複数の被写体クラスを検出する検出手段と、所定の選択基準に基づいて特定の階層を選択する選択手段と、前記特定の階層に属する被写体クラスを優先して、前記複数の被写体クラスの一部をユーザに通知する通知手段と、を備えることを特徴とする撮像装置を提供する。
【発明の効果】
【０００８】
本発明によれば、階層化された複数の被写体クラスが画像から検出された場合に、所定の選択基準に基づいて選択された階層に属する被写体クラスを優先して、複数の被写体クラスの一部をユーザに通知することが可能となる。
【０００９】
なお、本発明のその他の特徴及び利点は、添付図面及び以下の発明を実施するための形態における記載によって更に明らかになるものである。
【図面の簡単な説明】
【００１０】
【図１】撮像装置１００の構成を示すブロック図。
【図２】画像の撮影時における被写体クラスの通知処理のフローチャート。
【図３】画像の再生時における被写体クラスの通知処理のフローチャート。
【図４】入力された２次元画像データから被写体クラスを検出するＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ）の基本的な構成を示す図。
【図５】特徴検出細胞面での特徴検出処理、及び特徴統合細胞面での特徴統合処理の詳細について説明する図。
【図６】被写体クラスの検出例を示す図。
【図７】被写体クラス階層情報の収集方法を説明する図。
【図８】被写体クラスの階層構造の識別を説明する図。
【図９】ズームレバーの操作に応じた被写体クラスの通知を説明する図。
【図１０】画像の表示領域に応じた被写体クラスの通知を説明する図。
【図１１】サムネイル表示における被写体クラスの通知を説明する図。
【図１２】図１の変形例を示す図。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものでない。実施形態には複数の特徴が記載されているが、これらの複数の特徴の全てが発明に必須のものとは限らず、また、複数の特徴は任意に組み合わせられてもよい。さらに、添付図面においては、同一若しくは同様の構成に同一の参照番号を付し、重複した説明は省略する。
【００１２】
［第１の実施形態］
図１は、通知装置を備える撮像装置１００の構成を示すブロック図である。撮像装置１００は、階層化された複数の被写体クラスを画像から検出し、所定の選択基準に基づいて特定の階層を選択し、選択した階層に属する被写体クラスを優先して、複数の被写体クラスの一部をユーザに通知する。特定の階層の選択基準は特に限定されないが、第１の実施形態では、画像の撮影時における選択基準の例について説明する。
【００１３】
図１において、撮像レンズ１０２は、被写体像を光学的に撮像素子１０４上に結像させる。撮像素子１０４は、光学的な被写体像をアナログ電気信号に変換する。また、撮像素子１０４は複数の色フィルタを有する。Ａ／Ｄ変換器１０６は、撮像素子１０４から出力されるアナログ電気信号をデジタル信号に変換する。
【００１４】
制御部１０８は、画像信号処理部１１０、一時記憶部１１２、外部記憶部１１４、被写体クラス識別部１２０、被写体クラス階層情報保持部１２２、操作部１２４、表示部１２６、及び音声出力部１２８のための処理フロー制御を行う。制御部１０８は、制御プログラムを格納したＲＯＭと、ワークメモリとして使用されるＲＡＭとを含み、制御プログラムを実行することにより処理フロー制御を行う。
【００１５】
画像信号処理部１１０は、フレーム画像に対して、同時化処理、ホワイトバランス処理、γ処理、ＮＲ処理（ノイズリダクション処理）等の画像信号処理や、被写体検出処理などを行う。
【００１６】
一時記憶部１１２は、撮影されたフレーム画像を記憶したり、画像信号処理部１１０で処理された画像信号の中間処理結果などを記憶したりする。外部記憶部１１４は、画像信号処理部１１０で画像処理がなされた画像信号などを記憶したりする。
【００１７】
被写体クラス識別部１２０は、予め学習済みの情報を用いて、画像から被写体を認識する。例えば、本実施形態では、ＣＮＮ（Ｃｏｎｖｏｌｕｔｉｏｎａｌ  Ｎｅｕｒａｌ  Ｎｅｔｗｏｒｋｓ）による被写体認識が行われるものとする。被写体クラス階層情報保持部１２２は、被写体クラス間の階層的な関係を表す情報（被写体クラス階層情報）を保持している。
【００１８】
操作部１２４は、ユーザが撮像装置１００に対して行う操作を受け付ける。操作部１２４は、例えば、撮像装置１００の本体に付属するボタン及びズームレバーや、レンズユニットに付属するリングなどを含む。
【００１９】
表示部１２６は、撮影した画像を表示したり、認識した被写体クラス情報を表示したりする。音声出力部１２８は、記録した音声を再生出力したり、認識した被写体クラス情報を音でユーザに通知したりする。
【００２０】
図２は、画像の撮影時における被写体クラスの通知処理のフローチャートである。この通知処理は、例えば撮像装置１００がライブビュー表示のための撮影制御により連続撮影を行う際に、繰り返し実行される。
【００２１】
Ｓ２００で、制御部１０８は、画像を取り込む制御を行う。画像の取り込みは、Ａ／Ｄ変換器１０６から出力されるデジタル画像信号を一時記憶部１１２に記憶することで行われる。一時記憶部１１２に記憶した画像に対して画像信号処理部１１０で同時化処理、ホワイトバランス処理、γ処理、ＮＲ処理等の処理を施し、一時記憶部１１２に再度記憶する一連の処理を行うことで、通知処理の対象となる画像が得られる。
【００２２】
Ｓ２０２で、被写体クラス識別部１２０は、取得した画像から被写体クラスを検出する。図６は、被写体クラスの検出例を示す図である。この例では、画像６００の領域６１０、領域６１２、領域６１４、領域６１６において、それぞれ被写体クラス「サラダ」、被写体クラス「トマト」、被写体クラス「レタス」、被写体クラス「フルーツ」が検出されている。なお、図６では説明のために画像６００に領域６１０、領域６１２、領域６１４、領域６１６を示しているが、図２のＳ２０２の時点では、ユーザにはまだ被写体クラスは通知されない。
【００２３】
本実施形態では、被写体クラス識別部１２０の機能をＣＮＮで構成する。ＣＮＮの基本的な構成について、図４及び図５を用いて説明する。図４は、入力された２次元画像データから被写体クラスを検出するＣＮＮの基本的な構成を示す図である。処理の流れは、左端を入力とし、右方向に処理が進んでいく。ＣＮＮは、特徴検出層（Ｓ層）と特徴統合層（Ｃ層）と呼ばれる２つの層を１つのセットとし、それが階層的に構成されている。
【００２４】
ＣＮＮでは、まずＳ層において、前段階層で検出された特徴をもとに次の特徴を検出する。また、Ｓ層において検出した特徴をＣ層で統合し、その階層における検出結果として次の階層に送る構成になっている。
【００２５】
Ｓ層は、特徴検出細胞面からなり、特徴検出細胞面ごとに異なる特徴を検出する。また、Ｃ層は、特徴統合細胞面からなり、前段の特徴検出細胞面での検出結果をプーリングする。以下では、特に区別する必要がない場合、特徴検出細胞面及び特徴統合細胞面を総称して特徴面と呼ぶ。本実施形態では、最終段階層である出力層では、Ｃ層は用いずＳ層のみで構成している。
【００２６】
図５を参照して、特徴検出細胞面での特徴検出処理、及び特徴統合細胞面での特徴統合処理の詳細について説明する。特徴検出細胞面は、複数の特徴検出ニューロンにより構成され、特徴検出ニューロンは、前段階層のＣ層に所定の構造で結合している。また、特徴統合細胞面は、複数の特徴統合ニューロンにより構成され、特徴統合ニューロンは、同階層のＳ層に所定の構造で結合している。図５中に示した、Ｌ階層目Ｓ層のＭ番目細胞面内において、位置（ξ，ζ）の特徴検出ニューロンの出力値を
【００２７】
【数１】
2020195117.tif 000003
【００２８】
と表記し、Ｌ階層目Ｃ層のＭ番目細胞面内において、位置（ξ，ζ）の特徴統合ニューロンの出力値を
【００２９】
【数２】
2020195117.tif 000004
【００３０】
と表記する。その時、それぞれのニューロンの結合係数を
【００３１】
【数３】
2020195117.tif 000005
【００３２】
とすると、各出力値は以下のように表すことができる。
【００３３】
【数４】
2020195117.tif 000006
【００３４】
【数５】
2020195117.tif 000007
【００３５】
数式４のｆは活性化関数であり、ロジスティック関数や双曲正接関数などのシグモイド関数であれば何でもよく、例えばtanh関数で実現してもよい。
【００３６】
【数６】
2020195117.tif 000008
【００３７】
は、Ｌ階層目Ｓ層のＭ番目細胞面における、位置（ξ，ζ）の特徴検出ニューロンの内部状態である。数式５は、活性化関数を用いず単純な線形和をとっている。数式５のように活性化関数を用いない場合は、ニューロンの内部状態
【００３８】
【数７】
2020195117.tif 000009
【００３９】
と出力値
【００４０】
【数８】
2020195117.tif 000010
【００４１】
は等しい。また、数式４の
【００４２】
【数９】
2020195117.tif 000011
【００４３】
及び数式５の
【００４４】
【数１０】
2020195117.tif 000012
【００４５】
を、それぞれ特徴検出ニューロン、特徴統合ニューロンの結合先出力値と呼ぶ。
【００４６】
数式４及び数式５の中のξ，ζ，ｕ，ｖ，ｎについて説明する。位置（ξ，ζ）は、入力画像における位置座標に対応しており、例えば
【００４７】
【数１１】
2020195117.tif 000013
【００４８】
が高い出力値である場合は、入力画像の画素位置（ξ，ζ）に、Ｌ階層目Ｓ層Ｍ番目細胞面において検出する特徴が存在する可能性が高いことを意味する。また、ｎは、数式５において、Ｌ−１階層目Ｃ層ｎ番目細胞面を意味しており、統合先特徴番号と呼ぶ。基本的にＬ−１階層目Ｃ層に存在する全ての細胞面についての積和演算を行う。（ｕ，ｖ）は、結合係数の相対位置座標であり、検出する特徴のサイズに応じて有限の範囲（ｕ，ｖ）において積和演算を行う。このような有限の範囲（ｕ，ｖ）を受容野と呼ぶ。また、受容野の大きさを、以下では受容野サイズと呼び、結合している範囲の横画素数×縦画素数で表す。
【００４９】
また数式４において、Ｌ＝１、つまり一番初めのＳ層では、
【００５０】
【数１２】
2020195117.tif 000014
【００５１】
は、入力画像
【００５２】
【数１３】
2020195117.tif 000015
【００５３】
又は、入力位置マップ
【００５４】
【数１４】
2020195117.tif 000016
【００５５】
となる。ちなみに、ニューロンや画素の分布は離散的であり、結合先特徴番号も離散的なので、ξ，ζ，ｕ，ｖ，ｎは連続な変数ではなく、離散的な値をとる。ここでは、ξ，ζは非負整数、ｎは自然数、ｕ，ｖは整数とし、何れも有限な範囲となる。
【００５６】
数式４の中の
【００５７】
【数１５】
2020195117.tif 000017
【００５８】
は、所定の特徴を検出するための結合係数分布であり、これを適切な値に調整することによって、所定の特徴を検出することが可能になる。この結合係数分布の調整が学習であり、ＣＮＮの構築においては、さまざまなテストパターンを提示して、
【００５９】
【数１６】
2020195117.tif 000018
【００６０】
が適切な出力値になるように、結合係数を繰り返し徐々に修正していくことで結合係数の調整を行う。
【００６１】
次に、数式５の中の
【００６２】
【数１７】
2020195117.tif 000019
【００６３】
は、２次元のガウシアン関数を用いており、以下の数式１８のように表すことができる。
【００６４】
【数１８】
2020195117.tif 000020
【００６５】
ここでも、（ｕ，ｖ）は有限の範囲としてあるので、特徴検出ニューロンの説明と同様に、有限の範囲を受容野といい、範囲の大きさを受容野サイズと呼ぶ。この受容野サイズは、ここではＬ階層目Ｓ層のＭ番目特徴のサイズに応じて適当な値に設定すればよい。数式１８の中の、σは特徴サイズ因子であり、受容野サイズに応じて適当な定数に設定しておけばよい。具体的には、受容野の一番外側の値がほぼ０とみなせるような値になるようにσを設定するのがよい。
【００６６】
上述のような演算を各階層で行うことで、最終階層のＳ層において、被写体クラスの識別（検出）を行うのが、本実施形態におけるＣＮＮの構成である。また、ＣＮＮの学習は、図２のＳ２００における撮影に先立って予め実施されており、学習結果が被写体クラス識別部１２０に保持されているものとする。
【００６７】
具体的な学習方法について説明する。本実施形態では、教師ありの学習により、結合係数の調整を行う。教師ありの学習では、テストパターンを与えて実際にニューロンの出力値を求め、その出力値と教師信号（そのニューロンが出力すべき望ましい出力値）との関係から結合係数
【００６８】
【数１９】
2020195117.tif 000021
【００６９】
の修正を行えばよい。本実施形態の学習においては、最終層の特徴検出層は最小二乗法を用い、中間層の特徴検出層は誤差逆伝搬法を用いて結合係数の修正を行う。最小二乗法や誤差逆伝搬法等の、結合係数の修正手法の詳細については、例えば「Ｓ．Ｈａｙｋｉｎ，“Ｎｅｕｒａｌ Ｎｅｔｗｏｒｋｓ Ａ Ｃｏｍｐｒｅｈｅｎｓｉｖｅ Ｆｏｕｎｄａｔｉｏｎ ２ｎｄ Ｅｄｉｔｉｏｎ”，Ｐｒｅｎｔｉｃｅ Ｈａｌｌ，ｐｐ．１５６−２５５，Ｊｕｌｙ １９９８」に開示されるような公知の手法を利用することができる。
【００７０】
本実施形態では、予め学習する場合には、学習用のテストパターンとして、検出すべき特定パターンと、検出すべきでないパターンとを多数用意し、追加学習する場合には、前述の方法でテストパターンをバッファから選定する。各テストパターンは、画像及び教師信号を１セットとする。
【００７１】
活性化関数にtanh関数を用いる場合は、検出すべき特定パターンを提示した時は、最終層の特徴検出細胞面の、特定パターンが存在する領域のニューロンに対し、出力が１となるように教師信号を与える。逆に、検出すべきでないパターンを提示した時は、そのパターンの領域のニューロンに対し、出力が−１となるように教師信号を与えることになる。
【００７２】
以上により、２次元画像から被写体クラスを識別（検出）するためのＣＮＮが構築される。実際の検出においては、学習により構築した結合係数
【００７３】
【数２０】
2020195117.tif 000022
【００７４】
を用いて演算を行い、最終層の特徴検出細胞面上のニューロン出力が、所定値以上であれば、そこに該当する被写体クラスが存在すると判定する。
【００７５】
次に、学習完了後に、被写体クラス間の階層的な関係を表す情報（被写体クラス階層情報）を収集する。その収集方法について以下に説明する。
【００７６】
図７（ａ）は、学習画像７００に対して、所定の被写体クラスに対応するＣＮＮの最終層の特徴検出細胞面上のニューロン出力が所定値以上であり、その被写体クラスが検出されたことを表している。具体的には、被写体クラス「サラダ」、被写体クラス「トマト」、被写体クラス「きゅうり」、被写体クラス「フルーツ」、被写体クラス「オレンジ」が検出されている。各被写体クラスの検出領域は、サラダ領域７０１、トマト領域７０３、きゅうり領域７０５、フルーツ領域７０７、オレンジ領域７０９として表されている。
【００７７】
また、座標７０２、座標７０４、座標７０６、座標７０８、座標７１０は、それぞれサラダ領域７０１、トマト領域７０３、きゅうり領域７０５、フルーツ領域７０７、オレンジ領域７０９の中心座標を表している。
【００７８】
図７（ａ）で検出された被写体クラスから、図７（ｂ）に示す被写体クラス階層情報を、以下の手順で生成する。
【００７９】
まず、トマト領域７０３の中心を表す座標７０４、きゅうり領域７０５の中心を表す座標７０６は、サラダ領域７０１の内側に存在する。そのため、被写体クラス「サラダ」は、被写体クラス「トマト」、被写体クラス「きゅうり」を含む場合があり、関連度合いが高いと判断される。そして、図７(ｂ)の被写体クラス「サラダ」を表すサラダノード７１５と被写体クラス「トマト」を表すトマトノード７１１とをエッジ７２０で結合し、エッジ７２０の重みを１とする。同様に、サラダノード７１５と被写体クラス「きゅうり」を表すきゅうりノード７１２とをエッジ７２１で接続し、エッジ７２１の重みを１とする。
【００８０】
同様に、座標７１０はフルーツ領域７０７の内側に存在するので、被写体クラス「フルーツ」と被写体クラス「オレンジ」は関連度合いが高いと判断される。そして、図７(ｂ)に示すように、被写体クラス「フルーツ」を表すフルーツノード７１３と被写体クラス「オレンジ」を表すオレンジノード７１４とをエッジ７２２で接続し、エッジ７２２の重みを１とする。
【００８１】
また、図７（ａ）に示すように、トマト領域７０３の中心を表す座標７０４ときゅうり領域７０５の中心を表す座標７０６は、サラダ領域７０１の内側に存在する。従って、被写体クラス「トマト」や被写体クラス「きゅうり」は、被写体クラス「サラダ」の一部である場合があると判断される。その結果、被写体クラス「サラダ」は、被写体クラス「トマト」や被写体クラス「きゅうり」よりも抽象度の高い（上位階層の）被写体クラスであると判断される。
【００８２】
このような判断結果を反映し、図７（ｂ）のエッジ７２０は、トマトノード７１１からサラダノード７１５へ向かうように表現され、エッジ７２１はきゅうりノード７１２からサラダノード７１５へ向かうように表現される。
【００８３】
同様に、図７（ａ）に示すように、オレンジ領域７０９の中心を表す座標７１０は、フルーツ領域７０７の内側に存在する。従って、被写体クラス「オレンジ」は、被写体クラス「フルーツ」の一部である場合があると判断される。その結果、被写体クラス「フルーツ」は、被写体クラス「オレンジ」よりも抽象度の高い（上位階層の）被写体クラスであると判断される。
【００８４】
このような判断結果を反映し、図７（ｂ）のエッジ７２２は、オレンジノード７１４からフルーツノード７１３へ向かうように表現される。
【００８５】
同様に、図７（ａ）の学習画像７００とは異なる、図７（ｃ）の学習画像７３０で検出された被写体クラスから、図７（ｄ）に示す被写体クラス階層情報を同じ手順で生成する。その際、図７(ｂ)の被写体クラス階層情報に情報を追加する形で図７（ｄ）の被写体クラス階層情報を生成する。具体的には、レタスノード７４０と、レタスノード７４０からサラダノード７１５に向かうエッジ７４７とを追加し、エッジ７４７の重みを１とする。更に、トマトノード７１１からサラダノード７１５に向かうエッジ７２０の重みを１から２へ増やす。その結果、被写体クラス「サラダ」は、被写体クラス「レタス」や被写体クラス「きゅうり」よりも、被写体クラス「トマト」との関係がより強いことを表すことになる。
【００８６】
或いは、ノードに向かうエッジが多いノードほど他のクラスの一部を含むクラスを表すノードであると考え、そのクラスを抽象度の高い（上位階層の）被写体クラスであると判断してもよい。
【００８７】
こうして得られた被写体クラス階層情報は、被写体クラス階層情報保持部１２２に保持される。
【００８８】
図２に戻り、Ｓ２０４で、制御部１０８は、被写体クラス階層情報保持部１２２に保持された被写体クラス階層情報に基づき、Ｓ２０２において検出された被写体クラスの階層構造を識別する。
【００８９】
上述した通り、本実施形態では、図６の画像６００から、被写体クラス「サラダ」、被写体クラス「トマト」、被写体クラス「レタス」、被写体クラス「フルーツ」が検出されている。制御部１０８は、これらの被写体クラスを、図７（ｄ）の被写体クラス階層情報に照らし合わせる。その結果、図８に示すように、被写体クラス「サラダ」、被写体クラス「トマト」、被写体クラス「レタス」はグループ８１０に属し、被写体クラス「フルーツ」はグループ８１２に属することが分かる。換言すると、Ｓ２０２において検出された４つの被写体クラスが、上位階層の被写体クラスが下位階層の被写体クラスを包含する階層構造（図７（ｄ）参照）に従って、図８（ｂ）に示すように階層化されていることが識別される。
【００９０】
Ｓ２０６で、制御部１０８は、優先的に通知する被写体クラスの階層を選択する。Ｓ２０８で、制御部１０８は、選択された階層に属する被写体クラスを優先して、検出された複数の被写体クラスのうちの一部をユーザに通知する。本実施形態では、グループ８１０に属する被写体クラス「サラダ」、被写体クラス「トマト」、被写体クラス「レタス」と、グループ８１２に属する被写体クラス「フルーツ」の中から、選択された階層に応じて一部の被写体クラスが選択される。
【００９１】
Ｓ２０６及びＳ２０８の処理の具体例について説明する。ユーザが操作部１２４に含まれるズームレバーを広角側に操作した場合には、制御部１０８は、より広い画角で被写体を捉えたいというユーザの意図があると判断する。そこで、図９（ａ）に示すように、制御部１０８は、グループ８１０からより抽象度の高い（上位階層の）被写体クラス「サラダ」を選択して表示部１２６に表示する。また、ユーザが操作部１２４に含まれるズームレバーを望遠側に操作した場合には、制御部１０８は、より狭い画角で被写体を捉えたいというユーザの意図があると判断する。そこで、図９（ｂ）に示すように、制御部１０８は、グループ８１０からより抽象度の低い（下位階層の）被写体クラス「トマト」、被写体クラス「レタス」を選択して表示部１２６に表示する。図９（ａ）と図９（ｂ）との対比から理解できるように、制御部１０８は、広角側へのズーム操作が行われた場合、前回選択した階層よりも上位の階層を選択し、望遠側へのズーム操作が行われた場合、前回選択した階層よりも下位の階層を選択する。
【００９２】
なお、図８（ｂ）で示した通り、被写体クラス「サラダ」は被写体クラス「レタス」よりも被写体クラス「トマト」とつながるエッジの重みの方が大きく関係性が強い。この点を考慮して、制御部１０８は、被写体クラス「トマト」及び被写体クラス「レタス」が属す階層を選択した場合、被写体クラス「トマト」だけを表示してもよい。
【００９３】
また、グループ８１２については、被写体クラス「フルーツ」しか属さないので、制御部１０８は、図９(ａ)及び図９（ｂ）に示すように、ズームレバーの操作によらず被写体クラス「フルーツ」を選択して表示部１２６に表示する。或いは、ユーザがズームレバーによる拡大率を所定値以上又は所定値以下にすると、画像上で被写体クラス「フルーツ」をユーザが認識するのが難しくなるので、制御部１０８は、グループ８１２からは被写体クラスを選択しないようにしてもよい。
【００９４】
このように、制御部１０８は、ユーザ操作（ここでは広角側又は望遠側へのズーム操作）に基づいて特定の階層を選択し、選択された階層に属する被写体クラスを優先して、検出された複数の被写体クラスのうちの一部をユーザに通知する。なお、例えば検出された被写体クラスの数が少ない（閾値以下である）場合など、所定の条件を満たす場合には、制御部１０８は、検出された複数の被写体クラスの全てを通知してもよい。
【００９５】
なお、前述の通り、特定の階層の選択基準は特に限定されず、ユーザ操作以外の選択基準を用いてもよい。例えば、制御部１０８は、検出された複数の被写体クラスのうち合焦度合いが最も高い被写体クラスが属する階層を選択してもよい。
【００９６】
また、ユーザに被写体クラスを通知する方法としては、表示部１２６に通知対象の被写体クラスを示す情報を表示する方法（図９(ａ)及び図９（ｂ））に限定されない。例えば、制御部１０８は、通知対象の被写体クラスを示す音声（例えば、名称の発音）を音声出力部１２８から出力することにより、被写体クラスの通知を行ってもよい。
【００９７】
また、被写体クラス階層情報保持部１２２を撮像装置１００に含むのではなく、図１２に示すように、被写体クラス階層情報保持部１２０２を有する外部サーバ１２００へ、通信網１２１０を介して撮像装置１００を接続する構成を採用してもよい。この構成の場合、図２のＳ２０４で、制御部１０８は、被写体クラス識別部１２０で検出した被写体クラスを通信網１２１０経由で外部サーバ１２００に送信する。そして、被写体クラス階層情報保持部１２０２は、受信した被写体クラスの階層構造を識別し、識別した階層構造の情報を撮像装置１００に送信する。
【００９８】
以上説明したように、第１の実施形態によれば、撮像装置１００は、階層化された複数の被写体クラスを画像から検出し、所定の選択基準に基づいて特定の階層を選択する。そして、撮像装置１００は、選択した階層に属する被写体クラスを優先して、複数の被写体クラスの一部をユーザに通知する。これにより、通知される被写体クラスの抽象度（階層の高低）がある程度揃えられ、ユーザが通知された被写体クラスを容易に認識することが可能になる。
【００９９】
［第２の実施形態］
第２の実施形態では、画像の再生時における、優先的に通知する被写体クラスの階層の選択基準の例について説明する。本実施形態において、撮像装置１００の基本的な構成は第１の実施形態と同様である（図１参照）。以下、主に第１の実施形態と異なる点について説明する。
【０１００】
図３は、画像の再生時における被写体クラスの通知処理のフローチャートである。この通知処理は、例えばユーザ操作により再生対象の画像が選択されたことに応じて、実行される。
【０１０１】
Ｓ３００で、制御部１０８は、外部記憶部１１４から再生対象の画像を読み出す。続くＳ２０２及びＳ２０４の処理は、図２のＳ２０２及びＳ２０４の処理と同様である。
【０１０２】
なお、撮像装置１００は、撮影時に検出された被写体クラスを示す情報、及び検出された被写体クラスの階層構造を示す情報を、記録画像のメタデータとして記録してもよい。この場合、制御部１０８は、メタデータから被写体クラス及びその階層構造を取得可能であり、Ｓ２０２及びＳ２０４の処理は省略可能である。
【０１０３】
Ｓ３０６で、制御部１０８は、優先的に通知する被写体クラスの階層を選択する。Ｓ３０８で、制御部１０８は、選択された階層に属する被写体クラスを優先して、検出された複数の被写体クラスのうちの一部をユーザに通知する。
【０１０４】
Ｓ３０６及びＳ３０８の処理の具体例について説明する。図１０（ａ）の画像１０００は表示画像（表示対象の画像）であり、被写体クラス「サラダ」、被写体クラス「レタス」、被写体クラス「トマト」、被写体クラス「きゅうり」が検出されている。また、図１０（ｂ）は、検出された被写体クラス間の関係（階層構造）を表している。
【０１０５】
ユーザが画像１０００全体を表示部１２６に表示した場合は、制御部１０８は、ユーザが画像１０００全体に着目していると判断し、図１０（ｃ）に示すように、抽象度の高い（上位階層の）被写体クラス「サラダ」のみをユーザに通知する。
【０１０６】
また、図１０（ｄ）に示した画像１０００の領域１０３０が拡大表示される場合を考える。この場合、制御部１０８は、ユーザが抽象度の高い被写体クラス「サラダ」ではなく、より抽象度の低い被写体クラス「レタス」、被写体クラス「トマト」に注目していると判断する。そこで、図１０（ｅ）に示すように、制御部１０８は、被写体クラス「レタス」、被写体クラス「トマト」のみをユーザに通知する。
【０１０７】
このように、制御部１０８は、画像の表示倍率に基づいて階層を選択する。表示倍率が高い場合に選択される階層（図１０（ｅ）参照）は、表示倍率が低い場合に選択される階層（図１０（ｃ）参照）よりも下位の階層である。
【０１０８】
また、複数の画像を外部記憶部１１４から読みだして、サムネイル画像として並べて表示部１２６に表示する表示制御を行う際の被写体クラスの通知方法について以下に説明する。
【０１０９】
図１１（ａ）の枠１１００は、表示部１２６の表示範囲を表しており、その中に６つのサムネイル画像（サムネイル画像１１１０，１１２０，１１３０，１１４０，１１５０，１１６０）が表示されている。
【０１１０】
サムネイル画像は、撮影画像を縮小した画像であるので、表示できる被写体クラスの情報は撮影画像よりも同等か少ない。そのため、制御部１０８は、検出された被写体クラスの中で抽象度の高い方から所定数を選択して表示する。即ち、サムネイル表示が行われる場合、制御部１０８は、優先して通知する被写体クラスの階層として、最上位の階層を選択する。或いは、制御部１０８は、最も抽象度の高い（最上位の階層に属する）被写体クラスのみを表示してもよい。
【０１１１】
或いは、制御部１０８は、検出された被写体クラスが占める領域の大きさを基に、サムネイル画像に占める割合が大きいクラスから順に所定数を選択して表示したり、サムネイル画像に占める割合が最も大きい被写体クラスのみを表示したりしてもよい。
【０１１２】
例えば、サムネイル画像１１１０は、図１０（ａ）の画像１０００のサムネイル画像であるが、画像１０００より小さいので、制御部１０８は、最も抽象度が高い（最上位の階層に属する）被写体クラス「サラダ」のみを表示する。また、サムネイル画像１１３０では、被写体クラス「机」１１３１と被写体クラス「ソファ」１１３２が検出されているが、抽象度が同程度であるため、制御部１０８は、これら２つの被写体クラスを両方とも表示する。
【０１１３】
また、図１１（ｂ）に示すように、被写体クラスの名称（通知対象の被写体クラスを示す情報）を文字列としてサムネイル画像の近傍に表示してもよい。その際、文字列として表示する被写体クラスの名称は、抽象度の高い方から選択して、サムネイル画像の大きさに基づいて所定数を表示する。或いは、抽象度の最も高い被写体クラスの名称のみを表示してもよい。ここで言う「サムネイル画像の近傍」とは、表示される文字列が対応するサムネイル画像に関係することをユーザが認識可能な範囲を指す。
【０１１４】
例えば、サムネイル画像１１１０については、制御部１０８は、被写体クラスタグ１１１２として「サラダ」の文字をサムネイル画像１１１０の下に表示する。また、サムネイル画像１１３０については、制御部１０８は、被写体クラスタグ１１３３として「机」と「ソファ」の文字をサムネイル画像１１３０の下に表示する。
【０１１５】
また、制御部１０８は、ユーザ操作に基づいて、優先的に通知する被写体クラスの階層を選択してもよい。例えば、第１の実施形態における図９を参照した説明と同様、制御部１０８は、ズームレバーの操作に応じて階層を選択してもよい。
【０１１６】
以上説明したように、第２の実施形態によれば、撮像装置１００は、画像の再生時に、階層化された複数の被写体クラスを画像から検出し、所定の選択基準（例えば、画像の表示領域や、サムネイル表示であるか否かなど）に基づいて特定の階層を選択する。そして、撮像装置１００は、選択した階層に属する被写体クラスを優先して、複数の被写体クラスの一部をユーザに通知する。これにより、通知される被写体クラスの抽象度（階層の高低）がある程度揃えられ、ユーザが通知された被写体クラスを容易に認識することが可能になる。なお、第１の実施形態と同様、例えば検出された被写体クラスの数が少ない（閾値以下である）場合など、所定の条件を満たす場合には、制御部１０８は、検出された複数の被写体クラスの全てを通知してもよい。
【０１１７】
［その他の実施形態］
本発明は、上述の実施形態の１以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける１つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、１以上の機能を実現する回路（例えば、ＡＳＩＣ）によっても実現可能である。
【０１１８】
発明は上記実施形態に制限されるものではなく、発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、発明の範囲を公にするために請求項を添付する。
【符号の説明】
【０１１９】
１００…撮像装置、１０４…撮像素子、１０８…制御部、１１０…画像信号処理部、１１２…一時記憶部、１１４…外部記憶部、１２０…被写体クラス識別部、１２２…被写体クラス階層情報保持部、１２４…操作部、１２６…表示部、１２８…音声出力部
【図１】
2020195117.tif 000023
【図２】
2020195117.tif 000024
【図３】
2020195117.tif 000025
【図４】
2020195117.tif 000026
【図５】
2020195117.tif 000027
【図６】
2020195117.tif 000028
【図７】
2020195117.tif 000029
【図８】
2020195117.tif 000030
【図９】
2020195117.tif 000031
【図１０】
2020195117.tif 000032
【図１１】
2020195117.tif 000033
【図１２】
2020195117.tif 000034