(57)【要約】【課題】測距装置として、被写体距離の二次元分布データを実用的な速度で演算取得できるようにする。【解決手段】被写体距離測定に必要な距離範囲として最短距離Ｚminと最長距離Ｚmaxを設定する。測距ラインのうち、上記Ｚmin、Ｚmax、及び画角設定に応じて決まる撮像視野範囲を通過する測距ラインのうちから、実際に測距に使用する有効測距ラインを選択する。そして、選択した測距ラインに対応するラインセンサから取り込んだセンサデータのみによって、測距演算を実行し、被写体距離の二次元的分布の情報を持つ測距データを得る。【選択図】図４
2006226878.tif 000002
【特許請求の範囲】
【請求項１】
１測距ラインに対応するラインセンサ部を、複数の異なる視野角の測距ラインごとに対応して複数備える測距センサ手段と、
上記複数のラインセンサ部のうちから、撮像視野内での被写体距離測定が可能とされる測距ラインに対応するラインセンサ部を、有効ラインセンサ部として選択するラインセンサ部選択手段と、
上記ラインセンサ部選択手段により選択された有効ラインセンサ部の出力を利用して測距演算を実行する測距演算手段と、
を備えることを特徴とする測距装置。
【請求項２】
上記ラインセンサ選択手段は、
測定距離の最長として設定される最長距離と画角とに基づいて決まる撮像視野と、測定距離の最短として設定される最短距離と画角に基づいて決まる撮像視野との間の視野範囲を通過するとされる非無効測距ラインを特定し、この特定した非無効測距ラインのうちから選択した測距ラインに対応するラインセンサ部を、選択された上記有効ラインセンサ部とする、
ことを特徴とする請求項１に記載の測距装置。
【請求項３】
合焦させるべき被写体までの距離に対応する撮像モードの設定操作に応じて上記最長距離及び／又は最短距離を設定する測距対象距離設定手段をさらに備える、
ことを特徴とする請求項２に記載の測距装置。
【請求項４】
上記ラインセンサ選択手段は、
撮像視野内での被写体距離測定が可能とされる全ての測距ラインに対応するラインセンサ部のうちから、所定規則に従って選択した所要のラインセンサ部を有効ラインセンサ部とするようにされている、
ことを特徴とする請求項１に記載の測距装置。
【請求項５】
上記測距演算手段により得られた距離情報について、上記撮像視野に対応する画像の位置との対応をとるための補正処理を実行する視差補正手段をさらに備える、
ことを特徴とする請求項１に記載の測距装置。
【請求項６】
上記有効ラインセンサ部に対応する測距ライン間の距離情報を、複数の有効ラインセンサ部の距離情報を使用して所定の補間処理を行うことで得るための補間処理手段をさらに備える、
ことを特徴とする請求項１に記載の測距装置。
【請求項７】
撮像された被写体についての焦点調整のために被写体距離測定を実行する測距手段を備え、
上記測距手段は、
１測距ラインに対応するラインセンサ部を、複数の異なる視野角の測距ラインごとに対応して複数備える測距センサ手段と、
上記複数のラインセンサ部のうちから、撮像視野内での被写体距離測定が可能とされる測距ラインに対応するラインセンサ部を、有効ラインセンサ部として選択するラインセンサ部選択手段と、
上記ラインセンサ部選択手段により選択された有効ラインセンサ部の出力を利用して測距演算を実行する測距演算手段とを備える、
ことを特徴とする撮像装置。
【請求項８】
個々が１測距ラインに対応し、所定複数の異なる視野角の測距ラインごとに対応して測距センサに設けられる複数のラインセンサ部のうちから、撮像視野内での被写体距離測定が可能とされる測距ラインに対応するラインセンサ部を、有効ラインセンサ部として選択するラインセンサ部選択手順と、
上記ラインセンサ部選択手順により選択された有効ラインセンサ部の出力を利用して測距演算を実行する測距演算手順と、
を実行することを特徴とする測距方法。
【請求項９】
個々が１測距ラインに対応し、所定複数の異なる視野角の測距ラインごとに対応して測距センサに設けられる複数のラインセンサ部のうちから、撮像視野内での被写体距離測定が可能とされる測距ラインに対応するラインセンサ部を有効ラインセンサ部として選択するラインセンサ部選択手順と、
上記ラインセンサ部選択手順により選択された有効ラインセンサ部の出力を利用して測距演算を実行する測距演算手順と、
を測距装置に実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、撮影装置における自動焦点調整のために使用される測距装置及びその方法に関する。また、このような測距装置が実行するプログラムに関する。
【背景技術】
【０００２】
特にスチルカメラなどの撮像装置のオートフォーカス（自動焦点調整）機能を実現するために測距装置を備えるものが広く知られている。つまり、合焦させるべき測距装置により、被写体までの距離を測定し、この測定された距離に対して合焦するようにしてフォーカスレンズを駆動する。このようして測距装置は、距離を測定するためのセンサとして機能することから、AF(Auto Focus)センサともいわれている。
【０００３】
測距装置が採る測距方式としてはアクティブ方式とパッシブ方式が知られている。
アクティブ方式は、測距装置側から被写体側に投光を行って得られた反射光の入射位置を検出し、この検出情報に基づいて被写体までの距離を測定する。また、パッシブ方式の１つである位相差検出方式では、被写体の像を複数の光学系を用いて、例えば、それぞれ異なる水平位置に結像させる。被写体像が結像される位置にはそれぞれラインセンサが配置されており、これらのラインセンサにより結像光に応じた信号が得られる。従って、これらのラインセンサも、同一水平軸に沿って配置される。これらのラインセンサによっては、例えば視野内における或る高さの１水平ラインの結像光を検出することになる。このようにして検出出力が得られる１水平ラインを、ここでは測距ラインという。そして、この１測距ライン分のラインセンサから得られた信号に基づいて、光学系ごとに対応する像についての相互の位相差を検出する。この位相差の検出には、ラインセンサから得られた信号を利用した所定の演算（相関演算）を実行する。そして、この検出結果に基づいて被写体までの距離が測定されることになる。
【０００４】
位相差検出方式による測距の構成として、特許文献１には、相関演算のための処理についての記載がされている。また、特許文献２には、測距に用いるセンサ（受光手段）の構成例が記載されている。
【０００５】
【特許文献１】特公平７−５４３７１号公報
【特許文献２】特開２００１−４３６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記パッシブ方式に関すれば、現状においては、測距のためのラインセンサは、１つの測距ラインに対応する１組のみを備えることが一般的である。このために、撮像視野における被写体距離については、ラインセンサの配置方向に沿った水平又は垂直方向のいずれか一方における一次元的な分布しか検出できない。
そこで、測距装置について、それぞれ異なる測距ラインを平行に形成することとして、これらの測距ラインに対応する複数組のラインセンサを備えることとすれば、検出される被写体距離について、水平／垂直両方向の二次元的な分布を得ることができる。これにより、例えば撮像視野内の広い範囲における所望の位置での測距を行うことが可能になる。
【０００７】
しかし、測距のためには先に述べたように相関演算を実行する必要があるが、この相関演算は、繰り返し演算となって計算量が非常に多いことが知られている。この計算のアルゴリズムに関しては、その原理からも簡易なものとすることは困難とされている。そのうえで、上記しているように、測距装置について、複数の測距ラインに対応して複数のラインセンサを備えて二次元的な距離分布を検出しようとすると、相関演算の処理は、著しく重いものとなり、測距ライン数によっては、測距処理についての実用的な速度を維持することができなくなる。つまり、現状の処理能力環境では、複数の測距ラインに対応する複数組のラインセンサにより二次元的な被写体距離分布の情報を得るようにした測距装置を実用化することは困難な状況にある。
【課題を解決するための手段】
【０００８】
そこで本発明は上記した課題を考慮して、撮像装置として次のように構成する。
つまり、１測距ラインに対応するラインセンサ部を、複数の異なる視野角の測距ラインごとに対応して複数備える測距センサ手段と、複数のラインセンサ部のうちから、撮像視野内での被写体距離測定が可能とされる測距ラインに対応するラインセンサ部を、有効ラインセンサ部として選択するラインセンサ部選択手段と、このラインセンサ部選択手段により選択された有効ラインセンサ部の出力を利用して測距演算を実行する測距演算手段とを備えて測距装置を構成することとした。
【０００９】
上記構成では、測距センサ手段としては、複数の異なる測距ラインごとに対応した複数のラインセンサ部を備える。このことは、これらの測距ラインごとのラインセンサ部からの出力を利用して測距演算を実行すれば、被写体までの距離について二次元的な分布を得るのが可能であることを意味する。
そのうえで、本発明では、上記複数のラインセンサ部のうちから有効ラインセンサ部を選択して、この有効ラインセンサ部の出力のみを利用して測距演算を実行するようにされる。有効ラインセンサ部は、撮像視野内での被写体距離測定が可能とされる測距ラインに対応するラインセンサ部である。このことを換言すれば、本発明では、撮像視野内での被写体距離測定には使用できない測距ライン、つまり撮像視野から外れる測距ラインに対応するラインセンサ部の出力については、測距演算に使用しないようにしている、ということになる。
【発明の効果】
【００１０】
上記のようにして、撮像視野内の被写体距離を測定するのに不要なラインセンサ部の出力が測距演算には使用されないことで、測距演算の処理は、常に必要最小限のラインセンサ部の出力を使用して実行することになり、余剰な処理負担が生じない。なおかつ、撮像視野内の被写体距離を測定するのに必要なラインセンサ部の出力は確保されているから、撮像視野内の被写体距離の測定結果としては二次元的な分布が正常に得られる。
つまり、本発明では、複数のラインセンサ部を設けることのメリットである被写体距離の二次元的分布を得た上で、必要最小限とされる処理負担による測距演算が実行されるようにしている。このようにして測距演算の処理が軽減されることで、被写体距離の二次元的分布を得る測距装置の実用化が容易に実現されることになる。
【発明を実施するための最良の形態】
【００１１】
図１のブロック図は、本発明の実施の形態としての測距装置を備えるデジタルスチルカメラ１の全体構成を示している。
先ず、カメラ部１０は、レンズ光学系により撮像して得られた画像光を信号に変換するための部位であり、光学ブロック１１、ＣＣＤ（Charge Coupled Device）１２、前処理回路１３、光学ブロック用ドライバ１４、ＣＣＤドライバ１５、及びタイミング生成回路１６とを備えて成る。
【００１２】
光学ブロック１１は、レンズ光学系、フォーカス機構、シャッター機構、絞り（アイリス）機構などを備えて成り、入射された光を撮像光としてＣＣＤ１２の受光面に結像させる。
また、光学ブロック１１におけるフォーカス制御、シャッター制御、絞り値の可変制御などは、この場合には、制御部５の制御に応じて光学ブロック用ドライバ１４から出力される所定の駆動信号によって行われるものとしている。つまり、光学ブロック用ドライバ１４は、制御部５の制御に応じて、フォーカス機構、シャッター機構、及び絞り機構などを駆動するための駆動信号を生成して出力する。この駆動信号に応じて、フォーカス機構、シャッター機構、及び絞り機構が動作することで、フォーカス状態、シャッター動作、シャッター速度、及び絞り値などが適切な状態に制御される。
【００１３】
ＣＣＤ１２は、上記のようにして受光面にて受光した撮像光について光電変換を行うもので、受光面にて受光された撮像光に応じて蓄積された信号電荷を、タイミング生成回路１６からの出力されるタイミング信号に基づいて順次出力することで、撮像光に対応した電気信号を出力する。
タイミング生成回路１６は、制御部５の制御に応じて必要とされるタイミング信号を形成する。また、ＣＣＤドライバ１５は、タイミング生成回路１６からのタイミング信号に基づいて、ＣＣＤ１２に対して駆動信号を出力する。
なお、光電変換素子（撮像素子）としては、ＣＣＤに限定されるものではなく、例えばＣＭＯＳセンサなどをはじめ他の素子を採用してもよい。
【００１４】
前処理回路１３は、ＣＣＤ１２から出力された信号を入力して、例えばＣＤＳ（Correlated Double Sampling）処理、ＡＧＣ（Automatic Gain Control）処理などを実行したうえで、Ａ／Ｄ（Analog/Digital）変換処理を行って、デジタル信号に変換する。
前処理回路１３から出力されたデジタル信号は、カメラＤＳＰ２に供給される。カメラＤＳＰ２は、入力されたデジタル信号から、必要に応じて、動画又は静止画としてのデジタル画像データを生成する。また、このデジタル画像データに対して、ＡＥ（Auto Exposure）、ＡＷＢ（Auto White Balance）などのカメラ信号処理を施す。
このようにして得られたデジタル画像データは、例えば、所定の圧縮方式による圧縮符号化、さらには記録符号化を施したうえで、システムバス５５、媒体インターフェイス４を介して記録媒体３０に転送し、ファイルとして管理される形式で記録を行うことができる。
また、撮像画像のモニタ映像をＬＣＤ８にて表示出力させるためのビデオ信号処理なども実行するようにされる。この処理によって得られた表示用画像データは、システムバス５５を介してＬＣＤコントローラ７に入力される。ＬＣＤコントローラ７は、入力される表示用画像データに応じてＬＣＤ８を駆動する。これにより、ＬＣＤ８には、例えばモニタ画像が表示される。
また、記録媒体３０に記録された画像データのファイルは、制御部５の制御により読み出しを行って、媒体インターフェイス４、システムバス５５を介してカメラＤＳＰ２に入力される。この場合、カメラＤＳＰ２は、入力された画像データについて、記録符号化に対する復調処理、データ圧縮に対する復調処理（伸張処理）を実行したうえで、所定の信号処理により、上記と同様に表示用画像データを得て、ＬＣＤ８にて表示させることができる。
【００１５】
カメラＤＳＰ２は、上記した各種の信号処理を実行するのにあたって、例えばＳＤＲＡＭ３を作業領域として使用する。ＳＤＲＡＭ３に対するデータの書き込み／読み出し制御は、カメラＤＳＰ２内に備えられるＳＤＲＡＭコントローラが実行する。
【００１６】
制御部５は、撮像装置１における各部を制御するもので、ＣＰＵ（Central Processing Unit）５１、ＲＡＭ（Random Access Memory）５２、フラッシュＲＯＭ（Read Only Memory）５３、時計回路５４をシステムバス５５経由で接続して成るマイクロコンピュータとして構成される。
ＲＡＭ５２は、ＣＰＵ５１の演算結果を一時記憶するなど、主としてＣＰＵ５１の作業領域として用いられる。また、フラッシュＲＯＭ５３は、ＣＰＵ５１が実行すべきプログラムや、各種処理に必要とされる設定データなどが記憶される。また、時計回路５４は、計時を行うことで、現在年月日、現在曜日、現在時刻などの情報を出力可能とされる。
【００１７】
この場合の操作部６は、撮像装置１の筐体の所要位置に備えられる各種操作子、タッチパネルなどの入力操作手段を一括して示している。操作部６では、操作結果に応じた操作情報信号をＣＰＵ５１に出力する。ＣＰＵ５１は、入力された操作情報信号に応じて所要の制御、処理を実行する。
【００１８】
外部インターフェイス９は、所定のデータインターフェイスを経由して、撮像装置１と他の外部機器とを相互通信可能に接続するために設けられる。
この場合において、外部インターフェイス９に適用される実際のデータインターフェイスとしては特に限定されるべきものではないが、例えばＩＥＥＥ（Institute of Electrical and Electronics Engineers）１３９４、ＵＳＢ（Universal Serial Bus）などの有線によるデータインターフェイスを採用することが考えられる。また、Bluetoothなどの無線データインターフェイスでもよい。
さらに、インターネット、ＬＡＮなどのネットワーク接続に対応した有線、無線のネットワークインターフェイスが採用されてもよい。
【００１９】
また、本実施の形態のデジタルスチルカメラ１は、自動的に焦点調整を行うオートフォーカス(AF: Automatic Focus)機能（装置）を有する。この場合のオートフォーカス機能は、被写体までの距離を測定した結果に応じてフォーカスレンズを駆動制御する測距方式を採る。また、測距方式としては、パッシブ方式の１つである位相差検出方式を採ることとする。
位相差検出方式を採ることに応じて、デジタルスチルカメラ１には、レンズ光学系から被写体までの距離（被写体距離）の測定に用いる測距センサ２０が設けられる。測距センサ２０は、例えば制御部５の制御によりセンサドライバ２１から出力される所定の駆動信号により、位相差検出方式に応じた検出動作を実行する。測距センサ２０の検出出力は、この場合にはアナログ値として出力されるので、Ａ／Ｄコンバータ２２によりデジタル値に変換される。制御部５においては、このデジタル値に変換された検出出力をシステムバス５５を経由して取り込み、測距処理に使用する。つまり、被写体距離を測定する。そして、制御部５は、測定された被写体距離の値に基づいて、先に説明したようにして、光学ブロック用ドライバ１４を制御してフォーカスレンズを駆動する。この結果、被写体に対して自動的に合焦させる動作が得られることになる。つまりオートフォーカス動作が実行される。
【００２０】
図２は、上記した測距センサ２０の構成を模式的に示している。なお、この図においては、測距センサ２０とともに、センサドライバ２１及びＡ／Ｄコンバータ２２も示している。
この図に示す測距センサ２０は、受光レンズ１００ａ，１００ｂと、センサ部１０１とを備えるものとされる。
受光レンズ１００ａ，１００ｂは対を成すもので、基線長といわれる距離を隔てて配置される。
ここでのセンサ部１０１における最小構成単位は、ラインセンサ１０３（１０３ａ−１〜１０３ａ−ｎ、１０３ｂ−１〜１０３ｂ−ｎ）とされる。ラインセンサ１０３は、それぞれ同じ所定数の光センサを一方向（図では水平方向となる）に沿って配列して形成され、各光センサにおける受光光量に応じた電荷がシフトレジスタ的に順次読み出しされる構成を採る。
そのうえで、センサ部１０１においては、対となる２本のラインセンサから成る所定数のラインセンサユニット１０２−１〜１０２−ｎを、この図では行方向に配列している。
例えばラインセンサユニット１０２−１であれば、一対のラインセンサ１０３ａ−１，１０３ｂ−１を備え、ラインセンサ１０３ａ−１は、受光レンズ１００ａの焦点位置に配置され、ラインセンサ１０３ｂ−１は、受光レンズ１００ｂの焦点位置に配置される。
また、残るラインセンサユニット１０２−２〜１０２−ｎも、同様にして、それぞれ、一対のラインセンサ１０３ａ−２〜１０３ａ−ｎ，１０３ｂ−２〜１０３ｂ−ｎを備え、ラインセンサ１０３ａ−２〜１０３ａ−ｎについては、受光レンズ１００ａの焦点位置に配置し、ラインセンサ１０３ｂ−２〜１０３ｂ−ｎについては、受光レンズ１００ｂの焦点位置に配置するようにされる。
【００２１】
なお、測距センサとして、従来から広く知られている構成は、受光レンズ１００ａ，１００ｂに対して１組のラインセンサユニット１０１を備えたものである。本実施の形態では、このラインセンサユニットが複数組備えられる構成を採る。後述するようにして、１組のラインセンサユニット１０１は、１つの決まった仰角に対応した距離測定のために想定されるライン（測距ライン）を形成する。本実施の形態では、ラインセンサユニット１０１の数に応じて、それぞれ異なる特定の仰角に対応した測距ラインが形成されることになる。
【００２２】
上記したように、ラインセンサ１０３の各々は複数の光センサが１方向に配列されて成る。そして、各光センサに蓄積された電荷に応じた電流値若しくは電圧値は、所定のクロックタイミングに応じて順次シフトされるようにして出力される。センサドライバ２１は、このようなラインセンサ１０３からの光センサ出力の読み出しについて、制御部５の制御に応じて、１つのラインセンサユニット１０２におけるタイミングと、ラインセンサユニット１０２−１〜１０２−ｎの間でのタイミングとが適正なものとなるようにして、ラインセンサ１０３を駆動するように構成される。なお、このようにして得られる出力は、１（水平）ライン分の輝度信号となる。
Ａ／Ｄコンバータ２２は、上記センサドライバ２１の駆動により読み出される輝度信号としての検出出力について、デジタル値に変換する。先にも説明したようにして、制御部５は、この検出出力を評価値として利用してオートフォーカス制御を実行する。
【００２３】
図３は、上記図２に示す構成の測距センサ２０を使用した測距の手法を、受光レンズ１００ａ，１００ｂとラインセンサユニット１０２との位置関係とともに概念的に示している。また、ここでは、説明を簡単にするために、ラインセンサユニット１０２は１組の場合についての説明を行う。１組のラインセンサユニット１０２を使用する測距は、位相差検出方式としての基本となる。
【００２４】
対を成す受光レンズ１００ａ，１００ｂは、それぞれの光軸Ｐａ，Ｐｂ間の距離である基線長Ｂを隔てるようにして配置される。また、ラインセンサユニット１０２を成すラインセンサ１０３ａ，１０３ｂのうち、ラインセンサ１０３ａは、受光レンズ１００ａから焦点距離ｆだけ隔てた位置にて、受光レンズ１００ａからの出射光が受光されるようにして配置される。また、ラインセンサ１０３ｂは、受光レンズ１００ｂから焦点距離ｆだけ隔てた位置にて、受光レンズ１００ｂからの出射光が受光されるようにして配置される。
このとき、ラインセンサ１０３ａ，１０３ｂは、同一（水平）線上に在るような位置関係により配置される。
受光レンズ１００ａ，１００ｂ、及びラインセンサ１０３ａ，１０３ｂが、このようにして配置されることで、被写体Ｓｂの像光は、受光レンズ１００ａを介してラインセンサ１０３ａ上に結像される。また、受光レンズ１００ｂを介してラインセンサ１０３ｂ上に結像される。
【００２５】
ここで、ラインセンサ１０３ａ上での被写体３の結像した位置（結像位置）についての光軸Ｐｂに対する変位量をδLとし、ラインセンサ１０３ｂ上での被写体３の結像した位置（結像位置）についての光軸Ｐｂに対する変位量をδRとする。すると、ラインセンサ１０３ａ，１０３ｂのそれぞれにおける光軸に対する結像位置の変位量の総和であるδは、
δ＝δL＋δR・・・（式１）
で表される。なお、上記δL、δRは、ラインセンサ１０３，１０３ｂから出力される信号（輝度を示す）波形の位相差であるものとみることができる。そして、図３において示される距離Ｌを、受光レンズ１００ａ，１００ｂから被写体Ｓｂまでの、光軸に沿った距離（被写体距離）としてみた場合には、この被写体距離Ｌは、三角測量の原理に基づいて、
Ｌ＝Ｂｆ／δ・・・（式２）
で表される。このようにして位相差検出方式によって、被写体距離Ｌが算出される。
なお、上記変位量δを取得するためには、実際には、対となる２つのラインセンサの検出出力（輝度信号波形）をそれぞれ一定区間により区切るようにして分割し、これらの分割区間の波形値を利用して、いわゆる相関演算によって、波形の相関が最大となるようなδを求めるようにされる。そして、このような相関演算を、例えば上記のようにして区切りを行った区間をずらしていくようにして繰り返していくことで、視野を水平に横切るとされる１ライン相当の投影ライン（測距ライン）に位置する被写体までの距離の分布を得ることができる。つまり、視野内における被写体距離を一次元的な分布により検出できる。なお、本実施の形態では、この相関演算についてはこれまでに知られている演算手法が採用されればよい。
【００２６】
図４は、本実施の形態の測距センサ２０と、デジタルスチルカメラ１のレンズ光学系（鏡筒）との位置関係例、及び測距センサ２０とレンズ光学系の垂直方向における視野角（垂直視野角）を例示している。つまり、測距センサ２０とレンズ光学系を水平方向からみるようにしていることで垂直視野角をみている。
この図において鏡筒１１Ａは、例えば図１に示した光学ブロック１１の外筐部分に対応するものとされる。つまり、デジタルスチルカメラ１における撮像のためのレンズ光学系を示す。
本実施の形態では、デジタルスチルカメラ１を通常に正立させた状態において、鏡筒１１Ａの鉛直上方に対して一定の距離（高さＨ）だけ離れた位置に設けられるものとする。また、この状態において、測距センサ２０が備えるラインセンサユニット１０２−１〜１０２−ｎの各々における対のラインセンサは、その光センサの配列方向が水平方向となるようにして配置される。また、ラインセンサユニット１０２の単位では、ラインセンサユニット１０２−１〜１０２−ｎの順で垂直方向に沿って配列される。これらラインセンサユニット１０２−１〜１０２−ｎの配置位置が、各ラインセンサユニットに対応する測距ラインの視野角を決定する。
また、以降においては説明の便宜上、ラインセンサユニット１０２については、１５組であることとする。つまり、ラインセンサユニット１０２−１〜１０２−１５を、上記した形態により配置する。
【００２７】
ここで、図４において、レンズ光学系の垂直（撮像）視野角は、鏡筒１１Ａの光軸Ｐ２上の主点Ｓ２にて、それぞれ所定の絶対値角度による仰角／俯角を成す直線Ｌｎ１，Ｌｎ２により示されるものであるとする。
一方、測距センサ２０の垂直視野角を示すラインとしては、それぞれ異なる視野角を持つ１５本の測距ラインｍＬ−１〜ｍＬ−１５が示されている。これらの測距ラインｍＬ−１〜ｍＬ−１５は、それぞれ、ラインセンサユニット１０２−１〜１０２−１５に対応するものとする。図３により説明したように、１組のラインセンサユニット１０２によっては、１本の（水平）ラインに沿った一次元的な被写体距離の分布を得ることができる。この一次元的な被写体距離の分布が１つの測距ラインに対応する。つまり、測距ラインは、１組のラインセンサユニット１０２に対応して検出される被写体距離のデータを、ラインセンサ１０３の光センサの配列方向に対応させて配置して形成される１水平ラインに対応するものとしてみることができる。そして、測距ラインは、測距センサ２０の光軸Ｐ１に対する、ラインセンサユニット１０２ごとの仰角／俯角にも対応する。
【００２８】
この場合には、測距ラインが１５本とされていることで、中間となる測距ラインｍＬ−８を光軸Ｐ１とほぼ一致させている。そして、測距ラインｍＬ−７〜ｍＬ−１が光軸Ｐ１に対して仰角となる視野角を持ち、測距ラインｍＬ−８〜ｍＬ−１５が光軸Ｐ１に対して俯角となる視野角を持つようにして設定している。なお、ここでは、測距ライン［ｍＬ−７，ｍＬ−９］、［ｍＬ−６，ｍＬ−１０］、［ｍＬ−５，ｍＬ−１１］、［ｍＬ−４，ｍＬ−１２］、［ｍＬ−３，ｍＬ−１３］、［ｍＬ−２，ｍＬ−１４］、［ｍＬ−１，ｍＬ−１５］の各組については、その光軸Ｐ１に対する仰角／俯角の値は同一となるようにしている。
【００２９】
先の図３の説明から理解されるように、１組のラインセンサユニット１０２によっては、撮像視野における一次元的な被写体距離の分布を得ることになる。本実施の形態の測距センサ２０は複数組（例えば１５組）のラインセンサユニット１０２を備えることから、上記した一次元的な被写体距離分布のパターンを、垂直方向において異なる高さ位置でもって、複数取得することが可能であることになる。この結果、撮像視野における被写体距離の情報について、水平／垂直の両方向において得ることが可能になる。つまり、撮像視野における被写体距離分布を二次元的に得ることが可能になる。
このことは、図４においても示されている。例えば鏡筒１１Ａの主点Ｓ２から距離１を隔てたときに形成される視野の垂直方向幅（高さ）は、線分ｈ１で示されるが、この線分ｈ１を横切るようにして通過する測距ラインは、測距ラインｍＬ−１〜ｍＬ−１５のうち、測距ラインｍＬ−８〜ｍＬ−１５の８本となっている。同様に、鏡筒１１Ａの主点Ｓ２から距離２を隔てたときに形成される視野の垂直方向の幅を示す線分ｈ２を横切るようにして通過する測距ラインは、測距ラインｍＬ−１〜ｍＬ−１５のうち、測距ラインｍＬ−６〜ｍＬ−１５の１０本となっている。このようにして、主点Ｓ２からの距離に応じて撮像視野内に存在する測距ライン数は異なってくる（主点Ｓ２に近くなるほど減少する）ものの、撮像視野内に複数の測距ラインが存在する状態となり得る。そして、これらの複数の測距ラインごとに対応した被写体距離のデータを集合させれば、撮像視野における被写体距離の二次元分布にとしてみることができる。
【００３０】
ところで、前述もしたように、測距センサ２０は鏡筒１１Ａの上部に配置される。このために、それぞれの主点Ｓ１，Ｓ２は異なるものとなる。つまり、測距センサ２０と鏡筒１１Ａとの間には視差が存在する。この視差は、測距センサ２０と鏡筒１１Ａの光軸Ｐ１，Ｐ２が一致するような配置の仕方とすれば解消されることになるが、デジタルスチルカメラ１の物理的な形態などの都合で、このような配置とすることは現実には不可能であり、従って、測距センサ２０と鏡筒１１Ａ（撮影用のレンズ光学系）との視差は必然的に存在する。
【００３１】
仮に光軸Ｐ１，Ｐ２を一致させて上記のような視差を解消できるのであれば、例えば、
測距ラインの数にかかわらず、これら測距ラインの垂直視野角を、鏡筒１１Ａ側の撮像視野の垂直視野角内に納めることが可能である。つまり、距離にかかわらず、常に全ての測距ラインを撮像視野内に在るようにすることが可能である。従って、この場合には、撮像視野において実用上充分とされる被写体距離の二次元的分布の密度（分解能）が得られるのに足る、必要最小限の数のラインセンサユニット１０２を設けることが可能である。
これに対して、現実に視差が存在する場合においては、図４からも分かるように、測距ラインの全てが、常に撮像視野内に在るようにすることはできない。具体的には、距離１のときには、測距ラインｍＬ−１〜ｍＬ−７の７本が撮像視野（線分ｈ１に対応する）を完全に通過することなく外れる。距離２のときには、測距ラインｍＬ−１〜ｍＬ−５が撮像視野（線分ｈ２に対応する）を通過することなく外れる。つまり、図４の場合では、測距センサ２０が鏡筒１１Ａの上側に配置されていることで、仰角が大きいほうの測距ラインが視野から外れる傾向となっている。また、視野に含まれる測距ラインの数は、被写体距離に応じて増減してしまう（距離が短くなるほど減少する）。
従って、現実に視差が存在する状況の下で、できるだけ広い距離の範囲において、実用上充分とされる被写体距離の二次元的分布の分解能を得ようとすれば、実際に設けるべきラインセンサユニット１０２の数を、視差が存在しないと仮定した場合の必要最小限数に対して、さらに必要なだけ増加させればよい、ということになる。本実施の形態の実際としても、このことに基づいて、ラインセンサユニット１０２の数が決定されるものであり、説明上の例としては、その数を１５としているものである。
【００３２】
通常、複数のラインセンサユニットを備える測距センサを用いて測距を実行する場合には、これらのラインセンサユニットの各々から検出信号を出力させ、この出力を利用して先に説明した相関演算を実行して、視野における被写体距離の二次元的分布の情報を得ることになる。しかしながら、従来の課題としても述べているように、相関演算は非常に重い処理である。このために、現状における制御部５の実際の処理能力によっては、ラインセンサユニット１０２が一定数以上となると、実用が困難になる程度に処理速度が低下するという問題を抱える。
本実施の形態では、このような問題に対応して、比較的多数のラインセンサユニットを備えて二次元分布による被写体距離の情報を取得しようとするのにあたり、被写体距離の二次元分布の分解能、及び処理速度を両立させ、その実用化を図る。以降、この点について説明していく。
【００３３】
ここで、先に図４により例説したように、測距対象とする距離１，距離２に応じて、これらの距離により決まる撮像視野（線分ｈ１、ｈ２が対応する）に収まる測距ラインは異なってくる。このときに、撮像視野から外れた測距ラインに対応して得られる被写体距離の情報は、オートフォーカス制御には使用されることはない。このことは換言すれば、オートフォーカス制御には無効となってしまう測距ラインが存在する場合があり、また、このような無効な測距ラインは、測距対象の距離に応じて異なってくる、ということにつながる。
本実施の形態では、このことに着目して、少なくとも、オートフォーカス制御に無効な測距ラインに対応するラインセンサユニット１０２の検出出力は、測距演算には使用しないこととする。このように、実際のオートフォーカス制御には無効なラインセンサユニット１０２の検出出力を測距演算に使用しないことで、先に説明した相関演算に要する処理負担も軽減されることになる。また、これらのラインセンサユニット１０２の検出出力は、元来、オートフォーカス制御には無効である（測距の対象とならない）から、残る無効ではないラインセンサユニット１０２の検出出力を利用すれば、被写体距離の二次元分布についても充分な分解能を得ることが可能となる。
【００３４】
このための具体的な手法概念について、さらに図４を参照して説明する。
本実施の形態では、撮像視野から外れることをもってオートフォーカス制御に無効とされる測距ライン（ラインセンサユニット１０２）を次のように特定する。
ここで、垂直方向における撮像視野高は、そこまでの距離と撮像視野角とによって決まる。例えば、線分ｈ１、ｈ２により表される撮像視野高は、それぞれ直線Ｌｎ１，Ｌｎ２により形成される撮像視野角の設定と、距離１，距離２によって決まる。
また、測距センサ２０と鏡筒１１Ａの配置は、実際のデジタルスチルカメラ１にて固定で決まっているものであり、また、測距センサ２０における測距ラインｍＬ−１〜ｍＬ−１５（ラインセンサユニット１０２−１〜１０２−１５）の視野角（光軸Ｐ１に対する仰角／俯角）も測距センサ２０の構造により固定的に決まる。鏡筒１１Ａ（撮像用のレンズ光学系）側の撮像視野角（光軸Ｐ２に対する仰角／俯角）は、鏡筒１１Ａにおいて設定されるズーム設定により可変であるが、そのときのズーム設定状態に応じて一義的に求めることができる。なお、ズーム機能などを持たないデジタルスチルカメラなどの場合には、撮像視野角は固定設定されるので、固定値として得られることになる。
このことから、距離と撮像視野角が決定されさえすれば、そのときに形成される撮像視野の範囲に収まる測距ラインと撮像視野の範囲から外れる測距ラインとについては一義的に特定することが可能であるということになる。
【００３５】
そこで、本実施の形態としては、先ず、被写体距離の測定に必要な距離として、その最短となる距離（最短距離Ｚmin）と、最長となる距離（最長距離Ｚmax）との２つの距離を設定（決定）こととする。ここでは、図４においては、これまで説明した距離１，距離２について、それぞれ最短距離Ｚmin、最長距離Ｚmaxとする。撮像視野角は、上記しているように、そのときに設定されているズーム状態に応じて決まる。また、最短距離Ｚmin、最長距離Ｚmaxは、後述するようにして、被写体距離に関する撮像モード設定についてのユーザ操作に適応させるようにして変更設定される。
そして、本実施の形態では、上記最短距離Ｚmin（及び画角）に対応して決まる撮像視野（撮像視野光h1により示される）と、最長距離Ｚmax（及び画角）に対応して決まる撮像視野（撮像視野光h2により示される）との間で得られる視野範囲（測距対象撮像視野範囲）を通過せずに、ここから外れている測距ラインを、先ず、無効な測距ラインとして特定するようにされる。ちなみに、図４では、測距対象撮像視野範囲は、直線Ln1,Ln2と、撮像視野高h1，h2に対応する４つの直線により囲まれた台形形状として示される。
図４の場合には、上記無効な測距ラインとして、測距ラインｍＬ−１〜ｍＬ−５の５本が特定される。なお、測距ラインｍＬ−６，ｍＬ−７は、最短距離Ｚminの位置では、直線Ｌｎ１の上側にあって撮像視野高（h1）範囲から外れているが、ここから距離が遠くなって最長距離Ｚmaxに近づいていく過程で、直線Ｌｎ１の下側に位置することとなって測距対象撮像視野範囲に入る。従って、これら測距ラインｍＬ−１〜ｍＬ−５は、無効な測距ラインとしては見なされない。
また、図４には示されていないが、上記とは逆に、測距ラインは、最長距離Ｚmaxの位置では測距対象撮像視野範囲外であるのに、最短距離Ｚminに近づく過程で測距対象撮像視野範囲内になる場合もある。例えば、図４に示す位置から最長距離Ｚmaxのみを遠ざけていく（図の右方向にシフトさせていく）と、最長距離Ｚmaxに対応する撮像視野高（h2）からは、先ず、測距ラインｍＬ−１５が通過しないこととなって外れ、以降、測距ラインｍＬ−１４、ｍＬ−１３・・・の順で外れていく。しかしながら、これらの測距ラインは、最短距離Ｚminに対応する撮像視野高（h1）に対しては、完全に通過した状態で収まっている。これらの測距ラインも、無効な測距ラインとしてはみなされない。
【００３６】
ここまでの段階で、最短距離Ｚmin〜最長距離Ｚmaxの距離範囲内に対応する測距対象撮像視野範囲から外れる測距ラインが無効であるとして特定され、残りの、最短距離Ｚmin〜最長距離Ｚmaxの距離範囲内に対応する測距対象撮像視野範囲を通過する全ての測距ラインが、「無効ではない測距ライン（非無効測距ライン）」として特定されたことになる。図４では、この無効ではない測距ラインは、測距ラインｍＬ−６〜ｍＬ−１５の１０本となる。
【００３７】
例えば本実施の形態としては、上記した測距対象撮像視野範囲を通過する全ての測距ラインを「有効測距ライン」として扱い、これらの有効測距ラインに対応するラインセンサユニット１０２の検出出力を利用して、被写体距離の二次元分布を得るための測距演算を行うようにすることができる。この場合においては、測距対象撮像視野範囲から外れている無効な測距ラインに対応するラインセンサユニット１０２の検出出力を測距演算に使用しないこととなり、この分の処理負担の軽減が図られることになる。
【００３８】
しかしながら、実際においては、上記のようにして測距対象撮像視野範囲を通過する全ての測距ラインを有効として測距を実行しなくとも、より少ない測距ラインによっても、被写体距離の二次元分布としては充分な分解能が得られる場合のあることが考えられる。このような場合には、測距対象撮像視野範囲を通過する全ての測距ラインのうちから適切に間引きを行って、有効とする測距ラインの数をさらに絞り込んだうえで測距を実行させることとすれば、測距演算のための処理負担はさらに軽減されることになる。この測距ラインの間引きについての具体例を下記に示す。
【００３９】
ここでは、必要最小限で４〜５本程度の有効な測距ラインがあれば、被写体距離の二次元分布として充分な分解能を与えることができるものとする。そこで、測距対象撮像視野範囲を通過する全ての測距ラインが９以上であるという条件を満たせば間引きを行うものとする。間引きをどのような規則により行うのかについてはいくつか考えられるが、ここでは、測距ラインにライン番号を付したうえで、偶数（奇数でもよい）の番号の測距ラインを有効なものとして残し、奇数（偶数）番号の測距ラインを間引くこととする。
これを図４に対応させると、この図では、測距対象撮像視野範囲を通過する全ての測距ラインとしては、測距ラインｍＬ−６〜ｍＬ−１５の１０本となっている。測距ラインの番号は、測距ラインに付された符号ｍＬ−ｎにおける変数ｎを対応させる。そのうえで、偶数番号の測距ラインを有効にして、奇数の測距ラインを間引いて無効としたとする。すると、この場合において、有効となるのは、測距ラインｍＬ−６、ｍＬ−８、ｍＬ−１０、ｍＬ−１２、ｍＬ−１４の５本にまで削減されることになる。そして、これら測距ラインｍＬ−６、ｍＬ−８、ｍＬ−１０、ｍＬ−１２、ｍＬ−１４に対応するラインセンサユニット１０２の検出出力を利用して測距演算を行って、視野における被写体距離の二次元分布の情報を得るようにされる。このようにして得られた被写体距離の二次元分布の情報が、充分な分解能を有しているのは、これまでの説明のとおりである。そして、測距演算のための処理負担は、測距対象撮像視野範囲を通過する全ての測距ラインを対象とした場合と比較して、演算に利用するラインセンサユニット１０２の検出信号の情報量がほぼ１／２となる分、大幅に軽減される。
【００４０】
ところで、特許文献２として挙げた特開２００１−４３６７号公報には、本実施の形態のラインセンサユニットに相当する部位を複数組設けた構成が記載されている。しかしながら、特許文献２では、注目領域としての視野全体における一部領域を設定し、この設定された注目領域のみに対応したラインセンサから出力される検出信号を取り込んで測距演算をするという構成を採る。このような構成は、特許文献２にも記載されるように、自動車の衝突防止のために前方車両との距離を測定するなどの用途であれば、カメラ視野の一部のみが一定的に重点的な領域となり得るために有効である。しかしながら、この構成では、撮像視野全域を対象として効率良く被写体距離の二次元分布を得ることはできない。従って、特許文献１の構成を、本実施の形態のようにして撮像視野の任意の位置での焦点調整が要求される一般のデジタルスチルカメラなどの撮像装置に適用することは不可能であろうと考えられる、
【００４１】
ここで、補足として、本実施の形態において、撮像視野角（ズーム設定）が変更されるのに応じて有効な測距ラインが変化することを、図５及び図６を参照して説明しておくこととする。なお、図５、図６において、図４と同一部分については同一符号を付して説明を省略する。
【００４２】
図５（ａ）においては、撮像視野角はθaで表されている。この撮像視野角θaと、最短距離Ｚmin〜最長距離Ｚmaxにより決まる測距対象撮像視野範囲に対して、測距ラインｍＬ−６〜ｍＬ−１５までが収まっており、測距ラインｍＬ−１〜ｍＬ−５が全く通過せずに外れて無効な状態にある。つまり、非無効測距ラインは、測距ラインｍＬ−６〜ｍＬ−１５の１０本となる。そのうえで、先の説明に準じて、非無効測距ラインが９本以上であるとの条件を満たしたとして、偶数のライン番号のみを有効とする間引きを実行したとすると、最終的に、有効測距ラインは、測距ラインｍＬ−６、ｍＬ−８、ｍＬ−１０、ｍＬ−１２、ｍＬ−１４の５本であることになる。
【００４３】
これに対して、図６（ａ）に示される撮像視野角θbは、図５（ａ）における撮像視野角はθaよりも小さいものとなっている。つまり、図６（ａ）の視野角は、図５（ａ）の場合よりも狭いものとなっている。
この状態に対応しては、撮像視野角θaと、最短距離Ｚmin〜最長距離Ｚmaxとの関係により決まる測距対象撮像視野範囲に対して、測距ラインｍＬ−８〜ｍＬ−１４までが収まっており、測距ラインｍＬ−１〜ｍＬ−７、ｍｌ−１５が通過せずに外れて無効な状態にある。この場合、非無効測距ラインは、測距ラインｍＬ−８〜ｍＬ−１４の７本となり、図５の場合よりも３本少なくなる。この結果に対して上記と同様の間引きの処理を適用したとする。この場合、非無効測距ラインは７本であり９本未満であることから特に間引きは実行しない。従って、間引きのアルゴリズムが有効であるとしても、この場合の有効測距ライン数は７で変わることがない。
【００４４】
また、図５（ｂ）、図６（ｂ）には、それぞれ、上記図５（ａ）、図６（ａ）の状態に対応した視野を画像として示している。これらの視野の画像は、例えばモニタ画像としてＬＣＤ８（あるいはファインダなど）に表示される画像としてもみてよい。図５（ａ）、図６（ａ）には、測距対象撮像視野範囲に対応させて、前方に人物の被写体Ｓｂ１を配置し、後方に樹木の被写体Ｓｂ２を置いている。図５（ａ）、図６（ａ）における測距ラインと各被写体Ｓｂ１，Ｓｂ２の関係は、視野画像（モニタ画像）においては、図５（ｂ）、図６（ｂ）に示すものとなる。
【００４５】
これまでの説明のようにして、本実施の形態のデジタルスチルカメラ１においては、上記図４〜図６により説明したラインセンサユニット１０２（有効測距ライン）の選択手順を含めて測距の処理を実行する。以降、このような本実施の形態としての測距処理を実現するための技術構成について説明していく。
【００４６】
図７は、本実施の形態のデジタルスチルカメラ１における、測距のためのハードウェア構成及びソフトウェア構成を抜き出して機能ブロックとして示している。
測距センサ２０は、図２にて説明したように、複数のラインセンサユニット１０２を備えた構成とされて、ここでは図示していないセンサドライバ２１により駆動される。これにより、有効測距ラインに対応するラインセンサユニット１０２を成すラインセンサ１０３にて得られた検出信号（１ライン分の輝度信号）を出力する。Ａ／Ｄコンバータ２２は、測距センサ２０から出力されるラインセンサ１０３からの検出信号をデジタル信号に変換して出力する。
Ａ／Ｄコンバータ２２にて得られたデジタル信号としてのラインセンサ１０３の出力（１ライン分の輝度信号データ）は、センサデータとして扱われ、制御部５内のＲＡＭ５２に確保したセンサデータバッファ５２ａとしての記憶領域に対して書き込んで保持するようにされる。従って、センサデータバッファ５２ａには、１回の測距処理にあたり、有効測距ラインに対応するラインセンサユニット１０２に対応するラインセンサ１０３ごとの検出出力に応じたセンサデータが保持されることとなる。
【００４７】
上記のようにしてセンサデータバッファ５２ａに保持されたセンサデータは、測距演算処理モジュール２０１が測距演算を実行するのにあたって利用することになる。測距演算処理モジュール２０１は、制御部５（ＣＰＵ５１）が、測距演算のためのプログラムを実行して得られる機能である。また、これまでにも説明した相関演算は、この測距演算処理モジュール２０１の一部処理として実行される。
【００４８】
測距演算処理モジュール２０１は、上記センサデータを適宜利用して所要の演算処理等を実行し、有効測距ラインごとに対応する被写体距離の情報を得る。これら有効測距ラインごとの被写体距離の情報は、ここでは、１ライン単位の情報であり一次元的な被写体距離分布を示す。測距演算処理モジュール２０１では、さらに、これらの有効測距ラインごとの被写体距離の情報を利用して所定の演算を実行することで、視野範囲における被写体距離の二次元分布の情報を得る。このようにして得られた被写体距離の二次元分布の情報は、距離分布データとして扱われ、ＲＡＭ５２内にて確保した距離分布データバッファ５２ｂに対して保持される。
【００４９】
視差補正モジュール２０２は、上記測距演算処理モジュール２０１により得られた距離分布データについて、後述するようにして視差補正処理を実行する。これにより、測距演算処理モジュール２０１が求めた距離分布データと、撮像画像（モニタ画像）上の位置との対応がとられる。また、補間処理モジュール２０３は、測距演算処理モジュール２０１により得られた距離分布データ（若しくは視差補正モジュール２０２による視差補正処理後の距離分布データでもよい）を対象として、測距ライン間の被写体距離の値を補間する処理を実行する。この補間処理によって、例えば少ない有効測距ライン数に関わらず実用上充分な被写体距離の二次元分布の分解能を得ることが可能になる。逆にいえば、補間処理を行うことによって、必要な有効測距ライン数を低減することが可能となる。また、補間処理のための処理負担は、測距のための相関演算と比較して著しく軽い。つまり、測距の手順に補間処理を加えることによっては、測距演算に利用するラインセンサユニット１０２の数を減らして、相関演算の処理をさらに軽減することが可能となる。
なお、視差補正モジュール２０２、及び補間処理モジュール２０３も、制御部５（ＣＰＵ５１）、測距演算のためのプログラムを実行して得られる機能である。
【００５０】
図８は、本実施の形態としての測距ための処理シーケンスを示すフローチャートである。この図に示す処理は、制御部５内のＣＰＵ５１が、例えばＲＯＭ５３に記憶されるプログラムを実行することで得られるものとされる。また、図８の説明の流れにおいて、必要に応じて、図９，図１０、図１１及びこれまでに示した各図を参照することとする。
【００５１】
例えば、操作部６に対する操作として、シャッターボタンの半押し操作などのオートフォーカスの起動に対応する操作が行われる、あるいは、定常的に合焦状態を得るようにされたコンティニュアスＡＦモードにおいて、オートフォーカス動作を起動させるべきタイミングに至るなどして、オートフォーカス動作が起動されると、図８に示す測距のための処理に移行することになる。
【００５２】
図８に示す処理によっては、先ず、有効測距ラインを決定することが行われる。このために、最初のステップＳ１０１では、先に図４により説明した最短距離Ｚmin及び最長距離Ｚmaxを設定する。
【００５３】
一般によく知られているように、スチルカメラでは被写体距離に応じた撮像モードの切り換えを行うものが広く普及している。このような撮像モードには、例えば、マクロモードなどといわれる接写に対応するモード（ここでは「接写モード」という）、カメラから数メートル程度離れた対象を被写体として撮影するもので、しばしば人物をクローズアップして撮影するときに使用するモード（ここでは「人物モード」という）、遠くの風景を撮影するときに使用するモード（ここでは「風景」モードという）などが知られている。カメラ装置では、これらの撮像モードの間での切り換え操作が行われるのに応じて、切り換えられた撮像モードに適合して想定する被写体距離に応じて、露光やレンズ光学系の位置などについての変更設定を行う。
【００５４】
本実施の形態のステップＳ１０１としては、このような撮像モードの設定状況に対応させて、最短距離Ｚmin及び最長距離Ｚmaxを設定するようにされる。このためには、例えば図９に示すような撮像モードと、最短距離Ｚmin及び最長距離Ｚmaxとの対応関係を示すテーブル情報を、フラッシュＲＯＭ５３に保持させておくようにする。ちなみに、図９においては、撮像モードとして、接写モード、人物モード、風景モードがあるものとされる。そして、接写モードについては最短距離Ｚmin＝３０cm、最長距離Ｚmax＝１ｍを対応させるものとして予め定めている。また、人物モードについては最短距離Ｚmin＝１ｍ、最長距離Ｚmax＝４ｍを対応させ、風景モードについては最短距離Ｚmin＝１０ｍ、最長距離Ｚmax＝∞を対応させるものとして予め定めている。なお、この図に示す撮像モードと最短距離Ｚmin，最長距離Ｚmaxとの対応は、あくまでも一例であり、実際に応じて適宜変更されるべきものである。
そして、ステップＳ１０１の処理として、現在設定されている撮像モードを認識したうえで上記テーブル情報を参照することで、認識した撮像モードに対応する最短距離Ｚmin，最長距離Ｚmaxの各値を取得するようにされる。これにより、今回の測距処理に応じた最短距離Ｚmin，最長距離Ｚmaxが設定されたこととなる。
なお、テーブル情報に基づいて最短距離Ｚmin，最長距離Ｚmaxを設定する以外にも、例えば、完全なマニュアル操作に応じて、最短距離Ｚmin，最長距離Ｚmaxをユーザが任意に設定できるようにすることも考えられる。これは、各種の設定をユーザの操作設定に委ねる、マニュアルモードといわれる撮影モードに対して適用すると、有効な場合があると考えられる。
【００５５】
次のステップＳ１０２においては、現在のズーム位置の情報を取得する。このズーム位置の情報は、光学ブロック１１におけるズームレンズのレンズ位置を示すセンサなどの検出信号、あるいは、光学ブロック１１においてズームレンズを駆動する駆動機構を形成するモータの回転位置情報などに基づいて取得することが可能である。
【００５６】
次のステップＳ１０３においては、上記ステップＳ１０２により取得したズーム位置情報に基づいて、撮像視野の垂直視野角２θ（２×θ）を取得する。この垂直視野角２θは、図１０に示すように、鏡筒１１Ａの主点Ｓ２を起点する直線Ｌｎ１，Ｌｎ２により形成される角度である。θは、光軸Ｐ２と直線Ｌｎ１により形成される仰角、あるいは、光軸Ｐ２と直線Ｌｎ２により形成される俯角となる。
光学系についてのズーム位置（ズーム倍率）の変更は、すなわち画角の変更である。従って、ズーム位置が特定されることで、光学系の画角、つまり、垂直視野角２θは一義的に求めることができる。
【００５７】
ステップＳ１０４においては、垂直視野高ｙmax、ｙminをそれぞれ取得する。図１０に示すように、垂直視野高ｙmaxは、最長距離Ｚmaxの位置において得られる、光軸Ｐ２を基準とした場合の視野の高さとなる。垂直視野高ｙminは、最長距離Ｚminの位置において得られる光軸Ｐ２を基準とした場合の視野の高さとなる。
これら垂直視野高ｙmax、ｙminは、先のステップＳ１０１にて設定した最短距離Ｚmax、最短距離Ｚminと、ステップＳ１０３にて取得した垂直視野角２θを利用して、次の式により算出することで取得できる。
ｙmax＝Ｚmax tanθ・・・（式１）
ｙmin＝Ｚmin tanθ・・・（式２）
【００５８】
次のステップＳ１０５においては、現在設定されているズーム位置（垂直視野角２θ）と、最長距離Ｚmax、最短距離Ｚminにより決まる測距対象撮像視野範囲に入るとされる測距ラインの最大仰角ψupと最大俯角ψdnを取得する。確認のために述べておくと、測距対象撮像視野範囲とは、図１０においては、直線Ｌｎ１と、直線Ｌｎ２と、最短距離Ｚminの位置に対応する垂直方向の線分ｈ１、最長距離Ｚmaxの位置に対応する垂直方向の線分ｈ２とにより囲まれる台形形状の領域となる。
この場合の最大仰角ψupとしては、この最大仰角ψupに対応するラインLn11が垂直視野高ｙmaxで示される位置（Pn1）を通過するような角度を設定すればよい。また、最大俯角ψdnとしては、この最大俯角ψdnに対応するラインが垂直視野高ｙminで示される位置（Pn2）を通過するような角度を設定すればよい。
そして、これら最大仰角ψup及び最大俯角ψdnは、ステップＳ１０１にて設定した最長距離Ｚmax、最短距離Ｚmin、上記ステップＳ１０４にて取得した垂直視野高ｙmax、ｙminを利用し、測距センサ２０の光軸Ｐ１と鏡筒１１Ａの光軸Ｐ２間の距離をＨ、測距センサ２０の主点Ｓ１と鏡筒１１Ａの主点Ｓ２との間の光軸方向における距離をＤとして、次のようにして算出することができる。
ψup＝(ｙmax−Ｈ)／(Ｚmax＋Ｄ)・・・（式３）
ψdn＝(ｙmin＋Ｈ)／(Ｚmin＋Ｄ)・・・（式４）
【００５９】
続いては、ステップＳ１０６において、測距ラインの番号を示す変数ｎについて、初期値としてｎ＝１を設定する。ここでも、測距ラインの番号としては、例えば図４などにおいて測距ラインに付したｍＬ−ｎの符号における変数ｎの部分を対応させるものとして考える。
【００６０】
次のステップＳ１０７では、測距ラインｍＬ−ｎについての仰角／俯角ψnを算出する。ちなみに、ステップＳ１０６の処理を経て最初に実行されるステップＳ１０７においては、変数ｎ＝１が設定されているので、測距ラインｍＬ−１についての仰角／俯角ψ1を取得することになる。
測距ラインの仰角／俯角は、対応するラインセンサユニット１０２におけるラインセンサ１０３の取り付け角に対応して一義的に決まるものであり、予め求めておくこともできる。そこで、例えば、測距ラインの各々と仰角／俯角との対応を示すテーブル情報をフラッシュＲＯＭ５３に記憶保持させておき、ステップＳ１０７の処理を実行するときには、現在設定される変数ｎに対応するライン番号の測距ラインに対応する仰角／俯角ψnの値を読み出して取得するように構成することが考えられる。また、所定の演算パラメータを用いて所定の演算式による演算を逐次実行して仰角／俯角ψnの値を算出して取得することも考えられる。
【００６１】
ステップＳ１０８においては、上記ステップＳ１０７により取得した測距ラインｍＬ−ｎについての仰角／俯角ψnについて、最大仰角ψupから最大俯角ψdnまでの角度範囲内にあるか否かについての判別を行う。このためには、取得したψnが仰角（光軸Ｐ１に対して上向きとなる角度）であるならば、ψup≧ψnが成立するか否かについて判別するようにされる。また、取得したψnが俯角（光軸Ｐ１に対して下向きとなる角度）であるならば、ψdn≧ψnが成立するか否かについて判別する。
ここで、否定の判別結果が得られた場合、その測距ラインｍＬ−ｎは、測距対象撮像視野範囲を通過しない、つまり、オートフォーカス制御に無効な測距ラインであることになる。この場合においては、ステップＳ１０９の処理をスキップしてステップＳ１１０の処理に進む。
これに対して、肯定の判別結果が得られた場合には、その測距ラインｍＬ−ｎは測距対象撮像視野範囲を通過しているものであることになる。従って、この測距ラインは、図４などにより説明した非無効測距ラインであることになる。非無効測距ラインは、オートフォーカス制御に無効な測距ラインではなく、有効測距ラインの候補となり得る測距ラインである。そこで、ステップＳ１０９においては、この非無効とされた測距ラインｍＬ−ｎについて、有効測距ラインの候補として設定する。この設定結果は、例えばＲＡＭ５２に保持しておくようにされる。
このステップＳ１０９の処理を終了すると、ステップＳ１１０の処理に進む。
【００６２】
ステップＳ１１０では、現在設定されている変数ｎが最大値であるか否かについて判別する。図４の例では、測距ラインｍＬ−１〜ｍＬ−１５までの１５本が存在するので、変数ｎの最大値は１５となる。
ステップＳ１１０において否定の判別結果が得られた場合には、ステップＳ１１１の処理に進んで、変数ｎについて１インクリメントしたうえで、ステップＳ１０７からの処理を再度実行する。そして、このステップＳ１０７〜ステップＳ１１１までの処理を、ステップＳ１１０において肯定の判別結果が得られるまで繰り返す。ステップＳ１１０にて肯定の判別結果が得られた段階では、全ての測距ラインについて、測距対象撮像視野範囲から外れる無効な測距ラインであるか、あるいは無効でない測距ラインであるのかの振り分けが行われ、無効でない測距ラインについては、有効測距ラインの候補として設定されている。
【００６３】
ステップＳ１１０において肯定の判別結果が得られると、ステップＳ１１２以降の処理に進む。ステップＳ１１２においては、ＲＡＭ５２に保持している有効測距ラインの候補についての設定内容を参照して、有効測距ラインの候補として設定されている測距ライン数を先ず取得する。そして、この取得した測距ライン数について、所定の閾値ｍ（ｍは自然数）以上であるか否かについて判別する。この処理は、例えば図４にて説明した測距ラインの間引きを行うか否かを決定するための条件判断であり、先の図４の説明との対応では、測距対象撮像視野範囲を通過する全ての測距ラインが９以上（つまりｍ＝９となる）であることの条件を満たすか否かを判別することになる。
【００６４】
ステップＳ１１２にて肯定の判別結果が得られた場合には、ステップＳ１１３に進んで間引き処理を実行する。具体的には、候補として設定されている測距ラインのうちで、ライン番号（符号ｍＬ−ｎにおけるｎ）が偶数の測距ラインを、有効測距ラインとして決定する。一方、ステップＳ１１２にて否定の判別結果が得られた場合には、ステップＳ１１４により、候補として設定されている全ての測距ラインを、有効測距ラインとして設定する。つまり、測距ラインの間引きは実行しない。このステップＳ１１４までの処理により、有効測距ラインの選択決定が完了する。
【００６５】
ステップＳ１１３、又はステップＳ１１４の処理を実行した後は、ステップＳ１１５に進む。ステップＳ１１５においては、例えば先に図７にて説明したように、有効測距ラインごとに対応したセンサデータを取得して、センサデータバッファ５２ａに保持させるための制御処理を実行する。
そして、続くステップＳ１１６においては、上記ステップＳ１１５の処理によって取得されたセンサデータを利用した測距演算処理を実行する。これは、図７の構成では、測距演算処理モジュール２０１により実行されるもので、この処理によって得られた測距ラインごとの被写体距離のデータは、二次元分布による被写体距離のデータ（距離分布データ）として、距離分布データバッファ５２ｂに保持される。
本実施の形態では、このステップＳ１１６の測距演算処理にあたって実行する相関演算の処理負担が軽減される。また、先のステップＳ１１５までの処理によれば、有効測距ラインとして選択決定した測距ラインに対応するラインセンサのみからセンサデータの取り込みを行うようにしているので、全てのラインセンサからセンサデータを取り込む場合と比較して、取り込みに要する時間、処理負担も、短縮、軽減されることになる。
【００６６】
続くステップＳ１１７では視差補正処理を実行する。この処理は、図７では、視差補正処理モジュール２０２により実行されるものとなる。
【００６７】
先ず、ステップＳ１１７での視差補正処理がどのようなことを目的として行われるものであるかについて説明しておく。
ここで、再度、図５を参照する（図６でもよい）。
図５（ａ）に示すようにして、測距対象撮像視野範囲において、最短距離Ｚminに近い手前側に人物の被写体Ｓｂ１が存在し、最長距離Ｚmaxに近い後方側に樹木の被写体Ｓｂ２が存在するものとする。このようにして、被写体Ｓｂ１は、被写体Ｓｂ２よりも前方に位置している。そのうえで、各測距ラインは、主点Ｓ１の位置を起点として所定の視野角で放射状に延びる。このために、測距ラインｍＬ−１１などを見て分かるように、同じ１つの測距ラインが当たる高さ（垂直方向における位置）は、被写体Ｓｂ１よりも被写体Ｓｂ２のほうが低くなっていることがわかる。
このような測距ラインの位置関係は、モニタ画像上では図５（ｂ）のようにして現れる。ここでも、例えば測距ラインｍＬ−１１に着目してみると、この測距ラインｍＬ−１１は、被写体Ｓｂ１に対しては、ほぼ目の位置あたりの高さにて水平にかかっている。しかし、これより後方に位置しているとされる被写体Ｓｂ２では、同じ測距ラインｍＬ−１１は、被写体Ｓｂ１にかかっている位置よりも低い位置にかかっている。
【００６８】
このことは、測距ラインは、本来は１つの水平の直線としてみなせるが、モニタ画像上では、被写体の距離が異なってくることに応じて、垂直方向における位置（高さ）が異なってくるものであることを示している。この場合おける測距ラインのずれ方は、測距センサ２０の主点Ｓ１と、鏡筒１１Ａの主点Ｓ２との視差により生じる。
また、本実施の形態のようにして視野における被写体距離の情報が二次元分布として得られる場合において、実際にオートフォーカスを動作させるときには、ユーザがモニタ画像における任意の位置（領域）を指定することになる。デジタルスチルカメラ１としては、この指定された領域について合焦状態が得られるようにしなければならない。このためには、指定された領域に対応する被写体距離の情報を得ることが必要となる。
これに対して、上記ステップＳ１１６の測距演算処理によって得られる被写体距離の二次元分布の情報（距離分布データ）は、１測距ラインに対応する１ラインごとの被写体距離の情報を、選択された有効測距ライン数分集めて、測距ラインの相対的位置関係に対応させて例えばマトリクス状に配列した形式のものとなっている。つまり、この段階での距離分布データは、モニタ画像上における高さ位置との対応はとれていない内容となっている。従って、ステップＳ１１６の測距演算処理によって得られた距離分布データのままでは、モニタ画像上の指定領域に対応した被写体距離を的確に得ることはできず、正常なオートフォーカス動作を期待することもできなくなる。
【００６９】
ステップＳ１１７としての視差補正処理は、ステップＳ１１６により得られた距離分布データを形成する被写体距離データと、モニタ画像上の位置との対応をとるための処理となる。距離分布データについてモニタ画像上の位置との対応が得られれば、モニタ画像上で指定した領域に対応する被写体距離データが適正に得られることになり、オートフォーカス制御も正常で良好な動作が期待できる。
【００７０】
この視差補正処理の概念を図１１に示す。
ここでは、俯角ψxを有する測距ラインｍＬ−xについての被写体距離Ｌが測定されているものとする。すると、この距離Ｌとして測定された被写体部分は、撮像視野の垂直視野内（モニタ画像の垂直方向に対応する）において点ａに位置することになる。この点ａを、鏡筒１１Ａの主点Ｓを原点とする座標（被写体座標）として扱うと、この被写体座標ａは、横軸（ｘ座標）方向における主点Ｓ２までの距離Ｚfと、縦軸（ｙ座標）における主点Ｓまでの距離ｙfによって表される。つまり、ａ（Ｚf，ｙf）と表記できる。そして、これら距離Ｚf，ｙfは、被写体距離Ｌと、この被写体距離Ｌが測定された測距ラインｍＬ−ｘの俯角（仰角）ψxとを利用し、測距センサ２０の光軸Ｐ１と鏡筒１１Ａの光軸Ｐ２間の距離をＨ、測距センサ２０の主点Ｓ１と鏡筒１１Ａの主点Ｓ２との間の光軸方向における距離をＤとして、次のようにして算出することができる。
Ｚf＝Ｌcosψx−Ｄ・・・（式５）
ｙf＝Ｌsinψx−Ｈ・・・（式６）
このようにして被写体座標ａ（Ｚf，ｙf）を求めることは、距離Ｚfに対応する上記距離ｙｆと、同じ距離Ｚfに対応する撮像視野の垂直視野高ｙｆ1を求めたうえで、これら距離ｙｆと距離ｙｆ1の比（ｙｆ／ｙｆ1）を求めることに相当する。垂直視野高ｙｆ1は、距離Ｚfが決まれば、（式１）又は（式２）に準じて算出できる。撮像視野はモニタ画像の垂直方向幅に対応する。従って、この距離ｙｆと距離ｙｆ1の比が求められれば、モニタ画像において、その高さ（垂直方向）方向における中間位置に対する点ａの距離は算出できる。つまり、視差補正処理としての演算が実現される。
【００７１】
説明を図８に戻す。上記した概念に従って、ステップＳ１１７では視差補正処理を実行し、モニタ画像上の位置との対応付けが行われた距離分布データを得る。この距離分布データも、距離分布データバッファ５２ｂに保持するようにされる。
【００７２】
さらに本実施の形態では、次のステップＳ１１８として示すようにして、補間処理を実行する。この処理は、図７にても説明したように、有効測距ラインごとに対応して実際に得られた被写体距離のデータ値について、２つの有効測距ラインの間にあるとされる画像領域の被写体距離データを補間生成する処理である。この処理は、最も簡単な例としては、例えば垂直方向において隣り合うとされる位置にあるとされる被写体距離のデータ値についての平均（単なる平均でも、加重平均などでもよい）を求めるようにするアルゴリズムを考えることができる。このようにして補間処理を行った距離分布データについても距離分布データバッファ５２ｂに書き込んで保持しておくようにされる。
ここまでの処理を以て、本実施の形態としての測距のための処理が完了する。以降は、距離分布データバッファ５２ｂに保持されている距離分布データを利用して、オートフォーカス制御を実行することになる。
【００７３】
ところで、これまでの説明においては、ラインセンサユニットの各々を水平方向のラインとして扱い、これに応じて各測距ラインも、視野を水平方向に沿って直線的に横切るものとするイメージで説明しているが、ここでの水平／垂直方向の概念は絶対的なものではなく、あくまでも相対的なものである。従って、説明上、ラインセンサユニットの各々を垂直方向のラインとして扱ったとしても、本実施の形態としての技術内容に破綻はない。
また、本発明としては、結果として所定複数の測距ラインのうちから撮像視野における測距に使用する測距ラインを選択できればよく、そのための処理手順の詳細などは適宜変更されてよい。例えば、測距ラインについての間引きの処理は、実施の形態では、奇数（偶数でも良い）のライン番号の測距ラインを間引くこととしている。しかしながら、例えば一定の規則に従って、２測距ラインおき、３測距ラインおきのようにして、中間で間引く測距ライン数を増加させていくことも考えられる。どのような間引きのパターンを採用し、また、間引きのためにどのような規則を設定するのかについては多様に考えることができ、どれを採用することも本発明の下で妨げられるものではない。ただし、間引きが行われた結果、隣り合う測距ライン間の距離は、できるだけ等間隔に近いほうが、均一な分布をえることができて好ましい。実施の形態では、このことを考慮して、例えば、奇数（偶数でも良い）のライン番号の測距ラインを間引くこととして、間引きが１測距ラインおきとなるようにしている。
また、本発明の測距装置はデジタルスチルカメラに適用しているが、一般の銀塩スチルカメラにおけるオートフォーカス機能のための測距装置としても好適である。またスチルカメラ以外の撮像装置などオートフォーカス機能が必要とされる機器にも適用が可能とされる。
【図面の簡単な説明】
【００７４】
【図１】本発明の実施の形態としての測距装置を備えるデジタルスチルカメラの構成例を示すブロック図である。
【図２】測距センサの構造を概念的に示す図である。
【図３】測距センサによる測距の基本原理を示す図である。
【図４】本実施の形態の測距センサ、デジタルスチルカメラのレンズ光学系（鏡筒）との位置関係例、及び測距センサとレンズ光学系の垂直方向における視野角（垂直視野角）を示す図である。
【図５】本実施の形態の測距センサとレンズ光学系の垂直方向における視野角（垂直視野角）についての画角に応じた相違を図６と比較して示す図である。
【図６】本実施の形態の測距センサとレンズ光学系の垂直方向における視野角（垂直視野角）についての画角に応じた相違を図５と比較して示す図である。
【図７】本実施の形態のデジタルスチルカメラ１における測距のための構成を抜き出して示すブロック図である。
【図８】本実施の形態の測距のための処理動作を示すフローチャートである。
【図９】撮像モードと最短距離Ｚmin，最長距離Ｚmaxとの対応を示すテーブル情報の内容例を示す図である。
【図１０】図８に示す所定の処理における取得パラメータ、演算パラメータの意義を説明するための図である。
【図１１】図８に示す視差補正処理に関して、取得パラメータ、演算パラメータの意義を説明するための図である。
【符号の説明】
【００７５】
１  デジタルスチルカメラ、２  カメラＤＳＰ、３  ＳＤＲＡＭ、４  媒体インターフェイス、５  制御部、６  操作部、７  ＬＣＤコントローラ、８  ＬＣＤ、９  外部インターフェイス、１０  カメラ部、１１  光学ブロック、１１Ａ  鏡筒、１２  ＣＣＤ、１３  前処理回路、１４  光学ブロック用ドライバ、１５  ＣＣＤ用ドライバ、１６  タイミング生成回路、２０  測距センサ、２１  センサドライバ、２２  Ａ／Ｄコンバータ、３０  記録媒体、５１  ＣＰＵ、５２  ＲＡＭ、５２ａ  センサデータバッファ、５２ｂ  距離分布データバッファ、５３  フラッシュＲＯＭ、５４  時計回路、５５  システムバス、１００（１００ａ，１００ｂ）  受光レンズ、１０１  センサ部、１０２（１０２−１〜１−２−ｎ）  ラインセンサユニット、１０３（１０３ａ−１〜１０３ａ−ｎ，１０３ｂ−１〜１０３ｂ−ｎ）  ラインセンサ、２０１  測距演算処理モジュール、２０２  視差補正処理モジュール、２０３  補間処理モジュール
【図１】
2006226878.tif 000003
【図２】
2006226878.tif 000004
【図３】
2006226878.tif 000005
【図４】
2006226878.tif 000006
【図５】
2006226878.tif 000007
【図６】
2006226878.tif 000008
【図７】
2006226878.tif 000009
【図８】
2006226878.tif 000010
【図９】
2006226878.tif 000011
【図１０】
2006226878.tif 000012
【図１１】
2006226878.tif 000013