(57)【要約】  距離計測装置（１）は、光学系（１１）を第１の焦点距離に設定したときに撮像部（１２）にパターン光に対応する複数の第１の撮像画像を取得させ、光学系（１１）を第２の焦点距離に設定したときに、撮像部（１２）にパターン光に対応する第２の撮像画像を取得させる制御部（１４）と、画像ぼけの有無を判定し、画像ぼけの程度を示す画像ぼけ指標値から被写体までの第１の距離を取得する第１の距離計測部（２１）と、三角測量によって被写体までの第２の距離を取得する第２の距離計測部（２２）と、第１の距離計測部（２１）で画像ぼけが有ると判定された画素については第１の距離（Ｚｄ）を出力し、画像ぼけが無いと判定された画素については第２の距離（Ｚｎ又はＺｆ）を出力する計測結果合成部（２３）とを備える。
2017163537.tif 000002
【特許請求の範囲】
【請求項１】
被写体に複数のパターン光を投写する投写部と、
焦点距離を変更する機構を備えた光学系と、
前記光学系を介して前記被写体を撮影する撮像部と、
前記光学系の前記焦点距離を第１の焦点距離に設定させたときに、前記投写部に前記複数のパターン光を順次投写させて前記撮像部に前記複数のパターン光に対応する複数の第１の撮像画像を取得させ、及び、前記光学系の前記焦点距離を前記第１の焦点距離よりも長い第２の焦点距離に設定させたときに、前記投写部に前記複数のパターン光を順次投写させて前記撮像部に前記複数のパターン光に対応する複数の第２の撮像画像を取得させる制御部と、
前記複数の第１の撮像画像及び前記複数の第２の撮像画像から、画素ごとに画像ぼけの有無を判定し、前記画像ぼけの程度を示す画像ぼけ指標値から、画素ごとに前記被写体までの距離である第１の距離を取得する第１の距離計測部と、
前記複数の第１の撮像画像及び前記複数の第２の撮像画像から、三角測量によって画素ごとに前記被写体までの距離である第２の距離を取得する第２の距離計測部と、
前記第１の距離計測部で前記画像ぼけが有ると判定された画素については前記第１の距離を出力し、前記画像ぼけが無いと判定された画素については前記第２の距離を出力する計測結果合成部と
を備えたことを特徴とする距離計測装置。
【請求項２】
前記投写部によって投写される前記複数のパターン光は、
一方向に規則的に交互に配列され、配列方向に互いに同じ幅を持つ第１の明部領域と第１の暗部領域とを有する第１のパターン光と、
前記第１のパターン光の前記第１の明部領域と前記第１の暗部領域とを逆にした第２の暗部領域と第２の明部領域とを有する第２のパターン光と、
を含むことを特徴とする請求項１に記載の距離計測装置。
【請求項３】
前記画像ぼけ指標値は、前記第１のパターン光が投写されたときの前記第１の撮像画像における注目画素の輝度値と前記第２のパターン光が投写されたときの前記第２の撮像画像における前記注目画素の輝度値との差分値を正規化して得られた正規化差分値の最大値と最小値との差であることを特徴とする請求項２に記載の距離計測装置。
【請求項４】
前記第２の距離計測部は、前記第１の焦点距離に設定したときの撮影で取得した近い焦点位置の画像データと前記第２の焦点距離に設定したときの撮影で取得した遠い焦点位置の画像データとを用いて三角測量による距離計測を行い、
前記計測結果合成部は、
前記第１の距離計測部において、前記近い焦点位置の画像データと前記遠い焦点位置の画像データの一方の画像が前記画像ぼけが無い、他方の画像が前記画像ぼけが有ると判定された箇所については、前記画像ぼけが無い画像の第２の距離計測部による距離計測結果を出力し、
前記第１の距離計測部において、前記近い焦点位置の画像データと前記遠い焦点位置の画像データのいずれの画像でも前記画像ぼけが無いと判定された箇所については、前記第２の距離計測部で画像ぼけ量を示す画像ぼけ指標値が大きい方の画像の第２の距離計測部による距離計測結果を出力する
ことを特徴とする請求項１から３のいずれか１項に記載の距離計測装置。
【請求項５】
前記被写体に対する、前記投写部、前記光学系、及び前記撮像部の位置及び前記撮像部による撮影方向を変化させるカメラアーム部をさらに備え、
前記第１の距離計測部、前記第２の距離計測部、及び前記計測結果合成部による１回目の距離計測の実施後に、
前記投写部による前記パターン光の強度と、前記撮像部による撮影位置及び撮影方向とを変えて、前記第１の距離計測部、前記第２の距離計測部、及び前記計測結果合成部による２回目以降の距離計測を実施し、
前記計測結果合成部は、１回目及び２回目以降の距離計測実施の結果を合成して出力する
ことを特徴とする請求項１から４のいずれか１項に記載の距離計測装置。
【請求項６】
前記第１の距離計測部、前記第２の距離計測部、及び前記計測結果合成部による１回目の距離計測の実施においてエラーが発生したエラー発生領域の上側と下側の距離計測結果を比較し、前記エラー発生領域の左側と右側の距離計測結果を比較し、前記カメラアーム部は、前記距離計測結果の比較結果に基づいて、前記投写部、前記光学系、及び前記撮像部を移動させ、前記撮像部による撮影方向を変更することを特徴とする請求項５に記載の距離計測装置。
【請求項７】
前記計測結果合成部は、
前記投写部、前記光学系、及び前記撮像部を移動させる前に計測した被写体距離によって示される点を、出力される計測距離を示す点として、三次元空間上にプロットする処理を行い、
前記投写部、前記光学系、及び前記撮像部を移動させ、及び前記撮像部による撮影方向を変更させて計測した被写体距離のうち、既にプロットされた点と前記撮像部とを結ぶ線上に前記撮像部を移動させる前に計測した被写体距離によって示される点が存在しない場合にはプロットの追加を行い、既にプロットされた点と前記撮像部とを結ぶ線上に前記撮像部を移動させる前に計測した被写体距離によって示される点が存在する場合にはプロットの追加を行わない
ことを特徴とする請求項５又は６に記載の距離計測装置。
【請求項８】
被写体に複数のパターン光を投写する投写部と、焦点距離を変更する機構を備えた光学系と、前記光学系を介して前記被写体を撮影する撮像部とを備えた装置における、距離計測方法であって、
前記光学系の前記焦点距離を第１の焦点距離に設定させたときに、前記投写部に前記複数のパターン光を順次投写させて前記撮像部に前記複数のパターン光に対応する複数の第１の撮像画像を取得させる工程と、
前記光学系の前記焦点距離を前記第１の焦点距離よりも長い第２の焦点距離に設定させたときに、前記投写部に前記複数のパターン光を順次投写させて前記撮像部に前記複数のパターン光に対応する複数の第２の撮像画像を取得させる工程と、
前記複数の第１の撮像画像及び前記複数の第２の撮像画像から、画素ごとに画像ぼけの有無を判定し、前記画像ぼけの程度を示す画像ぼけ指標値から、画素ごとに前記被写体までの距離である第１の距離を取得する工程と、
前記複数の第１の撮像画像及び前記複数の第２の撮像画像から、三角測量によって画素ごとに前記被写体までの距離である第２の距離を取得する工程と、
前記第１の距離を取得する前記工程で前記画像ぼけが有ると判定された画素については前記第１の距離を出力し、前記画像ぼけが無いと判定された画素については前記第２の距離を出力する工程と
を備えたことを特徴とする距離計測方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、被写体までの距離を計測する距離計測装置及び距離計測方法に関する。
【背景技術】
【０００２】
従来、カメラの撮像部によって得られた撮像画像（画像データ）のぼけ量を用いて、被写体（物体）までの距離（被写体距離）を計測する距離計測装置が知られている（例えば、特許文献１参照）。また、投光装置によってパターン光が照射されている被写体（被測定物体）をカメラで撮影して得られた撮像画像（画像データ）に基づいて被測定物体の形状を計測する装置が知られている（例えば、特許文献２参照）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表２０１３−５１２６２６号公報（段落０００９−００３２、図１、図２Ａ、図２Ｂ）
【特許文献２】特開平５−３３２７３７号公報（第３−５頁、図１）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、特許文献１に示される装置は、パターン光を照射する投光装置を備えていないので、エッジなどのような特徴抽出に適した点（特徴点）を持たない被写体までの距離を正確に計測することができないという問題がある。【０００５】
また、特許文献２に示される装置は、パターン光を照射する投光装置を備えているので、特徴点を持たない被写体までの距離を計測することができるが、カメラの焦点を合わせることができない位置（画像ぼけが存在する位置）にある被写体までの距離を正確に計測することができないという問題がある。【０００６】
そこで、本発明は、画像ぼけの有無にかかわらず、被写体までの距離を正確に計測することができる距離計測装置及び距離計測方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明の一態様に係る距離計測装置は、被写体に複数のパターン光を投写する投写部と、焦点距離を変更する機構を備えた光学系と、前記光学系を介して前記被写体を撮影する撮像部と、前記光学系の前記焦点距離を第１の焦点距離に設定させたときに、前記投写部に前記複数のパターン光を順次投写させて前記撮像部に前記複数のパターン光に対応する複数の第１の撮像画像を取得させ、及び、前記光学系の前記焦点距離を前記第１の焦点距離よりも長い第２の焦点距離に設定させたときに、前記投写部に前記複数のパターン光を順次投写させて前記撮像部に前記複数のパターン光に対応する複数の第２の撮像画像を取得させる制御部と、前記複数の第１の撮像画像及び前記複数の第２の撮像画像から、画素ごとに画像ぼけの有無を判定し、前記画像ぼけの程度を示す画像ぼけ指標値から、画素ごとに前記被写体までの距離である第１の距離を取得する第１の距離計測部と、前記複数の第１の撮像画像及び前記複数の第２の撮像画像から、三角測量によって画素ごとに前記被写体までの距離である第２の距離を取得する第２の距離計測部と、前記第１の距離計測部で前記画像ぼけが有ると判定された画素については前記第１の距離を出力し、前記画像ぼけが無いと判定された画素については前記第２の距離を出力する計測結果合成部とを備えたことを特徴としている。【０００８】
本発明の他の態様に係る距離計測方法は、被写体に複数のパターン光を投写する投写部と、焦点距離を変更する機構を備えた光学系と、前記光学系を介して前記被写体を撮影する撮像部とを備えた装置における、距離計測方法であって、前記光学系の前記焦点距離を第１の焦点距離に設定させたときに、前記投写部に前記複数のパターン光を順次投写させて前記撮像部に前記複数のパターン光に対応する複数の第１の撮像画像を取得させる工程と、前記光学系の前記焦点距離を前記第１の焦点距離よりも長い第２の焦点距離に設定させたときに、前記投写部に前記複数のパターン光を順次投写させて前記撮像部に前記複数のパターン光に対応する複数の第２の撮像画像を取得させる工程と、前記複数の第１の撮像画像及び前記複数の第２の撮像画像から、画素ごとに画像ぼけの有無を判定し、前記画像ぼけの程度を示す画像ぼけ指標値から、画素ごとに前記被写体までの距離である第１の距離を取得する工程と、前記複数の第１の撮像画像及び前記複数の第２の撮像画像から、三角測量によって画素ごとに前記被写体までの距離である第２の距離を取得する工程と、前記第１の距離を取得する前記工程で前記画像ぼけが有ると判定された画素については前記第１の距離を出力し、前記画像ぼけが無いと判定された画素については前記第２の距離を出力する工程とを備えたことを特徴としている。
【発明の効果】
【０００９】
本発明によれば、画像ぼけの有無にかかわらず、被写体までの距離を正確に計測することができる。
【図面の簡単な説明】
【００１０】
【図１】本発明の実施の形態１に係る画像処理装置の概略構成を示すブロック図である。
【図２】図１に示される光学系、撮像部、及び投写部の配置を概略的に示す図である。
【図３】（Ａ１）、（Ａ２）、（Ｂ１）、（Ｂ２）、（Ｃ１）、（Ｃ２）、（Ｄ１）、（Ｄ２）、（Ｅ１）、（Ｅ２）、（Ｆ１）、及び（Ｆ２）は、図１に示される投写部によって投写される１２種類のパターン光の例を示す図である。
【図４】（Ａ）及び（Ｂ）は、明部領域のストライプと暗部領域のストライプの配列順が互いに逆順であるパターン光を示す図であり、（Ｃ）及び（Ｄ）は、図４（Ａ）及び（Ｂ）のパターン光が投写された物体を撮像して得られた撮像画像の画素値（画像ぼけが無いとき）を示す図であり、（Ｅ）は、図４（Ｃ）及び（Ｄ）の画素値差分を示す図であり、（Ｆ）及び（Ｇ）は、図４（Ａ）及び（Ｂ）のパターン光が投写された物体を撮像して得られた撮像画像の画素値（画像ぼけが有るとき）を示す図であり、（Ｈ）は、図４（Ｆ）及び（Ｇ）の画素値差分を示す図である。
【図５】図１に示される第１の距離計測部が、光学系の焦点距離を近い位置（第１の位置）に設定したときにおける第１の判定結果と光学系の焦点距離を遠い位置（第２の位置）に設定したときにおける第２の判定結果との組合せに対応して、出力する画像ぼけ有無フラグ及び画像ぼけ指標値フラグを表形式で示す図である。
【図６】（Ａ）及び（Ｂ）は、図１に示される第１の距離計測部が、画像ぼけ指標値から被写体距離を求めるために使用するデータとしてのＬＵＴの例を示す図である。
【図７】パターン光が投写された被写体上の位置を示すための、パターン光を構成するストライプの位置番号（図３（Ａ１）及び（Ａ２）の明部領域のストライプと暗部領域のストライプの位置番号）の算出方法を示す図である。
【図８】パターン光が投写された被写体上の位置とパターン光を構成するストライプの位置番号（図３（Ａ１）及び（Ａ２）の明部領域のストライプと暗部領域のストライプの位置番号）との関係を示す図である。
【図９】図１に示される第２の距離計測部が、投写部、撮像部、及び被写体の位置関係に基づいて行う距離計測方法を示す図である。
【図１０】図１に示される画像データ処理部における被写体距離の計測結果の出力処理を示すフローチャートである。
【図１１】本発明の実施の形態２に係る距離計測装置の概略構成を示すブロック図である。
【図１２】図１１に示される画像データ処理部における被写体距離の計測結果の出力処理を示すフローチャートである。
【図１３】（Ａ）は、エラー発生領域に対する撮影ユニットの移動方向決定時に参照する画素位置を示す図であり、（Ｂ）から（Ｅ）は、エラー発生領域に対する撮影ユニットの移動方向決定時に参照する画素位置を示す図である。
【図１４】図１１に示される光学系、撮像部、及び投写部を含む撮影ユニットの位置の移動を示す図である。
【図１５】実施の形態１及び２に係る距離計測装置の変形例の構成を示すハードウェア構成図である。
【発明を実施するための形態】
【００１１】
《１》実施の形態１
《１−１》構成
図１は、本発明の実施の形態１に係る距離計測装置１の概略構成を示すブロック図である。距離計測装置１は、実施の形態１に係る距離計測方法を実施することができる装置である。図１に示されるように、距離計測装置１は、主要な構成として、被写体（物体）を撮影することで撮像画像（画像データ）を取得する画像データ取得部（カメラ及び投光装置）１０と、画像データ取得部１０で取得された画像データ（例えば、撮像画像における各画素の輝度値）を用いて被写体までの距離（被写体距離）を求め、求められた距離を示す距離データＺｏｕｔ（例えば、画素ごとの距離データ）を出力する画像データ処理部２０とを備えている。画像データ処理部２０は、距離データＺｏｕｔを数値で、又は、距離データを示すマップとして表示するための表示部（液晶表示部）及びユーザー操作のための操作部を備えてもよい。
【００１２】
図１に示されるように、画像データ取得部１０は、レンズ又はレンズ群などの光学部材と焦点距離（焦点位置）を変更する機構とを備えた光学系１１と、光学系１１を介して（例えば、レンズを介して）被写体を撮影する撮像部１２と、撮像空間内に存在する被写体に複数のパターン光を投写（照射）する投光装置である投写部１３とを備えている。また、光学系１１は、絞りを調節する絞り調節機構を有してよい。また、画像データ取得部１０は、画像データ取得部１０の全体（実施の形態１においては、光学系１１、撮像部１２、及び投写部１３）を制御する制御部１４を備えている。
【００１３】
制御部１４は、光学系１１の焦点距離を第１の焦点距離（短い焦点距離、すなわち、撮像部１２に近い焦点位置）ｆ１に設定させ、このときに、投写部１３に複数のパターン光を順次投写させて撮像部１２に複数のパターン光に対応する複数の第１の撮像画像Ｇ１を取得させる。複数のパターン光の一例は、後述する図３（Ａ１）、（Ａ２）、（Ｂ１）、（Ｂ２）、（Ｃ１）、（Ｃ２）、（Ｄ１）、（Ｄ２）、（Ｅ１）、（Ｅ２）、（Ｆ１）、及び（Ｆ２）に示される。複数のパターン光に対応する複数の第１の撮像画像Ｇ１は、Ｇ１Ａ１，Ｇ１Ａ２，Ｇ１Ｂ１，Ｇ１Ｂ２，Ｇ１Ｃ１，Ｇ１Ｃ２，Ｇ１Ｄ１，Ｇ１Ｄ２，Ｇ１Ｅ１，Ｇ１Ｅ２，Ｇ１Ｆ１，Ｇ１Ｆ２とも表記される。
【００１４】
また、制御部１４は、光学系１１の焦点距離を第１の焦点距離ｆ１よりも長い第２の焦点距離（長い焦点距離、すなわち、撮像部１２から遠い焦点位置）ｆ２に設定させ、このときに、投写部１３に複数のパターン光を順次投写させて撮像部１２に複数のパターン光に対応する複数の第２の撮像画像Ｇ２を取得させる。複数のパターン光の一例は、後述する図３（Ａ１）、（Ａ２）、（Ｂ１）、（Ｂ２）、（Ｃ１）、（Ｃ２）、（Ｄ１）、（Ｄ２）、（Ｅ１）、（Ｅ２）、（Ｆ１）、及び（Ｆ２）に示される。複数のパターン光に対応する複数の第２の撮像画像Ｇ２は、Ｇ２Ａ１，Ｇ２Ａ２，Ｇ２Ｂ１，Ｇ２Ｂ２，Ｇ２Ｃ１，Ｇ２Ｃ２，Ｇ２Ｄ１，Ｇ２Ｄ２，Ｇ２Ｅ１，Ｇ２Ｅ２，Ｇ２Ｆ１，Ｇ２Ｆ２とも表記される。
【００１５】
図１に示されるように、画像データ処理部２０は、第１の距離計測部（画像ぼけ判定部）２１と、第２の距離計測部（三角測量部）２２と、計測結果合成部２３と、制御部２４とを備えている。第１の距離計測部２１は、情報を記憶するメモリなどの記憶部２１ａを有してもよい。第２の距離計測部２２は、情報を記憶するメモリなどの記憶部２２ａを有してもよい。記憶部２１ａは、第１の距離計測部２１の外部に備えられてもよい。記憶部２２ａは、第２の距離計測部２２の外部に備えられてもよい。記憶部２１ａと２２ａとは、同じメモリの異なる領域であってもよい。
【００１６】
第１の距離計測部２１は、撮像部１２から受け取った複数の第１の撮像画像Ｇ１及び複数の第２の撮像画像Ｇ２から、画素ごとに画像ぼけの有無を判定し、この判定の結果を示す画像ぼけ有無フラグＱｆを出力する。また、第１の距離計測部２１は、画像ぼけの程度を示す画像ぼけ指標値フラグＱｉを出力する。さらに、第１の距離計測部２１は、画像ぼけ指標値Ｉｆから、画素ごとに被写体までの距離である第１の距離Ｚｄを取得して出力する。
【００１７】
第２の距離計測部２２は、撮像部１２から受け取った複数の第１の撮像画像Ｇ１及び複数の第２の撮像画像Ｇ２から、三角測量によって画素ごとに被写体までの距離である第２の距離Ｚｎ，Ｚｆを取得する。第２の距離Ｚｎは、光学系１１の焦点距離を第１の焦点距離ｆ１（光学系１１に近い焦点位置）に設定したときにおける複数の第１の撮像画像Ｇ１から三角測量によって計算された距離である。第２の距離Ｚｆは、光学系１１の焦点距離を第２の焦点距離ｆ２（光学系１１から遠い焦点位置）に設定したときにおける複数の第２の撮像画像Ｇ２から三角測量によって計算された距離である。
【００１８】
計測結果合成部２３は、第１の距離計測部２１で画像ぼけが有ると判定された画素（Ｑｆ＝１）については出力値Ｚｏｕｔとして第１の距離Ｚｄを出力し、画像ぼけが無いと判定された画素（Ｑｆ＝０）については出力値Ｚｏｕｔとして第２の距離Ｚｆ又はＺｎを出力する。なお、計測結果合成部２３は、第１の距離計測部２１における判定結果がエラーである画素（Ｑｆ＝−１）については、出力値Ｚｏｕｔとしてエラーを示すデータを出力する。
【００１９】
図２は、図１の光学系１１、撮像部１２、及び投写部１３の配置を概略的に示す図である。図２に示されるように、距離計測装置１の画像データ取得部１０は、投写部１３により撮像空間ＪＳ内の被写体ＯＪ１，ＯＪ２に向けて、交互に並ぶ明部領域（投写部１３からの光が照射される領域）のストライプと明部領域よりも暗い暗部領域（投写部１３からの光が照射されない領域）のストライプとから構成される（すなわち、明るいストライプと暗いストライプから構成される）パターン光１３ａを投写し、パターン光１３ａが投写されている被写体ＯＪ１，ＯＪ２を、光学系１１を通して撮像部１２で撮影する。
【００２０】
図３（Ａ１）、（Ａ２）、（Ｂ１）、（Ｂ２）、（Ｃ１）、（Ｃ２）、（Ｄ１）、（Ｄ２）、（Ｅ１）、（Ｅ２）、（Ｆ１）、及び（Ｆ２）は、図１に示される投写部１３によって投写される１２種類のパターン光１３ａの例、すなわち、明部領域（図における網掛け領域）のストライプと暗部領域（図における白い領域）のストライプとが配列方向（図における横方向）に交互に並ぶパターン光の例を示す図である。パターン光１３ａの例は、図示の例に限定されず、パターン光１３ａの種類の数も１２種類に限定されない。
【００２１】
図３（Ａ１）、（Ａ２）は、明部領域のストライプの配列方向の幅が最も狭いパターン光を示す。図３（Ｂ１）、（Ｂ２）のパターン光のストライプの幅は、図３（Ａ１）、（Ａ２）のパターン光のストライプの幅の２倍である。図３（Ｃ１）、（Ｃ２）のパターン光のストライプの幅は、図３（Ｂ１）、（Ｂ２）のパターン光のストライプの幅の２倍である。図３（Ｄ１）、（Ｄ２）のパターン光のストライプの幅は、図３（Ｃ１）、（Ｃ２）のパターン光のストライプの幅の２倍である。図３（Ｅ１）、（Ｅ２）のパターン光のストライプの幅は、図３（Ｄ１）、（Ｄ２）のパターン光のストライプの幅の２倍である。図３（Ｆ１）、（Ｆ２）のパターン光のストライプの幅は、図３（Ｅ１）、（Ｅ２）のパターン光のストライプの幅の２倍である。
【００２２】
図３（Ａ１）のパターン光における明部領域のストライプと暗部領域のストライプとを入れ替える（逆にする）ことによって得られたパターン光が、図３（Ａ２）のパターン光である。図３（Ｂ１）のパターン光における明部領域のストライプと暗部領域のストライプとを入れ替える（逆にする）ことによって得られたパターン光が、図３（Ｂ２）のパターン光である。図３（Ｃ１）のパターン光における明部領域のストライプと暗部領域のストライプとを入れ替える（逆にする）ことによって得られたパターン光が、図３（Ｃ２）のパターン光である。図３（Ｄ１）のパターン光における明部領域のストライプと暗部領域のストライプとを入れ替える（逆にする）ことによって得られたパターン光が、図３（Ｄ２）のパターン光である。図３（Ｅ１）のパターン光における明部領域のストライプと暗部領域のストライプとを入れ替える（逆にする）ことによって得られたパターン光が、図３（Ｅ２）のパターン光である。図３（Ｆ１）のパターン光における明部領域のストライプと暗部領域のストライプとを入れ替える（逆にする）ことによって得られたパターン光が、図３（Ｆ２）のパターン光である。
【００２３】
《１−２》動作
制御部１４は、光学系１１の焦点距離を第１の焦点距離（短い焦点距離、すなわち、撮像部１２に近い焦点位置）ｆ１に設定させ、このときに、投写部１３に複数のパターン光を順次投写させて撮像部１２に複数のパターン光に対応する複数の第１の撮像画像Ｇ１を取得させる。複数のパターン光の一例は、図３（Ａ１）、（Ａ２）、（Ｂ１）、（Ｂ２）、（Ｃ１）、（Ｃ２）、（Ｄ１）、（Ｄ２）、（Ｅ１）、（Ｅ２）、（Ｆ１）、及び（Ｆ２）に示される。
【００２４】
また、制御部１４は、光学系１１の焦点距離を第１の焦点距離ｆ１よりも長い第２の焦点距離（長い焦点距離、すなわち、撮像部１２から遠い焦点位置）ｆ２に設定させ、このときに、投写部１３に複数のパターン光を順次投写させて撮像部１２に複数のパターン光に対応する複数の第２の撮像画像Ｇ２を取得させる。複数のパターン光の一例は、図３（Ａ１）、（Ａ２）、（Ｂ１）、（Ｂ２）、（Ｃ１）、（Ｃ２）、（Ｄ１）、（Ｄ２）、（Ｅ１）、（Ｅ２）、（Ｆ１）、及び（Ｆ２）に示される。
【００２５】
このように、実施の形態１においては、制御部１４は、光学系１１に２種類の焦点距離（焦点位置）ｆ１及びｆ２のいずれかを設定させる制御と、投写部１３に複数種類のパターン光を順次投写させる制御と、パターン光の種類の切り替えと同期して撮像部１２のシャッターの動作の制御（すなわち、撮影タイミングの制御）とを行うことで、画像データ取得部１０に、複数のパターン光の各々について、パターン光投写時の画像を撮影させる。実施の形態１に係る距離計測装置１は、１２種類のパターン画像を２種類の焦点位置で撮影するため、合計２４枚の撮像画像から画素ごとに被写体距離を求める。
【００２６】
図４（Ａ）及び（Ｂ）は、明部領域のストライプと暗部領域のストライプの配列順が互いに逆順であるパターン光を示す図である。図４（Ｃ）及び（Ｄ）は、図４（Ａ）及び（Ｂ）のパターン光が投写された物体を撮像して得られた撮像画像の画素値（画像ぼけが無いとき）を示す図であり、図４（Ｅ）は、図４（Ｃ）及び（Ｄ）の画素値差分Ｄｆを示す図である。図４（Ｆ）及び（Ｇ）は、図４（Ａ）及び（Ｂ）のパターン光が投写された物体を撮像して得られた撮像画像の画素値（画像ぼけが有るとき）を示す図であり、図４（Ｈ）は、図４（Ｆ）及び（Ｇ）の画素値差分Ｄｆを示す図である。
【００２７】
第１の距離計測部２１は、互いに明部領域と暗部領域とが逆である１対のパターン光に対する撮像画像の差分である画素値差分Ｄｆに基づいて、撮像画像に画像ぼけが有るか無いかを、注目画素を含む局所領域毎に判定する。この判定に使用されるパターン光は、例えば、１本のストライプの幅が最も狭いもの、すなわち、図３（Ａ１）、（Ａ２）から（Ｆ１）、（Ｆ２）のパターンを用いる場合には、図３（Ａ１）と図３（Ａ２）のパターン光である。また、第１の距離計測部２１は、２種類の焦点位置ｆ１，ｆ２で撮影した画像のそれぞれに対して、処理を行う。
【００２８】
パターン光が投写された被写体上の明るさ（パターンの明るさ）は、被写体の反射率によって異なるため、画素毎に画素値で正規化した画像ぼけ指標値を求める。すなわち、ある（任意の）画素位置Ｒの画素値をＰ（Ａ１）、Ｐ（Ａ２）とする。Ｐ（Ａ１）は、パターン光Ａ１（図３（Ａ１）に示される）を投写したときの、画素位置Ｒの画素値を示し、Ｐ（Ａ２）は、パターン光Ａ２（図３（Ａ２）に示される）を投写したときの、同じ画素位置Ｒの画素値を示し、Ｄｆは、同じ画素位置Ｒにおける正規化された画素値差分Ｄｆを示す。画素位置Ｒにおける画素値差分Ｄｆは、式（１）で表わされ、画素位置Ｒにおける画素平均値Ｓｆは式（２）で表される。
Ｄｆ＝｛Ｐ（Ａ１）−Ｐ（Ａ２）｝／｛（Ｐ（Ａ１）＋Ｐ（Ａ２））／２｝
（１）
Ｓｆ＝（Ｐ（Ａ１）＋Ｐ（Ａ２））／２                        （２）
【００２９】
ある注目画素の画像ぼけ指標値Ｉｆを求める場合には、注目画素近傍（例えば、注目画素を中心として、縦５画素で横５画素の矩形に含まれる範囲）の正規化された画素値差分Ｄｆの最大値Ｄｆｍａｘと最小値Ｄｆｍｉｎの差分（Ｄｆｍａｘ−Ｄｆｍｉｎ）を、画像ぼけ指標値Ｉｆとする。すなわち、画像ぼけ指標値Ｉｆは次式（３）で表される。
Ｉｆ＝Ｄｆｍａｘ−Ｄｆｍｉｎ                              （３）
【００３０】
また、注目画素の画素平均値Ｓｆの注目画素近傍における平均値を、Ｓｆ＿ａｖｇとする。
【００３１】
第１の距離計測部２１は、注目画素近傍の画素平均値Ｓｆ＿ａｖｇが予め定められた画素平均値閾値Ｔａより小さい場合（Ｓｆ＿ａｖｇ＜Ｔａ）（すなわち、パターン光の明部領域のストライプの領域が十分に明るくない場合）には、注目画素位置における画像の輝度が不十分であるとみなし、エラーと判定して処理を打ち切る。
【００３２】
図４（Ｃ）、（Ｄ）、（Ｅ）に示される画像の画像ぼけが無い場合には、図４（Ｆ）、（Ｇ）、（Ｈ）に示される画像の画像ぼけがある場合と比較して、２枚の画像の画素値差分Ｄｆがより大きく変動するため、画像ぼけ指標値Ｉｆが大きくなる。すなわち、画像ぼけ指標値Ｉｆが大きいほど画像ぼけが小さく、画像ぼけ指標値Ｉｆが小さいほど画像ぼけが大きい。
【００３３】
したがって、第１の距離計測部２１は、注目画素近傍の画素平均値Ｓｆ＿ａｖｇが画素平均値閾値Ｔａ以上である場合（Ｓｆ＿ａｖｇ≧Ｔａ）に、画像ぼけ指標値Ｉｆが予め定められた画像ぼけ判定閾値Ｔｆより大きければ（Ｉｆ＞Ｔｆ）、注目画素位置について画像ぼけ無しと判定し、画像ぼけ判定閾値Ｔｆ以下の場合には（Ｉｆ≦Ｔｆ）、画像ぼけ有りと判定する。
【００３４】
第１の距離計測部２１は、画像ぼけ指標値Ｉｆを求める際には、元画像のノイズ等により正規化された画素値差分Ｄｆの誤差（ノイズ成分）が大きい可能性があるため、画素値差分Ｄｆの最大値と最小値から画像ぼけ指標値Ｉｆを算出せずに、ｎ番目に大きい画素値とｎ番目に小さい画素値の差分から画像ぼけ指標値Ｉｆを求める方法（ｎ＝２、３、４…）を採用してもよい。
【００３５】
図５は、第１の距離計測部２１が、光学系１１の焦点距離を近い位置である第１の焦点位置（短い第１の焦点距離ｆ１）に設定したときにおける判定結果と光学系１１の焦点距離を遠い位置である第２の焦点位置（第１の焦点距離ｆ１よりも長い第２の焦点距離ｆ２）に設定したときにおける判定結果との組合せに応じて出力する情報（画像ぼけ有無フラグＱｆ及び画像ぼけ指標値フラグＱｉ）を表形式で示す図である。
【００３６】
第１の距離計測部２１は、被写体にパターン光を投写して画像ぼけの有無を調べる画像ぼけ有無の判定処理を、焦点距離を光学系１１に近い第１の焦点位置（第１の焦点距離ｆ１）に設定したとき（第１の設定）の画像と焦点距離を光学系１１から遠い第２の焦点位置（第２の焦点距離ｆ２）に設定したとき（第２の設定）の画像とに対して行い、第１の設定時の判定と第２の設定時の判定とを行う。第１の距離計測部２１は、２種類の焦点位置での判定結果の組合せにより、画像の組合せに対する最終的な判定を決定する。
【００３７】
第１の距離計測部２１は、２種類の焦点位置での判定結果の組合せにより、画像ぼけ有無フラグＱｆ、画像ぼけ指標値フラグＱｉ、画像ぼけ量に基づいた被写体距離Ｚｄを出力する。Ｑｆ＝１は「画像ぼけ有り」を示す。Ｑｆ＝０は「画像ぼけ無し」を示す。Ｑｆ＝−１は「エラー」を示す。図５には、２種類の判定結果の組合せに対する画像ぼけ有無フラグＱｆ及び画像ぼけ指標値フラグＱｉの出力値を示している。図５において「Ｑｉ＝＊」と記載されている項目については、画像ぼけ指標値Ｉｆ（Ｉｆｎ、Ｉｆｆ）の大小関係によって値を決定する。
【００３８】
図５において、「Ｑｉ＝＊」と記載されている項目では、２種類の焦点位置のうち、焦点位置が近い方（第１の焦点距離ｆ１）の画像の画像ぼけ指標値ＩｆをＩｆｎ、焦点距離が遠い方（第２の焦点距離ｆ２）の画像の画像ぼけ指標値ＩｆをＩｆｆとすると、Ｉｆｎ＞Ｉｆｆの場合（焦点距離が近い方の画像の画像ぼけが小さい場合）には、Ｑｉ＝１を設定し、Ｉｆｎ≦Ｉｆｆの場合（焦点距離が遠い方の画像の画像ぼけが小さい場合）には、Ｑｉ＝０を設定する。
【００３９】
また、Ｑｆ＝１（画像ぼけ有り）の場合には、被写体距離Ｚｄには、後述する画像ぼけ量に基づく距離計測結果の値を設定する。Ｑｆ≠１の場合（すなわち、Ｑｆ＝０の場合又はＱｆ＝−１の場合）には、Ｚｄ＝０を設定する。
【００４０】
２種類の焦点位置での判定結果の組合せにより画像ぼけ有りと判定された場合、すなわち、Ｑｆ＝１（画像ぼけ有り）が設定された場合には、引き続き各画素の距離計測を行う。
【００４１】
図６（Ａ）及び（Ｂ）は、図１に示される第１の距離計測部２１が、画像ぼけ指標値Ｉｆから被写体距離を求めるために使用するデータとしてのルックアップテーブル（ＬＵＴ）の例を示す図である。ＬＵＴは、例えば、第１の距離計測部２１の記憶部２１ａに予め記憶されている。
【００４２】
Ｉｆｎ＞Ｉｆｆの場合（焦点距離が近い方の画像の画像ぼけが小さい場合）、すなわち、焦点距離が近い方の画像の画像ぼけ指標値Ｉｆｎが、焦点距離が遠い方の画像の画像ぼけ指標値Ｉｆｆよりも大きい場合には、第１の距離計測部２１は、被写体は、焦点距離が近い側に存在するものとみなして距離計測を行う。被写体が近い側に存在するとき用のＬＵＴ（図６（Ａ））を参照し、画像ぼけ指標値Ｉｆｎの値から被写体距離を求める。
【００４３】
Ｉｆｎ≦Ｉｆｆの場合（焦点距離が遠い方の画像の画像ぼけが小さい場合）、すなわち、焦点距離が近い方の画像の画像ぼけ指標値Ｉｆｎが、焦点距離が遠い方の画像の画像ぼけ指標値Ｉｆｆ以下の場合には、第１の距離計測部２１は、被写体は、焦点距離が遠い側に存在するものとみなして距離計測を行う。被写体が遠い側に存在するとき用のＬＵＴ（図６（Ｂ））を参照し、画像ぼけ指標値Ｉｆｆの値から被写体距離を求める。
【００４４】
第１の距離計測部２１は、ＬＵＴを用いて求めた距離を、距離Ｚｄとして出力する。
【００４５】
図７は、パターン光が投写された被写体上の位置を示すための、パターン光を構成するストライプの位置番号（図３（Ａ１）及び（Ａ２）の明部領域のストライプと暗部領域のストライプの位置番号）Ｓの算出方法を示す図である。図８は、パターン光が投写された被写体上の位置とパターン光を構成するストライプの位置番号（図３（Ａ１）及び（Ａ２）の明部領域のストライプと暗部領域のストライプの位置番号）Ｓとの関係を示す図である。
【００４６】
第２の距離計測部（三角測量部）２２は、明部領域と暗部領域とが互いに逆である１対のパターン光に対する撮像画像の差分に基づいて、撮像画像上に投写されているパターンの位置を特定し、三角測量の原理で被写体までの距離を計測する。
【００４７】
図３（Ａ１），（Ａ１）から（Ｆ１），（Ｆ２）までのパターン光が投写されたときの撮像画像における、ある注目画素の画素値をＰ（Ａ１）、Ｐ（Ａ２）、Ｐ（Ｂ１）、Ｐ（Ｂ２）、Ｐ（Ｃ１）、Ｐ（Ｃ２）、Ｐ（Ｄ１）、Ｐ（Ｄ２）、Ｐ（Ｅ１）、Ｐ（Ｅ２）、Ｐ（Ｆ１）、Ｐ（Ｆ２）とする。
【００４８】
第２の距離計測部２２は、画素値Ｐ（Ａ１）とＰ（Ａ２）の関係に基づき、パターン位置番号Ｓのｂｉｔ０の値を決める。第２の距離計測部２２は、パターン位置番号をＳ（６ビット値）とし、予め決められた閾値Ｔｓを用いて、Ｐ（Ａ１）＋Ｔｓ＜Ｐ（Ａ２）であれば、パターン位置番号Ｓのｂｉｔ０に１を割り当て、Ｐ（Ａ１）＞Ｐ（Ａ２）＋Ｔｓであれば、パターン位置番号Ｓのｂｉｔ０に０を割り当てる。なお、第２の距離計測部２２は、｜Ｐ（Ａ１）−Ｐ（Ａ２）｜≦Ｔｓであれば、エラーとしてパターン位置番号Ｓにエラーを示す値を設定する。エラーの場合には、処理を打ち切ることができる。
【００４９】
同様に、第２の距離計測部２２は、Ｐ（Ｂ１）とＰ（Ｂ２）の関係に基づき、パターン位置番号Ｓのｂｉｔ１の値を決める。第２の距離計測部２２は、Ｐ（Ｂ１）＋Ｔｓ＜Ｐ（Ｂ２）であれば、パターン位置番号Ｓのｂｉｔ１に１を割り当て、Ｐ（Ｂ１）＞Ｐ（Ｂ２）＋Ｔｓであれば、パターン位置番号Ｓのｂｉｔ１に０を割り当てる。なお、第２の距離計測部２２は、｜Ｐ（Ｂ１）−Ｐ（Ｂ２）｜≦Ｔｓであれば、エラーとしてパターン位置番号Ｓにエラーを示す値を設定する。エラーの場合には、処理を打ち切ることができる。
【００５０】
同様に、第２の距離計測部２２は、Ｐ（Ｃ１）とＰ（Ｃ２）の関係に基づき、パターン位置番号Ｓのｂｉｔ２の値を決める。第２の距離計測部２２は、Ｐ（Ｃ１）＋Ｔｓ＜Ｐ（Ｃ２）であれば、パターン位置番号Ｓのｂｉｔ２に１を割り当て、Ｐ（Ｃ１）＞Ｐ（Ｃ２）＋Ｔｓであれば、パターン位置番号Ｓのｂｉｔ２に０を割り当てる。なお、第２の距離計測部２２は、｜Ｐ（Ｃ１）−Ｐ（Ｃ２）｜≦Ｔｓであれば、エラーとしてパターン位置番号Ｓにエラーを示す値を設定する。エラーの場合には、処理を打ち切ることができる。
【００５１】
同様に、第２の距離計測部２２は、Ｐ（Ｄ１）とＰ（Ｄ２）の関係に基づき、パターン位置番号Ｓのｂｉｔ３の値を決める。第２の距離計測部２２は、Ｐ（Ｄ１）＋Ｔｓ＜Ｐ（Ｄ２）であれば、パターン位置番号Ｓのｂｉｔ３に１を割り当て、Ｐ（Ｄ１）＞Ｐ（Ｄ２）＋Ｔｓであれば、パターン位置番号Ｓのｂｉｔ３に０を割り当てる。なお、第２の距離計測部２２は、｜Ｐ（Ｄ１）−Ｐ（Ｄ２）｜≦Ｔｓであれば、エラーとしてパターン位置番号Ｓにエラーを示す値を設定する。エラーの場合には、処理を打ち切ることができる。
【００５２】
同様に、第２の距離計測部２２は、Ｐ（Ｅ１）とＰ（Ｅ２）の関係に基づき、パターン位置番号Ｓのｂｉｔ４の値を決める。第２の距離計測部２２は、Ｐ（Ｅ１）＋Ｔｓ＜Ｐ（Ｅ２）であれば、パターン位置番号Ｓのｂｉｔ４に１を割り当て、Ｐ（Ｅ１）＞Ｐ（Ｅ２）＋Ｔｓであれば、パターン位置番号Ｓのｂｉｔ４に０を割り当てる。なお、第２の距離計測部２２は、｜Ｐ（Ｅ１）−Ｐ（Ｅ２）｜≦Ｔｓであれば、エラーとしてパターン位置番号Ｓにエラーを示す値を設定する。エラーの場合には、処理を打ち切ることができる。
【００５３】
同様に、第２の距離計測部２２は、Ｐ（Ｆ１）とＰ（Ｆ２）の関係に基づき、パターン位置番号Ｓのｂｉｔ５の値を決める。第２の距離計測部２２は、Ｐ（Ｆ１）＋Ｔｓ＜Ｐ（Ｆ２）であれば、パターン位置番号Ｓのｂｉｔ５に１を割り当て、Ｐ（Ｆ１）＞Ｐ（Ｆ２）＋Ｔｓであれば、パターン位置番号Ｓのｂｉｔ５に０を割り当てる。なお、第２の距離計測部２２は、｜Ｐ（Ｆ１）−Ｐ（Ｆ２）｜≦Ｔｓであれば、エラーとしてパターン位置番号Ｓにエラーを示す値を設定する。エラーの場合には、処理を打ち切ることができる。
【００５４】
以上の処理により、パターン位置番号Ｓには、パターン上の位置に対応したユニークな値が設定される。
【００５５】
図９は、図１に示される第２の距離計測部２２が、投写部１３、撮像部１２、及び被写体の位置関係に基づいて行う距離計測方法を示す図である。図９において、角度θは、先に求めたパターン位置番号Ｓに基づき算出可能である。具体的には、パターン位置番号Ｓと角度θを対応付けるためのデータである第１のルックアップテーブル（ＬＵＴ）を記憶部２２ａに予め用意しておき、第１のＬＵＴを参照することで角度θを求めることができる。また、図９において、角度φは、撮像部１２の撮影によって取得された撮像画像上の位置に基づき算出可能である。画像上の被写体の水平方向座標と角度φを対応付けるための第２のルックアップテーブル（ＬＵＴ）を記憶部２２ａに予め用意しておき、参照することで角度φを求める。角度θと角度φ、及び基線長Ｌの値から被写体までの距離ｚを、次式（４）で算出する。
ｚ＝Ｌ／（ｔａｎθ＋ｔａｎφ）                            （４）
なお、上記の処理では、２種類の焦点位置ｆ１，ｆ２の画像について実施し、それぞれに対応する距離を求める。２種類の焦点位置ｆ１，ｆ２のうち、焦点位置が光学系１１に近い方（第１の焦点距離ｆ１）の画像を用いて算出した距離ｚをＺｎと表記し、焦点位置が光学系１１から遠い方（第２の焦点距離ｆ２）の画像を用いて算出した距離ｚをＺｆと表記する。
【００５６】
図１０は、画像データ処理部２０の計測結果合成部２３によって行われる処理を示すフローチャートである。計測結果合成部２３は、第１の距離計測部２１から出力された画像ぼけ有無フラグＱｆ、画像ぼけ指標値フラグＱｉ、及び画像ぼけ量に基づいて得られた被写体距離Ｚｄと、第２の距離計測部２２で算出された２種類の距離情報が示す被写体距離Ｚｎ及びＺｆとに基づいて、画素毎の出力信号（被写体距離を示す信号又はエラーを示す信号）Ｚｏｕｔを決定する。
【００５７】
まず、計測結果合成部２３は、第１の距離計測部２１から得られた画像ぼけ有無フラグＱｆが判定エラーを示す−１である（Ｑｆ＝−１）か否かを判断し（ステップＳＴ１）、Ｑｆ＝−１（ステップＳＴ１においてＹＥＳ）の場合には、出力信号Ｚｏｕｔとして計測エラーを示す−１を出力する（Ｚｏｕｔ＝−１）（ステップＳＴ２）。
【００５８】
ステップＳＴ１における判断がＮＯ（Ｑｆ≠−１）である場合、計測結果合成部２３は、第１の距離計測部２１から得られた画像ぼけ有無フラグＱｆが画像ぼけ有りを示す１である（Ｑｆ＝１）か否かを判断する（ステップＳＴ３）。Ｑｆ＝−１（ステップＳＴ３においてＹＥＳ）の場合には、計測結果合成部２３は、出力信号Ｚｏｕｔとして画像ぼけ量に基づいて得られた距離Ｚｄを出力する（Ｚｏｕｔ＝Ｚｄ）（ステップＳＴ４）。
【００５９】
ステップＳＴ３において判断がＮＯ（Ｑｆ≠１、画像ぼけ無し）である場合、計測結果合成部２３は、第１の距離計測部２１から得られた画像ぼけ指標値フラグＱｉが１である（Ｑｉ＝１）（Ｉｆｎ＞Ｉｆｆの場合、すなわち、焦点距離が近い方の画像の画像ぼけが小さい場合）か否かを判断する（ステップＳＴ５）。Ｑｉ＝１（ステップＳＴ５においてＹＥＳ）の場合には、計測結果合成部２３は、出力信号Ｚｏｕｔとして第２の距離計測部２２によって焦点距離が近い方の画像を用いて算出された距離Ｚｎを出力する（Ｚｏｕｔ＝Ｚｎ）（ステップＳＴ６）。ステップＳＴ６において、距離Ｚｎの算出結果がエラーであった場合には、Ｚｏｕｔとして−１（Ｚｏｕｔ＝Ｚｎ＝−１）を出力する。
【００６０】
ステップＳＴ５において判断がＮＯ（Ｑｉ≠１）である場合（Ｉｆｎ≦Ｉｆｆの場合、すなわち、焦点距離が遠い方の画像の画像ぼけが小さい場合）、計測結果合成部２３は、出力信号Ｚｏｕｔとして第２の距離計測部２２によって焦点距離が遠い方の画像を用いて算出された距離Ｚｆを出力する（Ｚｏｕｔ＝Ｚｆ）（ステップＳＴ７）。ステップＳＴ７において、距離Ｚｆの算出結果がエラーであった場合には、Ｚｏｕｔとして−１（Ｚｏｕｔ＝Ｚｆ＝−１）を出力する。
【００６１】
上記の処理を撮像画像上の各点を注目画素として順次行うことにより、撮像画像全体の被写体距離の分布データ（すなわち、撮像画像全体の被写体距離を示すマップ）を得ることができる。
【００６２】
《１−３》効果
三角測量による距離計測による従来の距離計測では、撮像画像内の画像ぼけが有る領域について、正確な距離情報を得ることができなかった。これに対し、実施の形態１に係る距離計測装置１及び距離計測方法によれば、画像ぼけが有る領域についての被写体距離Ｚｏｕｔとして、画像ぼけ量に基づいて求められた距離Ｚｄを出力し、画像ぼけが無い領域についての被写体距離Ｚｏｕｔとして、三角測量による距離計測によって算出された距離Ｚｎ又は距離Ｚｆを出力する。このため、実施の形態１に係る距離計測装置１及び距離計測方法によれば、画像ぼけの有無にかかわらず、被写体までの距離を正確に計測することができる。
【００６３】
《２》実施の形態２
《２−１》構成
実施の形態１では、投写部１３及び撮像部１２を１つの位置に固定し、画像ぼけ量を用いた距離計測と三角測量による距離計測とを組み合わせて、距離データＺｏｕｔを出力する装置及び方法について説明した。しかし、被写体の形状が複雑である場合（例えば、凹部を含む場合）には、１つの位置に固定された投写部１３によるパターン光の投写では、被写体上にパターン光が当たらない死角となる領域ができることがある。被写体上のパターン光が当たらない領域では、実施の形態１に係る距離計測装置１及び方法を用いても、被写体距離を正確に計測することができない場合がある。そこで、実施の形態２においては、投写部１３、光学系１１、及び撮像部１２を含む撮影ユニット１０ｂを移動させ、及び、撮像部１２の撮影方向を変更し（撮影ユニット１０ｂを回転させ）、複数の位置から複数の撮影角度で撮影を行うことで、パターン光が当たらない領域（距離計測不可能な領域）を減らして（望ましくは、なくして）いる。
【００６４】
図１１は、本発明の実施の形態２に係る距離計測装置２の概略構成を示すブロック図である。距離計測装置２は、実施の形態２に係る距離計測方法を実施することができる装置である。図１１において、図１に示される構成要素と同一又は対応する構成要素には、図１における符号と同じ符号が付される。図１１に示されるように、距離計測装置２は、光学系１１、撮像部１２、投写部１３、制御部１４、画像データ処理部２０に加えて、移動回転機構としてのカメラアーム部１５を有する。光学系１１、撮像部１２、及び投写部１３は、同じ支持部材に取り付けられて撮影ユニット（カメラ）１０ｂを構成する。
【００６５】
カメラアーム部１５は、固定された基準位置から伸びたアームであり、先端に実施の形態２における撮影ユニット１０ｂが取り付けられている。カメラアーム部１５は、制御部１４によって制御され、撮影ユニット１０ｂの被写体に対する位置を変化させるために用いられる。カメラアーム部１５は、ユーザーにより位置及び角度を変更可能な機構、又は、モータなどの駆動力発生機構とギヤなどの駆動力伝達機構とによって位置及び角度を変更可能な機構のいずれであってもよい。
【００６６】
《２−２》動作
実施の形態２に係る距離計測装置２は、まず画像ぼけ量による距離計測と三角測量による距離計測の組合せによる距離計測（１回目の距離計測）を実施したのち、カメラアーム部１５を制御して、撮影ユニット１０ｂの位置を移動させ、２回目以降の距離計測を行う。
【００６７】
画像ぼけ量による距離計測と三角測量による距離計測の組合せによる１回目の距離計測は、精度の粗い距離計測であってもよいが（２回目以降の距離計測で精度を向上させることができるから）、実施の形態１における距離計測と同じ処理を採用することができる。
【００６８】
先ず、１回目の距離計測の結果に基づき、撮影ユニット１０ｂを移動させる位置を決定する方法について説明する。
【００６９】
１回目の距離計測の結果において、ある箇所（画素位置）Ｒ０での距離計測結果がエラーとなるケースは、この箇所Ｒ０における反射光が弱く、十分な輝度の撮像画像が得られていないケース（ケースＡ）、及び、明部領域と暗部領域とが互いに逆である１対のパターン光の画像に対して、該当箇所Ｒ０の撮影結果で輝度値の差が十分に大きくならないケース（ケースＢ）の２通りが考えられる。ケースＡは、該当箇所Ｒ０が投写光の死角となっているケース（ケースＡ１）と、被写体の反射率が低い、もしくは、金属光沢をもつ物質で拡散反射が起こりにくく、投写光は、到達しているものの撮像部１２に向かう反射光の成分が弱いケース（ケースＡ２）とに分類される。
【００７０】
図１２は、図１１に示される画像データ処理部２０の計測結果合成部２３における被写体距離の計測結果の出力処理を示すフローチャートである。図１２において、図１０における処理ステップと同じ処理ステップには、図１０におけるステップ番号と同じステップ番号を付す。ケースＡ（Ａ１、Ａ２）とケースＢは、１回目の距離計測時にエラーの発生箇所によって判別することができる。図１２の処理は、図１０における処理とほぼ同じであるが、エラー時にＺｏｕｔに設定する値を変える（図１０の場合と異なる値にする）ことで、エラーの発生原因が判別できるようにしている。すなわち、Ｚｏｕｔ＝−１の場合（ステップＳ２２）は、ケースＡのエラーが発生していることを示す。また、Ｚｏｕｔ＝−２の場合（ステップＳ２６、Ｓ２７）は、ケースＢのエラーが発生していることを示す。
【００７１】
ケースＡのエラー発生箇所は、撮像画像の輝度が暗い可能性があるため、より撮像画像を明るくするための露光制御を行い、画像を撮影する。撮像画像を明るくする制御方法として、（方法１）露光時間（撮像部１２においてシャッターを開けている時間）を伸ばす、（方法２）光学系１１における絞りの開度を上げる、（方法３）撮像部１２における撮像素子のセンサゲインを上げるという方法がある。画像データ処理部２０の制御部（図示せず）は、システムの制約に基づき設定可能な範囲で、例えば、（方法１）、（方法２）、（方法３）の順に優先して制御を行う。（方法１）を最優先する理由は、撮影中に被写体が動くことがない前提では、露光時間を伸ばすことで撮像画像に対するデメリットが無いのに対し、絞りの開度を大きくすると撮像部１２の被写界深度が浅くなり撮像画像がぼけやすくなるためである。また、（方法３）の優先順位が低い理由は、センサゲインを上げた場合には、撮像部１２による撮像画像のノイズが増加し、撮像画像間の輝度の大小関係が正しく判定できない可能性が高くなるからである。
【００７２】
１回目の距離計測の結果においてＺｏｕｔ＝−１となっており、撮像画像を明るくして撮影した結果エラーが解消した箇所では、距離計測結果を新たな結果に置き換える。上記の作業を行った結果、未だＺｏｕｔ＝−１の箇所が残っている場合には、システムの制約の範囲で撮像画像をさらに明るくし、撮影、距離計測を繰り返す。
【００７３】
次に、１回目の距離計測の結果においてＺｏｕｔ＝−２となった箇所の距離計測を行うため、撮像画像を暗くして撮影を行う。撮像画像を暗くする制御方法として、（方法４）露光時間（撮像部１２においてシャッターを開けている時間）を縮める、（方法５）光学系１１における絞りの開度を下げる、（方法６）撮像部１２における撮像素子のセンサゲインを下げるという方法がある。画像データ処理部２０の制御部（図示せず）は、システムの制約に基づき可能な範囲で（方法６）、（方法５）、（方法４）の順に制御を行う。（方法６）及び（方法５）を優先する理由は、（方法４）については、画質への影響が無いのに対し、（方法６）及び（方法５）は、画質の向上につながる可能性が高いためである。撮像画像を暗くした結果エラーが解消した箇所では、距離計測結果を新たな距離計測結果に置き換える。上記の作業を行った結果、まだＺｏｕｔ＝−２の箇所が残っている場合には、システムの制約の範囲で撮像画像をさらに暗くし、撮影、距離計測を繰り返す。
【００７４】
画像の明るさを変えて撮影した結果でもエラーが解消しない箇所は、パターン光が到達しない箇所（死角）となっている可能性があるため、撮影ユニット１０ｂの位置を動かして２回目以降の距離計測を行う。その際、撮影ユニット１０ｂの移動方向を決定するため、エラー発生領域の上側と下側の距離計測結果を比較、エラー発生領域の左側と右側の距離計測結果を比較する。まず、上下方向及び左右方向に連続するエラー発生位置のグループをエラー発生領域として抽出する。
【００７５】
図１３（Ａ）は、エラー発生領域に対する撮影ユニット１０ｂの移動方向決定時に参照する画素位置を示す図であり、図１３（Ｂ）から（Ｅ）は、図１３（Ａ）に示されるエラー発生領域に対する撮影ユニット１０ｂの移動方向の決定時に参照する画素位置を示す図である。
【００７６】
図１３（Ｂ）に示されるように、エラー発生領域に対し左側の画素を参照する場合には、すぐ右側がエラー発生領域であるという条件に当てはまる画素位置（太線箇所の画素）を抽出し、各画素位置における距離計測結果の平均値を求める。
【００７７】
同様に、図１３（Ｃ）に示されるように、エラー発生領域に対し右側の画素を参照する場合には、すぐ左側がエラー発生領域であるという条件に当てはまる画素位置（太線箇所の画素）を抽出し、各画素位置における距離計測結果の平均値を求める。
【００７８】
同様に、図１３（Ｄ）に示されるように、エラー発生領域に対し上側の画素を参照する場合には、すぐ下側がエラー発生領域であるという条件に当てはまる画素位置（太線箇所の画素）を抽出し、各画素位置における距離計測結果の平均値を求める。
【００７９】
同様に、図１３（Ｅ）に示されるように、エラー発生領域に対し下側の画素を参照する場合には、すぐ上側がエラー発生領域であるという条件に当てはまる画素位置（太線箇所の画素）を抽出し、各画素位置における距離計測結果の平均値を求める。
【００８０】
図１３（Ｂ）に示されるエラー発生領域に対し左側の画素を参照する場合の距離計測結果の平均値をＺｏｕｔ＿ｌとし、図１３（Ｃ）に示されるエラー発生領域に対し右側の画素を参照する場合の距離計測結果の平均値をＺｏｕｔ＿ｒとし、図１３（Ｄ）に示されるエラー発生領域に対し上側の画素を参照する場合の距離計測結果の平均値をＺｏｕｔ＿ｕとし、図１３（Ｃ）に示されるエラー発生領域に対し下側の画素を参照する場合の距離計測結果の平均値をＺｏｕｔ＿ｄとすると、これらの値の大小関係によって撮影ユニット１０ｂの移動距離及び回転角度を求めることができる。制御部１４は、予め定められた距離差分閾値Ｔｚ、撮影ユニット１０ｂの移動距離及び回転角度をＭとして、下記の通り撮影ユニット１０ｂの位置及び撮像部１２の撮影方向を変更する（撮影ユニット１０ｂを回転させる）。
【００８１】
例えば、Ｚｏｕｔ＿ｕ＞Ｚｏｕｔ＿ｄ＋Ｔｚのときには、撮影ユニット１０ｂを上方向に移動させ、撮影ユニット１０ｂの撮像部１２の撮影方向をＭ度（例えば、移動距離に応じた角度）下向きに変更する（撮影ユニット１０ｂを回転させる）。
また、Ｚｏｕｔ＿ｕ＋Ｔｚ＜Ｚｏｕｔ＿ｄのときには、撮影ユニット１０ｂを下方向に移動させ、撮影ユニット１０ｂの撮像部１２の撮影方向をＭ度上向きに変更する（撮影ユニット１０ｂを回転させる）。
また、｜Ｚｏｕｔ＿ｕ−Ｚｏｕｔ＿ｄ｜≦Ｔｚのときには、撮影ユニット１０ｂの上下方向の移動を行わず、撮影ユニット１０ｂの撮像部１２の撮影方向も変更しない。
【００８２】
例えば、Ｚｏｕｔ＿ｒ＞Ｚｏｕｔ＿ｌ＋Ｔｚのときには、撮影ユニット１０ｂを右方向に移動させ、撮影ユニット１０ｂの撮像部１２の撮影方向をＭ度左向きに変更する（撮影ユニット１０ｂを回転させる）。
また、Ｚｏｕｔ＿ｒ＋Ｔｚ＜Ｚｏｕｔ＿ｌのときには、撮影ユニット１０ｂを左方向に移動させ、撮影ユニット１０ｂの撮像部１２の撮影方向をＭ度右向きに変更する（撮影ユニット１０ｂを回転させる）。
また、｜Ｚｏｕｔ＿ｒ−Ｚｏｕｔ＿ｌ｜≦Ｔｚのときには、撮影ユニット１０ｂの左右方向の移動を行わず、撮影ユニット１０ｂの撮像部１２の撮影方向も変更しない（撮影ユニット１０ｂは回転しない）。
【００８３】
図１４は、図１１に示される光学系１１、撮像部１２、及び投写部１３を含む撮影ユニット１０ｂの位置の移動及び回転を示す図である。撮影ユニット１０ｂは、元の撮影ユニット１０ｂの位置を基準として、上下方向又は左右方向に移動（並進）させる。その際、画角の中心は、撮影ユニット１０ｂの移動前と一致するように移動させる。移動の結果、撮影ユニット１０ｂの撮像部１２の撮影方向の変化（撮影ユニット１０ｂは回転）がＭ度となる位置を撮影ユニット１０ｂの移動先とする。判定の結果、上下方向及び左右方向のいずれにも、移動なし、撮影方向の変更なしとなった場合には、撮影ユニット１０ｂの移動及び撮影方向の変更による距離計測可能範囲の拡大が困難であると判断し、注目するエラー発生領域に対しては、距離計測処理を打ち切る。
【００８４】
撮影ユニット１０ｂを移動させたときの露光時間制御は、１回目の距離計測時と同じ設定とし、移動後の位置における計測エラーの発生に応じて、１回目の距離計測時と同じように、撮像画像を明るくしたり、又は、暗くしたりする設定で、撮影を行う。
【００８５】
計測結果合成部２３は、撮影ユニット１０ｂを移動させて撮影した結果得られた距離データを、１回目の距離計測の結果の距離データと統合する。まず、撮影ユニット１０ｂを移動させる前に距離計測した距離データを、三次元空間上にプロットする。次に、撮影ユニット１０ｂを移動させて取得した距離データを同じ三次元空間上にプロットする。その際、追加してプロットする点と撮影ユニット１０ｂの撮像部１２とを結ぶ線上に、撮影ユニット１０ｂを移動させる前に距離計測した距離データの点が存在する場合には、プロットの追加は行わない。このように、三次元空間上に距離データをプロットすることで、撮影ユニット１０ｂからの距離がより近い距離計測結果のみをプロットすることになり、距離計測結果データにおいて、検出漏れにより実際に被写体がある位置を被写体なしと誤判断する可能性を低減できる。
【００８６】
撮影ユニット１０ｂの位置の移動と距離計測は、エラー発生領域の数だけ繰り返して実施される。距離計測に要する時間を抑えるため、エラー発生領域を構成する画素数に閾値を設けておき、エラー発生領域に含まれる画素数が閾値以下の場合には、撮影ユニット１０ｂの移動及び距離計測の対象から外す処理を行ってもよい。
【００８７】
また、距離計測に要する時間を抑えるため、実際に撮影ユニット１０ｂの位置の移動と距離計測を実施する前に、予め全てのエラー発生領域に対する撮影ユニット１０ｂの移動位置をリストアップし、重複する撮影ユニット１０ｂの移動位置を１つにまとめた上で、撮影ユニット１０ｂの移動及び回転、並びに、距離計測を行ってもよい。
【００８８】
《２−３》効果
以上に説明したように、実施の形態２に係る距離計測装置２及び距離計測方法によれば、１回目に実施する距離計測の結果に基づき、エラー発生領域を減らすように撮影ユニット１０ｂを移動及び回転させて、２回目以降の距離計測の露光条件、撮影位置、撮影方向を変化させて画像データを取得し、距離計測を行い、距離計測を行うので、距離計測できないエリアが少なく、精度の高い被写体距離を取得することが可能となる。
【００８９】
《３》変形例
図１５は、上記実施の形態１及び２に係る距離計測装置の画像データ処理部の変形例の構成を示すハードウェア構成図である。距離計測装置１及び２の画像データ処理部２０は、ソフトウェアとしてのプログラムを格納する記憶装置としてのメモリ９１と、メモリ９１に格納されたプログラムを実行する情報処理部としてのプロセッサ９２とを用いて（例えば、コンピュータにより）実現することができる。この場合には、図１及び図１１における画像データ処理部２０は、図１５におけるメモリ９１とプログラムを実行するプロセッサ９２に相当する。なお、図１に示される画像データ処理部２０の一部を、図１５に示されるメモリ９１と、プログラムを実行するプロセッサ９２とによって実現してもよい。
【符号の説明】
【００９０】
１，２  距離計測装置、  １０，１０ａ  画像データ取得部、  １０ｂ  撮影ユニット、  １１  光学系、  １２  撮像部、  １３  投写部、  １４  制御部、  １５  カメラアーム部、  ２０  画像データ処理部、  ２１  第１の距離計測部（画像ぼけ判定部）、  ２２  第２の距離計測部（三角測量部）、  ２３  計測結果合成部、  ２４  制御部。
【図１】
2017163537.tif 000003
【図２】
2017163537.tif 000004
【図３】
2017163537.tif 000005
【図４】
2017163537.tif 000006
【図５】
2017163537.tif 000007
【図６】
2017163537.tif 000008
【図７】
2017163537.tif 000009
【図８】
2017163537.tif 000010
【図９】
2017163537.tif 000011
【図１０】
2017163537.tif 000012
【図１１】
2017163537.tif 000013
【図１２】
2017163537.tif 000014
【図１３】
2017163537.tif 000015
【図１４】
2017163537.tif 000016
【図１５】
2017163537.tif 000017
【手続補正書】
【提出日】平成29年11月2日(2017.11.2)
【手続補正１】
【補正対象書類名】図面
【補正対象項目名】図５
【補正方法】変更
【補正の内容】
【図５】
2017163537.tif 000018
【国際調査報告】
2017163537.tif 000019
2017163537.tif 000020
2017163537.tif 000021