JP2004361222A - 三次元位置計測システムおよび方法 - Google Patents
三次元位置計測システムおよび方法 Download PDFInfo
- Publication number
- JP2004361222A JP2004361222A JP2003159444A JP2003159444A JP2004361222A JP 2004361222 A JP2004361222 A JP 2004361222A JP 2003159444 A JP2003159444 A JP 2003159444A JP 2003159444 A JP2003159444 A JP 2003159444A JP 2004361222 A JP2004361222 A JP 2004361222A
- Authority
- JP
- Japan
- Prior art keywords
- light
- marker
- emitting
- markers
- distance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title description 49
- 239000003550 marker Substances 0.000 claims abstract description 193
- 238000005259 measurement Methods 0.000 claims abstract description 172
- 238000003384 imaging method Methods 0.000 claims abstract description 12
- 230000000007 visual effect Effects 0.000 claims description 8
- 238000000691 measurement method Methods 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 12
- 238000004458 analytical method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 1
- 238000004020 luminiscence type Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
Images
Landscapes
- Length Measuring Devices By Optical Means (AREA)
- Measurement Of Optical Distance (AREA)
Abstract
【課題】三次元位置計測システムにおいて、計測エラーを引き起こした発光マーカを特定することで、他の発光マーカの計測情報を有効に利用する。
【解決手段】三次元位置計測システム2は、計測対象に装着された発光マーカ4a,4bと、発光マーカを撮像する第1および第2の動画像カメラ6A,6Bと、計測装置8とを備える。計測装置では、第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における、各発光マーカの平面座標を算出後、ステレオ視の原理により発光マーカの空間座標を算出する。続いて、上記空間座標に基づいて発光マーカ間の距離を算出し、該マーカ間距離が適正か否かを判定する。マーカ間距離が不適正と判定されると、各発光マーカについて、カメラ画像1フレーム分前からのマーカ移動距離を算出する。そして、マーカ移動距離が予め決められた閾値より大きい発光マーカが計測エラーを引き起こしたと判定する。
【選択図】 図1
【解決手段】三次元位置計測システム2は、計測対象に装着された発光マーカ4a,4bと、発光マーカを撮像する第1および第2の動画像カメラ6A,6Bと、計測装置8とを備える。計測装置では、第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における、各発光マーカの平面座標を算出後、ステレオ視の原理により発光マーカの空間座標を算出する。続いて、上記空間座標に基づいて発光マーカ間の距離を算出し、該マーカ間距離が適正か否かを判定する。マーカ間距離が不適正と判定されると、各発光マーカについて、カメラ画像1フレーム分前からのマーカ移動距離を算出する。そして、マーカ移動距離が予め決められた閾値より大きい発光マーカが計測エラーを引き起こしたと判定する。
【選択図】 図1
Description
【0001】
【発明の属する技術分野】
本発明は、一般に三次元位置計測システムおよび方法に関し、特に、例えば人などの計測対象の複数の部位に取り付けた複数の発光マーカの三次元位置を計測するためのシステムおよび方法に関する。
【0002】
【従来の技術】
従来、人などの計測対象の複数の部位にマーカを取り付け、これらマーカの三次元位置を計測することで、対象の動作を解析する三次元計測システムが知られている。このような三次元位置計測システムは、一般的に、複数の動画像カメラでマーカを撮影し、ステレオ視の原理を用いてマーカの三次元位置を算出する。
【0003】
このような三次元位置計測システムで計測を行う場合、各種ノイズ、光環境の変化(例えば、日が差すなどして、カメラの視野内に直接光や反射光が混入する。)などが原因で計測エラー(例えば、光環境の変化で生じた画像内の光をマーカと誤認識する。)が発生する可能性がある。
【0004】
そこで、例えば、特許文献1に開示された動作解析装置(三次元位置計測システム)では、マーカ位置を計測すると同時にマーカ間の距離を算出し、算出距離を予め決められた基準距離と比較して、算出距離が適正であれば、算出したマーカ三次元位置を適切な三次元位置と判断する。
【0005】
【特許文献1】
特開2002−8043号公報
【0006】
【発明が解決しようとする課題】
しかしながら、上記動作解析装置では、マーカ間距離が不適正と判定すると以後の計測を中止するように設定されているため、安定した位置計測を行うことができない。また、マーカ間距離が不適正と判定した場合であっても、一方のマーカの位置情報は正しい可能性が高いにもかかわらず、正しい位置情報を有効に利用していない。
【0007】
そこで、本発明は、マーカ間距離情報を利用して計測エラーを判定する三次元計測システムおよび方法であって、マーカ間距離が不適正と判定した場合に、正しい位置情報を有効に利用できるものを提供することを特徴とする。
【0008】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る三次元位置計測システムは、
計測対象に装着された複数の発光マーカと、
上記複数の発光マーカを撮像する第1および第2の動画像カメラと、
第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における上記各発光マーカの平面座標を算出する二次元位置算出部と、
二次元位置算出部で算出された第1および第2の画像内の上記各発光マーカの平面座標に基づいて、ステレオ視の原理により上記各発光マーカの空間座標(第1の空間座標)を算出するステレオ視演算部と、
ステレオ視演算部で算出した空間座標に基づいて、上記各発光マーカ間の距離を算出するマーカ間距離算出部と、
マーカ間距離算出部で算出した上記マーカ間距離が適正か否かを判定する計測エラー判定部と、
計測エラー判定部でマーカ間距離が不適正と判定された発光マーカペアを構成する各発光マーカについて、対応する上記第1および第2の画像と、不適正と判定される直前の上記第1および第2の画像とに基づいて、マーカ移動距離を算出するマーカ移動距離算出部と、
上記マーカ移動距離に基づいて、不適正なマーカ間距離であるとの判定の原因となった発光マーカを判定する計測エラーマーカ判定部とを備えたことを特徴とする。
【0009】
本発明に係る三次元位置計測方法は、
計測対象に装着された複数の発光マーカを第1および第2の動画像カメラで撮像するステップと、
第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における上記各発光マーカの平面座標を算出するステップと、
各画像内における上記各発光マーカの上記算出した二次元位置に基づいて、ステレオ視の原理により上記各発光マーカの空間座標(第1の空間座標)を算出するステップと、
空間座標に基づいて、上記各発光マーカ間の距離を算出するステップと、
算出したマーカ間距離が適正か否かを判定する計測エラー判定ステップと、
計測エラー判定ステップで算出したマーカ間距離が不適正と判定された場合に、該マーカ間距離に対応する発光マーカペアを構成する各発光マーカのいずれかが、不適正なマーカ間距離であるとの判定の原因となったかを判定するステップとを含むことを特徴とする。
【0010】
【発明の実施の形態】
以下、添付図面を参照して本発明の実施の形態を説明する。
【0011】
実施の形態1.
図1,2は、本発明に係る三次元位置計測システム(以下、計測システムという。)の実施の形態1を示す概略構成図である。この計測システム2は、概略、所定の範囲内で移動(運動)する計測対象(例えば人)の所定の部位に装着する一対の発光マーカ4(4a,4b)(本実施形態ではLED)と、計測対象部位が動く範囲を視野内に捉える第1および第2の動画像カメラ(本実施形態ではCCDカメラで、以下、カメラという。)6(6A,6B)と、第1および第2のカメラ6A,6Bで撮像した時系列画像データに基づいて、発光マーカ4a,4bの三次元位置を適当な時間間隔(この間隔は、撮像手段であるCCDの垂直駆動(VD)信号の周期の整数倍である。)で計測するための計測装置8とを備える。
【0012】
計測装置8は、計測システム2全体を制御する制御部10、カメラ6A,6Bでそれぞれ撮像した第1および第2の時系列画像データを記憶するための画像メモリ12、LED4a,4bの発光を制御するための発光制御部14、予め決められたカメラ6A,6Bの位置・姿勢や発光マーカ4a,4b間距離等の情報を管理するためのカメラ/マーカ情報管理部16、発光マーカ4a,4bの各時刻での三次元位置を算出するための三次元位置算出部18、該算出部18で算出した三次元位置を記録するための三次元位置記録部20等を備えている。
【0013】
図2に示すように、三次元位置算出部18は、ローカル位置算出部(二次元位置算出部)22、ステレオ視演算部24、マーカ間距離算出部26、計測エラー判定部28、マーカ移動距離算出部30、計測エラーマーカ判定部32、および三次元位置出力部34を備える。
【0014】
ローカル位置算出部22は、第1の時系列画像データを構成する各画像フレーム内および第2の時系列画像データを構成する各画像フレーム内での発光マーカ4a,4bのローカル位置(平面座標)を算出するものである。例えば、ある画像フレームに関し、水平走査線毎に輝度が所定の閾値を超えている画素部分を、マーカ存在部分(線分)として切り出す。そして、隣り合う水平走査線において水平方向に関し略同じ位置にマーカ存在部分があれば同一のマーカのものと判断することで、水平方向に関して水平駆動(HD)信号の数および垂直方向に関して水平走査線数に基づいて、発光マーカ4a,4bの平面座標を求めることができる。例えば、発光マーカ4a,4bの重心座標をそれぞれ求めて、これを各発光マーカ4a,4bのローカル位置とする。
【0015】
ステレオ視演算部24は、ローカル位置算出部22で算出した平面座標と、カメラ/マーカ情報管理部16で管理されたカメラの位置・姿勢等のデータに基づき、ステレオ視の原理を用いて、発光マーカ4a,4bの三次元位置(第1の空間座標)を求めるようになっている。マーカ間距離算出部26は、ステレオ視演算部24で算出した各発光マーカ4a,4bの第1の空間座標から、マーカ間の距離D1を算出するようになっている。計測エラー判定部28は、マーカ間距離算出部26で算出した発光マーカ4a,4b間の距離D1と、カメラ/マーカ情報管理部16で管理された既知の発光マーカ4a,4b間の距離D0とを比較し、両者の距離の差の絶対値|D1−D0|が予め設定した閾値より大きいか否かを判定するためのもので、上記絶対値が閾値より大きければ、少なくとも一方の発光マーカ4a,4bに関する第1の空間座標が計測エラーであるとして、マーカ移動距離算出部30にエラー信号を出力するようになっている。
【0016】
マーカ移動距離算出部30は、計測エラー判定部28からエラー信号を受けると、「直前」(例えば、VD信号1周期または2周期前)の画像フレームを利用して算出した三次元位置(第2の空間座標)と、三次元位置算出の対象となる画像フレームを利用して算出した第1の空間座標とから、各発光マーカ4a,4bの移動距離を算出するようになっている。第2の空間座標のデータは、三次元位置記録部20から適宜読み出されるが、代わりに、三次元位置算出部18は、第2の空間座標のデータを一時的に記憶するメモリを別に備えていてもよい。計測エラーマーカ判定部32は、各発光マーカ4a,4bの移動距離が予め設定した閾値より大きいか否かを判定するようになっている。すなわち、ある発光マーカ4に関して、1または2周期(1周期が例えば1/60秒)の間に移動する距離が閾値(発光マーカ4a,4bを装着する部位が1または2周期で移動できる距離として妥当な値の限界値)以上であると(移動速度が大きいと)、第1の空間座標は、発光マーカ4以外の光を発光マーカと誤認識して算出された可能性が高い。
【0017】
詳細は後述するが、三次元位置出力部34は、計測エラーマーカ判定部32での判定に基づいて、三次元位置記録部20に出力すべき各マーカ4a,4bの三次元位置情報を決定するようになっている。
【0018】
次に、図3,4のフローチャートを用いて、本実施形態に係る計測システム2による三次元計測処理を説明する。
【0019】
まず、ステップS301で、制御部10は発光制御部14を制御してLED4a,4bを発光させる。ステップS302で、第1および第2のカメラ6A,6Bによる計測対象の撮像を行い、時系列的に並んだ第1および第2の時系列画像データを取得して画像メモリ12に記憶させる。ステップS303で、インデックスnを0に設定する。インデックスnは、各発光マーカ4a,4bの三次元位置の計測回数に対応する。ステップS304で、第1および第2のカメラ6A,6Bで撮像した第1および第2の時系列画像データの中から、撮像初期の画像フレームをそれぞれ選択する。そして、三次元位置算出部18のローカル位置算出部22は、各画像フレーム上の発光マーカ4a,4bの平面座標を算出する。ステップS305で、ステレオ視演算部24は、各発光マーカ4a,4bの平面座標から、ステレオ視の原理により各発光マーカ4a,4bの第1の空間座標を算出する。ステップS306で、マーカ間距離算出部26は、発光マーカ4a,4b間の距離D1を算出する。ステップS307で、計測エラー判定部28は、この距離D1と、カメラ/マーカ情報管理部16に記憶された発光マーカ4a,4bの実際の距離D0との差を算出する。
【0020】
ステップS308で、差の絶対値|D1−D0|が予め決められた閾値より小さければ、ステップS309に進み、計測エラー判定部28は、ステップS305で算出した各発光マーカ4a,4bの第1の空間座標は適正と判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、この第1の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS310に進む。
【0021】
ステップS310で、インデックスnをインクリメントする。ステップS311で、インデックスnがN(これは、各発光マーカ4a,4bの計測総回数に等しい。)より小さければ、フローはステップS304に戻り、次に古い計測時刻に関して、ステップS304〜S310のプロセスを繰り返す。ステップS311でnがNに等しくなれば、フローを終了する。
【0022】
ステップS308で、絶対値|D1−D0|が予め決められた閾値以上であれば、フローはステップS312に進む。ステップS312以下のフローでは、発光マーカ4a,4bのいずれかの第1の空間座標が不適切かの判定を行っている(なお、可能性は低いが、発光マーカ4a,4bの両方について不適正な三次元位置が算出されることも判定できる。)。具体的に、ステップS312でインデックスrを0に設定する。rは発光マーカ4の数に対応する。ステップS313で、発光マーカ4a,4bのいずれか一方、例えば発光マーカ4aについて、マーカ移動距離算出部30は、直前の時刻と対象となる時刻との間で発光マーカ4aが移動した距離D2を算出する。
【0023】
ステップS314で、移動距離D2が予め設定された閾値より小さければ、ステップS315に進み、計測エラーマーカ判定部32は、発光マーカ4aに関してステップS305で求めた第1の空間座標は適正なものと判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、第1の空間座標のデータを三次元位置記録部20に出力し記録する。フローはその後ステップS316に進む。
【0024】
ステップS314で、移動距離D2が予め設定された閾値以上であれば、ステップS317に進み、計測エラーマーカ判定部32は、発光マーカ4aに関してステップS305で求めた第1の空間座標は不適正なものと判断し、三次元位置出力部34にエラー信号を出力する。そして、三次元位置出力部34は、(第1の空間座標の代わりに)直前の画像フレームに基づいて求めた第2の空間座標のデータを、三次元位置記録部20に出力し記録する。このように、時系列の直前の三次元位置を利用してマーカ移動距離を求めることで、計測エラーを起こした発光マーカを特定することができ、その結果、他方の発光マーカに関する有効な計測データを最大限利用することが可能となり、安定したマーカ位置計測が可能となる。フローはその後ステップS316に進む。
【0025】
ステップS316では、インデックスrをインクリメントする。ステップS318で、インデックスrが2より小さければ、ステップS313に戻り、残りの発光マーカ4bに関し、ステップS313〜S317のプロセスを繰り返す。ステップS317でrが2に等しくなると、ステップS310に戻る。
【0026】
発光マーカ4a,4bを識別する方法としては、例えば、発光制御部14を制御してVD信号に同期させて発光マーカ4a,4bを交互に点灯させる方法や、計測対象の時刻での画像フレームと直前の画像フレームで発光マーカ位置が近いものを同一のマーカとする方法などが例示できる。
【0027】
動画像カメラの数は3つ以上でもよい。この場合、ステレオ視演算部24は、各発光マーカ4a,4bを撮像する任意の一対のカメラ毎にステレオ視の原理により第1の空間座標を求めた後、算出した複数の第1の空間座標の平均を求め、マーカ間距離算出部26は、上記平均した第1の空間座標からマーカ間距離を求めるようにしてもよい。
【0028】
発光マーカは3つ以上でもよい。この場合、マーカ間距離算出部26は複数のマーカ間距離を算出してもよく、計測エラー判定部28は、算出した各マーカ間距離について計測エラーの判定を行う。
【0029】
また、本実施形態では、時系列画像データを先に取得した後で位置計測を行っているが、各計測時刻の画像データを取得すると同時に(すなわち、リアルタイムで)位置計測を行うようにしてもよい。
【0030】
実施の形態2.
図5,6は、本発明に係る三次元位置計測システムの実施の形態2を示す概略構成図である。以下の説明では、実施の形態1と同一または類似の構成要素は同一の符号または同一の符号に適当な添字を付して表す。本実施形態に係る計測システム2aは、実施の形態1に係る計測システム2と類似しているが、3つの発光マーカ4a,4b,4cを備えている点、および、三次元位置算出部18aの計測エラーマーカ判定部32aは、マーカ移動距離でなくマーカ間距離を利用して、計測エラーを引き起こした発光マーカを特定する点で異なる。
【0031】
具体的には、本実施形態に係る計測システム2aによる三次元計測処理のフローチャートである図7,8を参照して、まず、ステップS701で、制御部10は発光制御部14を制御してLED4a,4b,4cを発光させる。ステップS702で、第1および第2のカメラ6A,6Bによる計測対象の撮像を行い、時系列的に並んだ第1および第2の時系列画像データを取得して画像メモリ12に記憶させる。ステップS703で、インデックスnを0に設定する。ステップS704で、第1および第2のカメラ6A,6Bで撮像した第1および第2の時系列画像データの中から、撮像初期の画像フレームをそれぞれ選択する。そして、三次元位置算出部18のローカル位置算出部22は、各画像フレーム上の発光マーカ4a,4b,4cの平面座標を算出する。ステップS705で、ステレオ視演算部24は、各発光マーカ4a,4b,4cの平面座標からステレオ視の原理により第1の空間座標を算出する。
【0032】
ステップS706で、マーカ間距離算出部26は、発光マーカペア毎、すなわち、発光マーカ4a,4b間の距離D1(a,b)、発光マーカ4b,4c間の距離D1(b,c)、および発光マーカ4c,4a間の距離D1(c,a)を算出する。ステップS707で、計測エラー判定部28は、距離D1(a,b)と発光マーカペア4a,4bの実際の距離D0(a,b)との差、距離D1(b,c)と発光マーカペア4b,4cの実際の距離D0(b,c)との差、および、距離D1(c,a)と発光マーカペア4c,4aの実際の距離D0(c,a)との差を算出する。実際の距離D0(a,b),D0(b,c),D0(c,a)は、カメラ/マーカ情報管理部16に記憶されている。
【0033】
ステップS708で、全てのペアに関し差の絶対値|D1−D0|が予め決められた閾値より小さければ、ステップS709に進み、計測エラー判定部28は、ステップS705で算出した各発光マーカ4a,4b,4cの第1の空間座標は適正と判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、この第1の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS710に進む。
【0034】
ステップS710で、インデックスnをインクリメントする。ステップS711で、インデックスnが各発光マーカ4a,4b,4cの計測総回数であるNより小さければ、フローはステップS704に戻り、次に古い計測時刻に関して、ステップS704〜S710のプロセスを繰り返す。ステップS711でnがNに等しくなれば、フローを終了する。
【0035】
ステップS708で、絶対値|D1−D0|が予め決められた閾値以上のマーカペアが一つ存在すると、フローはステップS712に進む。以下の説明では、発光マーカペア4a,4bがエラーマーカペアであるとする。
【0036】
ステップS712でインデックスrを0に設定する。そして、発光マーカ4a,4bのいずれか一方、例えば発光マーカ4aについて、計測エラーマーカ判定部32aは、発光マーカ4aと、発光マーカ4b以外の発光マーカである発光マーカ4cとに関する距離差の絶対値|D1(c,a)−D0(c,a)|が予め設定した閾値より小さいか否かを確認する(ステップS713,S714)。差が閾値より小さければ、ステップS715に進み、計測エラーマーカ判定部32aは、発光マーカ4aに関してステップS705で求めた第1の空間座標は適正なものと判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、第1の空間座標のデータを三次元位置記録部20に出力し記録する。フローはその後ステップS716に進む。
【0037】
ステップS713,S714で、絶対値|D1(c,a)−D0(c,a)|が予め設定された閾値以上であれば、ステップS717に進み、計測エラーマーカ判定部32は、発光マーカ4aに関してステップS705で求めた第1の空間座標は不適正なものと判断し、三次元位置出力部34にエラー信号を出力する。そして、三次元位置出力部34は、(第1の空間座標の代わりに)直前の画像フレームに基づいて求めた第2の空間座標のデータを三次元位置記録部20に出力し記録する。このように、エラーマーカペアを構成する各マーカに関して複数のマーカ間距離情報を利用することで、計測エラーマーカを特定することができ、その結果、他方の発光マーカに関する有効な計測データを最大限利用することが可能となり、安定したマーカ位置計測が可能となる。フローはその後ステップS716に進む。
【0038】
ステップS716では、インデックスrをインクリメントする。ステップS718で、インデックスrが2より小さければ、ステップS713に戻り、残りの発光マーカ4bに関し、ステップS713〜S717のプロセスを繰り返す。ステップS718でrが2に等しくなると、ステップS710に戻る。
【0039】
本実施形態では、発光マーカは4つ以上でもよい。この場合、エラーマーカペアが発光マーカ4a,4bとすると、ステップS713,S714で、発光マーカ4a,4bのいずれか一方、例えば発光マーカ4aについて、計測エラーマーカ判定部32aは、発光マーカ4aと、発光マーカ4b以外の全ての発光マーカ(例えば、発光マーカを5つ用いる場合、3つ)とについて、距離差|D1−D0|が予め設定した閾値より小さいか否かを確認する。このとき、計測エラーマーカ判定部32aは、発光マーカ4aに関してステップS705で求めた第1の空間座標が適正なものと判断する基準は、距離差が閾値より小さいものが一つでもある場合としてもよいし、全ての距離差が閾値より小さい場合にのみとしてもよいし、その中間でもよい。
【0040】
実施の形態3.
図9,10は、本発明に係る三次元位置計測システムの実施の形態3を示す概略構成図である。本実施形態に係る計測システム2bは、時系列的画像データを取得した後で位置計測を行うのではなく、各計測時刻の画像データを取得すると同時に位置計測を行うものである。また、三次元位置算出部18bの計測エラーマーカ判定部32bが計測エラーと判断した場合に、計測エラーマーカペアに対し再度ステレオ視法による計測を行った上で、三次元位置出力部34に三次元位置を記録するようになっている。
【0041】
具体的には、本実施形態に係る計測システム2bによる三次元計測処理のフローチャートである図11,12を参照して、まず、ステップS1101で、制御部10は発光制御部14を制御してLED4a,4bを発光させる。ステップS1103で、インデックスnを0に設定する。ステップS1103で、第1および第2のカメラ6A,6Bによる計測対象の撮像を行い、最初の計測時刻の画像フレームが画像メモリ12に記憶される。ステップS1104で、最初の計測時刻の画像フレームに関して、三次元位置算出部18のローカル位置算出部22は、各画像フレーム上の発光マーカ4a,4bの平面座標を算出する。ステップS1105で、ステレオ視演算部24は、各発光マーカ4a,4bの平面座標からステレオ視の原理により第1の空間座標を算出する。ステップS1106で、マーカ間距離算出部26は、発光マーカ4a,4b間の距離D1を算出する。ステップS1107で、計測エラー判定部28は、この距離D1と、発光マーカ4a,4bの実際の距離D0との差を算出する。
【0042】
ステップS1108で、差の絶対値|D1−D0|が予め決められた閾値より小さければ、ステップS1109に進み、計測エラー判定部28は、ステップS1105で算出した各発光マーカ4a,4bの第1の空間座標は適正と判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、この第1の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS1110に進む。
【0043】
ステップS1110で、インデックスnをインクリメントする。ステップS1111で、インデックスnがNより小さければ、フローはステップS1103に戻り、次の計測時刻の画像フレームに関し、ステップS1104〜S1110のプロセスを行う。ステップS1111でnがNに等しくなれば(すなわち、N枚分の画像フレームに関し、発光マーカ3a,3bの三次元位置の計測を終了する。)、フローを終了する。
【0044】
ステップS1108で、絶対値|D1−D0|が予め決められた閾値以上であれば、フローはステップS1112に進む。ステップS1112以下のフローでは、各発光マーカ4a,4bの三次元位置を再計測する。具体的に、ステップS1112でインデックスrを0に設定する。ステップS1113で、発光制御部14を制御して、発光マーカ4a,4bのいずれか一方、例えば発光マーカ4aをVD信号に同期させて1周期分発光させる。このとき、発光マーカ4bは発光させない。
【0045】
ステップS1114で、第1および第2のカメラ6A,6Bからそれぞれ画像フレームを取得して画像メモリ12に記憶させる。ステップS1115で、第1および第2のカメラ6A,6Bで撮像した画像フレームに関して、三次元位置算出部18のローカル位置算出部22は、各画像フレーム上の発光マーカ4aの平面座標を算出する。ステップS1116で、ステレオ視演算部24は、発光マーカ4aの平面座標からステレオ視法により第1の空間座標を再度算出する。その後、フローはステップS1117に進む。
【0046】
ステップS1117では、インデックスrをインクリメントする。ステップS1118で、インデックスrが2より小さければ、ステップS1113に戻り、残りの発光マーカ4bに関し、ステップS1113〜S1117のプロセスを繰り返して、発光マーカ4bの第1の空間座標を再度算出する。ステップS1118でrが2に等しくなると、フローはステップS1119に進む。
【0047】
ステップS1119で、マーカ間距離算出部26は、ステップS1116で再度算出した第1の空間座標から、発光マーカ4a,4b間の距離D1’を算出する。ステップS1120で、計測エラー判定部28は、この距離D1’と、発光マーカ4a,4bの実際の距離D0との差を算出する。
【0048】
ステップS1121で、差の絶対値|D1’−D0|が予め決められた閾値より小さければ、ステップS1122に進み、計測エラー判定部28は、ステップS1116で再度算出した各発光マーカ4a,4bの第1の空間座標は適正と判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、この第1の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS1110に戻る。
【0049】
ステップS1121で、絶対値|D1’−D0|が予め設定された閾値以上であれば、ステップS1123に進み、計測エラーマーカ判定部32は、発光マーカ4aに関してステップS1116で求めた第1の空間座標に関しても不適正なものと判断し、三次元位置出力部34にエラー信号を出力する。そして、三次元位置出力部34は、(計測時刻の画像フレームの)直前の画像フレームに基づいて求めた第2の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS1110に戻る。
【0050】
このように、計測マーカ距離と実際のマーカ間距離とが整合しない場合に、各LED4a,4bをVD信号に同期させて順次発光させた上で、各発光マーカ4a,4bの三次元位置を再計測しているので、一方の発光マーカの発光による生じる反射光などにより他方の発光マーカの位置の計測エラーが生じることがなく、また、マーカの識別エラーの影響を減らすことができるので、高精度の位置計測を行うことができる。
【0051】
なお、本実施形態では、エラーマーカペアを構成する両発光マーカ4a,4bに対しそれぞれ同期発光処理を行ったが、特定の発光マーカのみ、例えば、以前に計測エラーを引き起こした発光マーカのみ、同期発光処理を行うようにしてもよい。
【0052】
実施の形態4.
図13,14は、本発明に係る三次元位置計測システムの実施の形態4を示す概略構成図である。本実施形態に係る計測システム2cの三次元位置算出部18cは、実施の形態1の三次元位置算出部18のマーカ移動距離算出部30の代わりに、発光面積算出部36、マーカ・カメラ間距離算出部38および発光面積演算部40を備えている。発光面積算出部36は、画像内の発光マーカの発光面積を算出するものである。マーカ・カメラ間距離算出部38は、カメラ/マーカ情報管理部16に記憶された、予め設定された発光面積と距離との関係情報から、発光面積算出部36で算出した発光面積に基づいて、発光マーカ4とカメラ6の撮像面との距離を算出するものである。発光面積演算部40は、マーカ・カメラ間距離算出部38で算出した距離と、カメラ/マーカ情報管理部16に記憶された一つのカメラ6の位置・姿勢等の情報とに基づいて、発光マーカ4の三次元位置(第3の空間座標)を算出するものである。
【0053】
次に、図15〜17のフローチャートを用いて、本実施形態に係る計測システム2cによる三次元計測処理を説明する。但し、ステップS1501〜S1511については、図3のステップS301〜S311と同一であり、特に必要でない限り説明を省略する。
【0054】
ステップS1508で、ステップS1505で算出した第1の空間座標から求めた発光マーカ4a,4bの距離D1と、基準距離D0との差の絶対値|D1−D0|が予め決められた閾値以上であれば、フローはステップS1512に進む。
【0055】
ステップS1512で、インデックスqを0に設定する。qはカメラ6の数に対応する。ステップS1513で、発光面積算出部36は、各発光マーカ4a,4bに関し、一方のカメラ、例えば第1のカメラ6Aで撮像した画像フレームでのマーカ発光面積を算出する。ステップS1514で、マーカ・カメラ間距離算出部38は、ステップS1513で算出したマーカ発光面積に基づいて、各発光マーカ4a,4bとCCDカメラ6Aの撮像面との距離を算出する。ステップS1515で、発光面積演算部40は、ステップS1514で算出した距離と、ステップS1504で算出したカメラ6Aで画像フレーム内の発光マーカ4a,4bの平面座標と、カメラ/マーカ情報管理部16に記憶されたカメラ位置・姿勢等の情報とに基づいて、第1のカメラ6Aで撮像した画像フレームに基づく発光マーカ4a,4bの第3の空間座標を算出する。その後、フローはステップS1516に進む。
【0056】
ステップS1516で、インデックスqをインクリメントする。ステップS1517で、インデックスqが2より小さければ、ステップS1513に戻り、残りの第2のカメラ6Bに関し、ステップS1513〜S1516のプロセスを繰り返して、第2のカメラ6Bで撮像した画像フレームに基づく発光マーカ4a,4bの第3の空間座標を算出する。ステップS1517でqが2に等しくなると、ステップS1518に進み、第1のカメラ6Aに対応する発光マーカ4a,4b間の距離と、第2のカメラ6Bに対応する発光マーカ4a,4b間の距離とを算出する。ステップS1519で、ステップS1520で算出した各距離D3と、実際のマーカ間距離D0との差を算出する。
【0057】
ステップS1520では、差の絶対値|D3−D0|が予め設定された閾値より小さくなるカメラ6が存在するか否かを確認する。このようなカメラ6が存在すれば、フローはステップS1521に進む。そして、ステップS1521以下のフローでは、計測エラーを引き起こした発光マーカを特定し該発光マーカに関しては発光面積を利用して算出した第3の空間座標を三次元位置記録部20に出力し記録する。
【0058】
より詳しくは、ステップS1521でインデックスrを0に設定する。ステップS1522で、一方の発光マーカ、例えば発光マーカ4aに関し、ステップS1505で算出したステレオ視の原理による第1の空間座標と、ステップS1515で算出した発光面積を利用した第3の空間座標とのずれを算出する。
【0059】
ステップS1523で、上記ずれが予め設定された閾値より小さければ、ステップS1524に進み、計測エラー判定部28は、発光マーカ4aに関してステップS1504で求めた第1の空間座標は適正と判断し(通常、第1の空間座標は、第3の空間座標より高精度に求まる。)、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、この第1の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS1525に進む。
【0060】
ステップS1523で、上記ずれが予め設定された閾値以上であれば、ステップS1526に進み、計測エラー判定部28は、発光マーカ4aに関してステップS1504で求めた第1の空間座標は不適正と判断し、三次元位置出力部34に所定の信号を出力する。三次元位置出力部34は、(第1の空間座標の代わり)に第3の空間座標を三次元位置記録部20に出力し記録する。その後、フローはステップS1525に進む。
【0061】
ステップS1525で、インデックスrはインクリメントされる。ステップS1527で、インデックスrが2より小さければ、ステップS1522に戻り、残りの発光マーカ4bに関し、ステップS1522〜S1526のプロセスを繰り返して、第1または第3の空間座標を三次元位置記録部20に記録する。
【0062】
ステップS1520で、絶対値|D3−D0|が予め設定された閾値より小さくなるカメラ6が存在しなければ、ステップS1528に進み、計測エラーマーカ判定部32は、(ステップS1505で算出した第1の空間座標のみならず)発光面積を利用してステップS1515で算出した第3の空間座標も不適当と判断し、三次元位置出力部34にエラー信号を出力する。そして、三次元位置出力部34は、直前の画像フレームに基づいて求めた発光マーカ4a,4bに関する第2の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS1510に戻る。
【0063】
このように、本実施形態では、マーカ発光面積を利用して算出した三次元位置情報を利用して計測エラーマーカを特定することにより、他方の発光マーカに関する有効な計測データを最大限利用することが可能となり、連続的なマーカ位置計測が可能となる。
【0064】
実施の形態5.
本実施形態に係る三次元位置計測システム(図示省略)は、上記実施の形態1〜4に係る計測システムとは異なり、一つまたはそれ以上の計測用の発光マーカ(例えば、実施の形態1の発光マーカ4a,4bに相当)以外に、計測用発光マーカと一定距離にある、光環境の変化やオクルージョンなどの影響を受けない一つまたはそれ以上の基準用発光マーカ(図示せず)を計測対象(例えば人)に装着させる。この場合、基準用発光マーカと計測用発光マーカとの距離を算出することで、計測エラーが生じれば(計測エラーマーカの判定を行うことなく)直ちにエラーマーカを特定できる。
【0065】
以上、本発明の具体的な実施形態について説明したが、本発明はこれらに限らず種々改変可能である。例えば、上記実施形態では、計測エラーを引き起こした発光マーカについては、直前の画像フレームを利用して求めた第2の空間座標のデータを三次元位置記録部20に記録したが、代わりに、動画像カメラをさらに別に用意して発光マーカを撮像しておき、当該動画像カメラで撮像した画像フレームと、該画像フレームと別の動画像カメラで撮像した画像フレームとを利用して、ステレオ視の原理により計測エラーマーカの三次元位置を算出するようにしてもよい。
【0066】
【発明の効果】
本発明によれば、計測エラーが発生した場合に、該エラーを引き起こした発光マーカを特定することで、計測エラー発生時に計測した他の発光マーカの位置情報を有効に利用できる。
【図面の簡単な説明】
【図1】本発明に係る三次元位置計測システムの実施の形態1を示す概略構成図。
【図2】図1の三次元位置算出部を示すブロック図。
【図3】図1の三次元位置計測システムによる計測プロセスの第1の部分を示すフローチャート。
【図4】図1の三次元位置計測システムによる計測プロセスの第2の部分を示すフローチャート。
【図5】本発明に係る三次元位置計測システムの実施の形態2を示す概略構成図。
【図6】図5の三次元位置算出部を示すブロック図。
【図7】図5の三次元位置計測システムによる計測プロセスの第1の部分を示すフローチャート。
【図8】図5の三次元位置計測システムによる計測プロセスの第2の部分を示すフローチャート。
【図9】本発明に係る三次元位置計測システムの実施の形態3を示す概略構成図。
【図10】図9の三次元位置算出部を示すブロック図。
【図11】図9の三次元位置計測システムによる計測プロセスの第1の部分を示すフローチャート。
【図12】図9の三次元位置計測システムによる計測プロセスの第2の部分を示すフローチャート。
【図13】本発明に係る三次元位置計測システムの実施の形態4を示す概略構成図。
【図14】図13の三次元位置算出部を示すブロック図。
【図15】図13の三次元位置計測システムによる計測プロセスの第1の部分を示すフローチャート。
【図16】図13の三次元位置計測システムによる計測プロセスの第2の部分を示すフローチャート。
【図17】図13の三次元位置計測システムによる計測プロセスの第3の部分を示すフローチャート。
【符号の説明】
2:三次元計測システム
4a,4b:発光マーカ
6A,6B:動画像カメラ
8:計測装置
【発明の属する技術分野】
本発明は、一般に三次元位置計測システムおよび方法に関し、特に、例えば人などの計測対象の複数の部位に取り付けた複数の発光マーカの三次元位置を計測するためのシステムおよび方法に関する。
【0002】
【従来の技術】
従来、人などの計測対象の複数の部位にマーカを取り付け、これらマーカの三次元位置を計測することで、対象の動作を解析する三次元計測システムが知られている。このような三次元位置計測システムは、一般的に、複数の動画像カメラでマーカを撮影し、ステレオ視の原理を用いてマーカの三次元位置を算出する。
【0003】
このような三次元位置計測システムで計測を行う場合、各種ノイズ、光環境の変化(例えば、日が差すなどして、カメラの視野内に直接光や反射光が混入する。)などが原因で計測エラー(例えば、光環境の変化で生じた画像内の光をマーカと誤認識する。)が発生する可能性がある。
【0004】
そこで、例えば、特許文献1に開示された動作解析装置(三次元位置計測システム)では、マーカ位置を計測すると同時にマーカ間の距離を算出し、算出距離を予め決められた基準距離と比較して、算出距離が適正であれば、算出したマーカ三次元位置を適切な三次元位置と判断する。
【0005】
【特許文献1】
特開2002−8043号公報
【0006】
【発明が解決しようとする課題】
しかしながら、上記動作解析装置では、マーカ間距離が不適正と判定すると以後の計測を中止するように設定されているため、安定した位置計測を行うことができない。また、マーカ間距離が不適正と判定した場合であっても、一方のマーカの位置情報は正しい可能性が高いにもかかわらず、正しい位置情報を有効に利用していない。
【0007】
そこで、本発明は、マーカ間距離情報を利用して計測エラーを判定する三次元計測システムおよび方法であって、マーカ間距離が不適正と判定した場合に、正しい位置情報を有効に利用できるものを提供することを特徴とする。
【0008】
【課題を解決するための手段】
上記目的を達成するために、本発明に係る三次元位置計測システムは、
計測対象に装着された複数の発光マーカと、
上記複数の発光マーカを撮像する第1および第2の動画像カメラと、
第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における上記各発光マーカの平面座標を算出する二次元位置算出部と、
二次元位置算出部で算出された第1および第2の画像内の上記各発光マーカの平面座標に基づいて、ステレオ視の原理により上記各発光マーカの空間座標(第1の空間座標)を算出するステレオ視演算部と、
ステレオ視演算部で算出した空間座標に基づいて、上記各発光マーカ間の距離を算出するマーカ間距離算出部と、
マーカ間距離算出部で算出した上記マーカ間距離が適正か否かを判定する計測エラー判定部と、
計測エラー判定部でマーカ間距離が不適正と判定された発光マーカペアを構成する各発光マーカについて、対応する上記第1および第2の画像と、不適正と判定される直前の上記第1および第2の画像とに基づいて、マーカ移動距離を算出するマーカ移動距離算出部と、
上記マーカ移動距離に基づいて、不適正なマーカ間距離であるとの判定の原因となった発光マーカを判定する計測エラーマーカ判定部とを備えたことを特徴とする。
【0009】
本発明に係る三次元位置計測方法は、
計測対象に装着された複数の発光マーカを第1および第2の動画像カメラで撮像するステップと、
第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における上記各発光マーカの平面座標を算出するステップと、
各画像内における上記各発光マーカの上記算出した二次元位置に基づいて、ステレオ視の原理により上記各発光マーカの空間座標(第1の空間座標)を算出するステップと、
空間座標に基づいて、上記各発光マーカ間の距離を算出するステップと、
算出したマーカ間距離が適正か否かを判定する計測エラー判定ステップと、
計測エラー判定ステップで算出したマーカ間距離が不適正と判定された場合に、該マーカ間距離に対応する発光マーカペアを構成する各発光マーカのいずれかが、不適正なマーカ間距離であるとの判定の原因となったかを判定するステップとを含むことを特徴とする。
【0010】
【発明の実施の形態】
以下、添付図面を参照して本発明の実施の形態を説明する。
【0011】
実施の形態1.
図1,2は、本発明に係る三次元位置計測システム(以下、計測システムという。)の実施の形態1を示す概略構成図である。この計測システム2は、概略、所定の範囲内で移動(運動)する計測対象(例えば人)の所定の部位に装着する一対の発光マーカ4(4a,4b)(本実施形態ではLED)と、計測対象部位が動く範囲を視野内に捉える第1および第2の動画像カメラ(本実施形態ではCCDカメラで、以下、カメラという。)6(6A,6B)と、第1および第2のカメラ6A,6Bで撮像した時系列画像データに基づいて、発光マーカ4a,4bの三次元位置を適当な時間間隔(この間隔は、撮像手段であるCCDの垂直駆動(VD)信号の周期の整数倍である。)で計測するための計測装置8とを備える。
【0012】
計測装置8は、計測システム2全体を制御する制御部10、カメラ6A,6Bでそれぞれ撮像した第1および第2の時系列画像データを記憶するための画像メモリ12、LED4a,4bの発光を制御するための発光制御部14、予め決められたカメラ6A,6Bの位置・姿勢や発光マーカ4a,4b間距離等の情報を管理するためのカメラ/マーカ情報管理部16、発光マーカ4a,4bの各時刻での三次元位置を算出するための三次元位置算出部18、該算出部18で算出した三次元位置を記録するための三次元位置記録部20等を備えている。
【0013】
図2に示すように、三次元位置算出部18は、ローカル位置算出部(二次元位置算出部)22、ステレオ視演算部24、マーカ間距離算出部26、計測エラー判定部28、マーカ移動距離算出部30、計測エラーマーカ判定部32、および三次元位置出力部34を備える。
【0014】
ローカル位置算出部22は、第1の時系列画像データを構成する各画像フレーム内および第2の時系列画像データを構成する各画像フレーム内での発光マーカ4a,4bのローカル位置(平面座標)を算出するものである。例えば、ある画像フレームに関し、水平走査線毎に輝度が所定の閾値を超えている画素部分を、マーカ存在部分(線分)として切り出す。そして、隣り合う水平走査線において水平方向に関し略同じ位置にマーカ存在部分があれば同一のマーカのものと判断することで、水平方向に関して水平駆動(HD)信号の数および垂直方向に関して水平走査線数に基づいて、発光マーカ4a,4bの平面座標を求めることができる。例えば、発光マーカ4a,4bの重心座標をそれぞれ求めて、これを各発光マーカ4a,4bのローカル位置とする。
【0015】
ステレオ視演算部24は、ローカル位置算出部22で算出した平面座標と、カメラ/マーカ情報管理部16で管理されたカメラの位置・姿勢等のデータに基づき、ステレオ視の原理を用いて、発光マーカ4a,4bの三次元位置(第1の空間座標)を求めるようになっている。マーカ間距離算出部26は、ステレオ視演算部24で算出した各発光マーカ4a,4bの第1の空間座標から、マーカ間の距離D1を算出するようになっている。計測エラー判定部28は、マーカ間距離算出部26で算出した発光マーカ4a,4b間の距離D1と、カメラ/マーカ情報管理部16で管理された既知の発光マーカ4a,4b間の距離D0とを比較し、両者の距離の差の絶対値|D1−D0|が予め設定した閾値より大きいか否かを判定するためのもので、上記絶対値が閾値より大きければ、少なくとも一方の発光マーカ4a,4bに関する第1の空間座標が計測エラーであるとして、マーカ移動距離算出部30にエラー信号を出力するようになっている。
【0016】
マーカ移動距離算出部30は、計測エラー判定部28からエラー信号を受けると、「直前」(例えば、VD信号1周期または2周期前)の画像フレームを利用して算出した三次元位置(第2の空間座標)と、三次元位置算出の対象となる画像フレームを利用して算出した第1の空間座標とから、各発光マーカ4a,4bの移動距離を算出するようになっている。第2の空間座標のデータは、三次元位置記録部20から適宜読み出されるが、代わりに、三次元位置算出部18は、第2の空間座標のデータを一時的に記憶するメモリを別に備えていてもよい。計測エラーマーカ判定部32は、各発光マーカ4a,4bの移動距離が予め設定した閾値より大きいか否かを判定するようになっている。すなわち、ある発光マーカ4に関して、1または2周期(1周期が例えば1/60秒)の間に移動する距離が閾値(発光マーカ4a,4bを装着する部位が1または2周期で移動できる距離として妥当な値の限界値)以上であると(移動速度が大きいと)、第1の空間座標は、発光マーカ4以外の光を発光マーカと誤認識して算出された可能性が高い。
【0017】
詳細は後述するが、三次元位置出力部34は、計測エラーマーカ判定部32での判定に基づいて、三次元位置記録部20に出力すべき各マーカ4a,4bの三次元位置情報を決定するようになっている。
【0018】
次に、図3,4のフローチャートを用いて、本実施形態に係る計測システム2による三次元計測処理を説明する。
【0019】
まず、ステップS301で、制御部10は発光制御部14を制御してLED4a,4bを発光させる。ステップS302で、第1および第2のカメラ6A,6Bによる計測対象の撮像を行い、時系列的に並んだ第1および第2の時系列画像データを取得して画像メモリ12に記憶させる。ステップS303で、インデックスnを0に設定する。インデックスnは、各発光マーカ4a,4bの三次元位置の計測回数に対応する。ステップS304で、第1および第2のカメラ6A,6Bで撮像した第1および第2の時系列画像データの中から、撮像初期の画像フレームをそれぞれ選択する。そして、三次元位置算出部18のローカル位置算出部22は、各画像フレーム上の発光マーカ4a,4bの平面座標を算出する。ステップS305で、ステレオ視演算部24は、各発光マーカ4a,4bの平面座標から、ステレオ視の原理により各発光マーカ4a,4bの第1の空間座標を算出する。ステップS306で、マーカ間距離算出部26は、発光マーカ4a,4b間の距離D1を算出する。ステップS307で、計測エラー判定部28は、この距離D1と、カメラ/マーカ情報管理部16に記憶された発光マーカ4a,4bの実際の距離D0との差を算出する。
【0020】
ステップS308で、差の絶対値|D1−D0|が予め決められた閾値より小さければ、ステップS309に進み、計測エラー判定部28は、ステップS305で算出した各発光マーカ4a,4bの第1の空間座標は適正と判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、この第1の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS310に進む。
【0021】
ステップS310で、インデックスnをインクリメントする。ステップS311で、インデックスnがN(これは、各発光マーカ4a,4bの計測総回数に等しい。)より小さければ、フローはステップS304に戻り、次に古い計測時刻に関して、ステップS304〜S310のプロセスを繰り返す。ステップS311でnがNに等しくなれば、フローを終了する。
【0022】
ステップS308で、絶対値|D1−D0|が予め決められた閾値以上であれば、フローはステップS312に進む。ステップS312以下のフローでは、発光マーカ4a,4bのいずれかの第1の空間座標が不適切かの判定を行っている(なお、可能性は低いが、発光マーカ4a,4bの両方について不適正な三次元位置が算出されることも判定できる。)。具体的に、ステップS312でインデックスrを0に設定する。rは発光マーカ4の数に対応する。ステップS313で、発光マーカ4a,4bのいずれか一方、例えば発光マーカ4aについて、マーカ移動距離算出部30は、直前の時刻と対象となる時刻との間で発光マーカ4aが移動した距離D2を算出する。
【0023】
ステップS314で、移動距離D2が予め設定された閾値より小さければ、ステップS315に進み、計測エラーマーカ判定部32は、発光マーカ4aに関してステップS305で求めた第1の空間座標は適正なものと判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、第1の空間座標のデータを三次元位置記録部20に出力し記録する。フローはその後ステップS316に進む。
【0024】
ステップS314で、移動距離D2が予め設定された閾値以上であれば、ステップS317に進み、計測エラーマーカ判定部32は、発光マーカ4aに関してステップS305で求めた第1の空間座標は不適正なものと判断し、三次元位置出力部34にエラー信号を出力する。そして、三次元位置出力部34は、(第1の空間座標の代わりに)直前の画像フレームに基づいて求めた第2の空間座標のデータを、三次元位置記録部20に出力し記録する。このように、時系列の直前の三次元位置を利用してマーカ移動距離を求めることで、計測エラーを起こした発光マーカを特定することができ、その結果、他方の発光マーカに関する有効な計測データを最大限利用することが可能となり、安定したマーカ位置計測が可能となる。フローはその後ステップS316に進む。
【0025】
ステップS316では、インデックスrをインクリメントする。ステップS318で、インデックスrが2より小さければ、ステップS313に戻り、残りの発光マーカ4bに関し、ステップS313〜S317のプロセスを繰り返す。ステップS317でrが2に等しくなると、ステップS310に戻る。
【0026】
発光マーカ4a,4bを識別する方法としては、例えば、発光制御部14を制御してVD信号に同期させて発光マーカ4a,4bを交互に点灯させる方法や、計測対象の時刻での画像フレームと直前の画像フレームで発光マーカ位置が近いものを同一のマーカとする方法などが例示できる。
【0027】
動画像カメラの数は3つ以上でもよい。この場合、ステレオ視演算部24は、各発光マーカ4a,4bを撮像する任意の一対のカメラ毎にステレオ視の原理により第1の空間座標を求めた後、算出した複数の第1の空間座標の平均を求め、マーカ間距離算出部26は、上記平均した第1の空間座標からマーカ間距離を求めるようにしてもよい。
【0028】
発光マーカは3つ以上でもよい。この場合、マーカ間距離算出部26は複数のマーカ間距離を算出してもよく、計測エラー判定部28は、算出した各マーカ間距離について計測エラーの判定を行う。
【0029】
また、本実施形態では、時系列画像データを先に取得した後で位置計測を行っているが、各計測時刻の画像データを取得すると同時に(すなわち、リアルタイムで)位置計測を行うようにしてもよい。
【0030】
実施の形態2.
図5,6は、本発明に係る三次元位置計測システムの実施の形態2を示す概略構成図である。以下の説明では、実施の形態1と同一または類似の構成要素は同一の符号または同一の符号に適当な添字を付して表す。本実施形態に係る計測システム2aは、実施の形態1に係る計測システム2と類似しているが、3つの発光マーカ4a,4b,4cを備えている点、および、三次元位置算出部18aの計測エラーマーカ判定部32aは、マーカ移動距離でなくマーカ間距離を利用して、計測エラーを引き起こした発光マーカを特定する点で異なる。
【0031】
具体的には、本実施形態に係る計測システム2aによる三次元計測処理のフローチャートである図7,8を参照して、まず、ステップS701で、制御部10は発光制御部14を制御してLED4a,4b,4cを発光させる。ステップS702で、第1および第2のカメラ6A,6Bによる計測対象の撮像を行い、時系列的に並んだ第1および第2の時系列画像データを取得して画像メモリ12に記憶させる。ステップS703で、インデックスnを0に設定する。ステップS704で、第1および第2のカメラ6A,6Bで撮像した第1および第2の時系列画像データの中から、撮像初期の画像フレームをそれぞれ選択する。そして、三次元位置算出部18のローカル位置算出部22は、各画像フレーム上の発光マーカ4a,4b,4cの平面座標を算出する。ステップS705で、ステレオ視演算部24は、各発光マーカ4a,4b,4cの平面座標からステレオ視の原理により第1の空間座標を算出する。
【0032】
ステップS706で、マーカ間距離算出部26は、発光マーカペア毎、すなわち、発光マーカ4a,4b間の距離D1(a,b)、発光マーカ4b,4c間の距離D1(b,c)、および発光マーカ4c,4a間の距離D1(c,a)を算出する。ステップS707で、計測エラー判定部28は、距離D1(a,b)と発光マーカペア4a,4bの実際の距離D0(a,b)との差、距離D1(b,c)と発光マーカペア4b,4cの実際の距離D0(b,c)との差、および、距離D1(c,a)と発光マーカペア4c,4aの実際の距離D0(c,a)との差を算出する。実際の距離D0(a,b),D0(b,c),D0(c,a)は、カメラ/マーカ情報管理部16に記憶されている。
【0033】
ステップS708で、全てのペアに関し差の絶対値|D1−D0|が予め決められた閾値より小さければ、ステップS709に進み、計測エラー判定部28は、ステップS705で算出した各発光マーカ4a,4b,4cの第1の空間座標は適正と判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、この第1の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS710に進む。
【0034】
ステップS710で、インデックスnをインクリメントする。ステップS711で、インデックスnが各発光マーカ4a,4b,4cの計測総回数であるNより小さければ、フローはステップS704に戻り、次に古い計測時刻に関して、ステップS704〜S710のプロセスを繰り返す。ステップS711でnがNに等しくなれば、フローを終了する。
【0035】
ステップS708で、絶対値|D1−D0|が予め決められた閾値以上のマーカペアが一つ存在すると、フローはステップS712に進む。以下の説明では、発光マーカペア4a,4bがエラーマーカペアであるとする。
【0036】
ステップS712でインデックスrを0に設定する。そして、発光マーカ4a,4bのいずれか一方、例えば発光マーカ4aについて、計測エラーマーカ判定部32aは、発光マーカ4aと、発光マーカ4b以外の発光マーカである発光マーカ4cとに関する距離差の絶対値|D1(c,a)−D0(c,a)|が予め設定した閾値より小さいか否かを確認する(ステップS713,S714)。差が閾値より小さければ、ステップS715に進み、計測エラーマーカ判定部32aは、発光マーカ4aに関してステップS705で求めた第1の空間座標は適正なものと判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、第1の空間座標のデータを三次元位置記録部20に出力し記録する。フローはその後ステップS716に進む。
【0037】
ステップS713,S714で、絶対値|D1(c,a)−D0(c,a)|が予め設定された閾値以上であれば、ステップS717に進み、計測エラーマーカ判定部32は、発光マーカ4aに関してステップS705で求めた第1の空間座標は不適正なものと判断し、三次元位置出力部34にエラー信号を出力する。そして、三次元位置出力部34は、(第1の空間座標の代わりに)直前の画像フレームに基づいて求めた第2の空間座標のデータを三次元位置記録部20に出力し記録する。このように、エラーマーカペアを構成する各マーカに関して複数のマーカ間距離情報を利用することで、計測エラーマーカを特定することができ、その結果、他方の発光マーカに関する有効な計測データを最大限利用することが可能となり、安定したマーカ位置計測が可能となる。フローはその後ステップS716に進む。
【0038】
ステップS716では、インデックスrをインクリメントする。ステップS718で、インデックスrが2より小さければ、ステップS713に戻り、残りの発光マーカ4bに関し、ステップS713〜S717のプロセスを繰り返す。ステップS718でrが2に等しくなると、ステップS710に戻る。
【0039】
本実施形態では、発光マーカは4つ以上でもよい。この場合、エラーマーカペアが発光マーカ4a,4bとすると、ステップS713,S714で、発光マーカ4a,4bのいずれか一方、例えば発光マーカ4aについて、計測エラーマーカ判定部32aは、発光マーカ4aと、発光マーカ4b以外の全ての発光マーカ(例えば、発光マーカを5つ用いる場合、3つ)とについて、距離差|D1−D0|が予め設定した閾値より小さいか否かを確認する。このとき、計測エラーマーカ判定部32aは、発光マーカ4aに関してステップS705で求めた第1の空間座標が適正なものと判断する基準は、距離差が閾値より小さいものが一つでもある場合としてもよいし、全ての距離差が閾値より小さい場合にのみとしてもよいし、その中間でもよい。
【0040】
実施の形態3.
図9,10は、本発明に係る三次元位置計測システムの実施の形態3を示す概略構成図である。本実施形態に係る計測システム2bは、時系列的画像データを取得した後で位置計測を行うのではなく、各計測時刻の画像データを取得すると同時に位置計測を行うものである。また、三次元位置算出部18bの計測エラーマーカ判定部32bが計測エラーと判断した場合に、計測エラーマーカペアに対し再度ステレオ視法による計測を行った上で、三次元位置出力部34に三次元位置を記録するようになっている。
【0041】
具体的には、本実施形態に係る計測システム2bによる三次元計測処理のフローチャートである図11,12を参照して、まず、ステップS1101で、制御部10は発光制御部14を制御してLED4a,4bを発光させる。ステップS1103で、インデックスnを0に設定する。ステップS1103で、第1および第2のカメラ6A,6Bによる計測対象の撮像を行い、最初の計測時刻の画像フレームが画像メモリ12に記憶される。ステップS1104で、最初の計測時刻の画像フレームに関して、三次元位置算出部18のローカル位置算出部22は、各画像フレーム上の発光マーカ4a,4bの平面座標を算出する。ステップS1105で、ステレオ視演算部24は、各発光マーカ4a,4bの平面座標からステレオ視の原理により第1の空間座標を算出する。ステップS1106で、マーカ間距離算出部26は、発光マーカ4a,4b間の距離D1を算出する。ステップS1107で、計測エラー判定部28は、この距離D1と、発光マーカ4a,4bの実際の距離D0との差を算出する。
【0042】
ステップS1108で、差の絶対値|D1−D0|が予め決められた閾値より小さければ、ステップS1109に進み、計測エラー判定部28は、ステップS1105で算出した各発光マーカ4a,4bの第1の空間座標は適正と判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、この第1の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS1110に進む。
【0043】
ステップS1110で、インデックスnをインクリメントする。ステップS1111で、インデックスnがNより小さければ、フローはステップS1103に戻り、次の計測時刻の画像フレームに関し、ステップS1104〜S1110のプロセスを行う。ステップS1111でnがNに等しくなれば(すなわち、N枚分の画像フレームに関し、発光マーカ3a,3bの三次元位置の計測を終了する。)、フローを終了する。
【0044】
ステップS1108で、絶対値|D1−D0|が予め決められた閾値以上であれば、フローはステップS1112に進む。ステップS1112以下のフローでは、各発光マーカ4a,4bの三次元位置を再計測する。具体的に、ステップS1112でインデックスrを0に設定する。ステップS1113で、発光制御部14を制御して、発光マーカ4a,4bのいずれか一方、例えば発光マーカ4aをVD信号に同期させて1周期分発光させる。このとき、発光マーカ4bは発光させない。
【0045】
ステップS1114で、第1および第2のカメラ6A,6Bからそれぞれ画像フレームを取得して画像メモリ12に記憶させる。ステップS1115で、第1および第2のカメラ6A,6Bで撮像した画像フレームに関して、三次元位置算出部18のローカル位置算出部22は、各画像フレーム上の発光マーカ4aの平面座標を算出する。ステップS1116で、ステレオ視演算部24は、発光マーカ4aの平面座標からステレオ視法により第1の空間座標を再度算出する。その後、フローはステップS1117に進む。
【0046】
ステップS1117では、インデックスrをインクリメントする。ステップS1118で、インデックスrが2より小さければ、ステップS1113に戻り、残りの発光マーカ4bに関し、ステップS1113〜S1117のプロセスを繰り返して、発光マーカ4bの第1の空間座標を再度算出する。ステップS1118でrが2に等しくなると、フローはステップS1119に進む。
【0047】
ステップS1119で、マーカ間距離算出部26は、ステップS1116で再度算出した第1の空間座標から、発光マーカ4a,4b間の距離D1’を算出する。ステップS1120で、計測エラー判定部28は、この距離D1’と、発光マーカ4a,4bの実際の距離D0との差を算出する。
【0048】
ステップS1121で、差の絶対値|D1’−D0|が予め決められた閾値より小さければ、ステップS1122に進み、計測エラー判定部28は、ステップS1116で再度算出した各発光マーカ4a,4bの第1の空間座標は適正と判断し、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、この第1の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS1110に戻る。
【0049】
ステップS1121で、絶対値|D1’−D0|が予め設定された閾値以上であれば、ステップS1123に進み、計測エラーマーカ判定部32は、発光マーカ4aに関してステップS1116で求めた第1の空間座標に関しても不適正なものと判断し、三次元位置出力部34にエラー信号を出力する。そして、三次元位置出力部34は、(計測時刻の画像フレームの)直前の画像フレームに基づいて求めた第2の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS1110に戻る。
【0050】
このように、計測マーカ距離と実際のマーカ間距離とが整合しない場合に、各LED4a,4bをVD信号に同期させて順次発光させた上で、各発光マーカ4a,4bの三次元位置を再計測しているので、一方の発光マーカの発光による生じる反射光などにより他方の発光マーカの位置の計測エラーが生じることがなく、また、マーカの識別エラーの影響を減らすことができるので、高精度の位置計測を行うことができる。
【0051】
なお、本実施形態では、エラーマーカペアを構成する両発光マーカ4a,4bに対しそれぞれ同期発光処理を行ったが、特定の発光マーカのみ、例えば、以前に計測エラーを引き起こした発光マーカのみ、同期発光処理を行うようにしてもよい。
【0052】
実施の形態4.
図13,14は、本発明に係る三次元位置計測システムの実施の形態4を示す概略構成図である。本実施形態に係る計測システム2cの三次元位置算出部18cは、実施の形態1の三次元位置算出部18のマーカ移動距離算出部30の代わりに、発光面積算出部36、マーカ・カメラ間距離算出部38および発光面積演算部40を備えている。発光面積算出部36は、画像内の発光マーカの発光面積を算出するものである。マーカ・カメラ間距離算出部38は、カメラ/マーカ情報管理部16に記憶された、予め設定された発光面積と距離との関係情報から、発光面積算出部36で算出した発光面積に基づいて、発光マーカ4とカメラ6の撮像面との距離を算出するものである。発光面積演算部40は、マーカ・カメラ間距離算出部38で算出した距離と、カメラ/マーカ情報管理部16に記憶された一つのカメラ6の位置・姿勢等の情報とに基づいて、発光マーカ4の三次元位置(第3の空間座標)を算出するものである。
【0053】
次に、図15〜17のフローチャートを用いて、本実施形態に係る計測システム2cによる三次元計測処理を説明する。但し、ステップS1501〜S1511については、図3のステップS301〜S311と同一であり、特に必要でない限り説明を省略する。
【0054】
ステップS1508で、ステップS1505で算出した第1の空間座標から求めた発光マーカ4a,4bの距離D1と、基準距離D0との差の絶対値|D1−D0|が予め決められた閾値以上であれば、フローはステップS1512に進む。
【0055】
ステップS1512で、インデックスqを0に設定する。qはカメラ6の数に対応する。ステップS1513で、発光面積算出部36は、各発光マーカ4a,4bに関し、一方のカメラ、例えば第1のカメラ6Aで撮像した画像フレームでのマーカ発光面積を算出する。ステップS1514で、マーカ・カメラ間距離算出部38は、ステップS1513で算出したマーカ発光面積に基づいて、各発光マーカ4a,4bとCCDカメラ6Aの撮像面との距離を算出する。ステップS1515で、発光面積演算部40は、ステップS1514で算出した距離と、ステップS1504で算出したカメラ6Aで画像フレーム内の発光マーカ4a,4bの平面座標と、カメラ/マーカ情報管理部16に記憶されたカメラ位置・姿勢等の情報とに基づいて、第1のカメラ6Aで撮像した画像フレームに基づく発光マーカ4a,4bの第3の空間座標を算出する。その後、フローはステップS1516に進む。
【0056】
ステップS1516で、インデックスqをインクリメントする。ステップS1517で、インデックスqが2より小さければ、ステップS1513に戻り、残りの第2のカメラ6Bに関し、ステップS1513〜S1516のプロセスを繰り返して、第2のカメラ6Bで撮像した画像フレームに基づく発光マーカ4a,4bの第3の空間座標を算出する。ステップS1517でqが2に等しくなると、ステップS1518に進み、第1のカメラ6Aに対応する発光マーカ4a,4b間の距離と、第2のカメラ6Bに対応する発光マーカ4a,4b間の距離とを算出する。ステップS1519で、ステップS1520で算出した各距離D3と、実際のマーカ間距離D0との差を算出する。
【0057】
ステップS1520では、差の絶対値|D3−D0|が予め設定された閾値より小さくなるカメラ6が存在するか否かを確認する。このようなカメラ6が存在すれば、フローはステップS1521に進む。そして、ステップS1521以下のフローでは、計測エラーを引き起こした発光マーカを特定し該発光マーカに関しては発光面積を利用して算出した第3の空間座標を三次元位置記録部20に出力し記録する。
【0058】
より詳しくは、ステップS1521でインデックスrを0に設定する。ステップS1522で、一方の発光マーカ、例えば発光マーカ4aに関し、ステップS1505で算出したステレオ視の原理による第1の空間座標と、ステップS1515で算出した発光面積を利用した第3の空間座標とのずれを算出する。
【0059】
ステップS1523で、上記ずれが予め設定された閾値より小さければ、ステップS1524に進み、計測エラー判定部28は、発光マーカ4aに関してステップS1504で求めた第1の空間座標は適正と判断し(通常、第1の空間座標は、第3の空間座標より高精度に求まる。)、三次元位置出力部34に適正信号を出力する。三次元位置出力部34は、この第1の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS1525に進む。
【0060】
ステップS1523で、上記ずれが予め設定された閾値以上であれば、ステップS1526に進み、計測エラー判定部28は、発光マーカ4aに関してステップS1504で求めた第1の空間座標は不適正と判断し、三次元位置出力部34に所定の信号を出力する。三次元位置出力部34は、(第1の空間座標の代わり)に第3の空間座標を三次元位置記録部20に出力し記録する。その後、フローはステップS1525に進む。
【0061】
ステップS1525で、インデックスrはインクリメントされる。ステップS1527で、インデックスrが2より小さければ、ステップS1522に戻り、残りの発光マーカ4bに関し、ステップS1522〜S1526のプロセスを繰り返して、第1または第3の空間座標を三次元位置記録部20に記録する。
【0062】
ステップS1520で、絶対値|D3−D0|が予め設定された閾値より小さくなるカメラ6が存在しなければ、ステップS1528に進み、計測エラーマーカ判定部32は、(ステップS1505で算出した第1の空間座標のみならず)発光面積を利用してステップS1515で算出した第3の空間座標も不適当と判断し、三次元位置出力部34にエラー信号を出力する。そして、三次元位置出力部34は、直前の画像フレームに基づいて求めた発光マーカ4a,4bに関する第2の空間座標のデータを三次元位置記録部20に出力し記録する。その後、フローはステップS1510に戻る。
【0063】
このように、本実施形態では、マーカ発光面積を利用して算出した三次元位置情報を利用して計測エラーマーカを特定することにより、他方の発光マーカに関する有効な計測データを最大限利用することが可能となり、連続的なマーカ位置計測が可能となる。
【0064】
実施の形態5.
本実施形態に係る三次元位置計測システム(図示省略)は、上記実施の形態1〜4に係る計測システムとは異なり、一つまたはそれ以上の計測用の発光マーカ(例えば、実施の形態1の発光マーカ4a,4bに相当)以外に、計測用発光マーカと一定距離にある、光環境の変化やオクルージョンなどの影響を受けない一つまたはそれ以上の基準用発光マーカ(図示せず)を計測対象(例えば人)に装着させる。この場合、基準用発光マーカと計測用発光マーカとの距離を算出することで、計測エラーが生じれば(計測エラーマーカの判定を行うことなく)直ちにエラーマーカを特定できる。
【0065】
以上、本発明の具体的な実施形態について説明したが、本発明はこれらに限らず種々改変可能である。例えば、上記実施形態では、計測エラーを引き起こした発光マーカについては、直前の画像フレームを利用して求めた第2の空間座標のデータを三次元位置記録部20に記録したが、代わりに、動画像カメラをさらに別に用意して発光マーカを撮像しておき、当該動画像カメラで撮像した画像フレームと、該画像フレームと別の動画像カメラで撮像した画像フレームとを利用して、ステレオ視の原理により計測エラーマーカの三次元位置を算出するようにしてもよい。
【0066】
【発明の効果】
本発明によれば、計測エラーが発生した場合に、該エラーを引き起こした発光マーカを特定することで、計測エラー発生時に計測した他の発光マーカの位置情報を有効に利用できる。
【図面の簡単な説明】
【図1】本発明に係る三次元位置計測システムの実施の形態1を示す概略構成図。
【図2】図1の三次元位置算出部を示すブロック図。
【図3】図1の三次元位置計測システムによる計測プロセスの第1の部分を示すフローチャート。
【図4】図1の三次元位置計測システムによる計測プロセスの第2の部分を示すフローチャート。
【図5】本発明に係る三次元位置計測システムの実施の形態2を示す概略構成図。
【図6】図5の三次元位置算出部を示すブロック図。
【図7】図5の三次元位置計測システムによる計測プロセスの第1の部分を示すフローチャート。
【図8】図5の三次元位置計測システムによる計測プロセスの第2の部分を示すフローチャート。
【図9】本発明に係る三次元位置計測システムの実施の形態3を示す概略構成図。
【図10】図9の三次元位置算出部を示すブロック図。
【図11】図9の三次元位置計測システムによる計測プロセスの第1の部分を示すフローチャート。
【図12】図9の三次元位置計測システムによる計測プロセスの第2の部分を示すフローチャート。
【図13】本発明に係る三次元位置計測システムの実施の形態4を示す概略構成図。
【図14】図13の三次元位置算出部を示すブロック図。
【図15】図13の三次元位置計測システムによる計測プロセスの第1の部分を示すフローチャート。
【図16】図13の三次元位置計測システムによる計測プロセスの第2の部分を示すフローチャート。
【図17】図13の三次元位置計測システムによる計測プロセスの第3の部分を示すフローチャート。
【符号の説明】
2:三次元計測システム
4a,4b:発光マーカ
6A,6B:動画像カメラ
8:計測装置
Claims (6)
- 計測対象に装着された複数の発光マーカと、
上記複数の発光マーカを撮像する第1および第2の動画像カメラと、
上記第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における上記各発光マーカの平面座標を算出する二次元位置算出部と、
上記二次元位置算出部で算出された第1および第2の画像内における上記各発光マーカの平面座標に基づいて、ステレオ視の原理により上記各発光マーカの空間座標を算出するステレオ視演算部と、
上記ステレオ視演算部で算出した空間座標に基づいて、上記各発光マーカ間の距離を算出するマーカ間距離算出部と、
上記マーカ間距離算出部で算出した上記マーカ間距離が適正か否かを判定する計測エラー判定部と、
上記計測エラー判定部でマーカ間距離が不適正と判定された発光マーカペアを構成する各発光マーカについて、対応する上記第1および第2の画像と、不適正と判定される直前の上記第1および第2の画像とに基づいて、マーカ移動距離を算出するマーカ移動距離算出部と、
上記マーカ移動距離に基づいて、不適正なマーカ間距離であるとの判定の原因となった発光マーカを判定する計測エラーマーカ判定部と、
を備えた三次元位置計測システム。 - 計測対象に装着された少なくとも3つの発光マーカと、
上記少なくとも3つの発光マーカを撮像する第1および第2の動画像カメラと、
上記第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における上記各発光マーカの平面座標を算出する二次元位置算出部と、
上記二次元位置算出部で算出された第1および第2の画像内における上記各発光マーカの平面座標に基づいて、ステレオ視の原理により上記各発光マーカの空間座標を算出するステレオ視演算部と、
上記ステレオ視演算部で算出した空間座標に基づいて上記各発光マーカ間の距離を算出するマーカ間距離算出部であって、上記各発光マーカについて複数のマーカ間距離を算出するものと、
上記マーカ間距離算出部で算出した上記マーカ間距離が適正か否かを判定する計測エラー判定部と、
上記計測エラー判定部でマーカ間距離が不適正と判定された発光マーカペアを構成する各発光マーカについて、不適正と判定された上記マーカ間距離以外のマーカ間距離に基づいて、不適正なマーカ間距離であるとの判定の原因となった発光マーカを判定する計測エラーマーカ判定部と、
を備えた三次元位置計測システム。 - 計測対象に装着された複数の発光マーカと、
上記複数の発光マーカの発光を制御する発光制御部と、
上記複数の発光マーカを撮像する第1および第2の動画像カメラと、
上記第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における上記各発光マーカの平面座標を算出する二次元位置算出部と、
上記二次元位置算出部で算出された各画像内における上記各発光マーカの平面座標に基づいて、ステレオ視の原理により上記各発光マーカの空間座標を算出するステレオ視演算部と、
上記ステレオ視演算部で算出した空間座標に基づいて、上記各発光マーカ間の距離を算出するマーカ間距離算出部と、
上記マーカ間距離算出部で算出した上記マーカ間距離が適正か否かを判定する計測エラー判定部とを備え、
上記計測エラー判定部でマーカ間距離が不適正と判定された場合に、上記発光制御部は、該マーカ間距離に対応する発光マーカペアを構成する各発光マーカを、第1および第2の動画像カメラの撮像素子を駆動する信号に同期させて順次発光させるとともに第1および第2の動画像カメラで撮像し、上記二次元位置算出部は、上記第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における各発光マーカの別の平面座標を算出するとともに、上記ステレオ視算出部は、各発光マーカについて、上記二次元位置算出部で算出された各画像内における上記別の平面座標に基づいて、別の空間座標を算出することを特徴とする三次元位置計測システム。 - 計測対象に装着された複数の発光マーカと、
上記複数の発光マーカを撮像する第1および第2の動画像カメラと、
上記第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における上記各発光マーカの平面座標を算出する二次元位置算出部と、
上記二次元位置算出部で算出された各画像内における上記各発光マーカの平面座標に基づいて、ステレオ視の原理により上記各発光マーカの空間座標を算出するステレオ視演算部と、
上記ステレオ視演算部で算出した空間座標に基づいて、上記各発光マーカ間の距離を算出するマーカ間距離算出部と、
上記マーカ間距離算出部で算出した上記マーカ間距離が適正か否かを判定する計測エラー判定部と、
上記計測エラー判定部でマーカ間距離が不適正と判定された発光マーカペアを構成する各発光マーカについて、上記第1および第2の動画像カメラでそれぞれ撮像された第1および第2の画像内における発光面積を算出する発光面積算出部と、
上記発光面積算出部で算出した発光面積を利用して、マーカ間距離が不適正と判断された発光マーカペアを構成する各発光マーカの別の空間座標を算出する演算部と、
上記演算部で算出した別の空間座標に基づいて、不適正なマーカ間距離であるとの判定の原因となった発光マーカを判定する計測エラーマーカ判定部と、
を備えた三次元位置計測システム。 - 計測対象に装着された、一つまたはそれ以上の計測用発光マーカ、および、計測用発光マーカとの距離が一定の基準用発光マーカと、
上記発光マーカを撮像する第1および第2の動画像カメラと、
上記第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における上記各発光マーカの平面座標を算出する二次元位置算出部と、
上記二次元位置算出部で算出された各画像内における上記各発光マーカの平面座標に基づいて、ステレオ視の原理により上記各発光マーカの空間座標を算出するステレオ視演算部と、
上記ステレオ視演算部で算出した空間座標に基づいて、基準用発光マーカと各計測用発光マーカ間の距離を算出するマーカ間距離算出部と、
各計測用発光マーカについて、マーカ間距離算出部で算出した上記マーカ間距離が適正か否かを判定し、これにより該計測用発光マーカがエラーを引き起こしたか否かを判定する計測エラー判定部と、
を備えた三次元位置計測システム。 - 計測対象に装着された複数の発光マーカを第1および第2の動画像カメラで撮像するステップと、
上記第1および第2の動画像カメラでそれぞれ撮像した第1および第2の画像内における上記各発光マーカの平面座標を算出するステップと、
各画像内における上記各発光マーカの上記算出した二次元位置に基づいて、ステレオ視の原理により上記各発光マーカの空間座標を算出するステップと、
上記算出した空間座標に基づいて、上記各発光マーカ間の距離を算出するステップと、
上記算出したマーカ間距離が適正か否かを判定する計測エラー判定ステップと、
計測エラー判定ステップで算出したマーカ間距離が不適正と判定された場合に、該マーカ間距離に対応する発光マーカペアを構成する各発光マーカのいずれかが、不適正なマーカ間距離であるとの判定の原因となったかを判定するステップと、
を含む三次元位置計測方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003159444A JP2004361222A (ja) | 2003-06-04 | 2003-06-04 | 三次元位置計測システムおよび方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003159444A JP2004361222A (ja) | 2003-06-04 | 2003-06-04 | 三次元位置計測システムおよび方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004361222A true JP2004361222A (ja) | 2004-12-24 |
Family
ID=34052501
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003159444A Pending JP2004361222A (ja) | 2003-06-04 | 2003-06-04 | 三次元位置計測システムおよび方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004361222A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100657542B1 (ko) | 2005-01-20 | 2006-12-15 | 대한민국 | 감시카메라의 왜곡보정을 통한 신장계측 장치,방법, 그방법이 기록된 기록매체 및 기준점 설정장치 |
JP2007187524A (ja) * | 2006-01-12 | 2007-07-26 | Shimadzu Corp | 磁気マッピング装置 |
JP2008065416A (ja) * | 2006-09-05 | 2008-03-21 | Shimadzu Corp | ヘッドモーショントラッカ装置 |
RU2492420C2 (ru) * | 2011-08-18 | 2013-09-10 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики" | Способ определения пространственного положения объекта и устройство для его осуществления |
CN104880176A (zh) * | 2015-04-15 | 2015-09-02 | 大连理工大学 | 基于先验知识模型优化的运动物位姿测量方法 |
EP3480791A1 (en) | 2017-11-07 | 2019-05-08 | Casio Computer Co., Ltd. | System, device, method and computer program for obtaining the location and shooting direction of at least two cameras |
JP2019109174A (ja) * | 2017-12-20 | 2019-07-04 | カシオ計算機株式会社 | 位置算出システム、位置算出装置、位置算出方法及びプログラム |
JP2020152546A (ja) * | 2019-03-20 | 2020-09-24 | 東芝エレベータ株式会社 | 画像処理装置 |
-
2003
- 2003-06-04 JP JP2003159444A patent/JP2004361222A/ja active Pending
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100657542B1 (ko) | 2005-01-20 | 2006-12-15 | 대한민국 | 감시카메라의 왜곡보정을 통한 신장계측 장치,방법, 그방법이 기록된 기록매체 및 기준점 설정장치 |
JP2007187524A (ja) * | 2006-01-12 | 2007-07-26 | Shimadzu Corp | 磁気マッピング装置 |
JP2008065416A (ja) * | 2006-09-05 | 2008-03-21 | Shimadzu Corp | ヘッドモーショントラッカ装置 |
RU2492420C2 (ru) * | 2011-08-18 | 2013-09-10 | Федеральное государственное бюджетное образовательное учреждение высшего профессионального образования "Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики" | Способ определения пространственного положения объекта и устройство для его осуществления |
CN104880176A (zh) * | 2015-04-15 | 2015-09-02 | 大连理工大学 | 基于先验知识模型优化的运动物位姿测量方法 |
EP3480791A1 (en) | 2017-11-07 | 2019-05-08 | Casio Computer Co., Ltd. | System, device, method and computer program for obtaining the location and shooting direction of at least two cameras |
US10922839B2 (en) | 2017-11-07 | 2021-02-16 | Casio Computer Co., Ltd. | Location obtaining system, location obtaining device, location obtaining method, and non-transitory computer-readable recording medium |
JP2019109174A (ja) * | 2017-12-20 | 2019-07-04 | カシオ計算機株式会社 | 位置算出システム、位置算出装置、位置算出方法及びプログラム |
JP7069691B2 (ja) | 2017-12-20 | 2022-05-18 | カシオ計算機株式会社 | 位置算出システム、位置算出装置、位置算出方法及びプログラム |
JP2022090130A (ja) * | 2017-12-20 | 2022-06-16 | カシオ計算機株式会社 | 位置算出システム、位置算出装置、位置算出方法及びプログラム |
JP7409425B2 (ja) | 2017-12-20 | 2024-01-09 | カシオ計算機株式会社 | 位置算出システム、位置算出装置、位置算出方法及びプログラム |
JP2020152546A (ja) * | 2019-03-20 | 2020-09-24 | 東芝エレベータ株式会社 | 画像処理装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3248374B1 (en) | Method and apparatus for multiple technology depth map acquisition and fusion | |
US7825948B2 (en) | 3D video conferencing | |
JP4297197B2 (ja) | キャリブレーション処理装置、およびキャリブレーション処理方法、並びにコンピュータ・プログラム | |
CN111462503B (zh) | 车辆测速方法、装置及计算机可读存储介质 | |
US8730302B2 (en) | Method and system for enhancing 3D effects for 3D video rendering | |
JP4764959B1 (ja) | 撮影装置及びその制御方法 | |
KR20150050172A (ko) | 관심 객체 추적을 위한 다중 카메라 동적 선택 장치 및 방법 | |
KR20110133587A (ko) | 제 1 이미징 장치 및 제 2 이미징 장치의 상대적인 위치 및 상대적인 방향을 결정하기 위한 방법 및 관련 장치 | |
JP2005167517A (ja) | 画像処理装置、画像処理装置のキャリブレーション方法及び画像処理プログラム | |
JP4692849B2 (ja) | 立体画像記録装置および立体画像記録方法 | |
KR101601263B1 (ko) | 비동기 센서들에 요구하는 씬의 3d 재구성 방법 | |
JP4813628B1 (ja) | 撮影装置及びその制御方法、並びに三次元情報測定装置 | |
JP2012222386A (ja) | 表示制御装置および方法、並びにプログラム | |
JP3990271B2 (ja) | 簡易ステレオ画像入力装置、方法、プログラム、および記録媒体 | |
JP2004361222A (ja) | 三次元位置計測システムおよび方法 | |
US12025427B2 (en) | Optical measuring method and optical measuring apparatus | |
JP2008015815A (ja) | 画像処理装置、および画像処理プログラム | |
KR20190098927A (ko) | 위치 추정에 적합한 카메라의 위치를 설정하는 방법 및 이를 구현하는 로봇 | |
US20090245584A1 (en) | Image processing apparatus, image processing method, and program | |
EP3882853A1 (en) | Image processing method and apparatus | |
KR102298047B1 (ko) | 디지털 콘텐츠를 녹화하여 3d 영상을 생성하는 방법 및 장치 | |
JP2006013851A (ja) | 撮像表示装置および撮像表示方法 | |
JP2004045321A (ja) | 位置計測システム | |
JP2002022444A (ja) | 座標情報収集システム、座標情報収集方法及びマーク部材 | |
CN102879993B (zh) | 物体轮廓的侦测装置及方法 |