(57)【特許請求の範囲】
【請求項１】
物体にパターン光を投射し、前記物体で反射した前記パターン光の反射光に基づいて前記物体の形状を計測する３次元計測装置であって、
計測された物体形状を特定色の濃淡で示す距離画像を表示するモニタ手段と、
前記距離画像の画素毎に前記反射光の受光データの値があらかじめ定められた所定範囲内であるかどうかにより計測値の合否を判定する計測値判定手段とを有し、
前記距離画像の表示に際して、前記受光データの値が前記所定範囲外と判定された部分について前記特定色と異なる色で強調表示をするように構成された
ことを特徴とする３次元計測装置。
【請求項２】
最新の計測で得られた物体の撮影情報を保持した状態で動作条件の変更操作を受け付け、変更操作に呼応して、新たに指定された動作条件に対応した距離画像を、保持されている前記撮影情報に基づいて生成して表示するプレビュー機能を有した
請求項１記載の３次元計測装置。
【請求項３】
前記パターン光はスリット光である
請求項１又は請求項２に記載の３次元計測装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、特定の検出光を投射して物体形状を非接触で計測する３次元計測装置に関する。
【０００２】
【従来の技術】
レンジファインダと呼称される非接触型の３次元計測装置は、接触型に比べて高速の計測が可能であることから、ＣＧシステムやＣＡＤシステムへのデータ入力、身体計測、ロボットの視覚認識などに利用されている。
【０００３】
レンジファインダに好適な計測方法としてスリット光投影法（光切断法ともいう）が知られている。この方法は、物体を光学的に走査して三角測量の原理により３次元画像（距離画像）を得る方法であり、特定の検出光を照射して物体を撮影する能動的計測方法の一種である。３次元画像は、物体上の複数の部位の３次元位置を示す画素の集合である。スリット光投影法では、検出光として断面が直線状のスリット光が用いられる。スリット光に代えて、スポット光、ステップ光、濃度パターン光などを投射する光投射法も知られている。
【０００４】
図２１はスリット光投影法の概要を示す図、図２２はスリット光投影法による計測の原理を説明するための図である。
計測対象の物体Ｑに断面が細い帯状のスリット光Ｕを投射し、その反射光を例えば２次元撮像デバイス（エリアセンサ）の撮像面Ｓ２に入射させる〔図２１（ａ）〕。物体Ｑの照射部分が平坦であれば、撮影像（スリット画像）は直線になる〔図２１（ｂ）〕。照射部分に凹凸があれば、直線が曲がったり階段状になったりする〔図２１（ｃ）〕。つまり、計測装置と物体Ｑとの距離の大小が撮像面Ｓ２における反射光の入射位置に反映する〔図２１（ｄ）〕。スリット光Ｕをその幅方向に偏向することにより、受光側から見える範囲の物体表面を走査して３次元位置をサンプリングすることができる。サンプリング点数はイメージセンサの画素数に依存する。
【０００５】
図２２において、投光の起点Ａと受光系のレンズの主点Ｏとを結ぶ基線ＡＯが受光軸と垂直になるように、投光系と受光系とが配置されている。受光軸は撮像面Ｓ２に対して垂直である。なお、レンズの主点とは、有限遠の被写体の像が撮像面Ｓ２に結像したときの、いわゆる像距離（image distance）ｂだけ撮像面Ｓ２から離れた受光軸上の点（後側主点）である。以下において、像距離ｂを実効焦点距離Ｆｒｅａｌということがある。
【０００６】
主点Ｏを３次元直交座標系の原点とする。受光軸がＺ軸、基線ＡＯがＹ軸、スリット光の長さ方向がＸ軸である。スリット光Ｕが物体上の点Ｐ（Ｘ，Ｙ，Ｚ）を照射したときの投光軸と投光基準面（受光軸と平行な投光面）との角度をθａ、受光角をθｐとすると、点Ｐの座標Ｚは（１）式で表される。
【０００７】
基線長Ｌ＝Ｌ１＋Ｌ２＝Ｚｔａｎθａ＋Ｚｔａｎθｐ
∴    Ｚ＝Ｌ／（ｔａｎθａ＋ｔａｎθｐ）    …（１）
なお、受光角θｐとは、点Ｐと主点Ｏとを結ぶ直線と、受光軸を含む平面（受光軸平面）とがなす角度である。
【０００８】
撮像倍率β＝ｂ／Ｚ  であるので、撮像面Ｓ２の中心と受光画素とのＸ方向の距離をｘｐ、Ｙ方向の距離をｙｐとすると〔図２２（ａ）参照〕、点Ｐの座標Ｘ，Ｙは、（２），（３）式で表される。
【０００９】
Ｘ＝ｘｐ／β      …（２）
Ｙ＝ｙｐ／β      …（３）
角度θａはスリット光Ｕの偏向の角速度によって一義的に決まる。受光角θｐはｔａｎθｐ＝ｂ／ｙｐの関係から算出できる。つまり、撮像面Ｓ２上での位置（ｘｐ，ｙｐ）を測定することにより、そのときの角度θａに基づいて点Ｐの３次元位置を求めることができる。
【００１０】
以上の説明は、理想的な薄肉レンズ系を前提としたものである。実際の厚肉レンズ系では、図２２（ｃ）のように主点Ｏは前側主点Ｈと後側主点Ｈ’とに分かれる。
【００１１】
従来において、使用態様の上で撮影距離を可変としたレンジファインダには、パッシブ型測距センサが設けられている（特開平７−１７４５３６号）。測距の結果は、ＡＦ（オートフォーカシング）、及び投射光強度との設定に用いられている。
【００１２】
【発明が解決しようとする課題】
しかし、測距結果に応じて投射光強度を調整したとしても、物体面の反射率が過小であったときには検出光の受光量が下限値を下回り、適正な計測結果が得られない。環境光の入射や物体面での正反射のために受光量が上限値を越えた場合にも適正な計測結果が得られない。また、測距の結果に基づいて設定された計測距離範囲が計測可能から外れると、計測の誤差が大きくなる。
【００１３】
従来では、反射率、対物間距離、計測範囲の設定状態といった計測条件が不適正であったときに、実際には適正な計測結果が得られていないにも係わらず、ユーザーが適正な計測が行われたものと判断して計測作業を終えてしまうことがあるという問題があった。
【００１４】
本発明は、ユーザーが計測条件の適否を計測の前又は後に確認して適切な操作を行うことのできる３次元計測装置の提供を目的としている。
【００１９】
【課題を解決するための手段】
請求項１の発明の装置は、物体にパターン光を投射し、前記物体で反射した前記パターン光の反射光に基づいて前記物体の形状を計測する３次元計測装置であって、計測された物体形状を特定色の濃淡で示す距離画像を表示するモニタ手段と、前記距離画像の画素毎に前記反射光の受光データの値があらかじめ定められた所定範囲内であるかどうかにより計測値の合否を判定する計測値判定手段とを有し、前記距離画像の表示に際して、前記受光データの値が前記所定範囲外と判定された部分について前記特定色と異なる色で強調表示をするように構成される。
【００２０】
請求項２の発明の装置は、最新の計測で得られた物体の撮影情報を保持した状態で動作条件の変更操作を受け付け、変更操作に呼応して、新たに指定された動作条件に対応した距離画像を、保持されている前記撮影情報に基づいて生成して表示するプレビュー機能を有している。
【００２１】
請求項３の発明において、前記パターン光はスリット光である。
【００２２】
【発明の実施の形態】
図１は本発明に係る計測システム１の構成図である。
計測システム１は、スリット光投影法によって立体計測を行う３次元カメラ（レンジファインダ）２と、３次元カメラ２の出力データを処理するホスト３とから構成されている。
【００２３】
３次元カメラ２は、物体Ｑ上の複数のサンプリング点の３次元位置を特定する計測データ（スリット画像データ）とともに、物体Ｑのカラー情報を示す２次元画像及びキャリブレーションに必要なデータを出力する。三角測量法を用いてサンプリング点の座標を求める演算処理はホスト３が担う。
【００２４】
ホスト３は、ＣＰＵ３ａ、ディスプレイ３ｂ、キーボード３ｃ、及びマウス３ｄなどから構成されたコンピュータシステムである。ＣＰＵ３ａには計測データ処理のためのソフトウェアが組み込まれている。ホスト３と３次元カメラ２との間では、オンライン及び可搬型の記録メディア４によるオフラインの両方の形態のデータ受渡しが可能である。記録メディア４としては、光磁気ディスク（ＭＯ）、ミニディスク（ＭＤ）、メモリカードなどがある。
【００２５】
図２は３次元カメラ２の外観を示す図である。
ハウジング２０の前面に投光窓２０ａ及び受光窓２０ｂが設けられている。投光窓２０ａは受光窓２０ｂの上側にある。内部の光学ユニットＯＵが射出するスリット光（所定幅ｗの帯状のレーザビーム）Ｕは、投光窓２０ａを通って計測対象の物体（被写体）に向かう。スリット光Ｕの長さ方向Ｍ１の放射角度φは固定である。物体の表面で反射したスリット光Ｕの一部が受光窓２０ｂを通って光学ユニットＯＵに入射する。なお、光学ユニットＯＵは、投光軸と受光軸との相対関係を適正化するための２軸調整機構を備えている。
【００２６】
ハウジング２０の上面には、ズーミングボタン２５ａ，２５ｂ及びレリーズボタン２７が設けられている。図２（ｂ）のように、ハウジング２０の背面には、液晶ディスプレイ（ＬＣＤ）２１、カーソルボタン２２、セレクトボタン２３、アンドゥーボタン２４、レコードボタン２８、アナログ出力端子３１，３２、デジタル出力端子３３、及び記録メディア４の着脱口３０ａが設けられている。レコードボタン２８はフォーカスロックボタンを兼ねる。液晶ディスプレイ２１は操作画面の表示手段及び電子ファインダとして用いられる。ユーザー（操作者）は背面の各ボタンを押すことにより撮影モードの設定を行うことができる。アナログ出力端子３１からは計測データが出力され、アナログ出力端子３１からは２次元画像信号が例えばＮＴＳＣ形式で出力される。デジタル出力端子３３は例えばＳＣＳＩ端子である。
【００２７】
図３は３次元カメラ２の機能構成を示すブロック図である。図中の実線矢印は電気信号の流れを示し、破線矢印は光の流れを示している。
３次元カメラ２は、上述の光学ユニットＯＵを構成する投光側及び受光側の２つの光学系４０，５０を有している。光学系４０において、半導体レーザ（ＬＤ）４１が射出する波長６９０ｎｍのレーザビームは、投光レンズ系４２を通過することによってスリット光Ｕとなり、ガルバノミラー（走査手段）４３によって偏向される。半導体レーザ４１のドライバ４４、投光レンズ系４２の駆動系４５、及びガルバノミラー４３の駆動系４６は、システムコントローラ６１によって制御される。
【００２８】
光学系５０において、ズームユニット５１によって集光された光はビームスプリッタ５２によって分光される。半導体レーザ４１の発振波長帯域の光は、計測用のイメージセンサ５３に入射する。可視帯域の光はモニタ用のカラーイメージセンサ５４に入射する。イメージセンサ５３及びカラーイメージセンサ５４は、どちらもＣＣＤエリアセンサである。ズームユニット５１は内焦型であり、入射光の一部がオートフォーカシング（ＡＦ）に利用される。ＡＦ機能は、ＡＦセンサ５７とレンズコントローラ５８とフォーカシング駆動系５９によって実現される。ズーミング駆動系６０は電動ズーミングのために設けられている。
【００２９】
イメージセンサ５３による撮像情報は、ドライバ５５からのクロックに同期して出力処理回路６２へ転送される。出力処理回路６２によってイメージセンサ５３の各画素毎に対応する計測データＤｓが生成され、出力処理回路６２内のメモリに一旦格納される。一方、カラーイメージセンサ５４による撮像情報は、ドライバ５６からのクロックに同期してカラー処理回路６７へ転送される。カラー処理を受けた撮像情報は、ＮＴＳＣ変換回路７０及びアナログ出力端子３２を経てオンライン出力され、又はディジタル画像生成部６８で量子化されてカラー画像メモリ６９に格納される。
【００３０】
出力処理回路６２は、計測データＤｓに基づいて計測結果を示す距離画像データＤ２１を生成し、マルチプレクサ７２に出力する。マルチプレクサ７２は、システムコントローラ６１の指示に従って、距離画像データＤ２１及びカラー画像メモリ６９からのカラー画像データＤ２２の２つの入力のうちの一方を出力として選択する。マルチプレクサ７２によって選択されたデータは、Ｄ／Ａ変換器７３を経てアナログのモニタ表示信号としてキャラクタジェネレータ７１に転送される。キャラクタジェネレータ７１は、モニタ表示信号が示す画像とシステムコントローラ６１が指定した文字や記号とを合成し、合成画像をＬＣＤ２１へ出力する。
【００３１】
ユーザーがレコードボタン２８を操作してデータ出力（録画）を指示すると、出力処理回路６２内の計測データＤｓが、ＳＣＳＩコントローラ６６又はＮＴＳＣ変換回路６５によって所定形式でオンライン出力され、又は記録メディア４に格納される。計測データＤｓのオンライン出力には、アナログ出力端子３１又はディジタル出力端子３３が用いられる。また、カラー画像データＤ２２がカラー画像メモリ６９からＳＣＳＩコントローラ６６へ転送され、ディジタル出力端子３３からオンライン出力され、又は計測データＤｓと対応づけて記録メディア４に格納される。カラー画像は、イメージセンサ５３による距離画像と同一の画角の像であり、ホスト３側におけるアプリケーション処理に際して参考情報として利用される。カラー情報を利用する処理としては、例えばカメラ視点の異なる複数組の計測データを組み合わせて３次元形状モデルを生成する処理、３次元形状モデルの不要の頂点を間引く処理などがある。
【００３２】
システムコントローラ６１は、ブザー７５を駆動して動作確認音又は警告音を発生させる。また、出力処理回路６２に対して、モニタ表示のためのスケール値ｓｃを与える。出力処理回路６２は、システムコントローラ６１に対して、後述する３種の警告信号Ｓ１１〜１３、及び計測データＤｓの一部である受光データＤｇを出力する。
【００３３】
図４は計測システム１における３次元位置の算出の原理図である。同図では理解を容易にするため、図２１及び図２２と対応する要素には同一の符号を付してある。
【００３４】
イメージセンサ５３の撮像面Ｓ２上で複数画素分となる比較的に幅の広いスリット光Ｕを物体Ｑに照射する。具体的にはスリット光Ｕの幅を５画素分とする。スリット光Ｕは、サンプリング周期毎に撮像面Ｓ２上で１画素ピッチｐｖだけ移動するように上から下に向かって偏向され、それによって物体Ｑが走査される。サンプリング周期毎にイメージセンサ５３から１フレーム分の光電変換情報が出力される。
【００３５】
撮像面Ｓ２の１つの画素ｇに注目すると、走査中に行うＮ回のサンプリングのうちの５回のサンプリングにおいて有効な受光データが得られる。これら５回分の受光データに対する補間演算によって注目画素ｇがにらむ範囲の物体表面ａｇをスリット光Ｕの光軸が通過するタイミング（時間重心Ｎｐｅａｋ：注目画素ｇの受光量が最大となる時刻）を求める。図４（ｂ）の例では、ｎ回目とその１つ前の（ｎ−１）回目の間のタイミングで受光量が最大である。求めたタイミングにおけるスリット光の投射方向と、注目画素ｇに対するスリット光の入射方向との関係に基づいて、物体Ｑの位置（座標）を算出する。これにより、撮像面の画素ピッチｐｖで規定される分解能より高い分解能の計測が可能となる。
【００３６】
注目画素ｇの受光量は物体Ｑの反射率に依存する。しかし、５回のサンプリングの各受光量の相対比は受光の絶対量に係わらず一定である。つまり、物体色の濃淡は計測精度に影響しない。
【００３７】
本実施形態の計測システム１では、３次元カメラ２がイメージセンサ５３の画素ｇ毎に５回分の受光データを計測データとしてホスト３に出力し、ホスト３が計測データに基づいて物体Ｑの座標を算出する。３次元カメラ２における各画素ｇに対応した計測データの生成は、出力処理回路６２が担う。
【００３８】
図５は出力処理回路６２のブロック図、図６はイメージセンサ５３の読出し範囲を示す図である。
出力処理回路６２は、クロック信号ＣＫを出力するクロック発生回路６２０、イメージセンサ５３の出力する光電変換信号のレベルを最適化するための増幅器６２１、クロック信号ＣＫに同期して各画素ｇの光電変換信号を８ビットの受光データＤｇに変換するＡＤ変換器６２２、直列接続された４つのフレームディレイメモリ６２３〜６２６、コンパレータ６２７、フレーム番号（サンプリング番号）ＦＮを指し示すジェネレータ６２８、マルチプレクサ６２９、６個のメモリ６３０Ａ〜Ｆ、警告判別回路６３１、スケール発生回路６３２、及び画像合成回路６３３を有している。増幅器６２１のゲインは可変であり、システムコントローラ６１によって適切な値に設定される。４つのフレームディレイメモリ６２３〜６２６は、イメージセンサ５３の各画素ｇについて５フレーム分の受光データＤｇを同時にメモリ６３０Ａ〜Ｅに出力するために設けられている。
【００３９】
メモリ６３０Ａ〜Ｅは、有効な５回分の受光データＤｇを記憶するために設けられており、それぞれが計測のサンプリング点数（つまり、イメージセンサ５３の有効画素数）と同数個の受光データＤｇを記憶可能な容量をもつ。メモリ６３０Ｆは、画素ｇ毎に特定のフレーム番号ＦＮを記憶するために設けられており、サンプリング点数と同数個のフレーム番号ＦＮを記憶可能な容量をもつ。メモリ６３０Ｂ〜Ｆには、書込み信号としてコンパレータ６２７の出力信号Ｓ６２７が共通に加えられる。これに対して、メモリ６３０Ａには、出力信号Ｓ６２７とクロック信号ＣＫの２つの信号のうち、マルチプレクサ６２９によって選択された一方の信号が書込み信号として加えられる。クロック信号ＣＫは予備計測において書込み信号として選択される。つまり、予備計測ではＡＤ変換器６２２の変換動作と同期してメモリ６３０Ａの書込みが行われる。
【００４０】
予備計測に続いて行われる計測（これを本計測と呼称する）において、イメージセンサ５３における１フレームの読出しは、撮像面Ｓ２の全体ではなく、高速化を図るために図６のように撮像面Ｓ２の一部の有効受光エリア（帯状画像）Ａｅのみを対象に行われる。有効受光エリアＡｅはスリット光Ｕの偏向に伴ってフレーム毎に１画素分だけシフトする。本実施形態では、有効受光エリアＡｅのシフト方向の画素数は３２に固定されている。この３２画素分の幅が計測対象となる距離範囲（計測可能範囲）に対応する。ＣＣＤエリアセンサの撮影像の一部のみを読み出す手法は、特開平７−１７４５３６号公報に開示されている。
【００４１】
ＡＤ変換部６２２は、１フレーム毎に３２ライン分の受光データＤｇを画素ｇの配列順にシリアルに出力する。各フレームディレイメモリ６２３〜６２６は、３１（＝３２−１）ライン分の容量をもつＦＩＦＯである。ＡＤ変換部６２２から出力された注目画素ｇの受光データＤｇは、２フレーム分だけ遅延された時点で、コンパレータ６２６によって、メモリ６３０Ｃが記憶する注目画素ｇについての過去の受光データＤｇの最大値と比較される。遅延された受光データＤｇ（フレームディレイメモリ６２４の出力）が過去の最大値より大きい場合に、その時点のＡＤ変換部６２２の出力及び各フレームディレイメモリ６２３〜６２６の出力が、メモリ６３０Ａ〜Ｅにそれぞれ格納され、メモリ６３０Ａ〜Ｅの記憶内容が書換えられる。これと同時にメモリ６３０Ｆには、メモリ６３０Ｃに格納する受光データＤｇに対応したフレーム番号ＦＮが格納される。ただし、ここでのフレーム番号ＦＮは、撮像面Ｓ２の全体における通しのライン番号（Ｙ方向の画素番号）ではなく、上述した３２画素幅の有効受光エリアＡｅ内でのライン番号であり、０〜３１の範囲の値をとる。３２ライン分ずつの読出しの順位（すなわち注目画素ｇのＹ方向の位置）とフレーム番号ＦＮとにより、撮像面Ｓ２の全体におけるライン番号を特定することができる。
【００４２】
ｎ番目のラインで注目画素ｇの受光量が最大になった場合には、メモリ６３０Ａに（ｎ＋２）番目のラインのデータが格納され、メモリ６３０Ｂに（ｎ＋１）番目のフレームのデータが格納され、メモリ６３０Ｃにｎ番目のフレームのデータが格納され、メモリ６３０Ｄに（ｎ−１）番目のフレームのデータが格納され、メモリ６３０Ｅに（ｎ−２）番目のフレームのデータが格納され、メモリ６３０Ｆにｎが格納される。本計測の結果としてホスト３へ送られる上述の計測データＤｓは、メモリ６３０Ａ〜Ｅに格納された受光データＤｇとメモリ６３０Ｆに格納されたフレーム番号ＦＮとを合わせたデータである。
【００４３】
警告判別回路６３１、スケール発生回路６３２、及び画像合成回路６３３は、計測結果のモニタ表示のための回路である。警告判別回路６３１には、メモリ６３０Ｃからの受光データＤｇ、メモリ６３０Ｆからのフレーム番号ＦＮ、及びシステムコントローラ６１からのスケール値ｓｃが入力される。警告判別回路６３１は、３種の入力の値の組合せに応じて、計測結果である３次元形状を無彩色の濃淡（グレースケール）で表した距離画像データＤ２１と、３種の警告信号Ｓ１１〜１３を出力する。距離画像データＤ２１は、具体的には、画像の各画素の表示色を規定するＲ，Ｇ，Ｂの３色の輝度データである。スケール発生回路６３２は、距離画像の濃淡と対物間距離との関係を示す帯状のグラデーション画像（スケールバー）９０を生成する。画像合成回路６３３は、距離画像データＤ２１にスケールバー９０の表示データを組み入れる。
【００４４】
図７は警告判別回路６３１のブロック図、図８は警告判別回路６３１の入力と出力との関係を表形式で示す図である。
警告判別回路６３１は、２個のコンパレータ６３１１，６３１２とルックアップテーブル（ＬＵＴ）６３１３とから構成されている。コンパレータ６３１１，６３１２には、メモリ６３０Ｃから有効画素数の受光データＤｇが画素毎にシリアルに入力される。一方のコンパレータ６３１１は、注目画素の最大受光量を示す受光データＤｇの値が許容受光量の下限値である閾値ｔｈＢより小さいときに、低輝度検出信号ＳＬを出力する。他方のコンパレータ６３１２は、受光データＤｇの値が許容受光量の上限値である閾値ｔｈＡを越えたときに、オーバーフロー警告信号Ｓ１３を出力する。ＬＵＴ６３１３は、フレーム番号ＦＮ、スケール値ｓｃ、低輝度検出信号ＳＬ、及びオーバーフロー警告信号Ｓ１３の値の組合せに応じて、距離画像データＤ２１、近接警告信号Ｓ１１、及び遠方警告信号Ｓ１２を出力する。
【００４５】
スケール値ｓｃは、有効受光エリアＡｅの幅で規定される計測可能範囲内の計測基準面の位置を示し、０〜３１の値をとる。スケール値ｓｃのデフォルト値は１６である。なお、本計測では、計測基準面の位置をほぼ中央とする計測可能範囲が設定される。フレーム番号ＦＮは、計測可能範囲内における物体位置（厳密には注目画素に対応したサンプリング点の位置）を示す。基本的には距離画像データＤ２１は、このフレーム番号ＦＮをそのままグレースケール変換したデータである。すなわち、グレースケールにおけるＲ，Ｇ，Ｂの輝度Ｙｒ，Ｙｇ，Ｙｂは８×（ＦＮ−ｓｃ＋１６）である。ただし、本実施形態においては、計測結果の良否を視覚的に容易に理解できるように、特定の画素についてカラー表示による強調が行われる。
【００４６】
図８のように、低輝度検出信号ＳＬがアクティブ（オン）であれば、その画素の表示色はブラックである。つまり、表示画面のうち、物体の反射率が極端に小さい画素及び計測可能範囲外の画素はブラックで表示される。オーバーフロー警告信号Ｓ１３がオンであれば、正確に時間重心Ｎｐｅａｋを算出することができないことをユーザーに知らせるため、その画素はレッドで表示される。計測基準面と物体との位置関係の理解を助けるため、フレーム番号ＦＮがスケール値ｓｃと等しい画素はシアンで表示される。そして、計測可能範囲の近接側の端縁に対応した画像がグリーンで表示され、遠方側の端縁に対応した画像はブルーで表示される。このような色分け表示により、ユーザーは物体の所望部分が正しく計測されているかを容易に確認することができる。
【００４７】
次に、３次元カメラ２及びホスト３の動作を計測の手順と合わせて説明する。以下では、計測のサンプリング点数を２４４×２５６とする。すなわち、実質的なフレーム数Ｎは２４４であり、撮像面Ｓ２におけるスリット長さ方向の画素数は２５６である。
【００４８】
ユーザーは、ＬＣＤ２１が表示するカラー画像を見ながら、カメラ位置と向きとを決めて画角を設定する。その際、必要に応じてズーミング操作を行う。３次元カメラ２ではカラーセンサ５４に対する絞り調整は行われず、電子シャッタ機能により露出制御されたカラーモニタ像が表示される。これは、絞りを開放状態とすることによってイメージセンサ５３の入射光量をできるだけ多くするためである。
【００４９】
図９は３次元カメラ２におけるデータの流れを示す図、図１０はホスト３におけるデータの流れを示す図、図１１は光学系の各点と物体Ｑとの位置関係を示す図である。
【００５０】
ユーザーによる画角選択操作（ズーミング）に応じて、ズームユニット５１のバリエータ部が移動するとともにフォーカシング部の移動によるフォーカシングが行われる。フォーカシングの過程でおおよその対物間距離ｄ0 が測定される。このような受光系のレンズ駆動に呼応して、投光側のバリエータレンズの移動量が演算により算出され、算出結果に基づいてバリエータレンズの移動制御が行われる。投光側のレンズ制御は、撮影距離及び画角に係わらず、イメージセンサ５３に５画素分の幅のスリット光Ｕを入射させるためのものである。
【００５１】
システムコントローラ６１は、レンズコントローラ５８を介して、フォーカシング駆動系５９のエンコーダ出力（繰り出し量Ｅｄ）及びズーミング駆動系６０のエンコーダ出力（ズーム刻み値ｆｐ）を読み込む。システムコントローラ６１の内部において、歪曲収差テーブルＴ１、主点位置テーブルＴ２、及び像距離テーブルＴ３が参照され、繰り出し量Ｅｄ及びズーム刻み値ｆｐに対応した撮影条件データがホスト３へ出力される。ここでの撮影条件データは、歪曲収差パラメータ（レンズ歪み補正係数ｄ１，ｄ２）、前側主点位置ＦＨ、及び像距離ｂである。前側主点位置ＦＨは、ズームユニット５１の前側端点Ｆと前側主点Ｈとの距離で表される〔図２２（ｃ）参照〕。前側端点Ｆは固定であるので、前側主点位置ＦＨにより前側主点Ｈを特定することができる。
【００５２】
また、システムコントローラ６１は、特定の方向にスリット光Ｕを投射して計測環境を測定する予備計測を実行し、予備計測で得られた撮影情報に基づいて三角測量法により対物間距離ｄを求め、その対物間距離ｄに基づいて、繰り出し量Ｅｄを再設定するとともにレンズ駆動を行い、本計測の動作設定をする。設定項目には、半導体レーザ４１の出力（レーザ光強度）、スリット光Ｕの偏向条件（投射開始角、投射終了角、偏向角速度）などがある。
【００５３】
予備計測に際しては、おおよその対物間距離ｄ0 に平面物体が存在するものとして、撮像面Ｓ２の中央に反射光が入射するように投射角を設定する。半導体レーザ４１をパルス点灯して受光量を測定し、受光量が適正になるように投射強度を調整する。このとき、人体への安全と半導体レーザ４１の定格とを考慮した許容上限値に投射強度を設定しても必要な受光量が得られない場合には、計測を中止し、その旨の警告メッセージを表示するとともに警告音を発する。対物間距離ｄの算定においては、測距基準点である受光系の前側主点Ｈと投光の起点ＡとのＺ方向のオフセットｄｏｆｆを考慮する。偏向条件の算定に際しては、走査方向の端部においても中央部と同様の計測可能範囲ｄ’を確保するため、所定量（例えば８画素分）のオーバースキャンを行うようにする。投射開始角ｔｈ１、投射終了角ｔｈ２、偏向角速度ωは、次式で表される。
0003893169.tif 000002
β：撮像倍率（＝ｄ／実効焦点距離Ｆｒｅａｌ）
ｐｖ：画素ピッチ
ｎｐ：撮像面Ｓ２のＹ方向の有効画素数
Ｌ：基線長
このようにして算出された条件で本計測が行われる。物体Ｑが走査され、出力処理回路５２によって１画素当たり５フレーム分の計測データＤｓが生成される。そして、上述したように距離画像のモニタ表示が行われる。３次元カメラ２は、再計測の便宜を図るためのプレビュー機能（詳細は後述）を有している。ユーザーはモニタ表示を見た上で、必要に応じて再計測を指示する。再計測モードにおいてユーザーが計測条件を変更すると、新たな計測条件に対応した仮想の距離画像が前回の計測時の計測データＤｓに基づいて生成され、プレビュー画像として表示される。条件変更操作に呼応してプレビュー画像がリアルタイムで表示されるので、ユーザーは計測条件の最適化を効率的に進めることができる。ユーザーが条件変更の終了を入力すると、再計測が行われて新たな計測データＤｓが生成される。
【００５４】
ユーザーがレコードボタン２８をオンすると、計測データＤｓがホスト３へ送られる。同時に、偏向条件（偏向制御データＤ４３）及びイメージセンサ５３の仕様などを示す装置情報Ｄ１０も、ホスト３へ送られる。表１は３次元カメラ２がホスト３へ送る主なデータをまとめたものである。
【００５５】
【表１】
0003893169.tif 000003
【００５６】
投射開始角ｔｈ１及び投射終了角ｔｈ２の設定に際して、上述の式に代えて次の式を適用すれば、測定可能距離範囲を光軸方向にシフトさせることができる。
0003893169.tif 000004
ｐｉｔｃｈｏｆｆ：測定可能距離範囲のシフト量
後述のように対物間距離の算定の基準位置を物体の近接位置（３次元カメラ２側）に設定し、その前後に計測可能範囲ｄ’を設定すると、前側（３次元カメラ２側）の計測可能範囲が無駄になることが多い。したがって、シフト量ｐｉｔｃｈｏｆｆを設定して、前側２５％、後側７５％の割合になるように計測可能範囲ｄ’を後側へシフトさせるのが望ましい。
【００５７】
本実施形態のように有効受光エリアＡｅが３２画素幅である場合（つまり、ＣＣＤエリアセンサが３２ラインの読出し幅をもつ場合）、シフト量ｐｉｔｃｈｏｆｆを「８」とすれば、上述の割合の計測可能範囲が設定される。
【００５８】
図１０のように、ホスト３においては、スリット重心演算、歪曲収差の補正演算、カメラ視線方程式の演算、スリット面方程式の演算、及び３次元位置演算が実行され、それによって２４４×２５６個のサンプリング点の３次元位置（座標Ｘ，Ｙ，Ｚ）が算定される。サンプリング点はカメラ視線（サンプリング点と前側主点Ｈとを結ぶ直線）とスリット面（サンプリング点を照射するスリット光Ｕの光軸面）との交点である。
【００５９】
スリット光Ｕの時間重心Ｎｐｅａｋ（図４参照）は、各サンプリング時の受光データＤｇ（ｉ）を用いて（４）式で与えられる。
0003893169.tif 000005
５つの受光データの内の最小のデータｍｉｎＤｇ（ｉ）を差し引いて加重平均を求めることにより、環境光の影響を軽減することができる。
【００６０】
カメラ視線方程式は（５）式及び（６）式である。
（ｕ−ｕ０）＝（ｘｐ）＝（ｂ／ｐｕ）×〔Ｘ／（Ｚ−ＦＨ）〕  …（５）
（ｖ−ｖ０）＝（ｙｐ）＝（ｂ／ｐｖ）×〔Ｙ／（Ｚ−ＦＨ）〕  …（６）
ｂ：像距離
ＦＨ：前側主点位置
ｐｕ：撮像面における水平方向の画素ピッチ
ｐｖ：撮像面における垂直方向の画素ピッチ
ｕ：撮像面における水平方向の画素位置
ｕ０：撮像面における水平方向の中心画素位置
ｖ：撮像面における垂直方向の画素位置
ｖ０：撮像面における垂直方向の中心画素位置
スリット面方程式は（７）式である。
【００６１】
【数１】
0003893169.tif 000006
【００６２】
幾何収差は画角に依存する。歪はほぼ中心画素を中心として対象に生じる。したがって、歪み量は中心画素からの距離の関数で表される。ここでは、距離の３次関数で近似する。２次の補正係数をｄ１、３次の補正係数をｄ２とする。補正後の画素位置ｕ’，ｖ’は（８）式及び（９）式で与えられる。
【００６３】
0003893169.tif 000007
上述の（５）式及び（６）式において、ｕに代えてｕ’を代入し、ｖに代えてｖ’を代入することにより、歪曲収差を考慮した３次元位置を求めることができる。なお、キャリブレーションについては、電子情報通信学会研究会資料ＰＲＵ91-113［カメラの位置決めのいらない画像の幾何学的補正］小野寺・金谷、電子情報通信学会論文誌Ｄ-II vol. J74-D-II No.9 pp.1227-1235,'91/9 ［光学系の３次元モデルに基づくレンジファインダの高精度キャリブレーション法］植芝・吉見・大島、などに詳しい開示がある。
【００６４】
図１２はプレビュー機能を説明するための計測例を示す図、図１３は計測条件の変更例を示す図、図１４は図１３に対応したモニタ表示の内容を示す図である。
【００６５】
ここでは、計測対象の物体Ｑを鳥の置物とし、鳥の顔面に対する真正面の位置から計測を行うものとする。図１２のように、鳥の胴の前面側に高輝度部分ｑが存在する。図１３（ａ）は最初の計測時の計測可能範囲ｄ’の設定状態を示し、図１３（ｂ）は再計測時の計測可能範囲ｄ’の設定状態を示している。図１４（ａ）は図１３（ａ）に対応し、図１４（ｂ）は図１３（ｂ）に対応する。
【００６６】
最初の計測が終了した段階で、ＬＣＤ２１の画面には距離画像Ｇ１、スケールバー９０、計測基準位置ｅ１の対物間距離（単位はｍｍ）を表す数値ｚ１、計測可能範囲ｄ’の両端縁ｅ２，ｅ３の対物間距離を表す数値ｚ２，ｚ３、スケールバー９０における計測基準位置ｅ１に対応した表示輝度を示す矢印Ｚ４、及び投射光強度の設定値を表す数値ｚ５が表示される。なお、実際には、図１４（ａ）及び（ｂ）中の斜線部分はブラックで表示され、白抜き部分は図８で説明したように計測値に応じた濃度（明暗）の無彩色で表示される。通常、白抜き部分の全域が同一濃度となることはほとんどない。
【００６７】
図１３（ａ）においては、計測基準位置ｅ１が鳥の頭の中央付近に設定されており、くちばしの先端が計測可能範囲ｄ’より近接側にはみ出ている。このことは、図１４（ａ）の距離画像Ｇ１において、計測可能範囲ｄ’の近接側端縁ｅ２に対応したグリーンの部分（連続的又は断続的な線状の画素群）Ｅ２が存在することから判る。また、距離画像Ｇ１は、遠方側端縁ｅ３に対応したブルーの部分Ｅ３と、高輝度部分ｑに対応したレッドの部分Ｅｑとを含んでいる。
【００６８】
ここで、ユーザーが図１３（ｂ）のように計測可能範囲ｄ’を以前より近接側にシフトしたとする。操作としては、下向きのカーソルボタン２２（図２参照）を必要回数だけ押せばよい。カーソルボタン２２を押す毎に、矢印ｚ４は表示画面の下方側に移動し、数値Ｚ１が更新される。そして、この条件変更操作に呼応してモニタ画像がリアルタイムで書換えられる。図１３（ｂ）の状態では、くちばしの全体が計測可能範囲ｄ’の内側に入っている。このことは、図１４（ｂ）のプレビュー画像Ｇ１’の中に近接警告を意味するグリーンの部分がないことから判る。なお、プレビュー画像Ｇ１’は前回の計測データＤｇに基づいて生成されるので、距離画像Ｇ１で欠けているくちばしは実際には計測されていないことから、プレビュー画像Ｇ１’においてその部分はブラックで表示される。また、計測可能範囲ｄ’の変更に伴って、新たに計測可能範囲外となった部分もブラックで表示される。
【００６９】
図１５は３次元カメラ２の計測動作のフローチャートである。
フォーカスロック操作に呼応してアクティブ形式の予備撮影を行う（＃１１、１２）。測定した対物間距離ｄが仕様で定められた撮影距離範囲から外れている場合には、エラー処理を実行する（＃１３、２３）。エラー処理では、ＬＣＤ２１により所定のメッセージを表示するとともにブザー７５を鳴らす。対物間距離ｄが撮影距離範囲内であれば、その後のレリーズ操作に呼応して計測データＤｓを得るための撮影処理を行う（＃１４、１５）。一方、フォーカスロック操作が行われずにレリーズ操作が行われた場合も、予備撮影を行って対物間距離ｄの適否を判断する（＃２０〜２２）。対物間距離ｄ及び受光光量が適正であれば撮影処理に進み、不適正であればエラー処置を行う（＃１５、２３）。
【００７０】
撮影が終了した後、アンドゥー操作が行われた場合は、再計測処理を実行する（＃１６、１９）。レコード操作が行われた場合は、計測データＤｓをホスト３又は記憶媒体４へ出力する録画処理を実行する（＃１７、１８）。撮影処理ルーチン（＃１５）で図１４（ａ）の表示が行われており、操作者は測定できなかった部分を確認して、その撮影結果を採用するか、再計測を行うかを選択できる。
【００７１】
図１６は予備撮影のフローチャートである。
ＡＦセンサ５７の出力に基づいて投射方向を定め（＃１２１）、スリット光Ｕを投射する（＃１２２）。メモリ６３０Ａから撮像面Ｓ２全体に対応するモノクロ画像を取り込み（＃１２３）、撮像面Ｓ２におけるスリット光Ｕの受光光量及び入射位置を検出する（＃１２４）。そして、三角測量法により対物間距離ｄを求める（＃１２５）。
【００７２】
図１７は撮影のフローチャートである。
対物間距離ｄに応じて投射角範囲を設定し（＃１５１）、スキャンニングを行う（＃１５２）。スキャンニングで得られた距離画像のモニタ表示を行い（＃１５３）、出力処理回路６２による警告信号の出力の有無をチェックする（＃１５４）。近接警告信号Ｓ１１、遠方警告信号Ｓ１２、オーバーフロー警告信号Ｓ１３のいずれかが出力された場合には、出力された警告に応じたメッセージ表示を行い、ブザー７５を鳴らす（＃１５５、１５６）。予備撮影では時間を短縮するために撮影像の一部分（例えば中央部）について適否判別を行っている。そのため、その部分以外について本撮影でエラーの検出されることがある。
【００７３】
図１８は再計測処理のフローチャートである。
投射光量設定を行い（＃１９１）、その後のセレクト操作を受けて図１５のフローへリターンする（＃１９２）。セレクトボタン２３が押される以前に、上向き又は下向きのカーソルボタン２２が押されると、モニタ表示の矢印ｚ４を上方又は下方へ移動させる（＃１９３、１９４、１９８、１９９）。
【００７４】
移動後の矢印ｚ４の位置に対応した対物間距離ｄを算出し、数値ｚ１の表示を更新する（＃１９７）。スケール値ｓｃも矢印ｚ４の位置に対応した値に更新し（＃１９８）、プレビュー画像を表示する（＃１９９）。操作者は、このプレビュー画像によって、設定変更後の撮影結果を予測しながら設定変更を行うことができる。セレクトボタン２８が押されると、そのときの設定が記憶されたままリターンする。その後、＃１４でレリーズ操作があると上述の設定条件で撮影が行われる。
【００７５】
図１９はガルバノミラー４３とイメージセンサ５３との同期制御の一例を示すタイムチャート、図２０はガルバノミラー４３とイメージセンサ５３との同期制御の他の例を示すタイムチャートである。これらの図において符合の添字「ｔ」はテレ状態の値であることを示し、「ｗ」はワイドテレ状態の値であることを示している。
【００７６】
３次元カメラ２では、ズーム倍率によって画角を偏向するので、図１９のように低倍率時の偏向角θｗは高倍率時の偏向角θｔとりも大きい。システムコントローラ６１は、レリーズボタン２７からのレリーズ信号Ｓ２７を検知すると、まず、ガルバノミラー４３の回転を開始してから撮像を開始するまでの期間Ｔ２、すなわち停止位置から所定の角度位置までガルバノミラー４３を回転させるのに必要な時間を、ズーム倍率及び対物間距離に基づいて算出する。このとき、期間Ｔ２における偏向角速度を、センサ駆動期間Ｔｓにおける角速度ωと同じ値に設定する。角速度ωを安定させるためである。期間Ｔ２の算出を終えた後、ガルバノミラー４３の回転駆動を開始し、期間Ｔ２の経過後にイメージセンサ５３の駆動を開始する。
【００７７】
このようにシステムコントローラ６１がガルバノミラー４３及びイメージセンサ５３の両方を直接に制御する形態では、駆動のタイミングを正確に合わせるために、システムコントローラ６１に高速の処理が要求される。一方、専用のハードウェア又は市販のビデオ用タイミングジェネレータをセンサ駆動に用いることにより、システムコントローラ６１をガルバノミラー４３の制御に専念させて、制御の負担を軽減することも可能である。
【００７８】
すなわち、図２０において、ドライバ５５（図３参照）は、レリーズ信号Ｓ２７をビデオ同期信号Ｖｓｙｎｃの立上がりエッジで正規化し、レリーズ検知信号Ｓ２７’を生成する。また、ドライバ５５は、レリーズ検知信号Ｓ２７’の立上がりから一定時間Ｔ０’が経過した時点でセンサ駆動を開始する。レリーズ検知信号Ｓ２７’はシステムコントローラ６１に割込み信号として入力される。システムコントローラ６１は、レリーズ動作に先立って、上述の期間Ｔ２とともに、レリーズ検知信号Ｓ２７’の立上がりからミラーの回転を開始するまでの時間Ｔ１’（＝Ｔ０’−Ｔ２）を計算しておく。そして、レリーズ検知信号Ｓ２７’の割込みを受け付けると、その時点から時間Ｔ１’が経過した時点でガルバノミラーの回転を開始する。
【００７９】
以上の実施形態によれば、予備撮影時に警告が行われるので、操作者は本撮影を実行させずに条件の再設定を行うことができ、計測作業を効率良く進めることができる。
【００８０】
上述の実施形態においては、光切断法による計測を例に挙げたが、計測の方法は光切断法に限られるこのではなく、例えばパターン投影法であってもよい。パターン投影法では、パターンの投影方向と受光視野との関係で測定可能距離範囲が決まる。また、光切断法と同様に対象物体の反射率によっては、パターンの反射光が検出できなかったり、受光系がオーバーフローを起こしたりすることがある。そのような場合に警告するように構成すればよい。
【００８１】
【発明の効果】
請求項１乃至請求項３の発明によれば、ユーザーは計測条件の適否を計測の前又は後に確認して適切な操作を行うことができる。また、ユーザーは計測結果の良否を容易に判断することができる。
【００８４】
請求項２の発明によれば、ユーザーは動作条件の指定作業を効率的に進めることができる。
【図面の簡単な説明】
【図１】本発明に係る計測システムの構成図である。
【図２】３次元カメラの外観を示す図である。
【図３】３次元カメラの機能構成を示すブロック図である。
【図４】計測システムにおける３次元位置の算出の原理図である。
【図５】出力処理回路のブロック図である。
【図６】イメージセンサの読出し範囲を示す図である。
【図７】警告判別回路のブロック図である。
【図８】警告判別回路の入力と出力との関係を表形式で示す図である。
【図９】３次元カメラにおけるデータの流れを示す図である。
【図１０】ホストにおけるデータの流れを示す図である。
【図１１】光学系の各点と物体との位置関係を示す図である。
【図１２】プレビュー機能を説明するための計測例を示す図である。
【図１３】計測条件の変更例を示す図である。
【図１４】図１３に対応したモニタ表示の内容を示す図である。
【図１５】３次元カメラ２の計測動作のフローチャートである。
【図１６】予備撮影のフローチャートである。
【図１７】撮影のフローチャートである。
【図１８】再計測処理のフローチャートである。
【図１９】ガルバノミラーとイメージセンサとの同期制御の一例を示すタイムチャートである。
【図２０】ガルバノミラーとイメージセンサとの同期制御の他の例を示すタイムチャートである。
【図２１】スリット光投影法の概要を示す図である。
【図２２】スリット光投影法による計測の原理を説明するための図である。
【符号の説明】
２  ３次元カメラ（３次元計測装置）
４０  光学系（投光手段）
５３  イメージセンサ（撮像手段）
６１  システムコントローラ
Ｄｇ  受光データ（受光量）
Ｄｓ  計測データ（撮影情報）
Ｑ  物体
Ｕ  スリット光（検出光）
６３１  警告判別回路（条件判別手段）
【図１】
0003893169.tif 000008
【図２】
0003893169.tif 000009
【図３】
0003893169.tif 000010
【図４】
0003893169.tif 000011
【図５】
0003893169.tif 000012
【図６】
0003893169.tif 000013
【図７】
0003893169.tif 000014
【図８】
0003893169.tif 000015
【図９】
0003893169.tif 000016
【図１０】
0003893169.tif 000017
【図１１】
0003893169.tif 000018
【図１２】
0003893169.tif 000019
【図１３】
0003893169.tif 000020
【図１４】
0003893169.tif 000021
【図１５】
0003893169.tif 000022
【図１６】
0003893169.tif 000023
【図１７】
0003893169.tif 000024
【図１８】
0003893169.tif 000025
【図１９】
0003893169.tif 000026
【図２０】
0003893169.tif 000027
【図２１】
0003893169.tif 000028
【図２２】
0003893169.tif 000029