(57)【特許請求の範囲】
【請求項１】
被写体までの距離情報を画素毎に検出する第１及び第２の３次元画像検出装置を備えた３次元画像検出システムであって、
前記第１及び第２の３次元画像検出装置の少なくとも一方に設けられ、非直線状に配列する３つ以上の光のスポットを前記被写体に投影するスポット光発光装置と、
前記第１及び第２の３次元画像検出装置の双方に設けられ、投影された前記光のスポットが結像する撮像面上の位置を検出するスポット位置認識手段と、
前記第１及び第２の３次元画像検出装置の少なくとも一方に設けられ、前記第１及び第２の３次元画像検出装置の撮像面にそれぞれ結像された光のスポットの間における対応関係を認識する対応関係認識手段とを備え、
前記第１及び第２の３次元画像検出装置の各撮像面において前記スポット位置認識手段により少なくとも３つ以上のスポットが検出される
ことを特徴とする３次元画像検出システム。
【請求項２】
前記スポット光発光装置が照射する光が、レーザ光線であることを特徴とする請求項１に記載の３次元画像検出システム。
【請求項３】
前記スポット光発光装置が３個以上のスポット光発光素子を備え、前記光のスポットがそれぞれ異なるスポット光発光素子から投射される光によるものであることを特徴とする請求項１に記載の３次元画像検出システム。
【請求項４】
前記スポット光発光素子が前記３次元画像検出装置の鏡筒の縁周りに円環状に等間隔で配置されることを特徴とする請求項３に記載の３次元画像検出システム。
【請求項５】
前記対応関係認識手段が、前記各スポット光発光素子を１個づつ発光させることにより、前記第１及び第２の３次元画像検出装置において検出される光のスポットの間における対応関係を認識することを特徴とする請求項３に記載の３次元画像検出システム。
【請求項６】
前記第１及び第２の３次元画像検出装置が、
前記第１及び第２の３次元画像検出装置間において通信を行なうための通信手段を備え、前記スポット光発光装置が備えられた前記第１又は第２の３次元画像検出装置が、前記各スポット光発光素子を１個づつ発光させるとともに前記各スポット光発光素子を識別するための発光素子識別コードを前記通信手段によりもう一方の３次元画像検出装置に送信し、前記対応関係識別手段が前記発光素子識別コードにより前記各３次元画像検出装置において検出される光のスポットの間における対応関係を認識する
ことを特徴とする請求項５に記載の３次元画像検出システム。
【請求項７】
前記スポット光発光装置を備えない３次元画像装置の前記スポット位置認識手段において、投影された光のスポットが検出されない場合に検出されないことを知らせるための信号を、光のスポットが検出された場合に検出されたことを知らせるための信号を、前記スポット光発光装置を備えた３次元画像検出装置に送信することにより、前記光のスポットが前記スポット光発光装置を備えない３次元画像検出装置において３つ以上検出されたか否かを前記第１の３次元画像検出装置において判定可能であることを特徴とする請求項６に記載の３次元画像検出システム。
【請求項８】
Ｎ台の３次元画像検出装置を備えた３次元画像検出システムにおいて、
全ての３次元画像検出装置の各々は、少なくとも他の１つの３次元画像検出装置と対として用いられ、一対の３次元画像検出装置の一方が前記第１の３次元画像検出装置として機能し、他方が前記第２の３次元画像検出装置として機能する
ことを特徴とする請求項１に記載の３次元画像検出システム。
【請求項９】
前記Ｎ台の３次元画像検出装置を備えた３次元画像検出システムの１回の駆動において、全ての３次元画像検出装置が１回だけ前記第１及び第２の３次元画像装置として機能することを特徴とする請求項８に記載の３次元画像検出システム。
【請求項１０】
前記Ｎ台の３次元画像検出装置の各々を識別するための装置識別コードを、前記各３次元画像検出装置において生成することを特徴とする請求項８に記載の３次元画像検出システム。
【請求項１１】
前記第１及び第２の３次元画像検出装置の各々において検出される前記被写体までの距離情報から、前記第１及び第２の３次元画像検出装置を基準とした第１の座標系及び第２の座標系それぞれにおいて前記被写体の３次元形状を表す第１の座標データと第２の座標データを算出する座標データ算出手段を備えることを特徴とする請求項１に記載の３次元画像検出システム。
【請求項１２】
前記スポット位置認識手段により検出される３つの光のスポットに基づいて、前記第１の座標系と前記第２の座標系との間での座標変換を行なう座標変換手段を備えることを特徴とする請求項１１に記載の３次元画像検出システム。
【請求項１３】
請求項１に記載された３次元画像検出システムにおいて用いられ、被写体までの距離情報を画素毎に検出する３次元画像検出装置であって、前記被写体に投影された光のスポットが結像する撮像面上の位置を検出するスポット位置認識手段または非直線状に配列する３つ以上の光のスポットを前記被写体に投影するためのスポット光発光装置の少なくとも一方を備えることを特徴とする３次元画像検出装置。
【請求項１４】
前記スポット位置認識手段を備えた第１及び第２の３次元画像検出装置の一方の３次元画像検出装置であって、前記第１及び第２の３次元画像検出装置の撮像面において検出される光のスポットの間における対応関係を認識する対応関係認識手段を備えることを特徴とする請求項１３に記載の３次元画像検出装置。
【請求項１５】
前記スポット光発光装置を備えることを特徴とする請求項１４に記載の３次元画像検出装置。
【請求項１６】
前記対応関係認識手段で用いるデータを入力するためのデータ入力手段を備えることを特徴とする請求項１４に記載の３次元画像検出装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、光伝播時間測定法を用いて被写体の３次元形状等を検出する３次元画像検出システム及び３次元画像検出装置に関する。
【０００２】
【従来の技術】
従来被写体までの距離を画素毎に検出する測距装置としては、「Measurement Science and Technology」（S. Christie 他、vol.6, p1301-1308, 1995 年）に記載されたものや、国際公開97/01111号公報に開示されたものなどが知られている。これらの測距装置では、パルス変調されたレーザ光が被写体に照射され、その反射光が２次元ＣＣＤセンサによって受光され、電気信号に変換される。このとき２次元ＣＣＤのシャッタ動作を制御することにより、被写体までの距離に相関する電気信号をＣＣＤの各画素毎に検出することができる。この電気信号からＣＣＤの各画素毎に対応する被写体までの距離が検出される。
【０００３】
【発明が解決しようとする課題】
これらの３次元画像検出装置で被写体の３次元形状を検出する場合、１つの方向からの撮影では、被写体の部分的な３次元形状しか検出できない。被写体の全体的な３次元形状を検出するには、複数の異なる方向から被写体を撮影する必要がある。しかし、異なる方向から撮影して得られる被写体の座標データは、異なる座標系に基づくものであり、これらの座標データを基に被写体を一体的に表すには、各座標系によって表された被写体の座標データを１つの座標系に変換する必要がある。従来これらの変換は、各方向から得られた被写体の３次元的な画像をコンピュータのディスプレイ上に表示し、被写体の視覚的特徴点を手がかりに３次元グラフィックソフトなどを用いて手動で一体的な被写体画像を合成することにより行われている。
【０００４】
本発明は、被写体を複数の方向から撮影し、各撮影により得られる被写体の３次元形状を表す座標データを１つの座標系に合成するための３次元画像検出システム及び３次元画像検出装置を得ることを目的としている。
【０００５】
【課題を解決するための手段】
本発明の３次元画像検出システムは、被写体までの距離情報を画素毎に検出する第１及び第２の３次元画像検出装置を備えた３次元画像検出システムであって、第１及び第２の３次元画像検出装置の少なくとも一方に設けられ非直線状に配列する３つ以上の光のスポットを被写体に投影するスポット光発光装置と、第１及び第２の３次元画像検出装置の双方に設けられ投影された光のスポットが、撮像面上に結像されているか否かを検出し、結像されている場合、その光のスポットが結像する撮像面上の位置を検出するスポット位置認識手段と、第１及び第２の３次元画像検出装置の少なくとも一方に設けられ第１及び第２の３次元画像検出装置の撮像面にそれぞれ結像された光のスポットの間における対応関係を認識する対応関係認識手段とを備え、第１及び第２の３次元画像検出装置の各撮像面においてスポット位置認識手段により少なくとも３つ以上のスポットが検出されることをを特徴としている。
【０００６】
スポット光発光装置が照射する光は好ましくは、レーザ光線である。また、好ましくは、スポット光発光装置が３個以上のスポット光発光素子を備え、光のスポットはそれぞれ異なるスポット光発光素子から投射される光りによるものである。より好ましくはスポット光発光素子は、３次元画像検出装置の鏡筒の縁周りに円環状に等間隔で配置されている。
【０００７】
好ましくは、対応関係認識手段は、各スポット光発光素子を１個づつ発光させることにより、第１及び第２の３次元画像検出装置において検出される光のスポットの間における対応関係を認識する。
【０００８】
第１及び第２の３次元画像検出装置は好ましくは、第１及び第２の３次元画像検出装置間において通信を行なうための通信手段を備え、スポット光発光装置が備えられた第１又は第２の３次元画像検出装置が、各スポット光発光素子を１個づつ発光させるとともに各スポット光発光素子を識別するための発光素子識別コードを通信手段によりもう一方の３次元画像検出装置に送信し、対応関係識別手段が発光素子識別コードにより各３次元画像検出装置において検出される光のスポットの間における対応関係を認識する。
【０００９】
例えば、スポット光発光装置を備えない３次元画像装置のスポット位置認識手段において、投影された光のスポットが検出されない場合に検出されないことを知らせるための信号を、光のスポットが検出された場合に検出されたことを知らせるための信号を、スポット光発光装置を備えた３次元画像検出装置に送信することにより、光のスポットがスポット光発光装置を備えない３次元画像検出装置において３つ以上検出されたか否かを第１の３次元画像検出装置において判定可能である。
【００１０】
好ましくは、Ｎ台の３次元画像検出装置を備えた３次元画像検出システムにおいて、全ての３次元画像検出装置に、対となる３次元画像検出装置が少なくとも１台存在し、一対の３次元画像検出装置の一方が第１の３次元画像検出装置として機能し、他方が第２の３次元画像検出装置として機能する。より好ましくは、Ｎ台の３次元画像検出装置を備えた３次元画像検出システムの１回の駆動において、全ての３次元画像検出装置が１回だけ第１及び第２の３次元画像装置として機能する。またこのとき好ましくは、Ｎ台の３次元画像検出装置の各々を識別するための装置識別コードを、各３次元画像検出装置において生成する。
【００１１】
３次元画像検出システムは好ましくは、第１及び第２の３次元画像検出装置の各々において検出される被写体までの距離情報から、第１及び第２の３次元画像検出装置を基準とした第１の座標系及び第２の座標系それぞれにおいて被写体の３次元形状を表す第１の座標データと第２の座標データを算出する座標データ算出手段を備える。またこのときより好ましくは、３次元画像検出システムは、スポット位置認識手段により検出される３つの光のスポットに基づいて、第１の座標系と第２の座標系との間での座標変換を行なう座標変換手段を備える。
【００１２】
本発明の３次元画像検出装置は、上述の３次元画像検出システムにおいて用いられ、被写体までの距離情報を画素毎に検出する３次元画像検出装置であって、被写体に投影された光のスポットが結像する撮像面上の位置を検出するスポット位置認識手段または非直線状に配列する３つ以上の光のスポットを被写体に投影するためのスポット光発光装置の少なくとも一方を備える。
【００１３】
３次元画像検出装置は好ましくは、スポット位置認識手段を備えた第１及び第２の３次元画像検出装置の一方の３次元画像検出装置であって、第１及び第２の３次元画像検出装置の撮像面において検出される光のスポットの間における対応関係を認識する対応関係認識手段を備える。このときより好ましくは、スポット光発光装置を備える。
【００１４】
また３次元画像検出装置は好ましくは、対応関係認識手段において用いるデータを入力するためのデータ入力手段を備える。
【００１５】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
図１は、本発明の一実施形態であるカメラ型の３次元画像検出装置の斜視図であり、３次元画像検出システムにおいて用いられる。
【００１６】
カメラ本体１０の前面において、撮影レンズ１１の左上にはファインダ窓１２が設けられ、右上にはストロボ１３が設けられている。撮像レンズ１１の外周縁には円環状のマーキング用の発光装置（スポット光発光装置）２２が配設されており、この発光装置２２には６個の発光素子（スポット光発光素子）２２ａが等間隔に配置されている。発光素子２２ａは、マーキング用のレーザ光を照射するためのものである。カメラ本体１０の上面において、撮影レンズ１１の真上には、測距光であるレーザ光を照射する発光装置１４が配設されている。発光装置１４の左側にはレリーズスイッチ１５、リンク撮影モード設定スイッチ１８、液晶表示パネル１６が設けられ、右側にはモード切替ダイヤル１７が設けられている。カメラ本体１０の図中右側面には、ＩＣメモリカード等の記録媒体を挿入するためのカード挿入口１９が形成されている他、ビデオ出力端子２０、インターフェースコネクタ２１ａ、２１ｃが設けられている。また、カメラ本体１０の図中左側面（図示せず）には、インターフェースコネクタ２１ｂが設けられている。
【００１７】
図２は図１に示すカメラの回路構成を示すブロック図である。
撮影レンズ１１の中には絞り２５が設けられている。絞り２５の開度はアイリス駆動回路２６によって調整される。撮影レンズ１１の焦点調節動作およびズーミング動作はレンズ駆動回路２７によって制御される。
【００１８】
撮影レンズ１１の光軸上には撮像素子（ＣＣＤ）２８が配設されている。ＣＣＤ２８の撮像面には、撮影レンズ１１によって被写体像が形成され、これによりＣＣＤ２８においては被写体像に対応した電荷が発生する。ＣＣＤ２８における電荷の蓄積動作、電荷の読出動作等の動作はＣＣＤ駆動回路３０によって制御される。ＣＣＤ２８から読み出された電荷信号すなわち画像信号はアンプ３１において増幅され、Ａ／Ｄ変換器３２においてアナログ信号からデジタル信号に変換される。デジタルの画像信号は撮像信号処理回路３３においてガンマ補正等の処理を施され、画像メモリ３４に一時的に格納される。アイリス駆動回路２６、レンズ駆動回路２７、ＣＣＤ駆動回路３０、撮像信号処理回路３３はシステムコントロール回路３５によって制御される。
【００１９】
画像信号は画像メモリ３４から読み出され、ＬＣＤ駆動回路３６に供給される。ＬＣＤ駆動回路３６は画像信号に応じて動作し、これにより画像表示ＬＣＤパネル３７には、画像信号に対応した画像が表示される。
【００２０】
画像メモリ３４から読み出された画像信号は、カメラ本体１０の外部に設けられたモニタ装置３９とケーブルで接続することにより、ＴＶ信号エンコーダ３８、ビデオ出力端子２０を介してモニタ装置３９に伝送可能である。またシステムコントロール回路３５はインターフェース回路４０に接続されており、インターフェース回路４０はインターフェースコネクタ２１ａ、２１ｂ、２１ｃに接続されている。インターフェースコネクタ２１ａ、２１ｂは、複数のカメラを連動して撮影を行なうリンク撮影モードにおいて、他のカメラとの接続に用いる。インターフェースコネクタ２１ｃは、カメラ本体１０の外部に設けられたコンピュータ４１とインターフェースケーブルを介して接続するためのものである。システムコントロール回路３５は、記録媒体制御回路４２を介してデータ記録装置４３に接続されている。したがって画像メモリ３４から読み出された画像信号は、データ記録装置４３に装着されたＩＣメモリカード等の記録媒体Ｍに記録可能である。
【００２１】
発光装置１４は、発光素子１４ａと照明レンズ１４ｂにより構成され、発光素子１４ａの発光動作は発光素子制御回路４４によって制御される。発光素子１４ａはレーザダイオード（ＬＤ）であり、照射されるレーザ光は被写体の距離を検出するための測距光として用いられる。このレーザ光は照明レンズ１４ｂを介して被写体の全体に照射される。被写体で反射したレーザ光が、撮影レンズ１１に入射し、ＣＣＤ２８で検出されることにより被写体までの距離情報が検出される。また、複数の発光素子２２ａもレーザダイオードであり、発光素子２２ａは発光素子制御回路４１によって制御される。発光素子２２ａから照射されたレーザ光は、被写体表面にスポット状に投射され、特徴点を表すマーカーとしての役割を果たし、座標変換行列を求める際に参照される。
【００２２】
システムコントロール回路３５には、レリーズスイッチ１５、モード切替ダイヤル１７、リンク撮影モード設定スイッチ１８から成るスイッチ群４５と、液晶表示パネル（表示素子）１６とが接続されている。
【００２３】
次に図３〜図５を参照して本発明の一実施形態である３次元画像検出システムの概略について説明する。
【００２４】
図３は、被写体Ｓの撮影方法を模式的に表したものである。
６台のカメラ１０ａ〜１０ｆは、図１、図２に示されたカメラであり、被写体Ｓを取り囲んで略等間隔で配置され、各カメラの撮像レンズは被写体Ｓに向けられている。隣合うカメラはそれぞれインターフェースケーブル５０により接続されており、６台のカメラ１０ａ〜１０ｆは、環状のネットワークを形成し、全体として１つの３次元画像検出システムを構成している。オペレーターが、例えばカメラ１０ａのリンク撮影モード設定スイッチ１８を押してリンク撮影モードを立ち上げると、インターフェースケーブル５０により接続されたカメラ１０ｂ〜カメラ１０ｆにおいても順次リンク撮影モードが立ち上げられる。カメラの数は、必要に応じて変更可能であるが、本システムを構成するには少なくとも２以上のカメラが必要である。なお、以後の説明では、カメラ１０ａのリンク撮影モード設定スイッチ１８を操作してリンク撮影モードを立ち上げたことを前提として説明を行なう。
【００２５】
各カメラでは、被写体Ｓまでの距離データが検出され、この距離データに基づいて算出される被写体Ｓの３次元形状を表す座標データは、各カメラを基準とした座標系によるものである。従って、各カメラを基準とした座標系による被写体Ｓの座標データを合成して、単一の座標系による被写体Ｓの全体的な座標データを得るには、あるカメラを基準とした座標系から他のカメラを基準とした座標系に変換できなければならない。リンク撮影モードでは、この座標変換を行なう座標変換行列を求める際に参照される参照点を検出するためのリンク撮影が行なわれ、その後に被写体までの距離情報や、画像情報が検出される。
【００２６】
リンク撮影は相互にインターフェースケーブル５０で直接接続された２台のカメラを１組として行われる。すなわちカメラ１０ａと１０ｂ、カメラ１０ｂと１０ｃ、カメラ１０ｃと１０ｄ、…、カメラ１０ｆと１０ａなどがそれぞれ１組としてリンク撮影が行われる。リンク撮影では、２台のカメラの一方がマーキング用のレーザ光を照射し、被写体表面に投影されたスポットを２台のカメラで各々検出して座標変換の際に参照点として用いる。なお２台のカメラのうちマーキング用のレーザ光を照射するカメラをマスターカメラ、もう一方のカメラをスレーブカメラと呼ぶ。
【００２７】
図４は、リンク撮影モードを設定した際にカメラ１０ａにおいて実行されるプログラムのフローチャートであり、図５はその他のカメラ１０ｂ〜１０ｆにおいて実行されるプログラムのフローチャートである。
【００２８】
まず、オペレータがカメラ１０ａのリンク撮影モード設定スイッチ１８を押すと、カメラ１０ａにおいてステップ１００のカメラリンク処理が実行される。カメラリンク処理では、カメラ１０ａ〜カメラ１０ｆを連動して制御するための初期処理が行なわれる。カメラ１０ａにおいて実行されるカメラリンク処理（ステップ１００）に連動して、カメラ１０ｂ〜カメラ１０ｆの各カメラにおいてもカメラリンク処理（ステップ２００）が実行される。各カメラ間の連動（リンク）が成功すると、すなわち接続された各カメラの電源がオン状態に設定され、各カメラが通信可能な状態に設定されていることが確認されると、カメラ１０ａのカメラリンク処理（ステップ１００）においてリンクが成功したことを表すフラッグが立てられる。
【００２９】
カメラ１０ａのステップ１０１において、各カメラ間でのリンクが成功したか否かが上述のフラッグを参照することにより判定される。リンクが失敗したと判定されると、液晶表示パネル１６などにリンクが失敗したことを伝える警告が表示され、リンク撮影モードの設定は解除される。これにより３次元画像検出システムの撮影動作は終了する。一方、リンクが成功したと判定されると、ステップ１０２においてカメラ１０ａをマスターカメラとしたリンク撮影が行なわれ、同時にカメラ１０ｂでは、ステップ２０１が実行され、スレーブカメラとしてのリンク撮影が行なわれる。すなわち、カメラ１０ａとカメラ１０ｂを１組としたリンク撮影が行なわれる。カメラ１０ａ、カメラ１０ｂのリンク撮影が成功すると、リンク撮影が成功したことを表すフラッグが、それぞれのステップ１０２、２０１において立てられる。なお、カメラ１０ａとカメラ１０ｂを１組としたリンク撮影が行なわれている間、カメラ１０ｃ〜カメラ１０ｆでは、後述するようにリンク撮影のための待機状態となる（ステップ２０１）。
【００３０】
ステップ１０３（カメラ１０ａ）、ステップ２０２（カメラ１０ｂ）では、リンク撮影が成功したか否かが上述のフラッグによりそれぞれ判定される。リンク撮影が失敗したと判定されると、リンク撮影モードの設定はそれぞれ解除されこの３次元画像検出システムの撮影動作は終了する。
【００３１】
一方、リンク撮影が成功したと判定されると、カメラ１０ａではステップ１０４に処理が移り、カメラ１０ｆをマスターカメラとし、自らをスレーブカメラとしたリンク撮影が行なわれるまで待機状態となる。カメラ１０ｂでは、ステップ２０３に処理が移り、カメラ１０ｂをマスターカメラとしたリンク撮影が開始される。このときカメラ１０ｃでは、ステップ２０１での待機状態が解除され、スレーブカメラとしてのリンク撮影が開始する。すなわち、カメラ１０ｂ、カメラ１０ｃを１組としたリンク撮影が行われる。各カメラでのリンク撮影が成功するとリンク撮影が成功したことを表すフラッグが、それぞれのステップ２０３（カメラ１０ｂ）、ステップ２０１（カメラ１０ｃ）において立てられる。
【００３２】
カメラ１０ｂでは、ステップ２０４においてリンク撮影（カメラ１０ｂをマスターカメラとしたリンク撮影）が成功したか否かが上述のフラッグを参照して行われる。一方、カメラ１０ｃでは、ステップ２０２においてリンク撮影（カメラ１０ｂをマスターカメラとしたリンク撮影）が成功したか否かが上述のフラッグを参照して行われる。カメラ１０ｂ、カメラ１０ｃにおいてリンク撮影が失敗したと判定されると、リンク撮影モードの設定はそれぞれ解除されこの３次元画像検出システムの撮影動作は終了する。
【００３３】
リンク撮影が成功したと判定されると、カメラ１０ｂでは、ステップ２０５に処理が移り、カメラ１０ａからの撮影終了信号（後述）が受信されたか否かが判定される。すなわち、カメラ１０ａからの撮影終了信号（ＥＮＤ）待ち状態となる。また、カメラ１０ｃでは、ステップ２０３に処理が移り、これを契機にカメラ１０ｄのステップ２０１における待機状態が解除され、カメラ１０ｃとカメラ１０ｄを１組としたリンク撮影（カメラ１０ｃがマスター、カメラ１０ｄがスレーブ）が開始する。以下同様に、カメラ１０ｄとカメラ１０ｅ、カメラ１０ｅとカメラ１０ｆのリンク撮影が行なわれ、カメラ１０ｂ〜カメラ１０ｅのカメラは全てステップ２０５の待機状態となる。すなわち、各カメラは自らがスレーブカメラとしてリンク撮影をしたときのマスターカメラからの撮影終了信号待ち状態となる。
【００３４】
カメラ１０ｆのスレーブカメラとしてのリンク撮影（ステップ２０１）が成功して終了すると、カメラ１０ｆはマスターカメラとしてのリンク撮影（ステップ２０３）を開始する。一方カメラ１０ａでは、ステップ１０４での待機状態が解除され、スレーブカメラとしてのリンク撮影が開始される。リンク撮影が成功すると、そのことを表すフラッグがカメラ１０ａ、カメラ１０ｆの各々のステップ１０４、ステップ２０３で立てられ、それぞれステップ１０５、ステップ２０４においてリンク撮影が成功したか否かが判定される。リンク撮影が失敗したと判定されると、リンク撮影モードの設定が解除され、この３次元画像検出システムの撮影動作は終了する。
【００３５】
リンク撮影が成功したと判定されると、カメラ１０ｆではステップ２０５に処理が移り、カメラ１０ｅからの撮影終了信号待ち状態となる。また、カメラ１０ａでは、ステップ１０６に処理が移り、距離情報検出動作が実行され、被写体までの距離データが取得され、ステップ１０７において、画像情報検出動作が実行され、被写体の画像データが取得される。
【００３６】
その後カメラ１０ａでは、撮影終了信号がステップ１０８においてカメラ１０ｂに向けて出力され、ステップ１０９において各種データ（マーキングに関する情報や距離データ、画像データなど）が記録媒体Ｍに記録される。ステップ１１０では、カメラ１０ｆからの撮影終了信号を受けるまで待機状態となる。カメラ１０ｆから撮影終了信号を受信すると、カメラ１０ａにおける３次元画像検出システムの撮影動作は終了する。
【００３７】
撮影終了信号は、そのカメラにおいて実行される距離情報検出動作や画像情報検出動作における撮影が終了したことを示す信号である。カメラ１０ｂにおいて、撮影終了信号を受信すると、ステップ２０５で撮影終了信号の受信待ち状態であったカメラ１０ｂの処理は、ステップ２０６、ステップ２０７へと移り、距離情報検出動作、画像情報検出動作が実行され、被写体の距離データ、画像データが取得される。その後ステップ２０８において、カメラ１０ｂはカメラ１０ｃに撮影終了信号を出力し、ステップ２０９で、取得された各種データが記録媒体Ｍに記録され、カメラ１０ｂにおける３次元画像検出システムの撮影動作は終了する。
【００３８】
以下同様に、各カメラにおいて距離情報検出動作、画像情報検出動作が実行されとともに次のカメラに撮影終了信号を出力し、各カメラにおいて取得された各種のデータが、記録媒体Ｍに記録され、各カメラにおける３次元画像検出システムの撮影動作が全て終了する。すなわち、撮影終了信号はカメラ１０ａ、カメラ１０ｂ、カメラ１０ｃ、・・・、と順次出力され、最後にカメラ１０ｆから出力された撮影終了信号がカメラ１０ａにおいて受信されることにより、接続された全てのカメラの撮影動作が終了する。
【００３９】
次に図６〜図９及び次の表１を参照してステップ１００、ステップ２００において実行されるカメラリンク処理について説明する。
【００４０】
表１は、インターフェースケーブル５０を介してカメラ間で通信される代表的な信号の一覧を表したものである。
【表１】
0004315545.tif 000002
Ｍはマスターカメラ、Ｓはスレーブカメラを表しており、’→’記号はマスターカメラ、スレーブカメラ間でのデータの伝送方向を表している。カメラリンク処理に用いられる信号は、１ビット信号であるリンク撮影モード信号（ＭＯＤＥ）と３ビット信号であるカメラ識別信号（Ｃ１、Ｃ２、Ｃ３）である。３ビット信号の照明識別信号（Ｌ１、Ｌ２、Ｌ３）と、１ビット信号のＯＫ信号（ＯＫ＿ＡＣＫ）、ＮＧ信号（ＮＧ＿ＡＣＫ）、撮影終了信号（ＥＮＤ）は、後のリンク撮影動作において用いられる。
【００４１】
図６は、ステップ１００、すなわちカメラ１０ａで実行されるカメラリンク処理のフローチャートであり、図７は、ステップ２００、すなわちカメラ１０ｂ〜カメラ１０ｆで実行されるカメラリンク処理のフローチャートである。
【００４２】
まずステップ３００で、カメラ１０ａ、カメラ１０ｂ間のリンク撮影モード（ＭＯＤＥ）信号（送信側）がハイレベルに設定され、ステップ３０１でカメラ識別番号（送信側）が１にセットされるとともにカメラ１０ｂへ出力される。その後ステップ３０２においてタイマがリセットされ、ステップ３０３でカメラ１０ｆ、カメラ１０ａ間のＭＯＤＥ信号（受信側）がハイレベルであるか否かが判定される。受信側のＭＯＤＥ信号がハイレベルでないと判定されるとステップ３０６においてタイマが所定の時間を超過していないか否かが判定される。所定時間経過していないと判定されると、ステップ３０３に再び処理は戻り、受信側のＭＯＤＥ信号がハイレベルであるか否かが判定される。またステップ３０６でタイマの時間が所定時間を超過していると判定されると、カメラリンク処理が成功したことを表すフラッグをリセットしてこの処理は終了する。
【００４３】
一方ステップ３０３において受信側のＭＯＤＥ信号はハイレベルであると判定されると、ステップ３０４において、受信側のカメラ識別番号が１であるか否かが判定される。受信側のカメラ識別番号が１であると判定されるとステップ３０６に処理は移り、タイマの時間が所定時間を超過しているか否かが判定される。ステップ３０４において受信側のカメラ識別番号が１でないと判定されると、ステップ３０５においてカメラリンク処理が成功したこと表すフラッグが立てられ、この処理は終了する。
【００４４】
カメラ１０ａにおいて図６で示されたカメラリンク処理が行なわれている間、カメラ１０ｂ〜カメラ１０ｆでは、図７で示されるカメラリンク処理が行なわれる。ステップ４００で、受信側のＭＯＤＥ信号がハイレベルであると判定されると、処理はステップ４０１へ移行し、送信側のＭＯＤＥ信号がハイレベルに設定される。例えばカメラ１０ａからのＭＯＤＥ信号がハイレベルに設定され、これをカメラ１０ｂが受信すると、カメラ１０ｂはカメラ１０ｃへのＭＯＤＥ信号をハイレベルに設定する。ステップ４０２では、受信したカメラ識別番号ｎに１を加算したものを送信側のカメラ識別番号に設定して次のカメラへ出力する。例えば、カメラ１０ｂはカメラ１０ａからカメラ識別番号１を受信し、カメラ識別番号２をカメラ１０ｃに出力する。すなわち６台のカメラ１０ａ〜１０ｆは、カメラ識別番号１、２、…、６にそれぞれ対応する。
【００４５】
図８は、各カメラ間におけるＭＯＤＥ信号の立ち上げ及び立ち下げのシーケンスを示したものである。すなわち、図８（ａ）はカメラ１０ａとカメラ１０ｂ、図８（ｂ）はカメラ１０ｂとカメラ１０ｃ、図８（ｃ）はカメラ１０ｃとカメラ１０ｄ、図８（ｄ）はカメラ１０ｄとカメラ１０ｅ、図８（ｅ）はカメラ１０ｅとカメラ１０ｆ、図８（ｆ）はカメラ１０ｆとカメラ１０ａ間のＭＯＤＥ信号の立ち上げ及び立ち下げのシーケンスを表している。ステップ３００での送信側のＭＯＤＥ信号をハイレベルに設定することにより、カメラ１０ａ、カメラ１０ｂ間のＭＯＤＥ信号は、ＳＨ１においてハイレベルに設定される。ハイレベルのＭＯＤＥ信号を受信したカメラ１０ｂはカメラ１０ｂ、カメラ１０ｃ間のＭＯＤＥ信号をＳＨ２においてハイレベルに設定する。このように順次各カメラ間のＭＯＤＥ信号がハイレベルに設定され、ＳＨ６では全てのカメラ間のＭＯＤＥ信号がハイレベルに設定される。
【００４６】
一方、各カメラは割り込み処理で常時受信側のＭＯＤＥ信号を監視しており、受信側のＭＯＤＥ信号がローレベルに設定されると、自らの送信側のＭＯＤＥ信号をローレベルに設定した後、実行されている撮影動作をそれぞれ強制終了する。例えば、カメラ１０ａが送信側のＭＯＤＥ信号をＳＬ１においてローレベルに設定すると、それを検知したカメラ１０ｂもＳＬ２において送信側のＭＯＤＥ信号をローレベルにした後、撮影動作を強制終了する。以下同様にカメラ１０ｃ〜カメラ１０ｆが各ＭＯＤＥ信号をローレベルに設定して、自らの撮影動作を強制終了する。したがって、ＳＬ６では、全てのカメラにおいて図４、図５のフローチャートで示された撮影動作は終了している。なお、受信側のＭＯＤＥ信号の監視は、全てのカメラにおいて常時行なわれているので、何れかのカメラが送信側のＭＯＤＥ信号をローレベルに設定すれば、各カメラのＭＯＤＥ信号が順次ローレベルに設定され、カメラ１０ａの送信側のＭＯＤＥ信号をローレベルに設定したときと同様に全てのカメラの撮影動作を終了させることができる。
【００４７】
図９は、ステップ３０１、ステップ４０２において出力されるカメラ識別信号の例を示したものである。図９（ａ）は、カメラ１０ａからカメラ１０ｂへ出力されるカメラ識別信号を表しており、図９（ｂ）、図９（ｃ）は、カメラ１０ｂからカメラ１０ｃ、カメラ１０ｃからカメラ１０ｄへ出力されるカメラ識別信号をそれぞれ表している。
【００４８】
カメラ識別信号Ｃ１、Ｃ２、Ｃ３はそれぞれ３桁の２進数の各桁に対応しており、Ｃ１は１桁目、Ｃ２は２桁目、Ｃ３は３桁目に対応する。したがって、カメラ識別番号１（２進表記で０１）を出力する図９（ａ）では、送信側のＭＯＤＥ信号がハイレベルに設定されると略同時に、カメラ識別信号Ｃ１にパルス信号が出力される。同様にカメラ識別番号２（２進表記で１０）を出力する図９（ｂ）では、ＭＯＤＥ信号がハイレベルに設定されると略同時に、カメラ識別信号Ｃ２にパルス信号が出力される。また、カメラ識別番号３（２進表記で１１）を出力する図９（ｃ）では、ＭＯＤＥ信号がハイレベルに設定されると略同時に、カメラ識別信号Ｃ１、Ｃ２にそれぞれパルス信号が出力される。
【００４９】
次に図１０〜図１２を参照して図４及び図５のステップ１０２、ステップ２０３とステップ１０４、ステップ２０１で実行されるマスターカメラでのリンク撮影と、スレーブカメラでのリンク撮影について説明する。
【００５０】
図１０は、マスターカメラにおいて実行されるリンク撮影動作のフローチャートである。初めにステップ５００、ステップ５０１において変数Ｍと変数Ｌがそれぞれ０と１に初期設定される。変数Ｍは、リンク撮影動作により検出されたスポットの数に対応する。変数Ｌは照明識別番号であり、カメラに設けられた発光素子２２の各々に対応する数である。例えば図１において、一番上の発光素子２２から時計周りに順に１、２、…、６と各発光素子２２が対応している。
【００５１】
ステップ５０２では、カメラ識別番号がスレーブカメラに出力される。ステップ５０３では、照明識別番号Ｌの発光素子２２からレーザ光が被写体に向けて照射されるとともに、照射されている発光素子２２の照明識別番号Ｌをスレーブカメラに送出する。なお、照明識別番号Ｌは、カメラ識別番号と同様に３ビットの照明識別信号Ｌ１、Ｌ２、Ｌ３によってスレーブカメラに送出される。
【００５２】
ステップ５０４では、スレーブカメラからのＯＫ＿ＡＣＫ信号が受信されたか否かが判定される。ＯＫ＿ＡＣＫ信号は、発光素子２２から照射されたマーキング用のレーザ光によるスポットがスレーブカメラにおいて検出されたときに、スレーブカメラからマスターカメラへ送出される信号である。ＯＫ＿ＡＣＫ信号が受信されていないと判定されるとステップ５０５において、スレーブカメラからのＮＧ＿ＡＣＫ信号が受信されたか否かが判定される。ＮＧ＿ＡＣＫ信号は、発光素子２２から照射されたマーキング用のレーザ光によるスポットがスレーブカメラにおいて検出されないときに、スレーブカメラからマスターカメラへ送出される信号である。ＮＧ＿ＡＣＫ信号が受信されていないと判定されると再びステップ５０４に戻り、ＯＫ＿ＡＣＫ信号の受信がないか判定される。
【００５３】
ステップ５０５においてＮＧ＿ＡＣＫ信号が受信されたと判定されると、ステップ５０６において照明識別番号Ｌがその最大値であるＬmax と等しいか否かが判定される。本実施形態のカメラの発光素子２２の数は６個なので、Ｌmax ＝６である。Ｌ＝Ｌmax ではないと判定されると、ステップ５０７において、照明識別番号Ｌに１が加算され処理は再びステップ５０２へ戻り次の発光素子２２からのレーザ光の照射が行われる。
【００５４】
一方、ステップ５０４において、ＯＫ＿ＡＣＫ信号が受信されたと判定されると、ステップ５０８において変数Ｍに１が加算される。ステップ５０９では、照明識別番号Ｌのレーザ光により被写体表面にできたスポットの画面における位置（画素の位置）の認識するためのスポット位置認識処理が行なわれる。その後ステップ５１０において照明識別番号Ｌと認識されたスポットの位置が画像メモリ３４に一時的に記憶される。
【００５５】
ステップ５１１では、変数Ｍが３であるか否かが判定される。Ｍ≠３と判定されたときには、ステップ５０６においてＬ＝Ｌmax が判定される。一方ステップ５１１においてＭ＝３であると判定されると、ステップ５１２においてリンク撮影が成功したことを表すフラッグが立てられ、このマスターカメラでのリンク撮影動作のサブルーチンは終了する。また、ステップ５０６においてＬ＝Ｌmax であると判定されると、ステップ５１３においてリンク撮影が成功したことを表すフラッグがリセットされるとともに、ＭＯＤＥ信号がローレベルに設定され、このマスターカメラでのリンク撮影動作のサブルーチンは終了する。
【００５６】
一方、スレーブカメラでのリンク撮影動作のサブルーチンは、図１１のフローチャートで示される。
【００５７】
ステップ６００では、検出されたスポットの数を表す変数Ｍの値が０に初期設定される。ステップ６０１では、マスターカメラからのカメラ識別信号（カメラ識別番号）が受信されたか否かが判定され、カメラ識別信号が受信されたと判定されると、ステップ６０２において照明識別信号（照明識別番号Ｌ）が受信されたか否かが判定される。照明識別信号が受信されると、ステップ６０３において、マスターカメラの照明識別番号Ｌから照射されたレーザ光によるスポットのＣＣＤ２８の画面における位置を認識するスポット位置認識処理が行なわれる。ステップ６０３では、スポット位置が認識された場合には、スポット位置が認識されたことを表すフラッグが立てられ、それ以外のときには、同フラッグがリセットされる。
【００５８】
ステップ６０４では、ステップ６０３のスポット位置認識処理で、照明識別番号Ｌの発光素子２２によるスポットの位置が認識できたか否かが、スポット位置が認識されたことを表すフラッグによって判定される。スポットの位置が認識されなかったと判定されると、ステップ６０５においてＮＧ＿ＡＣＫ信号がマスターカメラへ送信される。その後ステップ６０６において受信された照明識別番号ＬがＬmax に等しいか否かが判定され、等しくないと判定されるとステップ６０１に再び処理が戻る。
【００５９】
一方、ステップ６０４で照明識別番号Ｌによるスポットの位置が認識されたと判定されると、ステップ６０８で変数Ｍに１が加算された後、ステップ６０９においてＯＫ＿ＡＣＫ信号がマスターカメラに送信される。その後ステップ６１０において照明識別番号と認識されたスポットの位置が画像メモリ３４に記憶され、ステップ６１１で、変数Ｍが３であるか否かが判定される。Ｍ＝３であると判定されるとステップ６１２においてリンク撮影が成功したことを表すのフラッグが立てられ、このスレーブカメラにおけるリンク撮影動作のサブルーチンは終了する。またステップ６１１においてＭ≠３であると判定されると、ステップ６０６へ処理が移る。ステップ６０６においてＬ＝Ｌmax であると判定されるとステップ６０７においてスレーブカメラにおけるリンク撮影が成功したことを表すフラッグがリセットされ、このスレーブカメラにおけるリンク撮影動作のサブルーチンは終了する。
【００６０】
次に図１２を参照してステップ５０９、ステップ６０３のスポット位置認識処理について説明する。図１２はスポット位置認識処理のサブルーチンのフローチャートである。
【００６１】
ステップ７００では、画素値の２値化処理が行われる。すなわち、ＣＣＤ２８において左からｉ番目、上からｊ番目の画素を（ｉ，ｊ）で表すとき、画素（ｉ，ｊ）において画素値ρ（ｉ，ｊ）が閾値Γ以上であれば１、閾値Γよりも小さければ０を対応させる。関数Ｂ（ρ（ｉ，ｊ））は、この様な２値化関数を表している。このとき、Ｂ（ρ（ｉ，ｊ））＝１となる画素は、スポットを構成する画素の１つに対応している。
【００６２】
ステップ７０１では、Ｂ（ｉ，ｊ）、Ｂ（ｉ，ｊ）×ｉ、Ｂ（ｉ，ｊ）×ｊの総和ＳＭB 、ＳＭi 、ＳＭj がそれぞれ求められる。ステップ７０２では、ＳＭB ＝０であるか否かが判定される。ＳＭB ≠０と判定されたときにはステップ７０３に処理が移り、Ｂ（ρ（ｉ，ｊ））＝１となる画素により構成されたスポットの図心（ｉ0 ，ｊ0 ）がスポット位置として求められる。なお、図心（ｉ0 ，ｊ0 ）は、数値を四捨五入する関数をＩｎｔとすると、
ｉ0 ＝Ｉｎｔ（ＳＭi ／ＳＭB ）
ｊ0 ＝Ｉｎｔ（ＳＭj ／ＳＭB ）
によって算出される。
【００６３】
ステップ７０４では、スポット位置が認識されたことを表すフラッグが立てられてこのサブルーチンは終了する。一方、ステップ７０２においてＳＭB が０であると判定されると、ステップ７０５において、スポット位置の認識されたことを表すフラッグがリセットされ、このサブルーチンは終了する。
【００６４】
図１３は、カメラ１０ａをマスターカメラ、カメラ１０ｂをスレーブカメラとしてリンク撮影が行われたときの各信号のシーケンスを例示したものである。
【００６５】
Ｔ１では、カメラ識別番号１と照明識別番号１に対応するカメラ識別信号と照明識別信号とがカメラ１０ａからカメラ１０ｂへと略同時に出力されている。すなわち、カメラ識別信号Ｃ１及び照明識別信号Ｌ１のみがパルス信号として出力されている。Ｔ１’では、カメラ１０ｂからカメラ１０ａにＯＫ＿ＡＣＫ信号がパルス信号として出力され、照明識別番号１によるスポットが検出さたことをマスターカメラであるカメラ１０ａに知らせている。
【００６６】
Ｔ２では、再びカメラ識別番号１が出力され、略同時に照明識別番号２に対応する照明識別信号が出力されている。すなわち、カメラ識別信号Ｃ１及び照明識別信号Ｌ２のみがパルス信号として出力されている。Ｔ２’では、カメラ１０ｂからカメラ１０ａにＮＧ＿ＡＣＫ信号がパルス信号として出力され、照明識別番号２によるスポットが検出されなかったことをマスターカメラであるカメラ１０ａに知らせている。以下同様に、Ｔ３、Ｔ４、Ｔ５、Ｔ６では照明識別番号３、４、５、６に対応する３ビットで表された照明識別信号がマスターカメラからスレーブカメラへ送られ、Ｔ３’、Ｔ４’、Ｔ５’、Ｔ６’ではそれぞれＯＫ＿ＡＣＫ信号、ＮＧ＿ＡＣＫ信号、ＮＧ＿ＡＣＫ信号、ＯＫ＿ＡＣＫ信号がスレーブカメラからマスターカメラへと送られている。したがって、このリンク撮影動作では、スレーブカメラであるカメラ１０ｂにおいて３個のスポットが認識（検知）されたので、リンク撮影が成功したことを表すフラッグが立てられる。
【００６７】
以上の方法により、各カメラにおいてそれぞれ３個のスポットが認識されると、各カメラにおいて検出された被写体の距離データから単一の座標系で表された被写体の座標データを得ることができ、例えばカメラ１０ａの液晶表示パネル１６などに全てのリンク撮影が成功した旨が表示される。
【００６８】
次に図４、図５のステップ１０６、ステップ２０６において実行される距離情報検出動作について説明する。
【００６９】
まず、図１４および図１５を参照して、本実施形態における距離測定の原理について説明する。なお図１５において横軸は時間ｔである。
【００７０】
距離測定装置Ｂから出力された測距光は被写体Ｓにおいて反射し、図示しないＣＣＤによって受光される。測距光は所定のパルス幅Ｈを有するパルス状の光であり、したがって被写体Ｓからの反射光も、同じパルス幅Ｈを有するパルス状の光である。また反射光のパルスの立ち上がりは、測距光のパルスの立ち上がりよりも時間δ・ｔ（δは遅延係数）だけ遅れる。測距光と反射光は距離測定装置Ｂと被写体Ｓの間の２倍の距離ｒを進んだことになるから、その距離ｒは
ｒ＝δ・ｔ・Ｃ／２                                      ・・・（１）
により得られる。ただしＣは光速である。
【００７１】
例えば測距光のパルスの立ち上がりから反射光を検知可能な状態に定め、反射光のパルスが立ち下がる前に検知不可能な状態に切換えるようにすると、すなわち反射光検知期間Ｔを設けると、この反射光検知期間Ｔにおける受光量Ａは距離ｒの関数である。すなわち受光量Ａは、距離ｒが大きくなるほど（時間δ・ｔが大きくなるほど）小さくなる。
【００７２】
本実施形態では上述した原理を利用して、ＣＣＤ２８に設けられ、２次元的に配列された複数のフォトダイオードにおいてそれぞれ受光量Ａを検出することにより、カメラ本体１０から被写体Ｓの表面の各点までの距離をそれぞれ検出し、被写体Ｓの表面形状に関する３次元画像のデータを一括して入力している。
【００７３】
図１６は、ＣＣＤ２８に設けられるフォトダイオード５１と垂直転送部５２の配置を示す図である。図１７は、ＣＣＤ２８を基板５３に垂直な平面で切断して示す断面図である。このＣＣＤ２８は従来公知のインターライン型ＣＣＤであり、不要電荷の掃出しにＶＯＤ（縦型オーバーフロードレイン）方式を用いたものである。
【００７４】
フォトダイオード５１と垂直転送部５２はｎ型基板５３の面に沿って形成されている。フォトダイオード５１は２次元的に格子状に配列され、垂直転送部５２は所定の方向（図１６において上下方向）に１列に並ぶフォトダイオード５１に隣接して設けられている。垂直転送部５２は、１つのフォトダイオード５１に対して４つの垂直転送電極５２ａ，５２ｂ，５２ｃ，５２ｄを有している。したがって垂直転送部５２では、４つのポテンシャルの井戸が形成可能であり、従来公知のように、これらの井戸の深さを制御することによって、信号電荷をＣＣＤ２８から出力することができる。なお、垂直転送電極の数は目的に応じて自由に変更できる。
【００７５】
基板５３の表面に形成されたｐ型井戸の中にフォトダイオード５１が形成され、ｐ型井戸とｎ型基板５３の間に印加される逆バイアス電圧によってｐ型井戸が完全空乏化される。この状態において、入射光（被写体からの反射光）の光量に応じた電荷がフォトダイオード５１において蓄積される。基板電圧Ｖsub を所定値以上に大きくすると、フォトダイオード５１に蓄積した電荷は、基板５３側に掃出される。これに対し、転送ゲート部５４に電荷転送信号（電圧信号）が印加されたとき、フォトダイオード５１に蓄積した電荷は垂直転送部５２に転送される。すなわち電荷掃出信号によって電荷を基板５３側に掃出した後、フォトダイオード５１に蓄積した信号電荷が、電荷転送信号によって垂直転送部５２側に転送される。このような動作を繰り返すことにより、垂直転送部５２において信号電荷が積分され、いわゆる電子シャッタ動作が実現される。
【００７６】
図１８は距離情報検出動作におけるタイミングチャートであり、図１、図２、図１６〜図１８を参照して本実施形態における距離情報検出動作について説明する。なお本実施形態の距離情報検出動作では、図１５を参照して行なった距離測定の原理の説明とは異なり、外光の影響による雑音を低減するために測距光のパルスの立ち下がりから反射光を検知可能な状態に定め、反射光のパルスが立ち下がった後に検知不可能な状態に切換えるようにタイミングチャートを構成しているが原理的には何ら異なるものではない。
【００７７】
垂直同期信号（図示せず）の出力に同期して電荷掃出し信号（パルス信号）Ｓ１が出力され、これによりフォトダイオード５１に蓄積していた不要電荷が基板５３の方向に掃出され、フォトダイオード５１における蓄積電荷量はゼロになる（符号Ｓ２）。電荷掃出し信号Ｓ１の出力の開始の後、一定のパルス幅を有するパルス状の測距光Ｓ３が出力される。測距光Ｓ３が出力される期間（パルス幅）は調整可能であり、図示例では、電荷掃出し信号Ｓ１の出力と同時に測距光Ｓ３がオフするように調整されている。
【００７８】
測距光Ｓ３は被写体において反射し、ＣＣＤ２８に入射する。すなわちＣＣＤ２８によって被写体からの反射光Ｓ４が受光されるが、電荷掃出し信号Ｓ１が出力されている間は、フォトダイオード５１において電荷は蓄積されない（符号Ｓ２）。電荷掃出し信号Ｓ１の出力が停止されると、フォトダイオード５１では、反射光Ｓ４の受光によって電荷蓄積が開始され、反射光Ｓ４と外光とに起因する信号電荷Ｓ５が発生する。反射光Ｓ４が消滅すると（符号Ｓ６）フォトダイオード５１では、反射光に基く電荷蓄積は終了するが（符号Ｓ７）、外光のみに起因する電荷蓄積が継続する（符号Ｓ８）。
【００７９】
その後、電荷転送信号Ｓ９が出力されると、フォトダイオード５１に蓄積された電荷が垂直転送部５２に転送される。この電荷転送は、電荷転送信号の出力の終了（符号Ｓ１０）によって完了する。すなわち、外光が存在するためにフォトダイオード５１では電荷蓄積が継続するが、電荷転送信号の出力が終了するまでフォトダイオード５１に蓄積されていた信号電荷Ｓ１１が垂直転送部５２へ転送される。電荷転送信号の出力終了後に蓄積している電荷Ｓ１４は、そのままフォトダイオード５１に残留する。
【００８０】
このように電荷掃出し信号Ｓ１の出力の終了から電荷転送信号Ｓ９の出力が終了するまでの期間ＴU1の間、フォトダイオード５１には、被写体までの距離に対応した信号電荷が蓄積される。そして、反射光Ｓ４の受光終了（符号Ｓ６）までフォトダイオード５１に蓄積している電荷が、被写体の距離情報と対応した信号電荷Ｓ１２（斜線部）として垂直転送部５２へ転送され、その他の信号電荷Ｓ１３は外光のみに起因するものである。
【００８１】
電荷転送信号Ｓ９の出力から一定時間が経過した後、再び電荷掃出し信号Ｓ１が出力され、垂直転送部５２への信号電荷の転送後にフォトダイオード５１に蓄積された不要電荷が基板５３の方向へ掃出される。すなわち、フォトダイオード５１において新たに信号電荷の蓄積が開始する。そして、上述したのと同様に、電荷蓄積期間ＴU1が経過したとき、信号電荷は垂直転送部５２へ転送される。
【００８２】
このような信号電荷Ｓ１１の垂直転送部５２への転送動作は、次の垂直同期信号が出力されるまで、繰り返し実行される。これにより垂直転送部５２において、信号電荷Ｓ１１が積分され、１フィールドの期間（２つの垂直同期信号によって挟まれる期間）に積分された信号電荷Ｓ１１は、その期間被写体が静止していると見做せれば、被写体までの距離情報に対応している。なお信号電荷Ｓ１３は信号電荷Ｓ１２に比べ微小であるため信号電荷Ｓ１１は信号電荷Ｓ１２と等しいと見なすことができる。
【００８３】
以上説明した信号電荷Ｓ１１の検出動作は１つのフォトダイオード５１に関するものであり、全てのフォトダイオード５１においてこのような検出動作が行なわれる。１フィールドの期間における検出動作の結果、各フォトダイオード５１に隣接した垂直転送部５２の各部位には、そのフォトダイオード５１によって検出された距離情報が保持される。この距離情報は垂直転送部５２における垂直転送動作および図示しない水平転送部における水平転送動作によってＣＣＤ２８から出力される。
【００８４】
図１９は、図４のステップ１０６および図５のステップ２０６において実行される距離情報検出動作のフローチャートである。図１９を参照して距離情報検出動作について説明する。なお、距離情報検出動作は、モード切替ダイヤル１７の設定をＤモードに設定することにより、独立して駆動することもできる。このときカメラでは他のカメラと連動することなく、独立して距離情報検出動作が実行される。
【００８５】
ステップ８０１では、垂直同期信号が出力されるとともに測距光制御が開始される。すなわち発光装置１４が駆動され、パルス状の測距光Ｓ３が断続的に出力される。次いでステップ８０２が実行され、ＣＣＤ２８による検知制御が開始される。すなわち図１８を参照して説明した距離情報検出動作が開始され、電荷掃出信号Ｓ１と電荷転送信号Ｓ９が交互に出力されて、距離情報の信号電荷Ｓ１１が垂直転送部５２において積分される。
【００８６】
ステップ８０３では、距離情報検出動作の開始から１フィールド期間が終了したか否か、すなわち新たに垂直同期信号が出力されたか否かが判定される。１フィールド期間が終了するとステップ８０４へ進み、垂直転送部５２において積分された距離情報の信号電荷がＣＣＤ２８から出力される。この信号電荷はステップ８０５において画像メモリ３４に一時的に記憶される。
【００８７】
ステップ８０６では測距光制御がオフ状態に切換えられ、発光装置１４の発光動作が停止する。ステップ８０７では、距離データの演算処理が行なわれ、ステップ８０８において距離データが画像メモリ３４に一時的に記憶され、このサブルーチンは終了する。
【００８８】
次にステップ８０７において実行される演算処理の内容を図１８を参照して説明する。
【００８９】
反射率Ｒの被写体が照明され、この被写体が輝度Ｉの２次光源と見做されてＣＣＤに結像された場合を想定する。このとき、電荷蓄積時間ｔの間にフォトダイオードに発生した電荷が積分されて得られる出力Ｓｎは、
Ｓｎ＝ｋ・Ｒ・Ｉ・ｔ                                    ・・・（２）
で表される。ここでｋは比例定数で、撮影レンズのＦナンバーや倍率等によって変化する。
【００９０】
図１８に示されるように電荷蓄積時間をＴU1、測距光Ｓ３のパルス幅をＴS 、距離情報の信号電荷Ｓ１２のパルス幅をＴD とし、１フィールド期間中のその電荷蓄積時間がＮ回繰り返されるとすると、得られる出力ＳＭ10は、
0004315545.tif 000003
となる。なお、パルス幅ＴD は
0004315545.tif 000004
と表せる。このとき被写体までの距離ｒは
ｒ＝Ｃ・ＳＭ10／（２・ｋ・Ｎ・Ｒ・Ｉ）                  ・・・（５）
で表せる。したがって比例定数ｋ、反射率Ｒ、輝度Ｉを予め求めておけば距離ｒが求められる。
【００９１】
次に図２０を参照して図４、図５のステップ１０７、ステップ２０７において実行される画像情報検出動作について説明する。なお、画像情報検出動作も距離情報検出動作と同様に、モード切替ダイアル１７をＶモードに設定することにより、独立して駆動することができる。すなわち、モード切替ダイアル１７がＶモードに設定されているカメラにおいては、他のカメラと連動することなく独立して距離情報検出動作が実行される。
【００９２】
ステップ９０１では、ＣＣＤ２８による通常の撮影動作（ＣＣＤビデオ制御）がオン状態に定められ、距離情報検出動作において撮像された被写体と同一の被写体の画像が撮像され画像データとして検出される。検出された画像データは、ステップ９０２において画像メモリ３４に一時的に記憶され、このサブルーチンは終了する。
【００９３】
以上の３次元画像検出システムの撮影動作により、カメラ１０ａ〜カメラ１０ｆにおいて取得されデータは、コンピュータ４１に転送され合成される。カメラからコンピュータへのデータの転送は、各カメラの記録媒体Ｍをコンピュータ４１に設けられたデータ読取装置４６（図２参照）に装着してコンピュータに読み込むか、インターフェースコネクタ２１ｃに接続されたインターフェースケーブルを介してコンピュータ４１へ転送される。
【００９４】
次に図２１〜図２６を参照して、リンク撮影動作により検出された３個のスポットを用いて各カメラにより検出された被写体までの距離データから、被写体の全体的な３次元形状を表す座標データを得る方法について説明する。
【００９５】
まず、各カメラにおいて検出される被写体までの距離データから、各カメラを基準とした座標系における被写体の座標値を算出する方法について説明する。
【００９６】
図２１は、カメラの撮影光学系における焦点Ｐf を座標原点に取ったカメラ座標系ｘｙｚと、ＣＣＤ２８上の任意の点Ｐ（画素）と、それに対応する被写体表面上の点Ｑとの関係を模式的に示している。ｙ軸は光軸Ｌｐに一致しており、ｚ軸はＣＣＤ２８の垂直軸に並行に取られ、その向きは上向きである。またｘ軸はＣＣＤ２８の水平軸に並行にとられている。点Ｐc はＣＣＤ２８の受光面と光軸Ｌｐの交点であり、受光面の中心に一致する。点ＱはＣＣＤ２８上の点Ｐの画素に対応する被写体上の点であり、その座標は（ｘQ ，ｙQ ，ｚQ ）である。平面Πは点Ｑを含むＣＣＤ２８に平行な平面である。点ＱC は光軸Ｌｐ（ｙ軸）と平面Πの交点であり、その座標は（０，ｙQ ，０）である。
【００９７】
図２２は、ＣＣＤ２８の受光面を正面から見た図である。ＣＣＤ２８の水平、垂直方向の長さはそれぞれ２×Ｈ0 、２×Ｖ0 である。点ＰはＣＣＤ２８の中心ＰC から左へＨP 、上へＶP の距離にある。点ＰH は、点ＰからＣＣＤ２８の水平軸ＬH へ下ろした垂線の足である。また点ＰV は、点ＰからＣＣＤ２８の垂直軸ＬV へ下ろした垂線の足である。
【００９８】
図２３は、焦点Ｐf とＣＣＤ２８との関係を焦点Ｐf とＣＣＤ２８の水平軸ＬH を含む平面上で表したものであり、角Θ0 は水平画角、ｆは焦点距離である。線分Ｐf ＰH が光軸Ｌｐとなす角をΘP とすると、角ΘP は、
ΘP ＝ｔａｎ-1（Ｈp ／ｆ）                              ・・・（６）
によって求められる。
【００９９】
図２４は、焦点Ｐf とＣＣＤ２８との関係を焦点Ｐf とＣＣＤ２８の垂直軸ＬV を含む平面上で表したものであり、角θ0 は垂直画角である。線分Ｐf ＰV が光軸Ｌｐとなす角をθP とすると、角θP は、
θP ＝ｔａｎ-1（Ｖp ／ｆ）                              ・・・（７）
によって求められる。
【０１００】
焦点Ｐf と点Ｐを結ぶ線分Ｐf Ｐの長さは、線分Ｐf ＰH と線分ＰC ＰV の長さから、
Ｐf Ｐ＝（Ｐf ＰH 2 ＋ＰC ＰV 2 ）1/2                   ・・・（８）
によって求められる。ここで、（８）式のＰf ＰH 、ＰC ＰV は、
ＰC ＰV ＝ＶP 、
Ｐf ＰH ＝ｆ／ｃｏｓΘP 
なので、
Ｐf Ｐ＝（（ｆ／ｃｏｓΘP ）2 ＋ＶP 2 ）1/2             ・・・（９）
と表すことができる。
【０１０１】
線分Ｐf Ｑの長さと、線分Ｐf Ｐの長さの比Ｐf Ｐ／Ｐf Ｑをμとすると、点Ｑの座標成分ｘQ 、ｙQ 、ｚQ は、
ｘQ ＝ＨP ／μ                                        ・・・（１０）
ｙQ ＝ＶP ／μ                                        ・・・（１１）
ｚQ ＝ｆ／μ                                          ・・・（１２）
で算出される。焦点距離ｆおよびＣＣＤ２８の任意の画素に対応する点Ｐまでの距離ＨP 、ＶP は既知である。また、線分Ｐf Ｑの長さは、焦点Ｐf から点Ｐに対応する被写体の点Ｑまでの距離であり、焦点距離ｆは既知なので、ステップ８０７の演算処理の結果を用いて算出可能である。点Ｐは、ＣＣＤ２８の１つの画素を代表したものであり、上述の計算はＣＣＤ２８の全ての画素に対して可能であり、全ての画素（点Ｐ）に対応する被写体（点Ｑ）の座標（ｘQ ，ｙQ ，ｚQ ）が算出される。
【０１０２】
次に、参照点である３個のスポットに基づいて、あるカメラ（スレーブカメラ）を基準とした座標系ｘ’ｙ’ｚ’をリンク撮影において対を成したカメラ（マスターカメラ）を基準とした座標系ｘｙｚへ変換する方法について説明する。
【０１０３】
図２５、図２６は人頭模型の正面に据えたカメラと、模型の左斜め前に据えたカメラで撮影した画像を表しており、図２５は、マスターカメラにより撮影された画像、図２６はスレーブカメラにより撮影された画像にそれぞれ対応している。
【０１０４】
図２５における３個のスポットＳｐ1 、Ｓｐ2 、Ｓｐ3 は、図２６における３個のスポットＳｐ1 ’、Ｓｐ2 ’、Ｓｐ3 ’にそれぞれ対応し、同一スポットを２つの異なる方向から撮影したものである。座標系ｘｙｚにおける３個のスポットＳｐ1 、Ｓｐ2 、Ｓｐ3 の座標（位置ベクトル）をそれぞれ（ｘ1 ，ｙ1 ，ｚ1 ）、（ｘ2 ，ｙ2 ，ｚ2 ）、（ｘ3 ，ｙ3 ，ｚ3 ）とし、座標系ｘ’ｙ’ｚ’における３個のスポットＳｐ1 ’、Ｓｐ2 ’、Ｓｐ3 ’の座標をそれぞれ（ｘ1 ’，ｙ1 ’，ｚ1 ’）、（ｘ2 ’，ｙ2 ’，ｚ2 ’）、（ｘ3 ’，ｙ3 ’，ｚ3 ’）とする。これらの座標は図２１〜図２４を参照して説明した方法により算出することができる。
【０１０５】
座標系ｘ’ｙ’ｚ’から座標系ｘｙｚへの座標変換は、並行移動分を（Δｘ，Δｙ，Δｚ）で表すと、直交変換（回転）Ｔr により
【数１】
0004315545.tif 000005
のように行なえる。直交変換Ｔr の成分αijは、参照点である３個のスポットの座標値から以下のように求めることができる。
【０１０６】
Ｓｐ1 からＳｐ2 、Ｓｐ2 からＳｐ3 、Ｓｐ3 からＳｐ1 への変位ベクトルをそれぞれ、
ΔＳｐ1 ＝（ｘ2 −ｘ1 ，ｙ2 −ｙ1 ，ｚ2 −ｚ1 ）
ΔＳｐ2 ＝（ｘ3 −ｘ2 ，ｙ3 −ｙ2 ，ｚ3 −ｚ2 ）
ΔＳｐ3 ＝（ｘ1 −ｘ3 ，ｙ1 −ｙ3 ，ｚ1 −ｚ3 ）
とし、Ｓｐ1 ’からＳｐ2 ’、Ｓｐ2 ’からＳｐ3 ’、Ｓｐ3 ’からＳｐ1 ’への変位ベクトルをそれぞれ、
ΔＳｐ1 ’＝（ｘ2 ’−ｘ1 ’，ｙ2 ’−ｙ1 ’，ｚ2 ’−ｚ1 ’）
ΔＳｐ2 ’＝（ｘ3 ’−ｘ2 ’，ｙ3 ’−ｙ2 ’，ｚ3 ’−ｚ2 ’）
ΔＳｐ3 ’＝（ｘ1 ’−ｘ3 ’，ｙ1 ’−ｙ3 ’，ｚ1 ’−ｚ3 ’）
とすると、変位ベクトルは、座標系の並行移動に関して不変なので、
【数２】
0004315545.tif 000006
となり、これにより直交変換Ｔr の成分αijを求めることができる。また、並行移動（Δｘ，Δｙ，Δｚ）は、求められた直交変換Ｔr と、例えばＳｐ1 （Ｓｐ1 ’）の座標値から
【数３】
0004315545.tif 000007
と求められる。
【０１０７】
以上により、あるスレーブカメラを基準とした座標系で求めらた被写体の座標データを、マスターカメラを基準とした座標系に変換することができる。各カメラは隣り合うカメラの一方に対してマスターカメラであり、他方に対してはスレーブカメラなので、各組において求められる座標変換を繰り返し実行することにより、任意のカメラを基準とした座標系で表された被写体の座標値を所定のカメラを基準とした座標系に変換することができる。したがって、被写体の全体的な３次元形状を単一の座標系によって表すことができる。
【０１０８】
なお、本実施形態では、３個のスポット（参照点）がマスターカメラ及びスレーブカメラ双方において認識されたか否かの判定は、リンク撮影動作中において行われた。しかし、予め６個の発光素子２２を全て同時に発光させて３個以上の同一スポットが認識されるか否かを判定してもよく、そのためのモードを各カメラに設けてもよい。また、本実施形態では、スポットは撮影の目的である被写体表面上に投影されたが、目的とする被写体付近に存在し、撮影領域内にある目的としない被写体表面上に投影されていてもよい。
【０１０９】
本実施形態では、３個のスポットを座標変換のための参照点として認識したが、直線状にない４個以上のスポットを認識するようにしてもよく、このとき認識された４個以上のスポットを用いて、より高い精度で座標変換の式を算出してもよい。
【０１１０】
【発明の効果】
以上のように本発明によれば、被写体を複数の方向から撮影し、各撮影により得られる被写体の３次元形状を表す座標データを１つの座標系に合成するための３次元画像検出システム及び３次元画像検出装置を得ることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態であるカメラ型の３次元画像検出装置の斜視図である。
【図２】図１に示すカメラの回路構成を示すブロック図である。
【図３】３次元画像検出システムの構成を模式的に表した図である。
【図４】マスターカメラにおいて実行される３次元画像検出システムの撮影動作のプログラムのフローチャートである。
【図５】スレーブカメラにおいて実行される３次元画像検出システムの撮影動作のプログラムのフローチャートである。
【図６】リンク撮影モードを最初に立ち上げたカメラにおいて実行されるカメラリンク処理のプログラムのフローチャートである。
【図７】図６のカメラ以外のカメラにおいて実行されるカメラリンク処理のプログラムのフローチャートである。
【図８】各カメラ間におけるＭＯＤＥ信号の立ち上げ及び立ち下げのシーケンスを示したものである。
【図９】カメラ識別信号の送信状態を例示したものである。
【図１０】マスターカメラにおいて実行されるリンク撮影動作のプログラムのフローチャートである。
【図１１】スレーブカメラにおいて実行されるリンク撮影動作のプログラムのフローチャートである。
【図１２】スポット位置認識処理のプログラムのフローチャートである。
【図１３】リンク撮影時において出力される各信号のシーケンスである。
【図１４】測距光による距離測定の原理を説明するための図である。
【図１５】測距光、反射光、ゲートパルス、およびＣＣＤが受光する光量分布を示す図である。
【図１６】ＣＣＤに設けられるフォトダイオードと垂直転送部の配置を示す図である。
【図１７】ＣＣＤを基板に垂直な平面で切断して示す断面図である。
【図１８】被写体までの距離に関するデータを検出する距離情報検出動作のタイミングチャートである。
【図１９】距離情報検出動作のフローチャートである。
【図２０】画像情報検出動作のフローチャートである。
【図２１】焦点Ｐf を座標原点にとったカメラ座標系ｘｙｚと、ＣＣＤ２８上の任意の点Ｐと、それに対応する被写体表面上の点Ｑとの関係を模式的に表した図である。
【図２２】ＣＣＤ２８の正面図である。
【図２３】カメラの撮影光学系における焦点とＣＣＤ２８との関係を示す水平断面図である。
【図２４】カメラの撮影光学系における焦点とＣＣＤ２８との関係を示す垂直断面図である。
【図２５】人頭模型を正面から撮影したときの画像を表している。
【図２６】人頭模型を左斜め前から撮影したときの画像を表している。
【符号の説明】
１０  カメラ本体（３次元画像検出装置）
２２  発光装置（スポット光発光装置）
２２ａ  発光素子（スポット光発光素子）
２８  ＣＣＤ（撮像面）
【図１】
0004315545.tif 000008
【図２】
0004315545.tif 000009
【図３】
0004315545.tif 000010
【図４】
0004315545.tif 000011
【図５】
0004315545.tif 000012
【図６】
0004315545.tif 000013
【図７】
0004315545.tif 000014
【図８】
0004315545.tif 000015
【図９】
0004315545.tif 000016
【図１０】
0004315545.tif 000017
【図１１】
0004315545.tif 000018
【図１２】
0004315545.tif 000019
【図１３】
0004315545.tif 000020
【図１４】
0004315545.tif 000021
【図１５】
0004315545.tif 000022
【図１６】
0004315545.tif 000023
【図１７】
0004315545.tif 000024
【図１８】
0004315545.tif 000025
【図１９】
0004315545.tif 000026
【図２０】
0004315545.tif 000027
【図２１】
0004315545.tif 000028
【図２２】
0004315545.tif 000029
【図２３】
0004315545.tif 000030
【図２４】
0004315545.tif 000031
【図２５】
0004315545.tif 000032
【図２６】
0004315545.tif 000033