(57)【要約】【課題】画像内の被写体の大きさと形状を特定すること。【解決手段】制御装置１０４は、ｈｕｅの角度に基づいて対象画像を８つの象限に区分し、各象限の画像を２値化する。また、輝度画像と色差画像とを２値化し、さらに２値化した輝度画像を反転させて２値化したＹ補数画像を得る。制御装置１０４は、これらの２値化画像に基づいて、対象画像内における被写体の大きさと形状を特定するために用いる評価値を算出し、評価値に基づいて対象画像内における被写体の大きさと形状を特定する。【選択図】図１
2011217355.tif 000002
【特許請求の範囲】
【請求項１】
対象画像の色情報または輝度情報に基づいて１つの画像を複数の区分画像に区分する区分手順と、
前記複数の区分画像のそれぞれを前記色情報または前記輝度情報を用いて２値化して複数の２値化画像を生成する２値化手順と、
前記複数の２値化画像のそれぞれに対して、前記対象画像内における被写体の位置と大きさと形状との少なくとも一つを特定するために用いる評価値を算出する評価値算出手順と、
前記評価値に基づいて、前記対象画像内における被写体の位置と大きさと形状との少なくとも一つを特定する被写体特定手順とをコンピュータに実行させるための被写体特定用プログラム。
【請求項２】
対象画像の色差情報と輝度情報とに基づいて１つの画像を複数の区分画像に区分する第１の区分手順と、
前記対象画像の前記色差情報を組み合わせた色差空間情報にて１つの画像を複数の区分画像に区分する第２の区分手順と、
前記第１の区分手順によって区分された前記複数の区分画像のそれぞれを前記色情報または前記輝度情報を用いて２値化し、前記第２の区分手順によって区分された前記複数の区分画像のそれぞれを前記色差空間情報を用いて２値化して、複数の２値化画像を生成する２値化手順と、
前記複数の２値化画像のそれぞれに対して、前記対象画像内における被写体の位置と大きさと形状との少なくとも一つを特定するために用いる評価値を算出する評価値算出手順と、
前記評価値に基づいて、前記対象画像内における被写体の位置と大きさと形状との少なくとも一つを特定する被写体特定手順とをコンピュータに実行させるための被写体特定用プログラム。
【請求項３】
請求項１または２に記載の被写体特定用プログラムにおいて、
前記評価値は、２値化画像内における白画素で構成される白画素領域の面積と、前記白画素領域内での白画素のまとまり状況を表す値に基づいて算出される第１の評価値を含むことを特徴とする被写体特定用プログラム。
【請求項４】
請求項３に記載の被写体特定用プログラムにおいて、
前記評価値は、前記２値化画像内における白画素のまとまりを包絡する包絡矩形の面積と前記白画素のまとまりの面積とに基づいて算出される第２の評価値、前記包絡矩形の縦横比に基づいて算出される第３の評価値、および人物の顔を含む領域の大きさに基づいて算出される第４の評価値の少なくとも１つを含むことを特徴とする被写体特定用プログラム。
【請求項５】
請求項４に記載の被写体特定用プログラムにおいて、
前記被写体特定手順は、複数の前記白画素領域の中から、前記第２の評価値、前記第３の評価値、および前記第４の評価値に基づいて、前記白画素領域を除外し、残った前記白画素領域の中から、前記第１の評価値が大きい前記白画素領域を被写体候補として特定することを特徴とする被写体特定用プログラム。
【請求項６】
請求項３〜５のいずれか一項に記載の被写体特定用プログラムにおいて、
前記第１の評価値は、前記白画素領域の面積と前記対象画像内の被写体推定位置を中心とした慣性モーメント、画面全体の面積、および前記白画素領域に該当しない白画素面積の少なくとも１つに基づいて算出されることを特徴とする被写体特定用プログラム。
【請求項７】
請求項３〜６のいずれか一項に記載の被写体特定用プログラムにおいて、
前記白画素領域内での白画素のまとまり状況を表す値は、前記白画素領域の面積と画像内の被写体推定位置を中心とした慣性モーメントであり、前記被写体推定位置は、使用者によって指定された位置、または被写体の顔が検出された位置のいずれかであることを特徴とする被写体特定用プログラム。
【請求項８】
請求項７に記載の被写体特定用プログラムにおいて、
前記被写体の顔が検出された位置に基づいて、被写体の上半身位置と下半身位置とを推定する推定手順をさらに有することを特徴とする被写体特定用プログラム。
【請求項９】
請求項８に記載の被写体特定用プログラムにおいて、
前記推定手順は、複数の前記上半身位置と複数の前記下半身位置とを推定することを特徴とする被写体特定用プログラム。
【請求項１０】
請求項８または９に記載の被写体特定用プログラムにおいて、
前記被写体特定手順は、前記上半身位置に応じた前記白画素領域と、前記下半身位置に応じた前記白画素領域とを合成することにより、前記被写体の位置と大きさと形状との少なくとも一つを特定することを特徴とする被写体特定用プログラム。
【請求項１１】
請求項５に記載の被写体特定用プログラムにおいて、
前記被写体特定手順は、前記被写体候補のうち前記第１の評価値の大きい候補の複数を組み合わせて各々の白画素領域を合成することにより、前記被写体の位置と大きさと形状との少なくとも一つを特定することを特徴とする被写体特定用プログラム。
【請求項１２】
請求項１〜５のいずれか一項に記載の被写体特定用プログラムにおいて、
前記被写体特定手順は、被写体推定位置に応じた第１の白画素領域と、前記第１の白画素領域と測距点が最も近くかつ画面上で近い位置にある第２の白画素領域とを合成することにより、前記被写体の位置と大きさと形状との少なくとも一つを特定することを特徴とする被写体特定用プログラム。
【請求項１３】
請求項１〜１２のいずれか一項に記載の被写体特定用プログラムを実行するための実行手段を備えることを特徴とするカメラ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体特定用プログラム、およびカメラに関する。
【背景技術】
【０００２】
次のような撮像装置が知られている。この撮像装置は、使用者によって選択されたＡＦ領域に基づいて被写体位置を特定し、特定した被写体を対象として焦点調節処理を行う（例えば、特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００４−２０５８８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、従来の撮像装置では、使用者によって選択されたＡＦ領域に基づいて、被写体の位置や大きさや形状を特定することはできなかった。
【課題を解決するための手段】
【０００５】
本発明による被写体特定用プログラムは、対象画像の色情報または輝度情報に基づいて１つの画像を複数の区分画像に区分する区分手順と、複数の区分画像のそれぞれを色情報または輝度情報を用いて２値化して複数の２値化画像を生成する２値化手順と、複数の２値化画像のそれぞれに対して、対象画像内における被写体の位置と大きさと形状との少なくとも一つを特定するために用いる評価値を算出する評価値算出手順と、評価値に基づいて、対象画像内における被写体の位置と大きさと形状との少なくとも一つを特定する被写体特定手順とをコンピュータに実行させることを特徴とする。
本発明による被写体特定用プログラムはまた、対象画像の色差情報と輝度情報とに基づいて１つの画像を複数の区分画像に区分する第１の区分手順と、対象画像の色差情報を組み合わせた色差空間情報にて１つの画像を複数の区分画像に区分する第２の区分手順と、第１の区分手順によって区分された複数の区分画像のそれぞれを色情報または輝度情報を用いて２値化し、第２の区分手順によって区分された複数の区分画像のそれぞれを色差空間情報を用いて２値化して、複数の２値化画像を生成する２値化手順と、複数の２値化画像のそれぞれに対して、対象画像内における被写体の位置と大きさと形状との少なくとも一つを特定するために用いる評価値を算出する評価値算出手順と、評価値に基づいて、対象画像内における被写体の位置と大きさと形状との少なくとも一つを特定する被写体特定手順とをコンピュータに実行させることを特徴とする。
本発明では、評価値は、２値化画像内における白画素で構成される白画素領域の面積と、白画素領域内での白画素のまとまり状況を表す値に基づいて算出される第１の評価値を含むようにしてもよい。
評価値は、２値化画像内における白画素のまとまりを包絡する包絡矩形の面積と白画素のまとまりの面積とに基づいて算出される第２の評価値、包絡矩形の縦横比に基づいて算出される第３の評価値、および人物の顔を含む領域の大きさに基づいて算出される第４の評価値の少なくとも１つを含むようにしてもよい。
被写体特定手順は、複数の白画素領域の中から、第２の評価値、第３の評価値、および第４の評価値に基づいて、白画素領域を除外し、残った白画素領域の中から、第１の評価値が大きい白画素領域を被写体候補として特定するようにしてもよい。
白画素領域内での白画素のまとまり状況を表す値は、白画素領域の面積と画像内の被写体推定位置を中心とした慣性モーメントであり、被写体推定位置は、使用者によって指定された位置、または被写体の顔が検出された位置のいずれかであることが好ましい。
本発明による被写体特定用プログラムは、被写体の顔が検出された位置に基づいて、被写体の上半身位置と下半身位置とを推定する推定手順をさらに有するようにしてもよい。
推定手順は、複数の上半身位置と複数の下半身位置とを推定するようにしてもよい。
被写体特定手順は、上半身位置に応じた白画素領域と、下半身位置に応じた白画素領域とを合成することにより、被写体の位置と大きさと形状との少なくとも一つを特定するようにしてもよい。
被写体特定手順は、被写体候補のうち第１の評価値の大きい候補の複数を組み合わせて各々の白画素領域を合成することにより、被写体の位置と大きさと形状との少なくとも一つを特定するようにしてもよい。
被写体特定手順は、被写体推定位置に応じた第１の白画素領域と、第１の白画素領域と測距点が最も近くかつ画面上で近い位置にある第２の白画素領域とを合成することにより、前記被写体の位置と大きさと形状との少なくとも一つを特定するようにしてもよい。
本発明によるカメラは、上記いずれかの被写体特定用プログラムを実行するための実行手段を備えることを特徴とする。
【発明の効果】
【０００６】
本発明によれば、被写体の位置とともに、被写体の大きさや形状を特定することができる。
【図面の簡単な説明】
【０００７】
【図１】カメラの一実施の形態の構成を示すブロック図である。
【図２】撮影画面上におけるＡＦセンサの配置位置を模式的に示した図である。
【図３】色相環を示す図である。
【図４】第１の実施の形態における被写体抽出処理の流れを示すフローチャート図である。
【図５】対象画像の具体例を示す第１の図である。
【図６】対象画像の具体例を示す第２の図である。
【図７】対象画像を色相に基づいて８つの象限に区分し、各画像を２値化した場合の具体例を示す図である。
【図８】２値化したＹプレーン画像、２値化したＣｂプレーン画像、２値化したＣｒプレーン画像、および２値化したＹ補数画像の具体例を示す図である。
【図９】２値化画像に対してノイズ除去を施した場合を示す第１の図である。
【図１０】２値化画像に対してノイズ除去を施した場合を示す第２の図である。
【図１１】従の評価値１によって排除される島の具体例を示す図である。
【図１２】画面の左端および右端にかかる島を被写体候補から除外する場合の具体例を示す図である。
【図１３】主の評価値に基づいて抽出された被写体候補の具体例を示す図である。
【図１４】対象画像内の被写体の位置、大きさ、形状の具体例を示す第１の図である。
【図１５】対象画像内の被写体の位置、大きさ、形状の具体例を示す第２の図である。
【図１６】連写撮影の場合の処理について模式的に示した図である。
【図１７】第２の実施の形態における被写体抽出処理の流れを示すフローチャート図である。
【図１８】Ｙプレーン画像、Ｃｒプレーン画像、Ｃｂプレーン画像、およびＹ補数プレーン画像の２値化方法を模式的に示す図である。
【図１９】第２の実施の形態における対象画像の具体例を示す図である。
【図２０】Ｙプレーン画像、Ｃｒプレーン画像、Ｃｂプレーン画像、およびＹ補数プレーン画像の２値化例を示す図である。
【図２１】色差空間を８つに区分した例を模式的に示す図である。
【図２２】色差空間上での２値化例を示す図である。
【図２３】第２の実施の形態におけるマスク合成処理の流れを示すフローチャート図である。
【図２４】マスクの包含状態の具体例を示す図である。
【図２５】第２の実施の形態における１位のマスクと２位のマスクの抽出例を示す図である。
【図２６】第２の実施の形態における１位のマスクと２位のマスクを合成して選択した合成マスクの具体例を示す図である。
【図２７】第３の実施の形態における処理で用いる６区分の２値化画像の具体例を示す図である。
【図２８】第３の実施の形態における１位のマスクと２位のマスクの抽出例を示す図である。
【図２９】第３の実施の形態における１位のマスクと２位のマスクを合成して選択した合成マスクの具体例を示す図である。
【図３０】第４の実施の形態における対象画像の具体例を示す図である。
【図３１】第４の実施の形態における処理で用いる６区分の２値化画像の具体例を示す図である。
【図３２】第５の実施の形態における処理で用いる６区分の２値化画像の具体例を示す図である。
【図３３】第５の実施の形態における被写体の抽出例を示す図である。
【発明を実施するための形態】
【０００８】
―第１の実施の形態―
図１は、本実施の形態におけるカメラの一実施の形態の構成を示すブロック図である。カメラ１００は、操作部材１０１と、レンズ１０２と、撮像素子１０３と、制御装置１０４と、メモリカードスロット１０５と、モニタ１０６とを備えている。操作部材１０１は、使用者によって操作される種々の入力部材、例えば電源ボタン、レリーズボタン、ズームボタン、十字キー、決定ボタン、再生ボタン、削除ボタンなどを含んでいる。
【０００９】
レンズ１０２は、複数の光学レンズから構成されるが、図１では代表して１枚のレンズで表している。撮像素子１０３は、例えばＣＣＤやＣＭＯＳなどのイメージセンサーであり、レンズ１０２により結像した被写体像を撮像する。そして、撮像によって得られた画像信号を制御装置１０４へ出力する。
【００１０】
制御装置１０４は、撮像素子１０３から入力された画像信号に基づいて所定の画像形式、例えばＪＰＥＧ形式の画像データ（以下、「本画像データ」と呼ぶ）を生成する。また、制御装置１０４は、生成した画像データに基づいて、表示用画像データ、例えばサムネイル画像データを生成する。制御装置１０４は、生成した本画像データとサムネイル画像データとを含み、さらにヘッダ情報を付加した画像ファイルを生成してメモリカードスロット１０５へ出力する。本実施の形態では、本画像データとサムネイル画像データとは、いずれもＲＧＢ表色系で表された画像データであるものとする。
【００１１】
メモリカードスロット１０５は、記憶媒体としてのメモリカードを挿入するためのスロットであり、制御装置１０４から出力された画像ファイルをメモリカードに書き込んで記録する。また、メモリカードスロット１０５は、制御装置１０４からの指示に基づいて、メモリカード内に記憶されている画像ファイルを読み込む。
【００１２】
モニタ１０６は、カメラ１００の背面に搭載された液晶モニタ（背面モニタ）であり、当該モニタ１０６には、メモリカードに記憶されている画像やカメラ１００を設定するための設定メニューなどが表示される。また、制御装置１０４は、使用者によってカメラ１００のモードが撮影モードに設定されると、撮像素子１０３から時系列で取得した画像の表示用画像データをモニタ１０６に出力する。これによってモニタ１０６にはスルー画が表示される。
【００１３】
制御装置１０４は、ＣＰＵ、メモリ、およびその他の周辺回路により構成され、カメラ１００を制御する。なお、制御装置１０４を構成するメモリには、ＳＤＲＡＭやフラッシュメモリが含まれる。ＳＤＲＡＭは、揮発性のメモリであって、ＣＰＵがプログラム実行時にプログラムを展開するためのワークメモリとして使用されたり、データを一時的に記録するためのバッファメモリとして使用される。また、フラッシュメモリは、不揮発性のメモリであって、制御装置１０４が実行するプログラムのデータや、プログラム実行時に読み込まれる種々のパラメータなどが記録されている。
【００１４】
本実施の形態では、制御装置１０４は、画像内におけるＡＦエリアの位置と、画像の色情報または輝度情報とに基づいて、画像内における被写体の位置を特定するとともに、該被写体の位置と大きさと形状とを特定する。なお、ＡＦエリアの位置とは、撮影時に焦点検出用に選択されたＡＦエリアの位置をいう。例えば、本実施の形態では、図２に示すように、撮影画面上にＡＦセンサの配置位置に応じた５１個のＡＦエリアが２次元配列されている。そして、制御装置１０４は、画像内の被写体位置に近い複数のＡＦエリアをモニタ１０６上に表示する。そして、使用者がその中から被写体位置に最も近いと判断したＡＦエリアを選択すると、その選択されたＡＦエリアを対象公知の焦点調節処理（ＡＦ処理）を行って焦点調節を行う。
【００１５】
また、本実施の形態では、被写体の位置、大きさ、形状を特定するための情報として、画像の色情報のうち色相を用いる。このために、制御装置１０４は、まず、被写体位置を特定する対象画像の各画素ごとに、Ｒ、Ｇ、Ｂの各値を次式（１）を用いて色相（Ｈｕｅ）の角度に変換する。
【数１】
2011217355.tif 000003
なお、色相は、図３に示す色相環により表され、色相（Ｈｕｅ）の角度とは、各画素の色相値の色相環上での角度をいう。
【００１６】
以下、図４に示すフローチャートを用いて本実施の形態における焦点調節対象の被写体抽出処理について説明する。なお、図５に示す処理は、撮像素子１０３からの画像データの入力が開始されると起動するプログラムとして、制御装置１０４によって実行される。本実施の形態では、後述するように、被写体の顔を検出することができる画像と、被写体の顔を検出できない画像とで処理の内容が異なる。そこで、以下では、被写体の顔を検出することができる画像として例えば図５に示す画像を用いて説明を行い、被写体の顔を検出することができない画像として例えば図６に示す画像を用いて説明を行う。
【００１７】
ステップＳ１００において、制御装置１０４は、撮像素子１０３から入力される画像データを読み込んで、ステップＳ２００へ進む。ステップＳ２００では、制御装置１０４は、以降の処理速度を向上させるために読み込んだ画像データの画像サイズを小さくする。なお、制御装置１０４に処理能力がある場合はこのステップＳ２００は行なわなくてもよい。その後、ステップＳ３００へ進み、制御装置１０４は、上述したように、式（１）を用いて、対象画像のＲ、Ｇ、Ｂ値を色相（Ｈｕｅ）の角度に変換する。その後、ステップＳ４００へ進む。
【００１８】
ステップＳ４００では、制御装置１０４は、図３に示した色相環を４５度幅で８象限に区分する。これによって、色相環は、０度≦ｈｕｅ＜４５度の第１象限、４５度≦ｈｕｅ＜９０度の第２象限、９０度≦ｈｕｅ＜１３５度の第３象限、１３５度≦ｈｕｅ＜１８０度の第４象限、１８０度≦ｈｕｅ＜２２５度の第５象限、２２５度 ≦ｈｕｅ＜２７０度の第６象限、２７０度≦ｈｕｅ＜３１５度の第７象限、３１５度≦ｈｕｅ＜３６０度の第８象限に区分される。
【００１９】
そして、制御装置１０４は、各象限の画像内の各画素を、各象限の色相の角度に基づいて２値化する。すなわち、制御装置１０４は、上記各象限の画像内の各画素のうち、色相の角度がその象限の色相の角度の範囲内にある画素を白画素とし、それ以外の画素を黒画素としたマスク画像を生成する。これによって、例えば、図５に示した対象画像に対しては、図７に示すように、第１象限のマスク画像７ａから第８象限のマスク画像７ｈが生成される。
【００２０】
その後、ステップＳ４５０へ進み、制御装置１０４は、対象画像をＹＣｂＣｒ形式の画像に変換し、Ｙ成分の画像（Ｙプレーン画像）、Ｃｒ成分の画像（Ｃｒプレーン画像）、および、Ｃｂ成分の画像（Ｃｂプレーン画像）をそれぞれ生成する。また、制御装置１０４は、Ｙプレーン画像の白画素と黒画素を反転させたＹ補数プレーン画像を生成する。具体的には、ＲＧＢ表色系で表されている対象画像を次式（２）〜（４）を用いてＹＣｂＣｒ色空間における輝度成分（Ｙ成分）からなる輝度画像と色差成分（Ｃｂ成分、Ｃｒ成分）とからなる色差画像とに変換する。
【００２１】
すなわち、制御装置１０４は、対象画像について、次式（２）を用いてＹ成分からなる輝度画像をＹプレーン画像として生成し、次式（３）および（４）を用いてＣｂ成分からなる色差画像とＣｒ成分からなる色差画像とをそれぞれＣｂプレーン画像、およびＣｒプレーン画像として生成する。
Ｙ  ＝  ０．２９９Ｒ＋０．５８７Ｇ＋０．１１４Ｂ  ・・・（２）
Ｃｂ＝−０．１６９Ｒ−０．３３２Ｇ＋０．５００Ｂ  ・・・（３）
Ｃｒ＝  ０．５００Ｒ−０．４１９Ｇ−０．０８１Ｂ  ・・・（４）
【００２２】
そして、制御装置１０４は、生成したＹプレーン画像、Ｃｂプレーン画像、およびＣｒプレーン画像、Ｙ補数プレーン画像のそれぞれについて、画像内の全画素の濃度値を調べ、各濃度値の平均と各濃度の標準偏差とを算出して、ステップＳ５００へ進む。
【００２３】
ステップＳ５００では、制御装置１０４は、Ｙプレーン画像、Ｃｂプレーン画像、Ｃｒプレーン画像、およびＹ補数プレーン画像の各画素を各々の平均値で２値化した第１の２値化画像と、各画像の画素を平均値＋σで２値化した第２の２値化画像とを作成する。例えば、図５に示した対象画像に対しては、図８に示すように、Ｙプレーン画像についての第１の２値化画像８ａと第２の２値化画像８ｂ、Ｃｂプレーン画像についての第１の２値化画像８ｃと第２の２値化画像８ｄ、Ｃｒプレーン画像についての第１の２値化画像８ｅと第２の２値化画像８ｆ、Ｙ補数プレーン画像についての第１の２値化画像８ｇと第２の２値化画像８ｈとが生成される。
【００２４】
その後、ステップＳ６００へ進み、制御装置１０４は、内蔵された顔検出機能により顔の検知処理を行い、対象画像内から顔が検知されたか否かを判断する。例えば、制御装置１０４は、対象画像に対して公知の顔認識処理を実行し、その結果、対象画像内から人物の顔が検出されたか否かを判断する。ステップＳ６００で否定判断した場合、すなわち、対象画像が図６に示したように顔を検知することができない画像である場合には、ステップＳ７００へ進む。ステップＳ７００では、対象画像内の画像の中心位置、または対象画像内の焦点調節位置（ＡＦ位置）を被写体の推定位置（被写体位置推定点）として設定した後、後述するステップＳ１０００へ進む。
【００２５】
これに対して、ステップＳ６００で肯定判断した場合、すなわち、対象画像が図５に示したように顔を検知することができる画像である場合には、ステップＳ８００へ進む。ステップＳ８００では、制御装置１０４は、図５に示すように、顔検出処理によって検出された顔を含む領域５ａを特定し、特定した領域５ａの大きさに基づいて、被写体の上半身の位置と下半身の位置とを推定する。
【００２６】
例えば、制御装置１０４は、特定した領域５ａの中心から垂直方向の下方へ所定距離移動した点５ｂと、領域５ａを囲む垂直方向の枠線を下方へ所定距離延長した点５ｃおよび点５ｄとの３点を被写体の上半身の位置として推定する。また、制御装置１０４は、上記点５ｂをさらに下方へ所定距離移動させた点５ｅおよび５ｆと、上記点５ｃを下方へ所定距離移動させた点５ｇと、上記点５ｄを下方へ所定距離移動させた点５ｈとの４点を被写体の下半身の位置として推定する。これにより、対象画像内には、上半身位置の推定点５ｂ〜５ｄと、下半身位置の推定点５ｅ〜５ｈとが設定される。なお、本実施の形態では、上半身位置の推定点５ｂ〜５ｄを被写体位置推定点と呼ぶ。
【００２７】
その後、ステップＳ９００へ進み、制御装置１０４は、特定した領域５ａの面積に基づいて、後の処理で用いる評価値を算出する。例えば、制御装置１０４は、領域５ａの面積に所定の倍率、例えば０．５と２．０とをかけた２つの評価値を算出する。なお、ここで算出する評価値は、後の処理で算出する他の評価値と区別するための「従の評価値３」と呼ぶこととする。その後、ステップＳ１０００へ進む。
【００２８】
ステップＳ１０００では、制御装置１０４は、図７および図８に示した１６枚の２値化画像のうちの１つを選択し、選択した２値化画像に対して、メディアンフィルタを用いてノイズ除去を施す。例えば、図７に示した各画像に対してノイズ除去を行なった結果として、図９に示す２値画像が得られ、図８に示した各画像に対してノイズ除去を行なった結果として図１０に示す２値画像が得られる。以降の処理は、ノイズ除去を行なった２値化画像に対して実行される。
【００２９】
その後、ステップＳ１１００へ進み、制御装置１０４は、ステップＳ１００で選択してノイズ除去を行なった２値化画像を対象としてラベリング処理を行う。具体的には、制御装置１０４は以下のようにラベリング処理を行う。まず制御装置１０４は、２値化画像内から白画素のまとまりと黒画素のまとまりをラベリング領域として抽出し、抽出したラベリング領域のうち、白画素で構成されるラベリング領域を島として検出する。
【００３０】
その後、ステップＳ１２００へ進み、制御装置１０４は、２値化画像内で検出した各島の面積を算出して、ステップＳ１３００へ進む。ステップＳ１３００では、制御装置１０４は、２値化画像内で検出した島を対象として、ステップＳ７００またはステップＳ８００で設定した被写体位置推定点を中心とした慣性モーメント（白画素の重心周りの慣性モーメント）を算出する。なお、２値化画像における慣性モーメントの算出方法については、公知のため詳細な説明を省略するが、例えば、被写体位置推定点からの画素距離の２乗×（０または１）の和により算出することができる。その後、ステップＳ１４００へ進む。
【００３１】
ステップＳ１４００では、制御装置１０４は、２値化画像内から一定以上の大きさの島、例えば、２値化画像全体の面積に対する面積比が６０％以上の島と、一定以下の大きさの島、例えば、２値化画像全体の面積に対する面積比が１％以下の島とを除外する。その後、ステップＳ１５００へ進み、制御装置１０４は、ステップＳ１４００で除外した結果残った島を対象として、ステップＳ１３００で算出した白画素の重心周りの慣性モーメントに基づいて、対象画像内における被写体位置を特定するとともに、対象画像内における被写体の位置と大きさと形状とを特定するために用いる「主の評価値」を次式（５）により算出する。
主の評価値＝島を構成する白画素数／白画素の重心を中心とした慣性モーメント  ・・・（５）
【００３２】
その後、ステップ１６００へ進み、制御装置１０４は、各島に対して島を包絡する包絡矩形を設定し、次式（６）により各島ごとに「従の評価値１」を算出する。
従の評価値１＝白画素面積／包絡矩形の面積  ・・・（６）
この従の評価値１は、例えば、図１１に示すような被写体に通常なりえない凸凹やスカスカに空いている島を排除するためのものであり、後述するステップＳ１７２０において、この値が所定の閾値（例えば０．２）以下である場合には、制御装置１０４は、その島を以降の処理対象から除外する。
【００３３】
その後、ステップ１７００へ進み、制御装置１０４は、各島の中から通常被写体としてはあり得ない細長いものを排除するために用いる評価値として、ステップＳ１６００で設定した包絡矩形の縦横比を各島ごとの「従の評価値２」として算出する。後述するステップＳ１７２０では、この値が所定の範囲内、例えば０．２以上５未満である島は、通常被写体としてはあり得ない細長いものであるとして、以降の処理対象から除外される。その後、ステップＳ１７２０へ進む。
【００３４】
ステップ１７２０では、制御装置１０４は、上述した「従の評価値１」と「従の評価値２」とを用いて、２値化画像に含まれる各島の足切りを行なう。すなわち、制御装置１０４は、上述したように、各島のうち、「従の評価値１」が所定の閾値、例えば０．２以下の島、および「従の評価値２」が所定の範囲内、例えば０．２以上５未満の島を被写体候補か除外することにより、以降の処理対象から排除する。その後、ステップＳ１７５０へ進む。
【００３５】
ステップＳ１７５０では、制御装置１０４は、画面の左端および右端にかかる島を被写体候補から除外する。例えば、図１２に示すように、左端、右端ともに島の画素数が縦画素の１／３以上であれば排除する。これによって、図１２に示す２値化画像では、左端にかかる島１２ａと右端にかかる島１２ｂとが排除される。その後、ステップＳ１８００へ進む。
【００３６】
ステップＳ１８００では、制御装置１０４は、上述したステップＳ６００での判断結果に基づいて、対象画像が顔が検知可能な画像であるか否かを判断する。ステップＳ１８００で否定判断した場合には、後述するステップＳ２０００へ進む。これに対して、ステップＳ１８００で肯定判断した場合には、ステップＳ１９００へ進む。ステップＳ１９００では、制御装置１０４は、ステップ９００で算出した従の評価値３を用いて、２値化画像内に含まれる各島の足切りを行なう。例えば、制御装置１０４は、ステップＳ９００で領域５ａの面積に所定の倍率、例えば０．５と２．０とをかけた算出した２つの従の評価値３を用いて、面積が領域５ａの面積に０．５をかけて算出した従の評価値３以下の島と、面積が領域５ａの面積に２をかけて算出した従の評価値３以上の島を被写体候補から除外する。これにより被写体になり得ない大き過ぎる島と小さ過ぎる島とを除外することができる。
【００３７】
その後、ステップＳ２０００へ進み、上述したように、２値化画像内に含まれる島のうち、従の評価値１〜３を用いて足切りを行った結果、残った島を対象として、主の評価値の大きさが最も大きい１位の島と、２番目に大きい２位の島とを、その２値化画像における被写体候補として抽出し、ステップＳ２１００へ進む。ステップＳ２１００では、制御装置１０４は、図７および図８に示した１６枚の２値化画像の全てに対してステップＳ１０００からステップＳ２０００の処理が完了したか否かを判断する。ステップＳ２１００で否定判断した場合は、ステップＳ１０００へ戻り、制御装置１０４は、未処理の２値化画像のうちの１つを選択して処理を繰り返す。これに対して、ステップＳ２１００で肯定判断した場合には、ステップＳ２２００へ進む。
【００３８】
ステップＳ２２００では、制御装置１０４は、上述したステップＳ６００での判断結果に基づいて、対象画像が顔が検知可能な画像であるか否かを判断する。ステップＳ２２００で肯定判断した場合には、ステップＳ２５００へ進み、制御装置１０４は、各２値化画像について、ステップＳ２０００で抽出した被写体候補、すなわち主の評価値の大きさが最も大きい１位の島と、２番目に大きい２位の島のうち、上半身３箇所（点５ｂ〜５ｄ）と下半身４箇所（点５ｅ〜５ｈ）のそれぞれの位置に対応した島を選択する。これによって、例えば、図１３に示すように、２値化画像１０ｂ内の下半身を示す島１３ａ〜１３ｃと、２値化画像１０ｃ内の上半身を示す島１３ｄ〜１３ｈと、２値化画像９ｄ内の上半身を示す島１３ｉ〜１３ｍとが選択される。
【００３９】
その後、ステップＳ２６００へ進み、制御装置１０４は、ステップＳ２５００で島を選択した２値化画像１０ｂ、１０ｃ、９ｄを合成して、対象画像内における被写体の形状を抽出する。これによって、図１４に示すように、対象画像内における被写体１４ａの位置と形状が抽出される。また、これにより、対象画像内における被写体１４ａの大きさも特定される。その後、ステップＳ２７００へ進み、制御装置１０４は、ステップＳ２５００で選択した各島の対象画像内における重心位置、および合成を行った２値化画像の数をメモリに記録して処理を終了する。
【００４０】
一方、ステップＳ２２００で否定判断した場合には、ステップＳ２３００へ進み、制御装置１０４は、ステップＳ２０００で抽出した主の評価値の大きさが最も大きい１位の島（第１の島）を被写体推定点とし、該被写体推定点の近傍の測距値を算出する。その後、ステップＳ２４００へ進み、制御装置１０４は、各２値化画像について、第１の島と、該第１の島と測距点が最も近くかつ画面上で近い位置にある島を第２の島として特定する。そして、制御装置１０４は、第１の島が抽出された２値化画像と、第２の島が抽出された２値化画像とを合成することによって、対象画像内における被写体の位置と大きさと形状とを特定する。例えば、図１５に示すように、２値化画像１５ａ内から第１の島１５ｂが抽出され、２値化画像１５ｃから第２の島１５ｄが抽出された場合には、２値化画像１５ａと２値化画像１５ｃとを合成して得られた合成画像１５ｅに基づいて、被写体１５ｆの位置と大きさと形状とを特定することができる。
【００４１】
以上説明した第１の実施の形態によれば、以下のような作用効果を得ることができる。
（１）制御装置１０４は、ｈｕｅの角度に基づいて対象画像を８つの象限に区分し、各象限の画像を２値化した。また、輝度画像と色差画像とを２値化し、さらに２値化した輝度画像を反転させて２値化したＹ補数画像を得た。制御装置１０４は、これらの２値化画像に基づいて、対象画像内における被写体の位置と大きさと形状とを特定するために用いる評価値を算出し、評価値に基づいて対象画像内における被写体の位置と大きさと形状とを特定するようにした。これによって、対象画像内における被写体の位置と大きさと形状とを精度高く特定することができる。
【００４２】
（２）評価値は、式（５）により算出される主の評価値を含むようにした。これによって、島の面積、および島内の白画素がまとまり具合を加味して、精度高く被写体の位置と大きさと形状とを特定することができる。
【００４３】
（３）評価値は、式（６）により算出される従の評価値１、各島に対して島を包絡する包絡矩形の縦横比に基づいて算出される従の評価値２、および人物の顔を含む領域の大きさに基づいて算出される従の評価値３を含むようにした。これによって、通常被写体としてはあり得ない形状や大きさの島をあらかじめ処理対象から除外することができる。
【００４４】
（４）制御装置１０４は、複数の島の中から、従の評価値１〜３に基づいて、被写体である可能性が低い島を処理対象から除外し、残った島の中から、主の評価値が大きい島を被写体候補として特定するようにした。これによって、被写体候補を精度高く特定することができる。
【００４５】
（５）制御装置１０４は、使用者によって指定された位置、または被写体の顔が検出された位置のいずれかを被写体推定位置として設定するようにした。これによって、簡易な処理で被写体位置を推定することができる。
【００４６】
（６）制御装置１０４は、被写体の顔が検出された位置に基づいて、被写体の上半身位置と下半身位置とを推定するようにした。これによって、被写体の顔位置を基準に簡易な処理で被写体の上半身位置と下半身位置とを推定することができる。
【００４７】
（７）制御装置１０４は、被写体の上半身位置に応じた島と、下半身位置に応じた島とを合成することにより、被写体の位置と大きさと形状とを特定するようにした。これによって、被写体の顔が検出できる場合には、精度高く被写体の位置と大きさと形状とを特定することができる。
【００４８】
（８）制御装置１０４は、主の評価値の大きさが最も大きい第１の島と、該第１の島と測距点が最も近くかつ画面上で近い位置にある島を第２の島を特定し、これらを合成することによって被写体の位置と大きさと形状とを特定するようにした。これによって、被写体の顔が検出できない場合にも、精度高く被写体の位置と大きさと形状とを特定することができる。
【００４９】
―第２の実施の形態―
上述した第１の実施の形態では、制御装置１０４は、被写体の位置、大きさ、形状を特定するための情報として、画像の色情報のうち色相を用いる例について説明した。これに対して、第２の実施の形態では、制御装置１０４は、被写体の位置、大きさ、形状を特定するための情報として、画像の色情報のうちの輝度、色差、および色差空間を用いる例について説明する。
【００５０】
図１７は、第２の実施の形態における焦点調節対象の被写体抽出処理の流れを示す図である。図１７に示す処理は、撮像素子１０３からの画像データの入力が開始されると起動するプログラムとして、制御装置１０４によって実行される。ステップＳ３０００において、制御装置１０４は、撮像素子１０３から入力される画像データを読み込んで、ステップＳ３１００へ進む。ステップＳ３１００では、ステップＳ３０００で読み込んだ画像データ上における被写体の大まかな位置の使用者からの入力を受け付ける。この被写体位置の入力は、行った方が正確に被写体を抽出することができるが、被写体の抽出精度を問わないのであれば、使用者による指定を受け付けずに、制御装置１０４が、画像内の特定位置、例えば画像の中心位置を被写体位置として設定するようにしてもよい。
【００５１】
その後、ステップＳ３２００へ進み、制御装置１０４は、第１の実施の形態と同様に、対象画像をＹＣｂＣｒ形式の画像に変換し、Ｙプレーン画像、Ｃｒプレーン画像、Ｃｂプレーン画像、およびＹ補数プレーン画像をそれぞれ生成する。そして、Ｙプレーン画像、Ｃｒプレーン画像、および、Ｃｂプレーン画像、Ｙ補数プレーン画像のそれぞれについて、画素値の平均値Ａｖｅと標準偏差σとを算出する。その後、ステップＳ３３００へ進み、制御装置１０４は、縦軸をＣｂ値、横軸をＣｒ値とした２次元で表した色差空間（ＣｂＣｒ空間）を作成して、ステップＳ３４００へ進む。
【００５２】
ステップＳ３４００では、制御装置１０４は、図１８に示すように、Ｙプレーン画像、Ｃｒプレーン画像、Ｃｂプレーン画像、およびＹ補数プレーン画像を、各々のプレーン画像の画素値の平均値Ａｖｅと標準偏差σとを閾値として２値化する。これにより、図１９に示す対象画像に基づいて、図２０に示すように、Ｙプレーン画像、Ｃｒプレーン画像、Ｃｂプレーン画像、およびＹ補数プレーン画像のそれぞれに対して４枚ずつ、すなわち１６区分の２値化画像が生成される。
【００５３】
その後、ステップＳ３５００へ進み、制御装置１０４は、ＹＣｂＣｒ形式に変換した画像データを用いて、対象画像をステップＳ３３００で作成した色差空間上で８区分に２値化する。具体的には、制御装置１０４は、図２１に示すように、縦軸をＣｂ値、横軸をＣｒ値として２次元で表した色差空間（ＣｂＣｒ空間）を等角度間隔で８つの区分２１ａ〜２１ｈに分割する。そして、制御装置１０４は、対象画像と同じ大きさの区分画像を区分２１ａ〜２１ｈのそれぞれに対応させて８枚用意し、それら８枚の区分画像の全ての画素値を０としておく。
【００５４】
制御装置１０４は、Ｃｂプレーン画像とＣｒプレーン画像との対応する画素の画素値を用いて、次式（７）〜（１４）を用いて対象画像を区分２１ａ〜２１ｈの８区分に２値化する。すなわち、制御装置１０４は、対象画像のＣｂ値とＣｒ値との大小関係、Ｃｂ値の符号、およびＣｒ値の符号に基づいて、対象画像を区分２１ａ〜２１ｈの各区分ごとに２値化する。
Ｃｂ≧０  かつ  Ｃｒ≧０  かつ  ｜Ｃｒ｜≧｜Ｃｂ｜  ＝  区分２１ａ・・・（７）
Ｃｂ≧０  かつ  Ｃｒ≧０  かつ  ｜Ｃｒ｜＜｜Ｃｂ｜  ＝  区分２１ｂ・・・（８）
Ｃｂ≧０  かつ  Ｃｒ＜０  かつ  ｜Ｃｒ｜≦｜Ｃｂ｜  ＝  区分２１ｃ・・・（９）
Ｃｂ≧０  かつ  Ｃｒ＜０  かつ  ｜Ｃｒ｜＞｜Ｃｂ｜  ＝  区分２１ｄ・・・（１０）
Ｃｂ＜０  かつ  Ｃｒ＜０  かつ  ｜Ｃｒ｜＞｜Ｃｂ｜  ＝  区分２１ｅ・・・（１１）
Ｃｂ＜０  かつ  Ｃｒ＜０  かつ  ｜Ｃｒ｜≦｜Ｃｂ｜  ＝  区分２１ｆ・・・（１２）
Ｃｂ＜０  かつ  Ｃｒ≧０  かつ  ｜Ｃｒ｜＜｜Ｃｂ｜  ＝  区分２１ｇ・・・（１３）
Ｃｂ＜０  かつ  Ｃｒ≧０  かつ  ｜Ｃｒ｜≧｜Ｃｂ｜  ＝  区分２１ｈ・・・（１４）
【００５５】
具体的には、制御装置１０４は、Ｃｂプレーン画像とＣｒプレーン画像との対応する画素の画素値が式（７）を満たす場合には、区分２１ａの区分画像の対応する画素の画素値を１に変更する。また、制御装置１０４は、Ｃｂプレーン画像とＣｒプレーン画像との対応する画素の画素値が式（８）を満たす場合には、区分２１ｂの区分画像の対応する画素の画素値を１に変更する。同様に、制御装置１０４は、Ｃｂプレーン画像とＣｒプレーン画像との対応する画素の画素値が式（９）を満たす場合には、区分２１ｃの区分画像の対応する画素の画素値を１に変更し、Ｃｂプレーン画像とＣｒプレーン画像との対応する画素の画素値が式（１０）を満たす場合には、区分２１ｄの区分画像の対応する画素の画素値を１に変更する。
【００５６】
また、制御装置１０４は、Ｃｂプレーン画像とＣｒプレーン画像との対応する画素の画素値が式（１１）を満たす場合には、区分２１ｅの区分画像の対応する画素の画素値を１に変更し、Ｃｂプレーン画像とＣｒプレーン画像との対応する画素の画素値が式（１２）を満たす場合には、区分２１ｆの区分画像の対応する画素の画素値を１に変更する。また、制御装置１０４は、Ｃｂプレーン画像とＣｒプレーン画像との対応する画素の画素値が式（１３）を満たす場合には、区分２１ｇの区分画像の対応する画素の画素値を１に変更し、Ｃｂプレーン画像とＣｒプレーン画像との対応する画素の画素値が式（１４）を満たす場合には、区分２１ｈの区分画像の対応する画素の画素値を１に変更する。
【００５７】
制御装置１０４は、Ｃｂプレーン画像とＣｒプレーン画像との対応する全ての画素について、上記式（７）〜（１４）を用いた判定を行うことにより、８枚の区分画像に基づいて、８枚の２値化画像を生成する。これにより、図１９に示した対象画像に基づいて、図２２に示す８区分の２値化画像が生成される。
【００５８】
その後、ステップＳ３６００へ進む。ステップＳ３６００からステップＳ４１００までの処理は、図２０に示した１６区分の２値化画像と、図２２に示した８区分の２値化画像との計２４区分の２値化画像のそれぞれに対して実行される。ステップＳ３６００では、制御装置１０４は、図２０に示した１６区分の２値化画像と、図２２に示した８区分の２値化画像との計２４区分の画像のうちから選択した１つの２値化画像を対象としてラベリング処理を行って、２値化画像における画素の繋がり状態を認識する。ラベリング処理としては、公知の方法が用いられる。例えば、制御装置１０４は、２値化画像内から白画素のまとまりと黒画素のまとまりをラベリング領域として抽出し、抽出したラベリング領域のうち、白画素で構成されるラベリング領域を島として検出して、各島に対してラベルを付与することによりラベリングを行う。
【００５９】
その後、ステップＳ３７００へ進み、制御装置１０４は、ラベルが付与されたそれぞれの島（白画素の塊）が一つもないか否かを判断する。ステップＳ３７００で否定判断した場合には、後述するステップＳ４２００へ進む。これに対して、ステップＳ３７００で肯定判断した場合には、ステップＳ３８００へ進む。ステップＳ３８００では、制御装置１０４は、ラベリングされた各島の白画素面積を算出する。その後、ステップＳ３９００へ進み、制御装置１０４は、ラベリングされた各島の白画素を対象として、ステップＳ３１００で使用者によって指定された被写体の位置を中心とした慣性モーメント（白画素の重心周りの慣性モーメント）を演算する。なお、２値化画像における白画素の重心周りの慣性モーメントの算出方法については、公知のため詳細な説明を省略するが、例えば、被写体位置推定点からの画素距離の２乗×（０または１）の和により算出することができる。その後、ステップＳ４０００へ進む。
【００６０】
ステップＳ４０００では、制御装置１０４は、ステップＳ３９００で算出した白画素の重心周りの慣性モーメントに基づいて、次式（１５）により主の評価値を算出する。
主の評価値  ＝  島を構成する白画素数／白画素の重心を中心とした慣性モーメント  ・・・（１５）
【００６１】
その後、ステップＳ４１００へ進み、制御装置１０４は、ステップＳ４０００で算出した主の評価値が最も大きい１位の島と、２番目に大きい２位の島とを、その２値化画像における被写体候補として抽出して、ステップＳ４２００へ進む。ステップＳ４２００では、制御装置１０４は、図２０に示した１６区分の２値化画像と、図２２に示した８区分の２値化画像との計２４区分の２値化画像の全てについて、ステップＳ３６００からステップＳ４１００までの処理が完了したか否かを判断する。ステップＳ４２００で否定判断した場合には、ステップＳ３６００へ戻り、まだ処理を行っていない２値化画像の中から１つを選択して、ステップＳ３６００からステップＳ４１００までの処理を実行する。これに対して、ステップＳ４２００で肯定判断した場合には、ステップＳ４３００へ進む。
【００６２】
ステップＳ４３００では、制御装置１０４は、２４区分の全てからそれぞれ抽出した１位の島と２位の島、すなわち合計４８個の島の主の評価値を比較して、２４区分全体の１位の島と２位の島を抽出する。ここで抽出した２４区分全体の１位の島と２位の島を、ステップＳ４１００で各区分ごとに抽出した１位の島と２位の島と区別するために、１位のマスク、２位のマスクと呼ぶ。その後、ステップＳ４４００へ進み、制御装置１０４は、全体の１位の島と２位の島のそれぞれの重心の座標と、それぞれの島を包絡する包絡枠の座標とを演算して、ステップＳ４５００へ進む。
【００６３】
ステップＳ４５００では、制御装置１０４は、図２３に示すマスク合成処理を実行する。ここで、マスク合成処理について説明する。ステップＳ４５１０において、制御装置１０４は、次式（１６）により、ＭａｓｋＲａｔｅを算出する。
ＭａｓｋＲａｔｅ  ＝  ２位のマスクの面積／１位のマスクの面積  ・・・（１６）
【００６４】
その後、ステップＳ４５２０へ進み、制御装置１０４は、制御装置１０４は、ＭａｓｋＲａｔｅが所定の範囲内にあるか否か、例えば、０．３３より大きく３より小さいか否かを判断する。ステップＳ４５２０で否定判断した場合には、後述するステップＳ４５４０へ進む。これに対して、ステップＳ４５２０で肯定判断した場合には、ステップＳ４５３０へ進む。このように、ＭａｓｋＲａｔｅが所定の範囲内にある場合のみステップＳ４５３０の処理を実行するのは、大きさの差が大きい１位のマスクと２位マスクとが合成されるのを防ぐためである。
【００６５】
ステップＳ４５３０では、制御装置１０４は、１位のマスクを包絡する包絡枠と、２位のマスクを包絡する包絡枠とに重なる部分があるか否かを判断する。ステップＳ４５３０で否定判断した場合には、ステップＳ４５４０へ進む。ステップＳ４５４０では、制御装置１０４は、１位のマスクを合成マスクとして選択して、図１７の処理に復帰する。
【００６６】
これに対して、ステップＳ４５２０で肯定判断した場合には、ステップＳ４５５０へ進む。ステップＳ４５５０では、制御装置１０４は、１位のマスクと２位のマスクのうちの一方が他方を包含しているか否かを判断する。例えば、制御装置１０４は、図２４（ａ）に示すように、１位のマスクから２位のマスクを減算した結果、−１となる画素がなければ、１位のマスクが２位のマスクを完全包含していると判断する。一方で、１位のマスクから２位のマスクを減算した結果、＋１となる画素がなければ、２位のマスクが１位のマスクを完全包含していると判断する。
【００６７】
また、制御装置１０４は、図２４（ｂ）に示すように、１位のマスクから２位のマスクを減算した結果、＋１となる画素と−１となる画素とが存在する場合には、＋１となる画素の数を１位のマスクの画素数で割った数値（以下「数値１」と呼ぶ）と、−１となる画素の数を２位のマスクの画素数で割った数値（以下「数値２」と呼ぶ）とを算出する。そして、制御装置１０４は、数値１が数値２以上であり、かつ数値２が所定の値、例えば０．０５より小さい場合には、１位のマスクが２位のマスクを部分的に包含していると判断する。一方、制御装置１０４は、数値２が数値１より大きく、かつ数値１が所定の値、例えば０．０５より小さい場合には、２位のマスクが１位のマスクを部分的に包含していると判断する。これにより、本実施の形態では、いずれか一方のマスクが他方を９５％以上包含していれば、包含（完全包含または部分包含）とみなされることになる。
【００６８】
ステップＳ４５５０で肯定判断した場合には、ステップＳ４５７０へ進み、制御装置１０４は、１位のマスクと２位のマスクのうち、大きい方のマスクを合成マスクとして選択して、図１７の処理に復帰する。これに対して、ステップＳ４５５０で否定判断した場合には、ステップＳ４５６０へ進み、制御装置１０４は、１位のマスクと２位のマスクの論理和をとって両マスクを合成し、これを合成マスクとして選択して、図１７の処理に復帰する。例えば、１位のマスクが図２５（ａ）に示すマスク２５ａであり、２位のマスクが図２５（ｂ）に示すマスク２５ｂである場合には、これらの論理和をとって合成した、図２６に示すマスク２６ａが合成マスクとして選択される。これにより、図１９に示した対象画像内の被写体の形状を示す合成マスク２６ａを抽出することができ、合成マスク２６ａに基づいて、対象画像内の被写体の位置と大きさと形状とを特定することができる。
【００６９】
図１７のステップＳ４６００では、制御装置１０４は、合成マスクとして選択されたマスクに関する情報として、合成マスクの重心、合成マスクとして選択されたマスクのマスク番号、すなわちラベリング処理でふしたラベル番号、および合成マスクを包絡する包絡枠の４つの端点の座標値を出力して、処理を終了する。
【００７０】
以上説明した第２の実施の形態によれば、制御装置１０４は、画像の色情報のうちの輝度、色差、および色差空間を用いて対象画像を２値化し、これらの２値化画像に基づいて、対象画像内における被写体の位置と大きさと形状とを特定するために用いる評価値を算出し、評価値に基づいて対象画像内における被写体の位置と大きさと形状とを特定するようにした。これによって、対象画像内における被写体の位置と大きさと形状とをさらに精度高く特定することができる。
【００７１】
―第３の実施の形態―
上述した第２の実施の形態では、図２０に示した１６区分の２値化画像と、図２２に示した８区分の２値化画像との計２４区分の２値化画像とを対象として処理を実行することにより、合成マスクを抽出して、対象画像内の被写体の位置と大きさと形状とを特定する例について説明した。この場合、図２０の区分４〜１２、１６はノイズが多いため、これらの区分で被写体を抽出できるマスクが出現する可能性は低いと考えられる。このため、これらの区分については、処理を行っても無駄になってしまう可能性がある。
【００７２】
そこで、第３の実施の形態では、図２０に示した１６区分の２値化画像のうち図２７に示す６区分の２値化画像、すなわち、Ｙプレーン画像、Ｃｒプレーン画像、および、Ｃｂプレーン画像について、画素値が平均値Ａｖｅ＋標準偏差σ以上の画素が白画素になるように２値化した２値化画像と、Ｙプレーン画像、Ｃｒプレーン画像、および、Ｃｂプレーン画像について、画素値が平均値Ａｖｅ−標準偏差σ以下の画素が白画素になるように２値化した２値化画像、および図２２に示した８区分の２値化画像の計１４区分の２値化画像を対象として処理を実行する。
【００７３】
これにより、第３の実施の形態では、図１９に示した対象画像に基づいて、図２８（ａ）に示す１位のマスク２８ａと、図２８（ｂ）に示す２位のマスクが１８ｂとが抽出され、これらの論理和をとって合成した、図２９に示すマスク２９ａが合成マスクとして選択されることになる。これにより、図１９に示した対象画像内の被写体の形状を示す合成マスク２９ａを抽出することができ、合成マスク２９ａに基づいて、対象画像内の被写体の位置と大きさと形状とを特定することができる。この第３の実施の形態による処理では、第２の実施の形態と同様の結果を得ることができるが、処理に用いる２値化画像の数を第２の実施の形態よりも少なくすることができるので、処理を高速化することができる。
【００７４】
―第４の実施の形態―
また、図２７に示す６区分の２値化画像のみを用いて処理を行うようにしてもよい。例えば、制御装置１０４は、図３０に示す対象画像に基づいて、図３１に示すような６区分の２値化画像を生成し、これらの２値化画像に基づいて、対象画像内の被写体、すなわちジェットコースターの位置と大きさと形状とを特定するようにしてもよい。この方法によれば、処理に用いる２値化画像の数をさらに少なくすることができるので、さらなる処理を高速化が可能となる。
【００７５】
―第５の実施の形態―
第４の実施の形態で上述した６区分の２値化画像を用いる方法では、背景と被写体とが同系色の場合に、正確に被写体の位置、大きさ、形状を特定することが困難な場合がある。このような場合には、図３２に示すように、さらに３区分の２値化画像を加えた計９区分の２値化画像を用いるようにすればよい。
【００７６】
具体的には、制御装置１０４は、図３２に示すように、Ｙプレーン画像、Ｃｒプレーン画像、および、Ｃｂプレーン画像について、画素値が平均値Ａｖｅ＋標準偏差σ以上の画素が白画素になるように２値化した２値化画像と、Ｙプレーン画像、Ｃｒプレーン画像、および、Ｃｂプレーン画像について、画素値が平均値Ａｖｅ−標準偏差σ以下の画素が白画素になるように２値化した２値化画像との６区分の２値化画像に、画素値が平均値Ａｖｅ−１．６σ以上の画素が白画素になるように２値化した３区分の２値化画像３２ａ〜３２ｃを加えて処理を行う。これによって、図３３に示すように、２値化画像３２ｃ内から抽出された島３３ａによって、対象画像内における被写体の位置、大きさ、形状を特定することが可能となる。
【００７７】
―変形例―
なお、上述した実施の形態のカメラは、以下のように変形することもできる。
（１）連写撮影によって取得される複数の連写画像を対象として被写体の位置と大きさと形状とを特定する場合には、制御装置１０４は、上述した第１〜第４の実施の形態に示した方法の他に、以下のように処理を行うこともできる。例えば、図１６に示すように、連写によって画像１６ａ画像１６ｂ，画像１６ｃ、画像１６ｄの順に時系列で画像が取得された場合には、まず、制御装置１０４は、最初のフレームである画像１６ａに対して上述した実施の形態の手法を用いて被写体抽出を行って、被写体の位置と大きさと形状とを特定する。そして、連写の場合には被写体の変化が小さいため、次フレーム以降は、ステップＳ２６００で合成を行った２値化画像のみ、例えば、Ｃｒプレーン画像の２値化画像１６ｅ〜１６ｈのみを用いて、処理を行えば、処理速度を向上することができる。
【００７８】
（２）上述した第１の実施の形態では、制御装置１０４は、図４に示す処理を実行して、対象画像内における被写体の位置と大きさと形状とを特定する例について説明した。しかしながら、制御装置１０４は、対象画像内における被写体の位置と大きさと形状の少なくとも一つを特定するようにしてもよい。
【００７９】
（３）上述した第１の実施の形態では、制御装置１０４は、従の評価値１〜３を用いて、被写体である可能性が低い島を処理対象から除外する例について説明した。しかしながら、制御装置１０４は、従の評価値１〜３の少なくとも１つを用いて、被写体である可能性が低い島を処理対象から除外するようにしてもよい。
【００８０】
（４）上述した第１の実施の形態では、制御装置１０４は、対象画像が顔が検知可能な画像である場合には、図４のステップＳ２４００において、各２値化画像について、第１の島と、該第１の島と測距点が最も近くかつ画面上で近い位置にある島を第２の島として特定し、第１の島が抽出された２値化画像と、第２の島が抽出された２値化画像とを合成することによって、対象画像内における被写体の位置と大きさと形状とを特定する例について説明した。しかしながら、制御装置１０４は、ステップＳ２０００で抽出した主の評価値が大きい候補の複数を組み合わせて各々の白画素領域を合成することにより、被写体の位置と大きさと形状との少なくとも一つを特定するようにしてもよい。
【００８１】
（５）上述した第１〜第４の実施の形態では、式（５）や式（１５）によって主の評価値を算出する例について説明した。しかしながら、この式（５）で表される計算式によって算出された主の評価値によって、例えば、図２２の区分２１ｆのような背景に白画素の多い区分から被写体が抽出されると、２フレーム目以降の被写体追尾が不安定になる可能性がある。そこで、これを回避するために、次式（１７）により、白画素領域（島）には該当しない白画素の面積を加味して主の評価値を算出するようにしてもよい。
主の評価値  ＝  （島を構成する白画素数α×画面画素数）／（白画素の重心を中心とした慣性モーメント×背景画素数）  ・・・（１７）
なお、式（１７）において、αは１．０〜１．５の範囲をとる変数である。また、背景画素数が０の場合には１に置換する。
【００８２】
（６）上述した第１〜第４の実施の形態では、本発明をカメラに適用する場合について説明した。しかしながら、本発明は、画像を読み込んで処理することができる他の装置、例えばパソコンや携帯端末などに適用することも可能である。
【００８３】
なお、本発明の特徴的な機能を損なわない限り、本発明は、上述した実施の形態における構成に何ら限定されない。また、上述の実施の形態と複数の変形例を組み合わせた構成としてもよい。
【符号の説明】
【００８４】
１００  カメラ、１０１  操作部材、１０２  レンズ、１０３  撮像素子、１０４  制御装置、１０５  メモリカードスロット、１０６  モニタ
【図１】
2011217355.tif 000004
【図２】
2011217355.tif 000005
【図３】
2011217355.tif 000006
【図４】
2011217355.tif 000007
【図５】
2011217355.tif 000008
【図６】
2011217355.tif 000009
【図７】
2011217355.tif 000010
【図８】
2011217355.tif 000011
【図９】
2011217355.tif 000012
【図１０】
2011217355.tif 000013
【図１１】
2011217355.tif 000014
【図１２】
2011217355.tif 000015
【図１３】
2011217355.tif 000016
【図１４】
2011217355.tif 000017
【図１５】
2011217355.tif 000018
【図１６】
2011217355.tif 000019
【図１７】
2011217355.tif 000020
【図１８】
2011217355.tif 000021
【図１９】
2011217355.tif 000022
【図２０】
2011217355.tif 000023
【図２１】
2011217355.tif 000024
【図２２】
2011217355.tif 000025
【図２３】
2011217355.tif 000026
【図２４】
2011217355.tif 000027
【図２５】
2011217355.tif 000028
【図２６】
2011217355.tif 000029
【図２７】
2011217355.tif 000030
【図２８】
2011217355.tif 000031
【図２９】
2011217355.tif 000032
【図３０】
2011217355.tif 000033
【図３１】
2011217355.tif 000034
【図３２】
2011217355.tif 000035
【図３３】
2011217355.tif 000036