(57)【特許請求の範囲】
【請求項１】
３次元測定装置を用いて光電変換デバイスの受光面の画素が見ている視線方向が同一である物体上の点を複数回測定し、
前記物体上の点と前記３次元測定装置との距離に関する距離情報を測定ごとに取得し、前記各点についての前記距離情報の差異を求め、
前記差異が所定の値よりも小さい場合は前記測定が成功であると判別し、
前記差異が所定の値よりも大きい場合は前記測定が不成功であると判別する、
ことを特徴とする３次元測定方法。
【請求項２】
前記測定を成功であると判別した場合は、前記測定のうちいずれかの測定の結果を物体の３次元形状として採用する、
請求項１記載の３次元測定方法。
【請求項３】
前記３次元測定装置の測定範囲の奥行き方向のみについて前記差異を求め、その差異と所定の値との大小によって成功または不成功を判別する、
請求項１または請求項２記載の３次元測定方法。
【請求項４】
物体の３次元形状を測定し、
前記測定の開始時、終了時、またはその間において前記物体についての複数の２次元画像を取得し、
取得された前記２次元画像の差異を求め、
前記差異が所定の値よりも小さい場合は前記測定が成功であると判別し、
前記差異が所定の値よりも大きい場合は前記測定が不成功であると判別する、
ことを特徴とする３次元測定方法。
【請求項５】
前記各２次元画像から前記物体の特徴を表す点または線を抽出し、
抽出された前記点または前記線に基づいて前記差異を求める、
請求項４記載の３次元測定方法。
【請求項６】
物体の３次元形状を測定する３次元測定装置と、
前記３次元測定装置による測定ごとに前記物体上の点と前記３次元測定装置との距離に関する距離情報を取得する距離情報取得手段と、
前記３次元測定装置による測定における光電変換デバイスの受光面の画素が見ている視線方向が同一である物体上の点についての前記距離情報の差異を検出する差異検出手段と、
前記差異と所定の値とを比較して測定の成功または不成功を判別する判別手段と、
を有することを特徴とする３次元測定システム。
【請求項７】
物体の３次元形状を測定する３次元測定装置と、
前記測定の開始時、終了時、またはその間において前記物体についての複数の２次元画像を取得する画像取得手段と、
取得された前記２次元画像の差異を検出する差異検出手段と、
前記差異と所定の値とを比較して測定の成功または不成功を判別する判別手段と、
を有することを特徴とする３次元測定システム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、測定の対象物のぶれの検出が可能な３次元測定方法および３次元測定システムに関する。
【０００２】
【従来の技術】
従来より、２次元測定（２次元撮像）を行うカメラのぶれを補正する技術（特開平６−３０８５６２号）、またはカメラのぶれの量を検出する技術（特開平６−１３８５３１号）などが提案されている。これらの技術は、カメラの手ぶれを角加速度センサによって検出するものである。
【０００３】
ところで、一般に、３次元測定は２次元測定に比べて測定に長い時間を要する。例えば、２次元測定は数十分の一秒程度で済むのに対して、３次元測定には１〜数秒程度の時間を要するものもある。したがって、３次元測定においては、カメラ（３次元測定装置）の手ぶれおよび測定の対象物のぶれが２次元測定よりも問題となる。
【０００４】
３次元測定では、通常、カメラを固定した状態で測定が行われるので、カメラの手ぶれは問題にはならない。これに対し、測定の対象物が測定中に動いてしまう可能性については、２次元測定ではそれほど問題にならないが、３次元測定では大きな問題となる。
【０００５】
【発明が解決しようとする課題】
すなわち、動く可能性のある対象物、例えば人体の３次元測定を行う場合に、３次元測定装置を固定しておいても人体が測定中に動いてしまうことがある。測定中に動いた部分は正しく測定できない。それにも係わらず、従来においては、測定中に対象物が動いたかどうかを定量的にセンシングすることはなされていなかった。
【０００６】
したがって、測定されたデータは対象物が動かずに正しいものなのか、または動いてしまい不正確なものなのかの判断がなされておらず、測定の成功または不成功は測定者の主観的な判断に委ねられていた。
【０００７】
そこで、１／１２５秒程度の短時間で高速に３次元測定を行う方法がある。しかし、そのような高速の３次元測定装置では、測定の分解能が不十分であったり、仕組みが複雑且つ装置が大がかりで高価であったりする。
【０００８】
本発明は、このような問題点に鑑み、人物などのように測定中に動く可能性のある対象物を正確に測定するための３次元測定方法および３次元測定システムを提供することを目的とする。
【０００９】
本発明に係る３次元測定方法は、３次元測定装置を用いて光電変換デバイスの受光面の画素が見ている視線方向が同一である物体上の点を複数回測定し、前記物体上の点と前記３次元測定装置との距離に関する距離情報を測定ごとに取得し、前記各点についての前記距離情報の差異を求め、前記差異が所定の値よりも小さい場合は前記測定が成功であると判別し、前記差異が所定の値よりも大きい場合は前記測定が不成功であると判別する。
【００１０】
好ましくは、前記測定を成功であると判別した場合は、前記測定のうちいずれかの測定の結果を物体の３次元形状として採用する。
または、前記３次元測定装置の測定範囲の奥行き方向のみについて前記差異を求め、その差異と所定の値との大小によって成功または不成功を判別する。
【００１１】
または、物体の３次元形状を測定し、前記測定の開始時、終了時、またはその間において前記物体についての複数の２次元画像を取得し、取得された前記２次元画像の差異を求め、前記差異が所定の値よりも小さい場合は前記測定が成功であると判別し、前記差異が所定の値よりも大きい場合は前記測定が不成功であると判別する。
【００１２】
または、前記各２次元画像から前記物体の特徴を表す点または線を抽出し、抽出された前記点または前記線に基づいて前記差異を求める。
【００１５】
本発明に係る３次元測定システムは、物体の３次元形状を測定する３次元測定装置と、前記３次元測定装置による測定ごとに前記物体上の点と前記３次元測定装置との距離に関する距離情報を取得する距離情報取得手段と、前記３次元測定装置による測定における光電変換デバイスの受光面の画素が見ている視線方向が同一である物体上の点についての前記距離情報の差異を検出する差異検出手段と、前記差異と所定の値とを比較して測定の成功または不成功を判別する判別手段と、を設ける。
【００１６】
または、物体の３次元形状を測定する３次元測定装置と、前記測定の開始時、終了時、またはその間において前記物体についての複数の２次元画像を取得する画像取得手段と、取得された前記２次元画像の差異を検出する差異検出手段と、前記差異と所定の値とを比較して測定の成功または不成功を判別する判別手段と、を設ける。
【００１７】
なお、本発明において、距離情報は物体上の点と３次元測定装置との距離に関する情報であるが、このような距離情報として、実際の距離を示すデータのみでなく、距離に対応した種々のデータが含まれる。例えば、物体上の点までの距離の値を求めるための処理前のデータであってもよい。また、距離の値を変換して得られるデータであってもよい。
【００１８】
【発明の実施の形態】
〔第一の実施形態〕
図１は本発明に係る３次元測定システム１の構成の例を示す図、図２は第一の実施形態におけるコンピュータ３の機能的構成を示す図、図３は距離画像５４の例を示す図、図４は測定中において物体Ｑのぶれる様子を示す図、図５は距離画像５４の一部分について比較を行う例を説明する図、図６は物体Ｑの一部分を測定する例を説明する図、図１１は３次元測定の原理を説明する図である。なお、図４（ａ）〜（ｃ）は、それぞれ、物体Ｑの上面図、正面図、側面図である。
【００１９】
本実施形態では、測定対象の物体Ｑが人物である場合を例に説明する。３次元測定は２回行われ、２回の測定で得られたデータに基づいて測定中のぶれを検出し、測定が成功であるか否かを判別する。
【００２０】
図１に示すように、３次元測定システム１は、スリット光投影法によって物体Ｑの３次元測定を行う３次元カメラ２、および３次元カメラ２の出力データを処理するコンピュータ３などによって構成される。コンピュータ３と３次元カメラ２とは、ケーブルまたは無線回線などによって接続されている。
【００２１】
３次元カメラ２は、物体Ｑ上のサンプリング点の３次元位置を特定する測定データ５１とともに、物体Ｑのカラー情報を示す２次元画像５２、および、キャリブレーションに必要なデータ５３などをコンピュータ３に出力する。なお、測定データ５１は、物体Ｑ上の各点の距離に関する情報（距離情報）であり、これにより距離画像５４が得られる。
【００２２】
３次元カメラ２として、例えば、特開２０００−２９２１２１号に開示されている３次元カメラなどが用いられる。なお、係る３次元カメラはアナモフィックスレンズを採用しているが、垂直方向と水平方向との画角比が１対１である通常のレンズを採用したものであってもよい。または、３次元カメラ２として、ミノルタ社製「ＶＩＶＩＤ７００」を用いてもよい。
【００２３】
コンピュータ３は、ＣＰＵ３ａ、ディスプレイ装置３ｂ、キーボード３ｃ、マウス３ｄ、ＲＡＭ３ｅ、ＲＯＭ３ｆ、および磁気記憶装置３ｇなどによって構成される。ＲＯＭ３ｆまたは磁気記憶装置３ｇには、後に説明する各機能を実現するためのソフトウェアがインストールされている。ソフトウェアは、必要に応じてメモリ３ｅに読み込まれ、ＣＰＵ３ａによって実行される。
【００２４】
図２に示すように、上のような構成によって、コンピュータ３には、３次元生成部１１、差異検出部１２、ぶれ判別部１３、メッセージ表示部１４、およびデータ記憶部１５などの機能が実現される。
【００２５】
３次元生成部１１は、３次元カメラ２によって得られた測定データ５１などに基づいて、物体Ｑ上の各点Ｐの３次元位置座標を算出し、物体Ｑの３次元形状データＤＴを生成する。３次元形状データＤＴは次のようにして生成される。
【００２６】
すなわち、図４および図１１に示すように、３次元カメラ２の受光レンズの画角および物体距離によって、受光系の距離情報を取得するための光電変換デバイスの撮像面（受光面）Ｓの各画素Ｒが見ている視線方向が求められる。各画素Ｒについて、その視線と物体Ｑの表面とが交わる点Ｐの３次元位置座標を算出することによって、３次元形状データＤＴが得られる。
【００２７】
図１１に示すように、一般的な３次元カメラは、投光の起点Ａと受光系のレンズの主点Ｏとを結ぶ基線ＡＯが受光軸と垂直になるように、投光系と受光系とが配置されている。受光軸は撮像面Ｓに対して垂直である。図１１（ｃ）のように受光系にズームレンズ群を設けた場合には、主点Ｏは後側主点Ｈ' となる。
【００２８】
スリット光投影法に基づく３次元測定（３次元計測）において、測定対象である物体上の点Ｐの３次元位置は、３次元カメラ２からの参照光の照射方向つまり投光角θａと３次元カメラ２への入射方向つまり受光角θｐとの関係に基づいて求められる。
【００２９】
投光角θａは、スリット光Ｕの偏向角に基づいて求められる。偏向角の変化量は、角速度と経過時間とに基づいて求められる。したがって、スリット光Ｕの任意の時点における偏向角は、偏向を開始した時点における偏向角（原点位置）、角速度、及び偏向を開始してからの経過時間（測定のタイミング）に基づいて求められる。これらの物理量は、走査手段の駆動信号若しくは位置信号、制御のためのクロック信号、測定のためのサンプリング信号、又は内部時計などから得ることができる。受光角θｐは、撮像面Ｓ上の受光位置（ｙｐ）に基づいて求められる。
【００３０】
このようにして、物体Ｑの表面の各点Ｐについての測定データ５１が得られる。それらの測定データ５１によって、図３に示す距離画像５４が得られる。
物体Ｑに対して、３次元カメラ２による測定が２回行われる。１回目の測定によって図３（ａ）に示す距離画像５４１が得られ、２回目の測定によって図３（ｂ）に示す距離画像５４２が得られる。
【００３１】
２回の測定の間に物体Ｑが動いた場合には、各測定で得られた距離画像５４１、５４２を重ねると、図３（ｃ）に示すようにぶれが生じる。
図４において、３次元カメラ２についてのカメラ座標系（Ｘ，Ｙ，Ｚ）を図のように定義する。カメラ座標系は、３次元カメラ２からその測定範囲の中心位置に沿って延びる軸（受光軸）をＺ軸とする。つまり、Ｚ軸は、物体Ｑの測定に当たっての奥行き方向または距離方向と概ね一致する。Ｚ軸に直交し且つ互いに直交する軸をＸ軸およびＹ軸とする。通常、Ｘ軸は水平方向に沿い、Ｙ軸は鉛直方向に沿う。したがって、通常、Ｘ軸は物体Ｑの左右方向であり、Ｙ軸は物体Ｑの高さ方向である。
【００３２】
図４において、１回目の測定時の物体Ｑの位置が実線で、２回目の測定時の物体Ｑの位置が鎖線で、それぞれ示されている。
物体Ｑは、測定の間に、Ｘ方向にＬｘ、Ｙ方向にＬｙ、Ｚ方向にＬｚの各距離だけ動いたものとする。また、受光面（図１１の撮像面Ｓに対応する）の１つの画素Ｒ１に注目する。
【００３３】
画素Ｒ１に対応する視線ＥＬ１について、１回目の測定では物体Ｑ上の点Ｐ１が測定され、２回目の測定では物体Ｑ上の点Ｐ２が測定される。この間において、３次元カメラ２は固定されており、したがって視線ＥＬ１に変化はない。２回の測定で得られる２つの点Ｐ１，Ｐ２は、その３次元位置が互いに異なる。また、通常、２つの点Ｐ１，Ｐ２は、物体Ｑ上の互いに異なる点である。
【００３４】
測定された各点Ｐ１，Ｐ２について、それぞれの３次元位置座標Ｐ１（Ｘｐ１，Ｙｐ１，Ｚｐ１）およびＰ２（Ｘｐ２，Ｙｐ２，Ｚｐ２）が求められる。
このようにして、各画素Ｒについて、点Ｐ１およびＰ２の３次元位置座標が求められる。これによって、１回目の測定の３次元形状データＤＴ１および２回目の測定の３次元形状データＤＴ２が得られる。
【００３５】
得られた３次元形状データＤＴ１，ＤＴ２に基づいて、つまり測定された各点Ｐ１，Ｐ２の３次元位置座標に基づいて、差異検出部１２によりそれらの差異ΔＰが求められる。
【００３６】
すなわち、２つの点Ｐ１，Ｐ２の差異ΔＰは、３次元空間において、
（ΔＰｘ，ΔＰｙ，ΔＰｚ）
＝（Ｘｐ１−Ｘｐ２，Ｙｐ１−Ｙｐ２，Ｚｐ１−Ｚｐ２）
として求められる。
【００３７】
つまり、差異検出部１２は、３次元形状データＤＴ１とＤＴ２とを比較し、差異ΔＰを求める。また、差異ΔＰは、Ｘ方向、Ｙ方向、およびＺ方向の各方向の差異（差異成分）ΔＰｘ，ΔＰｙ，ΔＰｚによって表される。
【００３８】
ぶれ判別部１３は、差異ΔＰと所定の値とを比較し、測定中の物体Ｑのぶれの有無を検出し、測定が成功であるか否かを判別する。差異ΔＰが所定の値よりも小さければ、ぶれはないものとし、測定が成功であると判別する。所定の値よりも大きければ、ぶれがあるものとし、測定が不成功であると判別する。
【００３９】
ここで、差異ΔＰと所定の値との比較は、１つの軸方向についてのみ行ってもよい。例えば、図４（ｃ）に示すように、画素Ｒ１の視線ＥＬ１が受光軸ＬＬに対してやや傾いている場合は、Ｚ方向の差異ΔＰｚは、Ｘ方向およびＹ方向の差異ΔＰｘ、ΔＰｙよりも大きくなる。つまり、物体Ｑのぶれの量は、差異ΔＰｘ、ΔＰｙに比べて差異ΔＰｚに表れやすい。そこで、Ｚ方向の差異ΔＰｚのみについて比較を行うことにより、効率よくぶれの量を検出することができる。
【００４０】
差異ΔＰと比較する値（所定の値）として、３次元カメラ２のばらつき限界値±ΔＭＡＸを用いてもよい。ばらつき限界値は、静止した対象物を測定したときの３次元カメラ２の測定誤差の範囲を示す値である。この場合も、１つの軸方向についてのみ行ってもよい。上に述べた例の場合は、Ｚ方向の差異ΔＰｚとばらつき限界値±ΔＭＡＸのＺ軸成分ΔＺｍａｘとを比較すればよい。なお、奥行き（Ｚ方向）のばらつき限界値ΔＺｍａｘは、３次元カメラ２の性能保証値としてしばしば用いられる。
【００４１】
このようにして、距離画像５４１、５４２の各画素Ｒに対応する差異ΔＰを所定の値と比較し、測定が成功であるか否かを判別する。例えば、１つまたは幾つかの差異ΔＰまたは差異成分が所定の値よりも大きければ、測定が不成功であると判別する。例えば、Ｚ方向の差異ΔＰｚ（＝｜Ｚｐ１−Ｚｐ２｜）がばらつき限界値ΔＺｍａｘよりも大きい場合に、物体Ｑがぶれたものとし、測定は不成功であると判別する。または、各差異ΔＰの平均が所定の値よりも大きければ測定が不成功であると判別し、小さければ測定が成功であると判別してもよい。係る判別は、物体Ｑの動きまたは形状の変化などに関する特徴を考慮して行う。
【００４２】
なお、上で述べた実施形態では、差異ΔＰと所定の値との比較を測定範囲の全域について行う。しかし、差異ΔＰと所定の値との比較を、距離画像５４１、５４２の一部分について行ってもよい。例えば、図５（ｃ）に示すように、物体Ｑの顔の範囲Ｗ１について比較を行ってもよい。範囲Ｗ１は、物体Ｑのうち、特に精密に測定したい部分、ぶれがあっては困る重要な部分、またはぶれを生じやすい部分を選べばよい。係る比較は、範囲Ｗ１内のすべての点（画素）について行ってもよいし、範囲Ｗ１内の幾つかの点または１つの点のみについて行ってもよい。これにより、比較の処理の時間を短縮することができる。
【００４３】
測定範囲の一部分について比較を行う場合は、２回の測定のうちいずれか１回の測定を比較に用いられる部分についてのみ行ってもよい。例えば、図６（ａ）に示すように１回目の測定を物体Ｑの全体について行い、図６（ｂ）に示すように２回目の測定を顔の範囲Ｗ２について行う。そして、図６（ｃ）に示すように、範囲Ｗ２についてのみ比較を行う。範囲Ｗ１の場合と同様に、係る比較を範囲Ｗ２内のすべての点（画素）について行ってもよいし、幾つかの点または１つの点のみについて行ってもよい。これにより、測定および比較の処理の時間をさらに短縮することができる。
【００４４】
図２に戻って、メッセージ表示部１４は、測定が成功であると判別された場合にはその旨のメッセージを表示し、測定が不成功であると判別された場合には測定のやり直しを促す警告のメッセージを表示する。
【００４５】
データ記憶部１５は、測定が成功であると判別された場合には、３次元形状データＤＴ１、ＤＴ２のいずれかまたは両方を保存する。なお、測定が不成功であると判別された場合であっても、取得したデータを使用できる場合があるので、差異ΔＰまたは３次元形状データＤＴ１、ＤＴ２を保存しておいてもよい。
【００４６】
次に、第一の実施形態における３次元測定システム１の処理の流れについて、フローチャートを参照して説明する。
図７は第一の実施形態における３次元測定システム１の処理を説明するフローチャートである。
【００４７】
図７に示すように、差異ΔＰと所定の値との比較に用いる範囲Ｗ１または測定を行う範囲Ｗ２を設定する（＃１１）。範囲Ｗ１の設定は、ステップ＃１３の後で行ってもよい。物体Ｑの全体または全視野について測定し比較する場合は、ステップ＃１１を省略するか、またはステップ＃１１で全視野範囲を設定する。
【００４８】
２回の測定を行い（＃１２、＃１３）、それぞれの測定で得られた点Ｐ１、Ｐ２の差異ΔＰを求める（＃１４）。差異ΔＰが所定の値よりも小さければ（＃１５でＹｅｓ）、測定によって得られた３次元形状データＤＴ１またはＤＴ２を保存する（＃１６）。所定の値よりも大きければ（＃１５でＮｏ）、測定が不成功である旨のメッセージを表示する（＃１７）。必要であれば、ステップ＃１２に戻って測定をやり直す。
【００４９】
本実施形態によると、物体Ｑが測定中に動いてぶれが生じても、ぶれを検出し、測定をやり直すことができるので、正確な３次元形状データＤＴを取得することができる。また、差異ΔＰと比較する値（所定の値）を任意に与えることができるので、必要な精度を確保しつつ３次元形状データＤＴを取得することができる。
【００５０】
本実施形態では、差異ΔＰと比較する値（所定の値）として３次元カメラ２のばらつき限界値±ΔＭＡＸを用いたが、測定の目的などに応じて種々の値に設定すればよい。ばらつき限界値などに一定の許容量を乗じた値を用いてもよい。
【００５１】
３次元カメラ２と物体Ｑの各点との距離に関する情報として距離画像５４を用いたが、他のデータを用いてもよい。例えば、３次元カメラ２が「ＶＩＶＩＤ７００」である場合は、フレームナンバデータを用いてもよい。フレームナンバデータは、距離画像に変換する前に取得されるデータであって、３次元カメラ２と物体Ｑとの距離に相当するデータである。
〔第二の実施形態〕
図８は第二の実施形態におけるコンピュータ３Ｂの機能的構成を示す図、図９は２次元画像５５１、５５２および特徴点画像５６１、５６２の例を示す図である。
【００５２】
第一の実施形態では、３次元測定を２回行い、物体Ｑの３次元位置を示す点Ｐ１、Ｐ２の差異ΔＰに基づいて測定中のぶれを検出した。本実施形態では、物体Ｑについて２枚の２次元画像を取得し、両者を比較し、その差異に基づいてぶれを検出する。
【００５３】
本実施形態では、図１に示す３次元測定システム１と同様のハードウェア構成の３次元測定システムが用いられる。ただし、ぶれの検出方法が異なるため、図８に示すように、コンピュータ３Ｂの機能的構成が図２とは異なる。
【００５４】
すなわち、コンピュータ３Ｂには、３次元生成部１１Ｂ、差異検出部１２Ｂ、ぶれ判別部１３Ｂ、メッセージ表示部１４Ｂ、データ記憶部１５Ｂ、および特徴点抽出部１６Ｂなどの機能が実現される。また、３次元カメラ２は、第一の実施形態では３次元測定を２回行ったが、本実施形態では３次元測定を１回行い、その３次元測定の開始時および終了時に物体Ｑを撮像してカラー画像である２枚の２次元画像５５１、５５２を取得する。
【００５５】
３次元生成部１１Ｂは、３次元生成部１１と同様に、物体Ｑの３次元形状データＤＴを生成する。
特徴点抽出部１６Ｂは、図９に示すように、３次元カメラ２が取得した２次元画像５５１、５５２からそれぞれ複数の特徴点ＳＴ１、ＳＴ２を抽出し、特徴点画像５６１、５６２を生成する。例えば、物体Ｑが人物である場合は、特徴点ＳＴとして鼻頭、目尻、眉尻、または口角などが選ばれる。
【００５６】
差異検出部１２Ｂは、図９（ｅ）に示すように特徴点画像５６１と５６２とを比較し、特徴点ＳＴ１の位置と特徴点ＳＴ２の位置との差異ΔＳＴを算出する。すなわち、特徴点ＳＴ１、ＳＴ２の位置を（Ｘｓ１，Ｙｓ１）、（Ｘｓ２，Ｙｓ２）とすると、差異ΔＳＴ＝｜Ｘｓ１―Ｘｓ２，Ｙｓ１−Ｙｓ２｜となる。
【００５７】
ぶれ判別部１３Ｂは、ぶれ判別部１３とほぼ同様に、差異ΔＳＴと所定の値とを比較して測定中の物体Ｑのぶれの有無を検出し、測定が成功であるか否かを判別する。
【００５８】
差異ΔＳＴと比較する値（所定の値）として、２次元画像５５１、５５２を撮像するイメージセンサの画素ピッチΔＣ＝（ΔＣｘ，ΔＣｙ）が用いられる。この場合、｜Ｘｓ１―Ｘｓ２｜＞ΔＣｘまたは｜Ｙｓ１−Ｙｓ２｜＞ΔＣｙのいずれかの条件に合えば、ぶれがあるものとし、測定が不成功であると判別する。いずれの条件にも合わなければ、ぶれがないものとし、測定が成功であると判別する。
【００５９】
なお、測定の目的などに応じて、差異ΔＳＴと比較する値を変更してもよい。例えば、ぶれの量の許容範囲を広くする場合は、許容量ｋ（ただし、ｋ＞１）を乗じた値ｋΔＣを用いてもよい。
【００６０】
このようにして、２次元画像５５１、５５２の全体または一部の特徴点ＳＴ１、ＳＴ２の差異ΔＳＴを所定の値と比較し、測定が成功であるか否かを判別する。例えば、図９（ｅ）に示すように、物体Ｑの顔の範囲Ｗ３について比較を行ってもよい。
【００６１】
メッセージ表示部１４Ｂは、メッセージ表示部１４と同様に、測定の成功または不成功についてのメッセージを表示する。
データ記憶部１５Ｂは、測定が成功であると判別された場合には、３次元形状データＤＴを保存する。なお、測定が不成功であると判別された場合であっても、第一の実施形態と同様に、差異ΔＳＴまたは３次元形状データＤＴを保存しておいてもよい。
【００６２】
次に、第二の実施形態における３次元測定システム１の処理の流れについて、フローチャートを参照して説明する。
図１０は第二の実施形態における３次元測定システム１の処理を説明するフローチャートである。
【００６３】
図１０に示すように、差異ΔＳＴと所定の値との比較に用いる範囲Ｗ３を設定する（＃２１）。係る設定は、ステップ＃２５の後で行ってもよい。測定範囲全体について比較を行う場合は、ステップ＃２１を省略するか、またはステップ＃２１で全視野範囲を設定する。
【００６４】
物体Ｑを測定し、３次元形状データＤＴを取得する（＃２３）。ただし、測定の前後に、２次元画像５５１、５５２を取得する（＃２２、＃２４）。２次元画像５５１、５５２に基づいて特徴点画像５６１、５６２を生成し（＃２５）、差異ΔＳＴを求める（＃２６）。
【００６５】
差異ΔＳＴが所定の値よりも小さければ（＃２７でＹｅｓ）、測定によって得られた３次元形状データＤＴを保存する（＃２８）。所定の値よりも大きければ（＃２７でＮｏ）、測定が不成功である旨のメッセージを表示する（＃２９）。必要であれば、ステップ＃２２に戻って測定をやり直す。
【００６６】
本実施形態によると、２次元データである特徴点画像５６１、５６２に基づいて物体Ｑのぶれの有無を検出するので、第一の実施形態よりも処理に要する時間を短縮することができる。さらに、３次元測定を行う回数が第一の実施形態よりも１回少ないので、全体の処理時間を短縮することができる。
【００６７】
本実施形態では、特徴点ＳＴ１、ＳＴ２を用いて物体Ｑのぶれの有無を検出したが、２次元画像５５１、５５２から耳、鼻、または唇などの輪郭線画像を生成し、それらの輪郭線を比較することによってぶれの有無を検出してもよい。２次元画像５５１、５５２は、輝度分布が得られる画像であればよく、例えばモノクロ画像であってもよい。また、３枚以上の２次元画像を用いてぶれの有無を検出してもよい。
【００６８】
上に述べた２つの実施形態では、３次元測定または２次元画像の取得を２回行ったが、３回以上行ってもよい。
例えば、３次元測定または２次元測定を３回行った場合は、１回目と２回目とで取得したデータおよび２回目と３回目とで取得したデータをそれぞれ用いて物体Ｑのぶれの有無の検出を２回行う。そして、ぶれが検出されなかった方の測定結果を採用すればよい。このように、３次元測定などの回数を増やすことによって、ぶれのない３次元形状データＤＴを取得する可能性を一層高めることができる。
【００６９】
３次元カメラ２において、物体Ｑとの距離に関する情報として距離画像５４を用いたが、光電変換デバイスの受光面の各画素Ｒについて時間重心または空間重心を求めてもよい。
【００７０】
時間重心は、次の方法によって求められる。物体に向けて、物体を走査するように参照光を投射し、物体で反射した参照光を光電変換デバイスの受光面で受光する。１つの画素において、受光した受光量の値を走査順に並べると、離散したデジタル関数が得られる。このデジタル関数をアナログ化し、その頂点を求めることによって時間重心が得られる。
【００７１】
一方、空間重心は次の方法によって求められる。時間重心の場合と同様に、物体に参照光を投射し、反射した参照光を光電変換デバイスの受光面で受光する。このとき、物体で反射した参照光は、受光面の複数の連続する画素で受光される。各画素が受光した受光量を求め、これらの値を並べると、画素ピッチの間隔に離散したデジタル関数が得られる。このデジタル関数をアナログ化し、その頂点を求めることによって空間重心が得られる。
【００７２】
時間重心または空間重心を用いて物体の３次元位置を算出する方法は、公知である。例えば、時間重心を用いて算出する方法は、特開２０００−２９２１２１号などに開示されている。
【００７３】
空間重心または時間重心を用いると、画素ピッチよりも細かい精度で物体の３次元位置を求めることができる。
上に述べた２つの実施形態では、物体Ｑのぶれの検出を３次元形状データＤＴまたは２次元データに基づいて行ったが、他の方法であってもよい。
【００７４】
例えば、距離測定手段として、物体Ｑ上の１点または数点の距離を測定する測距装置を３次元測定システム１に設ける。３次元測定の前後において、測距装置によって物体Ｑまでの距離を測定する。２回の測定の結果を比較し、距離変化が所定の値以上であれば、物体Ｑのぶれが発生したものと判別する。測距装置として、例えば、カメラの焦点調節用のアクティブタイプの測距装置を用いることができる。または、３次元カメラの撮像光学系にパッシブタイプの焦点検出装置を設けて自動焦点調整を行うように構成し、その光学系のレンズ位置を物体の距離情報として用いてもよい。
【００７５】
３次元カメラとして、光切断方式を用いる特開２０００−２９２１２１号に示された３次元カメラ、およびミノルタ社製「ＶＩＶＩＤ７００」を例に挙げたが、他の方式の３次元カメラであってもよい。例えば、パターン投影方式またはステレオ方式など、種々の３次元測定方法を用いるものであってもよい。
【００７６】
その他、３次元測定システム１、３次元カメラ２、またはコンピュータ３、３Ｂの全体または各部の構成、処理内容、処理順序、３次元測定の方法、ぶれの検出方法などは、本発明の趣旨に沿って適宜変更することができる。
【００７７】
【発明の効果】
本発明によると、対象物のぶれを検出することによって測定が成功であるか否かを判別することができるので、正確な３次元データを得ることができる。また、差異と比較する値（所定の値）を任意に与えることができるので、必要な精度を確保しつつ３次元形状データを取得することができる。
【図面の簡単な説明】
【図１】本発明に係る３次元測定システムの構成の例を示す図である。
【図２】第一の実施形態におけるコンピュータの機能的構成を示す図である。
【図３】距離画像の例を示す図である。
【図４】測定中において物体Ｑのぶれる様子を示す図である。
【図５】距離画像の一部分について比較を行う例を説明する図である。
【図６】物体の一部分を測定する例を説明する図である。
【図７】第一の実施形態における３次元測定システムの処理を説明するフローチャートである。
【図８】第二の実施形態におけるコンピュータの機能的構成を示す図である。
【図９】２次元画像および特徴点画像の例を示す図である。
【図１０】第二の実施形態における３次元測定システムの処理を説明するフローチャートである。
【図１１】３次元測定の原理を説明する図である。
【符号の説明】
１  ３次元測定システム
２  ３次元カメラ（３次元測定装置、距離情報取得手段、撮影手段）
１１、１１Ｂ  ３次元生成部（測定手段）
１２、１２Ｂ  差異検出部（差異検出手段）
１３、１３Ｂ  ぶれ判別部（判別手段、ぶれ検出手段）
１４  メッセージ表示部（出力手段）
５１  測定データ（距離情報）
５４  距離画像（距離情報）
５５１、５５２  ２次元画像
Ｑ  物体
Ｐ  点
Ｒ  画素
【図１】
0004337266.tif 000002
【図２】
0004337266.tif 000003
【図３】
0004337266.tif 000004
【図４】
0004337266.tif 000005
【図５】
0004337266.tif 000006
【図６】
0004337266.tif 000007
【図７】
0004337266.tif 000008
【図８】
0004337266.tif 000009
【図９】
0004337266.tif 000010
【図１０】
0004337266.tif 000011
【図１１】
0004337266.tif 000012