JP7024876B2 - 検出装置、処理装置、検出方法、及び処理プログラム - Google Patents
検出装置、処理装置、検出方法、及び処理プログラム Download PDFInfo
- Publication number
- JP7024876B2 JP7024876B2 JP2020534123A JP2020534123A JP7024876B2 JP 7024876 B2 JP7024876 B2 JP 7024876B2 JP 2020534123 A JP2020534123 A JP 2020534123A JP 2020534123 A JP2020534123 A JP 2020534123A JP 7024876 B2 JP7024876 B2 JP 7024876B2
- Authority
- JP
- Japan
- Prior art keywords
- unit
- reference position
- detection device
- human body
- point
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01B—MEASURING LENGTH, THICKNESS OR SIMILAR LINEAR DIMENSIONS; MEASURING ANGLES; MEASURING AREAS; MEASURING IRREGULARITIES OF SURFACES OR CONTOURS
- G01B11/00—Measuring arrangements characterised by the use of optical techniques
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
Description
本発明は、検出装置、処理装置、検出方法、及び処理プログラムに関する。
物体を検出する技術として、例えば下記の特許文献1に記載された技術がある。歩行する人体等の移動する物体を検出する場合、移動方向に対して左側の部分と右側の部分とを判別することが難しいことがある。例えば、歩行時やランニング時における人体を検出する場合、人体の肩幅方向において左足と右足とがほぼ同じ位置になり、左足と右足との判別が難しい。
本発明の態様に従えば、移動する物体の各点の位置情報を検出する検出部と、物体の移動方向と鉛直方向とに交差する交差方向において位置情報の変化量が所定の条件を満たす位置を基準位置として算出する基準算出部と、基準算出部が算出した基準位置に基づいた、移動方向と鉛直方向とを含む基準面に対して、第1側に配置される物体の第1部分と、基準面に対して第1側と反対の第2側に配置される物体の第2部分とを判別する判別部と、を備える検出装置が提供される。
本発明の態様に従えば、移動する物体の移動方向と鉛直方向とに交差する交差方向において、物体の表面上の各点の位置情報の変化量が所定の条件を満たす位置を基準位置として算出する基準算出部と、基準位置に基づいて、物体のうち移動方向と鉛直方向とを含む基準面に対して第1側に配置される第1部分と、物体のうち基準面に対して第1側と反対の第2側に配置される第2部分とを判別する判別部と、を備える処理装置が提供される。
本発明の態様に従えば、移動する物体の各点の位置情報を検出することと、物体の移動方向と鉛直方向とに交差する交差方向において位置情報の変化量が所定の条件を満たす位置を基準位置として算出することと、基準位置に基づいた、移動方向と鉛直方向とを含む基準面に対して、第1側に配置される物体の第1部分と、基準面に対して第1側と反対の第2側に配置される物体の第2部分とを判別することと、を含む検出方法が提供される。
本発明の態様に従えば、コンピュータに、移動する物体の移動方向と鉛直方向とに交差する交差方向において、物体の表面上の各点の位置情報の変化量が所定の条件を満たす位置を基準位置として算出することと、基準位置に基づいて、移動方向と鉛直方向とを含む基準面に対して第1側に配置される物体の第1部分と、基準面に対して第1側と反対の第2側に配置される物体の第2部分とを判別することと、を実行させる処理プログラムが提供される。
[第1実施形態]
第1実施形態について説明する。図1は、第1実施形態に係る検出装置を示す図である。検出装置1(検出システム)は、例えば、モーションキャプチャ装置、動作検出システム、運動支援システムなどである。また、検出装置1は、姿勢解析又は3次元モデリングなどに使われる。これらの場合、検出装置1は、所定の時間範囲において一方向又は複数の方向に移動する物体Mを検出する。検出装置1は、直線的に移動する物体Mを検出してもよいし、蛇行して移動する物体Mを検出してもよい。検出装置1が物体Mを検出する際の物体Mの移動経路(例、軌跡)は、直線を含んでもよいし、曲線を含んでもよく、直線および曲線を含んでもよい。検出装置1は、物体Mの移動方向MDに対する側方の第1側(例、左側)に配置される物体Mの第1部分M1と、第1側と反対側(例、右側)に配置される物体Mの第2部分M2とを判別する。
第1実施形態について説明する。図1は、第1実施形態に係る検出装置を示す図である。検出装置1(検出システム)は、例えば、モーションキャプチャ装置、動作検出システム、運動支援システムなどである。また、検出装置1は、姿勢解析又は3次元モデリングなどに使われる。これらの場合、検出装置1は、所定の時間範囲において一方向又は複数の方向に移動する物体Mを検出する。検出装置1は、直線的に移動する物体Mを検出してもよいし、蛇行して移動する物体Mを検出してもよい。検出装置1が物体Mを検出する際の物体Mの移動経路(例、軌跡)は、直線を含んでもよいし、曲線を含んでもよく、直線および曲線を含んでもよい。検出装置1は、物体Mの移動方向MDに対する側方の第1側(例、左側)に配置される物体Mの第1部分M1と、第1側と反対側(例、右側)に配置される物体Mの第2部分M2とを判別する。
物体Mは、検出装置1による検出の対象となる対象領域AR(例、検出装置1の検出領域、視野)において移動可能である。物体Mは、例えば、人体または人以外の動物、人型または人以外の動物型のロボット、若しくは動物型以外のロボットを含む。以下の説明において、物体Mが人体であるとし、適宜、物体Mを人体Mと表す。物体M(この場合、人体M)は、例えば、移動に伴って姿勢と形状との一方または双方が変化する物体である。例えば、人体Mは、移動(例、歩行、走行、運動、動作)する際に、第1部分M1(例、左足)と第2部分M2(例、右足)とが交互に移動方向に移動して、人体Mの少なくとも一部の形状(例、姿勢)が変化する。人体Mの場合、検出装置1は、人体Mの移動方向MD又は人体Mの正中線(例、体表上の左右の中心線)を境界にして第1側(例、左側)に配置される第1部分M1と、第1側と反対側(例、右側)に配置される第2部分M2とを判別できる。
移動する人体Mは、例えば、フェンシング、野球、サッカー、ゴルフ、剣道、アメリカンフットボール、アイスホッケー、又は体操などのスポーツ、ランニング、エクササイズ、ヨガ、ボディビル、ファッションショーなどのウォーキング又はポージング、ゲーム、人物認証、若しくは仕事において動作する人体である。物体Mは、移動する人体と、移動する人体に付帯する物体(例、衣類、装着物、運動器具、防具)とを含んでもよい。
以下の説明において、図1などに示すXYZ直交座標系を参照する。このXYZ直交座標系において、X方向は物体M(例、人体M)の移動方向であり、Y方向は鉛直方向であり、Z方向は物体M(人体M)の移動方向と鉛直方向とに交差(例、直交)する交差方向(例、直交方向)である。物体Mが人体である場合に、Z方向は人体Mの肩幅の方向を含み、第1部分M1は人体Mの左半身の少なくとも一部であり、第2部分M2は人体Mの右半身の少なくとも一部である。また、X、Y、Zの各方向において、適宜、矢印が指す側を+側(例、+Z側)と称し、その反対側を-側(例、-Z側)と称する。例えば、上記第1側は-Z側であり、上記第2側は+Z側である。
検出装置1は、位置検出部2と処理装置3とを備える。位置検出部2は、移動する人体Mの位置情報を検出する。位置検出部2は、人体Mの位置情報として、人体Mの表面上の各点の三次元座標を含む点群データを検出する。本実施形態において、人体Mの移動方向は、対象領域AR(例、位置検出部2の視野)に対して予め定められている。対象領域ARにおける鉛直方向および人体Mの移動方向は、既知の情報として検出装置1に与えられている。位置検出部2の検出結果(例、点群データ)において、X、Y、Zの各方向は上記既知の情報に基づいて設定される。位置検出部2は、検出部4と、点群データ生成部5とを含む。
検出部4は、例えば携帯型の装置(携帯機器)の少なくとも一部である。検出部4は、据え置き型の装置の少なくとも一部でもよい。検出部4は、処理装置3の内部に設けられてもよい。また、点群データ生成部5は、処理装置3の外部の装置に設けられてもよい。例えば、位置検出部2は、処理装置3の外部の装置であって、検出部4と点群データ生成部5とを内蔵してもよい。検出装置1の一部または全体は、携帯可能な装置(例、情報端末、スマートフォン、タブレット、カメラ付き携帯電話、ウェアラブル端末)でもよい。また、検出装置1の一部または全体は、据え置き型の装置(例、定点カメラ)でもよい。
図2は、第1実施形態に係る検出部を示す図である。検出部4は、人体Mの位置情報としてデプスを検出する。検出部4は、例えばデプスセンサ(例、デプスカメラ)を含む。検出部4は、所定の点から、対象領域ARに配置される物体の表面における各点までのデプス(例、位置情報、距離、奥行き、深度)を検出する。所定の点は、例えば、検出部4による検出の基準になる位置の点(例、視点、検出元の点、検出部4の位置を表す点、後述する撮像素子8の画素の位置)である。
検出部4は、照射部6、光学系7、及び撮像素子8を備える。照射部6は、対象領域AR(空間、検出領域)に光La(例、パターン光、照射光)を照射(例、投影)する。光学系7は、例えば結像光学系(撮像光学系)を含む。撮像素子8は、例えば、CMOSイメージセンサあるいはCCDイメージセンサを含む。撮像素子8は、2次元的に配列された複数の画素を有する。撮像素子8は、光学系7を介して、対象領域ARを撮像する。撮像素子8は、光Laの照射によって対象領域ARの物体から放射される光Lb(赤外光、戻り光)を検出する。
検出部4は、例えば、照射部6から照射される光Laのパターン(例、強度分布)と、撮像素子8によって検出された光Lbのパターン(例、強度分布、撮像画像)とに基づいて、撮像素子8の各画素に対応する対象領域AR上の点から、撮像素子8の各画素までのデプスを検出する。検出部4は、その検出結果として、対象領域ARにおけるデプスの分布を表したデプスマップ(例、デプス画像、奥行き情報、距離情報)を処理装置3(図1参照)に出力する。検出部4は、人体Mの位置情報として、デプスマップを処理装置3に出力する。
なお、検出部4は、TOF(time of flight)法によってデプスを検出するデバイスでもよい。検出部4は、TOF法以外の手法でデプスを検出するデバイスでもよい。検出部4は、例えば、レーザスキャナ(例、レーザ測距器)を含み、レーザスキャンによってデプスを検出してもよい。検出部4は、例えば、位相差センサを含み、位相差法によってデプスを検出してもよい。検出部4は、例えば、DFD(depth from defocus)法によってデプスを検出してもよい。
なお、検出部4は、赤外光以外の光(例、可視光)を物体Mに照射し、物体Mから出射する光(例、可視光)を検出してもよい。検出部4は、例えばステレオカメラなどを含み、複数の視点から物体Mを検出(例、撮像)してもよい。検出部4は、複数の視点から物体Mを撮像した撮像画像を用いて、三角測量によってデプスを検出してもよい。検出部4は、光学的な手法以外の手法(例、超音波によるスキャン)でデプスを検出してもよい。
図1の説明に戻り、点群データ生成部5は、検出部4が検出したデプスに基づいて、人体Mの位置情報として点群データを生成する。図1において、検出部4が処理装置3の外部に設けられ、点群データ生成部5が処理装置3の内部に設けられる。処理装置3は、検出部4と通信可能に接続される。検出部4は、その検出結果を処理装置3に出力する。処理装置3は、検出部4から出力された検出結果を処理する。
処理装置3は、点群データ生成部5、基準算出部11、部分判別部12、姿勢推定部13、及び記憶部14を備える。記憶部14は、例えば、不揮発性のメモリ、ハードディスク(HDD)、ソリッドステートドライブ(SSD)などである。記憶部14は、処理装置3で処理される元データ、及び処理装置3で処理されたデータ(例、処理装置3で生成されたデータ)を記憶する。記憶部14は、点群データの元データとして、検出部4から出力されるデプスマップを記憶する。
点群データ生成部5は、人体Mの位置情報として点群データを生成する点群処理を実行する。点群データは、対象領域ARにおける人体M上の複数の点の3次元座標を含む。点群データは、人体Mの周囲の物体(例、壁、床)上の複数の点の3次元座標を含んでもよい。点群データ生成部5は、検出部4が検出した位置情報(例、デプス)に基づいて、人体Mの点群データを算出する。点群データ生成部5は、記憶部14に記憶されている検出部4の検出結果(例、デプスマップ)を読み出して、点群データを算出する。点群データ生成部5は、物体M(例、人体M)のモデル情報(例、形状情報)として点群データを生成してもよい。
図3は、第1実施形態に係る点群データ生成部の処理を示す図である。符号D1は、検出部4の検出結果に相当するデプスマップ(例、デプス画像)である。デプスマップD1は、検出部4によるデプスの測定値の空間分布を表す情報(例、画像)である。デプスマップD1は、対象領域ARの各点におけるデプスを階調値で表したグレースケールの画像である。デプスマップD1において、階調値が相対的に高い部分(例、白い部分、明るい部分)は、デプスが相対的に小さい部分(例、位置検出部2から相対的に近い部分)である。デプスマップD1において、階調値が相対的に低い部分(例、黒い部分、暗い部分)は、デプスが相対的に大きい部分(例、位置検出部2から相対的に遠い部分)である。
点群データ生成部5(図1参照)は、記憶部14からデプスマップD1のデータを読み出し、デプスマップD1の各画素の階調値(例、デプスの測定値)に基づいて、各画素に相当する実空間上の点の3次元座標を算出し、点群データD2を生成する。以下の説明において、適宜、1つの点の三次元座標を点データと称する。点群データD2は、複数の点データを一組にしたデータである。
処理装置3(例、点群データ生成部5)は、例えば対象領域ARの全体の点群データに対してセグメント化、パターン認識などを施して、人体Mの点群データD2を抽出する。点群データ生成部5は、対象領域ARに配置される物体の位置情報から、物体の一部の位置情報を抽出する抽出処理(例、セグメンテーション)を実行する。ここで、対象領域ARに配置される物体は、物体M(例、人体)と、物体Mの周囲の物体(例、床、壁、背景の物体)とを含むとする。点群データ生成部5は、位置検出部2が検出した位置情報から、物体M(例、人体M)の位置情報を抽出(例、セグメント化、分離)する。
上記の抽出処理に先立ち、位置検出部2は、対象領域ARに物体Mが配置されていない第1状態と、対象領域ARに物体Mが配置されている第2状態とのそれぞれの状態において、対象領域ARにおける物体の位置情報を検出する。抽出処理において、点群データ生成部5は、第1状態における位置検出部2の検出結果と、第2状態における位置検出部2の検出結果との差分を算出することによって、物体M(例、人体M)の位置情報を抽出する。
上記の第1状態は、対象領域ARに物体M(例、人体M)が配置され、かつ対象領域ARにおける物体M(例、人体M)の位置が第2状態と異なる状態でもよい。例えば、上記第1状態は対象領域ARにおける第1位置に物体M(例、人体M)が配置される状態であり、上記第2状態は、対象領域において第1位置と異なる第2位置に物体M(例、人体M)が配置される状態でもよい。上記の抽出処理は、点群データ生成部5以外の処理部によって実行されてもよい。この処理部は、処理装置3に設けられてもよいし、処理装置3の外部の装置に設けられてもよい。上記の抽出処理は実行されなくてもよい。
また、処理装置3は、位置検出部2の検出結果からノイズを除去してもよい。ノイズを除去するノイズ除去処理は、例えば、位置検出部2が生成するデプスマップから空間的なノイズを除去する処理を含む。例えば、処理装置3は、デプスマップにおいて隣り合う第1領域(例、第1画素)と第2領域(例、第2画素)とでデプスの差が閾値を超える場合に、第1領域におけるデプスまたは第2領域におけるデプスがノイズであると判定する。処理装置3は、第1領域におけるデプスがノイズであると判定した場合に、第1領域の周囲の領域(例、第3画素、第4画素)のデプスを用いた補間などによって第1領域のデプスを推定し、第1領域のデプスを推定したデプスで更新(置換、補正)することによって、空間的なノイズを除去する。点群データ生成部5は、空間的なノイズが除去されたデプスマップに基づいて、点群データを生成してもよい。
また、ノイズを除去するノイズ除去処理は、例えば、位置検出部2が生成するデプスマップから時間的なノイズ(例、時間的に変化するノイズ)を除去する処理を含む。例えば、位置検出部2は、所定のサンプリング周波数で検出を繰り返し、処理装置3は、検出のタイミングが異なる位置検出部2の検出結果(例、デプスマップ)を比較する。例えば、処理装置3は、第1フレームにおけるデプスマップと、第1フレームの次の第2フレームにおけるデプスマップとで、各画素におけるデプスの変化量(例、時間変化量)を算出する。処理装置3は、各画素におけるデプスの変化量が所定の条件を満たす場合、この画素の第1フレームにおけるデプスまたは第2フレームにおけるデプスがノイズであると判定する。処理装置3は、第2フレームにおけるデプスがノイズであると判定した場合に、第1フレームにおけるデプスと第2フレームの次の第3フレームにおけるデプスとを用いた補間などによって第2フレームのデプスを推定する。処理装置3は、ノイズに対応する画素のデプスを推定したデプスで更新(置換、補正)することによって、時間的なノイズを除去する。点群データ生成部5は、時間的なノイズが除去されたデプスマップに基づいて、点群データを生成してもよい。
なお、ノイズ除去処理は、空間的なノイズを除去する処理または時間的なノイズを除去する処理を含まなくてもよい。また、ノイズ除去処理は、処理装置3以外の部分(例、位置検出部2)で実行されてもよい。また、検出装置1は、ノイズ除去処理を実行しなくてもよい。
図1の説明に戻り、処理装置3は、所定方向において人体Mの断面形状が変化するパターンに基づいて、人体Mの形状に関連付けられた基準位置BPを設定し、設定した基準に対して人体Mの左半身の部分と右半身の部分とを判別する。基準算出部11は、移動方向(この場合、X方向)および鉛直方向(この場合、Y方向)のいずれとも異なる方向(例、交差方向、Z方向)を、所定方向に設定する。基準算出部11は、所定方向に直交する面(例、XY平面またはXY平面に平行な面)における人体Mの断面形状(例、輪郭)が、所定方向において変化するパターン(例、人体Mの断面特徴)を利用して、基準位置BPを設定する。
基準算出部11は、例えば、移動方向に対する側方から人体Mを見た側面視の人体Mの断面特徴(例、XY平面な断面における人体Mの輪郭がZ方向に変化するパターン)を利用して、人体の特徴部分(例、腕、肩、頭部)を判別し、基準位置BPを設定する。上記断面特徴は、人体Mの表面における点の位置情報の変化量によって特定される。点の位置情報(この場合、点データ)は、例えば、X方向の座標(X座標)、Y方向の座標(Y座標)、及びZ方向の座標(Z座標)を一組にした情報である。位置情報の変化量は、X方向におけるY座標の変化量(例、dy/dx)と、X方向におけるZ座標の変化量(例、dz/dx)と、Y方向におけるX座標の変化量(例、dx/dy)と、Y方向におけるZ座標の変化量(例、dz/dy)と、Z方向におけるX座標の変化量(例、dx/dz)と、Z方向におけるY座標の変化量(例、dy/dz)との少なくとも1つで表される。上記断面特徴については、図4(A)から(C)、図5(A)および(B)などで説明する。
基準算出部11は、基準位置BPを算出する基準算出処理を実行する。基準算出部11は、人体Mの移動方向(この場合、X方向)と鉛直方向(この場合、Y方向)とに交差する交差方向(例、Z方向)において位置情報の変化量が所定の条件を満たす位置を、基準位置BPとして算出する。基準算出部11は、位置検出部2が任意のタイミングで人体Mを検出した検出結果(例、1フレームのデプス画像)に基づいて、後述の基準算出処理を実行する。
基準位置BPは、後に図4(B)で説明する第1基準位置BP1、及び後に図5(B)で説明する第2基準位置BP2を含む。基準位置BPは、第1部分M1と第2部分M2とを判別する部分判別処理において基準に用いる位置である。上記位置情報の変化量は、例えば、任意のタイミング(時刻)における人体Mの表面を表す複数の点間の座標の変化量(例、差分)を含む。上記位置情報の変化量は、人体Mの表面(例、外形、輪郭、シルエット)を表す曲線または直線の傾き(例、微分係数)でもよい。
次に、基準算出処理について説明する。基準算出部11は、基準位置BPとして、物体M(例、人体M)に含まれる構造のうちその数が1つである構造(例、頭部、胴体)の位置を推定する。基準算出部11は、基準位置BPとして、交差方向(例、Z方向)における人体Mの中心(例、中心線CL)を含む部分の位置を推定する。基準算出部11は、点群データに基づいて基準位置を算出する。基準算出部11は、点群データ生成部5が生成した人体Mの点群データを記憶部14から読み出して、基準算出処理を実行する。
図4(A)から図4(C)、図5(A)、図5(B)は、第1実施形態に係る基準算出部の処理を示す図である。基準算出部11は、基準位置BPとして第1基準位置BP1(図4(B)参照)を算出する第1基準算出処理を実行する。本実施形態において、第1基準位置BP1は、物体Mにおける第1側(例、-Z側、左半身)の第1基準位置BP1aと、物体Mにおける第2側(例、+Z側、右半身)の第1基準位置BP1bとを含む。また、基準算出部11は、基準位置BPとして、第1基準位置BP1に基づいて第2基準位置BP2(図5(B)参照)を算出する第2基準算出処理を実行する。
まず、第1基準算出処理について説明する。基準算出部11は、人体Mの位置情報の変化の特徴に基づいて、人体Mの所定の部位(例、首の付け根、首と胴体との間、肩と頭部との間など)の位置を第1基準位置BP1aとして推定する。基準算出部11は、所定の条件として点群データD2に含まれる点の座標の変化量が閾値以上となる条件を満たす位置を、第1基準位置BP1として算出する。
ここで、基準算出部11の処理は、検出対象として想定されている物体が歩行中の人体であるとし、任意のタイミングにおける人体の形状(例、姿勢)を想定する。人体は、腕(例、肘)から肩にかけて表面の位置が顕著に変化する(例、位置情報の変化量が閾値以上となる)。人体は、肩から首元までの間において表面の位置の変化が緩やかである(例、位置情報の変化量が閾値未満となる)。しかし、人体は、肩から頭部にかけて、肩の部分に比べて表面の位置が顕著に変化する(例、位置情報の変化量が閾値以上となる)。基準算出部11は、位置情報(例、点データのY座標)の変化量が閾値以上となる条件を満たす位置を第1基準位置BP1として算出する。
なお、上記の腕(腕部)は、例えば、肩甲上腕関節を含み、肩甲上腕関節から指先までの部分である。また、上記の肩(肩部)は、例えば、左腕の肩甲上腕関節と右腕の肩甲上腕関節との間、かつ第7頸椎(首の付け根)よりも下半身側の部分である。また、上記の頭部は、例えば、頭蓋骨に囲まれる部分および頭蓋骨よりも表面側の部分、並びに頸部を含む。頭部は、例えば、第7頸椎および頭頂を含み、第7頸椎から頭頂までの部分である。
基準算出部11は、Z方向に領域を分割し、分割した領域ごとに第1基準位置BP1の候補を算出する。図4(A)において、符号DAiは、分割された領域(分割領域、部分領域)である。添え字のiは、分割された各領域に割り付けられる番号であり、例えば0以上の整数(i=0、1、2・・・)である。また、Ziは、領域DAiを代表するZ方向の座標(例、Z方向における領域DAiの中心の座標)である。基準算出部11は、領域DAiにおける点群データD2を2次元領域における点データの集合として(例、Z座標の値を無視して)、第1基準算出処理を実行する。基準算出部11は、領域DAiに含まれる点データのZ座標がZiであるとして、第1基準算出処理を実行する。
基準算出部11は、点群データD2に含まれる点について交差方向(例、Z方向)の各座標における鉛直方向(Y方向)の座標の最大値を算出する。基準算出部11は、分割された領域DAiごとに、点データのY座標の最大値を算出する。図4(A)のYmax(Zi)は、領域DAiにおける点データのY座標の最大値である。基準算出部11は、Ymax(Zi)を、各座標(Zi)における点データのY座標の最大値とする。基準算出部11は、iを変更しつつYmax(Zi)を算出する処理を繰り返して、i=0、1、2・・・のそれぞれについてYmax(Zi)を算出する。
図4(B)には、交差方向の座標(Z座標)に対するYmax(Zi)のプロットを示した。ここで、交差方向の座標(Z座標)に対する位置情報の変化量を、ΔYmax(Zi)で表す。ΔYmax(Zi)は、例えば下記の式(1)で表される。
ΔYmax(Zi)=Ymax(Zi+1)-Ymax(Zi)・・・式(1)
ΔYmax(Zi)=Ymax(Zi+1)-Ymax(Zi)・・・式(1)
また、図4(C)には、交差方向の座標(Z座標)に対するΔYmax(Zi)の絶対値のプロットを示した。図4(B)および図4(C)において、符号Q1は人体Mの腕に対応する部分であり、適宜、左腕に対応する部分を符号Q1aで表し、右腕に対応する部分を符号Q1bで表す。また、符号Q2は人体Mの肩に対応する部分であり、適宜、左肩に対応する部分を符号Q2aで表し、右肩に対応する部分を符号Q2bで表す。また、符号Q3は人体Mの頭部に対応する部分である。
位置情報の変化量であるΔYmax(Zi)の絶対値(|ΔYmax(Zi)|)は、腕の部分Q1において大きく、肩の部分Q2において腕の部分Q1よりも小さい。また、|ΔYmax(Zi)|は、肩の部分Q2から頭部の部分Q3にかけて急激に大きくなる。基準算出部11は、このような位置情報の変化量の特徴(例、変化パターン)に基づいて、基準位置BP(例、第1基準位置BP1a)を算出する。基準算出処理において、基準算出部11は、|ΔYmax(Zi)|が第1閾値V1以下となる部分を、第1特徴部分(例、左肩の部分Q2a、右肩の部分Q2b)として設定(例、識別、特定、決定)する。
まず、人体Mにおける第1側(例、-Z側、左半身側)の第1基準位置BP1aを算出する処理について説明する。基準算出部11は、交差方向(例、Z方向)において一方の側(例、第1側、-Z側)からその反対の他方の側(例、第2側、+Z側)に向かう順に、|ΔYmax(Zi)|と第1閾値V1とを比較する。基準算出部11は、|ΔYmax(Zi)|と第1閾値V1との大小関係が切り替わる位置を、左腕の部分Q1aと左肩の部分Q2aとの境界(例、腕の端、肩の端)として設定(例、特定、識別)する。例えば、基準算出部11は、|Ymax(Zi)|が第1閾値V1よりも大きく、ΔYmax(Zi+1)が第1閾値V1以下である場合に、Ziの位置を左腕の部分Q1における+Z側の端に設定し、Zi+1の位置を左肩の部分Q2における-Z側の端に設定する。
また、基準算出部11は、人体Mの第1特徴部分(例、左肩の部分Q2a)に対して上記他方の側(例、第2側、+Z側)において、|Ymax(Zi)|が第2閾値V2以上となる部分を、人体Mの第2特徴部分(例、頭部の部分Q3)とする。例えば、基準算出部11は、第1特徴部分(例、左肩の部分Q2a)における-Z側の端として設定した位置から上記他方の側(例、+Z側)に向かう順に、|ΔYmax(Zi)|と第2閾値V2とを比較する。基準算出部11は、|ΔYmax(Zi)|と第2閾値V2との大小関係が切り替わる位置を、第1特徴部分(例、左肩の部分Q2a)と第2特徴部分(例、頭部の部分Q3)との境界(例、左肩の基端、頭部における-Z側の端、首元、首の付け根)として設定(例、特定、識別、決定)する。例えば、基準算出部11は、ΔYmax(Zi)が第2閾値V2よりも小さく、ΔYmax(Zi+1)が第2閾値V2以上である場合に、Ziの位置を第1特徴部分(左肩の部分Q2)における+Z側の端に設定し、Zi+1の位置を第2特徴部分(頭部の部分Q3)における-Z側の端に設定する。
更に、基準算出部11は、基準位置として、人体Mの腕から頭部までの位置情報の変化量に基づいて、人体の頭部に対応する第1基準位置BP1を算出する。基準算出部11は、第1基準位置BP1として、第1特徴部分(例、左肩の部分Q2a)と第2特徴部分(頭部の部分Q3)との境界を表す位置を算出する。例えば、基準算出部11は、第1基準位置BP1aとして、第1特徴部分(左肩の部分Q2a)における+Z側の端の位置を算出する。
次に、基準算出部11は、第1基準位置BP1aと同様にして、第1基準位置BP1bを算出する。基準算出部11は、第1基準位置BP1bを算出する処理において、人体Mに対して他方の側(例、+Z側)からその反対側(例、-Z側)に向かう順に、上記第1特徴部分および第2特徴部分を設定する。そして、基準算出部11は、第1基準位置BP1bとして、第1特徴部分(右肩の部分Q2b)における-Z側の端の位置を算出する。基準算出部11は、算出した第1基準位置BP1(例、3次元座標値)を図1の記憶部14に記憶させる。
なお、基準算出部11は、第2特徴部分(頭部の部分Q3)における-Z側の端の位置を第1基準位置BP1aとし、第2特徴部分(頭部の部分Q3)における+Z側の端の位置を第1基準位置BP1bとしてもよい。また、基準算出部11は、第1特徴部分(左肩の部分Q2a)における+Z側の端の位置と、第2特徴部分(頭部の部分Q3)における-Z側の端の位置との間の位置(例、中心)を、第1基準位置BP1aとしてもよい。この場合、基準算出部11は、第1特徴部分(右肩の部分Q2b)における-Z側の端の位置と、第2特徴部分(頭部の部分Q3)における+Z側の端の位置との間の位置(例、中心)を、第1基準位置BP1bとしてもよい。また、基準算出部11は、第1基準位置BP1として、第1基準位置BP1aと第1基準位置BP1bとの一方のみを算出してもよい。
次に、図5(A)、図5(B)を参照して、第2基準算出処理について説明する。基準算出部11は、図4(B)に示した第1基準位置BP1に対して設定される所定の領域AR2(例、頭部の部分Q3に相当するZ方向の領域)から基準位置BPとして第2基準位置BP2を選択(例、設定、決定)する。基準算出部11は、図4(B)および図4(C)で説明したように、物体Mにおける第1側(例、-Z側)の第1基準位置BP1aと、第2側(例、+Z側)の第1基準位置BP1bとを算出する。基準算出部11は、第1側の第1基準位置BP1aと第2側の第1基準位置BP1bとの間を所定の領域(例、基準位置を含む領域)に設定する。Z方向における人体Mの中心線CLは、第1基準位置BP1aと第1基準位置BP1bとの間の領域(上記所定の領域、頭部の部分Q3)を通ることが想定される。基準算出部11は、第1基準位置BP1aと第1基準位置BP1bとの間の領域において、所定の条件を満たす位置を第2基準位置BP2として算出する。
基準算出部11は、第2基準算出処理において、図4(A)と同様にZ方向に領域を分割し、分割した領域ごとに第2基準位置BP2の候補を算出する。基準算出部11は、分割された領域DAiにおける点群データD2を2次元領域における点データの集合として(例、Z座標の値を無視して)、第2基準算出処理を実行する。
基準算出部11は、第2基準算出処理において、点群データに含まれる点について交差方向(例、Z方向)の各座標(例、Z=Zi)おける移動方向(X方向)の前方(+X側)を正とした座標の極小値を算出する。まず、基準算出部11は、人体Mの前面側(進行方向の前方側、X方向の+X側)の点データを抽出する。例えば、基準算出部11は、Y方向に領域を分割し、分割された領域ごとに点データのX座標の最大値を算出する。
図5(A)において、符号DBjは、分割された領域(分割領域、部分領域)である。添え字のjは、分割された各領域に割り付けられる番号であり、例えば0以上の整数(j=0、1、2・・・)である。また、Yjは、領域DBjを代表するY方向の座標(例、Y方向における領域DBjの中心の座標)である。基準算出部11は、領域DBjにおける点群データD2を1次元領域における点データの集合として(例、Y座標の値を無視して)、第1基準算出処理を実行する。基準算出部11は、領域DBjに含まれる点データのY座標がYjであるとして、第2基準算出処理を実行する。
図5(A)のXmax(Yj)は、領域DBjにおける点データのX座標の最大値である。基準算出部11は、Xmax(Yj)を、各座標(Yj)における点データのX座標の最大値とする。Xmax(Yj)は、鉛直方向(Y方向)の各座標(Yj)において、進行方向(X方向)の前方側の点データのX座標に相当する。基準算出部11は、jを変更しつつXmax(Yj)を算出する処理を繰り返して、j=0、1、2・・・のそれぞれについてXmax(Yj)を算出する。
基準算出部11は、Y座標(Yj)に対する点データのX座標の最大値(Xmax(Yj))の分布に基づいて、Y座標に対するXmax(Yj)の極小値を算出する。図5(A)のXmin(Zi)は、Z座標をZi(図中のZ=Zi)とした領域DAiにおけるY座標に対するXmax(Yj)の極小値であり、Ykは、Xmin(Zi)に対応する点データのY座標である。Xmax(Yj)の位置は、例えば、人体Mの肩よりも上側かつ顎よりも下側の位置になる。
基準算出部11は、iを変更しつつXmin(Zi)を算出する処理を繰り返して、i=0、1、2・・・のそれぞれについてXmin(Zi)を算出する。図5(B)には、Z座標に対するXmin(Zi)の分布を表すプロットを示した。基準算出部11は、交差方向(例、Z方向)の座標に対する極小値(Xmin(Zi))の変化量に基づいて、第2基準位置BP2を選択する。人体Mの頸部を楕円柱で近似すると、頸部の表面は進行方向の前方に向かって凸となり、その先端の位置は人体Mの中心線CLの位置に相当する。基準算出部11は、Z座標に対するXmin(Zi)が極大(または最大)となるZ座標(図5(B)のZc)を算出する。
基準算出部11は、Xmin(Zc)を第2基準位置BP2のX座標とする。また、基準算出部11は、Xmin(Zc)に対応するY座標(図5(A)のYk)を第2基準位置BP2のY座標とする。また、基準算出部11は、Zcを第2基準位置BP2のZ座標とする。本実施形態に係る基準算出部11は、上述のように、分割された領域DAiごとの点群データを2次元データとして扱って基準算出処理を実行するので、例えば処理の負荷を低減可能である。なお、基準算出部11は、点群データを3次元データとして扱って基準算出処理を実行してもよい。
このように、本実施形態に係る基準算出部11は、人体Mの前面側の外形特徴を用いて基準位置BP(例、第2基準位置BP2)を算出する。一般的な人体は顎から喉、胸の部分で形状の変化が顕著であるため、基準算出部11は、第2基準位置BP2を高精度に算出可能である。なお、基準算出部11は、人体Mの後面側(例、進行方向の後方側、背中側)の外形特徴を用いて基準位置BPを算出してもよい。
図1の説明に戻り、基準算出部11は、算出した基準位置BPを記憶部14に記憶させる。部分判別部12は、部分判別処理を実行する。部分判別部12は、部分判別処理において、物体M(人体M)の第1部分M1(例、左半身の少なくとも一部)と第2部分M2(例、右半身の少なくとも一部)とを判別(例、判定、識別、特定)する。第1部分M1は、後述する基準面BFに対して第1側(例、-Z側)に配置される物体Mの一部である。第2部分M2は、基準面BFに対して第1側と反対の第2側(例、+Z側)に配置される物体Mの一部である。基準面BFは、移動方向(X方向)と鉛直方向(Y方向)とを含む平面である。基準面BFは、例えば、移動方向(X方向)と鉛直方向(Y方向)とに平行かつ、基準位置BP(第2基準位置BP2)を含む平面である。
部分判別部12は、基準算出部11が算出した基準位置BPに基づいて、部分判別処理を実行する。部分判別部12は、基準算出部11が算出した基準位置BPに基づいて、基準面BFを設定する。部分判別部12は、基準算出部11が算出した基準位置BPを記憶部14から読み出し、基準面BFを設定する。部分判別部12は、X方向とY方向とに平行かつ第2基準位置BP2を含む面を、基準面BFに設定する。
そして、部分判別部12は、点群データ生成部5が生成した点群データに基づいて部分判別処理を実行する。基準算出部11は、点群データ生成部5が生成した点群データを記憶部14から読み出し、点群データに含まれる1または以上の点データが表す部分が基準面BFに対して第1側(例、-Z側)又は第2側(例、+Z側)のいずれに配置されるかを判定する。
本実施形態において、第2基準位置BP2は、人体Mの中心線CL上の点の位置として基準算出部11が推定する位置であり、部分判別部12は、基準位置BPとして第2基準位置BP2を用いて部分判別処理を実行する。部分判別部12は、第2基準位置BP2に対して第1側(例、-Z側)に配置される部分を第1部分M1として判別する。また、部分判別部12は、第2基準位置BP2に対して第2側(例、+Z側)に配置される部分を第2部分M2として判別する。
図6は、第1実施形態に係る部分判別部の処理を示す図である。図6において、符号QXは、部分判別処理の対象の部分(例、点、領域)である。以下の説明において、部分判別処理の対象の部分を、判別対象部分と称する。判別対象部分QXは、予め設定される。例えば、判別対象部分QXは、人体Mの一部(例、手、足)に設定され、部分判別部12は、判別対象部分QX(例、足)が左半身(例、左足)と右半身(例、右足)とのいずれに属するのかを判別する。判別対象部分QXは、人体Mの複数の特徴部分(例、全身)に設定されてもよい。この場合、部分判別部12は、人体Mの各部分を順に判別対象部分QXに設定し、人体Mの部分ごとに部分判別処理を実行してもよい。
部分判別処理において、部分判別部12は、基準位置BPと物体M(人体M)の判別対象部分QXとを結ぶ測地線SLを算出する。測地線SLは、物体M(人体M)の表面にそって2点を結ぶ最短の線である。部分判別部12は、点群データから得られる人体Mの表面の形状に基づいて、測地線SLを算出する。部分判別部12は、基準位置BPとして第2基準位置BP2を用いて、第2基準位置BP2と判別対象部分QXとを結ぶ測地線SLを算出する。判別対象部分QXが領域である場合、部分判別部12は、判別対象部分QXから選択される点(例、判別対象部分QXの中心)と、第2基準位置BP2とを結ぶ測地線SLを算出する。
部分判別部12は、測地線SLと基準面BFとの相対位置に基づいて、第1部分M1と第2部分M2とを判別する。まず、測地線SLの全体が基準面BFに対して第1側(例、-Z側)または第2側(例、+Z側)に配置される場合について説明する。測地線SLの全体が基準面BFに対して第1側(例、-Z側)に配置される場合、部分判別部12は、測地線SLが基準面BFに対して第1側(例、-Z側)に配置されていると、測地線SLと基準面BFとの相対位置を特定する。また、測地線SLの全体が基準面BFに対して第2側(例、+Z側)に配置される場合、部分判別部12は、測地線SLが基準面BFに対して第2側(例、+Z側)に配置されていると、測地線SLと基準面BFとの相対位置を特定する。
次に、測地線SLの一部が基準面BFに対して第1側(例、-Z側)に配置され、測地線SLの一部が基準面BFに対して第2側(例、+Z側)に配置される場合について説明する。部分判別部12は、測地線SLにおいて基準面BFに対して第1側(例、-Z側)に配置される部分の特徴量(第1特徴量)と、測地線SLにおいて基準面BFに対して第2側(例、+Z側)に配置される部分の特徴量(第2特徴量)とに基づいて、測地線SLと基準面BFとの相対位置を特定する。部分判別部12は、第1特徴量と第2特徴量との大小関係または比に基づいて、測地線SLと基準面BFとの相対位置を特定する。
上記特徴量は、例えば、測地線SL上の点と基準面BFとの距離である。部分判別部12は、基準面BFに対して第1側(例、-Z側)に配置される測地線SL上の点と基準面BFとの距離(第1特徴量)と、基準面BFに対して第2側(+Z側)に配置される測地線SL上の点と基準面との距離(第2特徴量)とに基づいて測地線SLと基準面BFとの相対位置を特定する。
例えば、部分判別部12は、基準面SFに対して第1側(例、-Z側)に配置される測地線SL上の複数の点(第1の点集合)についての各点と基準面SFとの距離の平均(第1特徴量)を算出する。また、部分判別部12は、基準面SFに対して第2側(例、+Z側)に配置される測地線SL上の複数の点(第2の点集合)についての各点と基準面SFとの距離の平均(第2特徴量)を算出する。部分判別部12は、第1特徴量が第2特徴量よりも大きい場合、測地線SLが基準面BFに対して第1側(例、-Z側)に配置される相対位置であると特定する。また、部分判別部12は、第2特徴量が第1特徴量よりも大きい場合、測地線SLが基準面BFに対して第2側(例、+Z側)に配置される相対位置であると特定する。部分判別部12は、第1特徴量と第2特徴量との比を閾値と比較して、測地線SLと基準面BFとの相対位置を特定してもよい。
部分判別部12は、第1の点集合および第2の点集合を設定(生成)する際に、測地線SL上の複数の点を選択する。部分判別部12は、上記複数の点を、規則的に(例、所定間隔で)選択してもよいし、不規則的(例、ランダム)に選択してもよい。そして、部分判別部12は、選択した各点について、基準面SFに対して第1側(例、-Z側)に配置される場合にこの点を第1の点集合に分類し、基準面SFに対して第2側(例、+Z側)に配置される場合にこの点を第2の点集合に分類して、第1の点集合および第2の点集合を設定する。
部分判別部12は、上記第1の点集合に属する点の数と、上記第2の点集合に属する点の数とが同じになるように、第1の点集合と第2の点集合を設定してもよい。この場合、部分判別部12は、特徴量として、距離の平均値の代わりに距離の総和を用いてもよい。例えば、部分判別部12は、第1特徴量として第1の点集合に関する距離の総和を用い、第2特徴量として第2の点集合に関する距離の総和を用いて、測地線SLと基準面BFとの相対位置を特定してもよい。
また、上記第1特徴量は、基準面BFから第1側(例、-Z側)へ最も離れた測地線SL上の点と基準面BFとの距離でもよい。上記第2特徴量は、基準面BFから第2側(+Z側)へ最も離れた測地線SL上の点と基準面BFとの距離でもよい。部分判別部12は、第1特徴量が第2特徴量よりも大きい(距離が長い)場合、測地線SLが基準面BFに対して第1側(例、-Z側)に配置される相対位置であると特定する。また、部分判別部12は、第2特徴量が第1特徴量よりも大きい(距離が長い)場合、測地線SLが基準面BFに対して第2側(例、+Z側)に配置される相対位置であると特定する。部分判別部12は、第1特徴量と第2特徴量との比を閾値と比較して、測地線SLと基準面BFとの相対位置を特定してもよい。
また、上記第1特徴量は、測地線SLにおいて基準面BFに対して第1側(例、-Z側)に配置される部分の長さでもよい。上記第2特徴量は、測地線SLにおいて基準面BFに対して第2側(例、+Z側)に配置される部分の長さでもよい。部分判別部12は、第1特徴量が第2特徴量よりも大きい(又は長い)場合、測地線SLが基準面BFに対して第1側(例、-Z側)に配置される相対位置であると特定する。また、部分判別部12は、第2特徴量が第1特徴量よりも大きい(又は長い)場合、測地線SLが基準面BFに対して第2側(例、+Z側)に配置される相対位置であると特定する。部分判別部12は、第1特徴量と第2特徴量との比を閾値と比較して、測地線SLと基準面BFとの相対位置を特定してもよい。
また、部分判別部12は、上記第1の点集合および第2の点集合を設定(生成)しなくてもよく、上記第1特徴量および第2特徴量を用いないで、測地線SLと基準面BFとの相対位置を特定してもよい。例えば、部分判別部12は、測地線SL上の複数の点を、規則的に(例、所定間隔で)または不規則的(例、ランダム)に選択する。そして、部分判別部12は、選択した各点について、基準面BFとの距離を算出する。部分判別部12は、選択した各点について、基準面BFに対して一方側(例、第1側、-Z側)に配置される場合に基準面BFとの距離を負の値で表す。また、部分判別部12は、選択した各点について、基準面BFに対して他方側(例、第2側、+Z側)に配置される場合に基準面BFとの距離を正の値で表す。部分判別部12は、測地線SL上の複数の点について、正の値、負の値、又は0で表される各点と基準面BFとの距離の総和を算出する。部分判別部12は、算出した距離の総和が負の値である場合に、測地線SLが基準面BFに対して一方側(例、第1側、-Z側)に配置される相対位置であると特定する。また、部分判別部12は、算出した距離の総和が正の値である場合に、測地線SLが基準面BFに対して他方側(例、第2側、+Z側)に配置される相対位置であると特定する。
なお、部分判別部12は、測地線SLにおける所定の部分と基準面BFとの相対位置に基づいて、測地線SLと基準面BFとの相対位置を特定してもよい。上記の所定の部分は、測地線SLにおいて基準面BFから最も離れた点(最遠点)でもよい。部分判別部12は、上記最遠点が基準面BFに対して第1側(例、-Z側)に配置される場合、測地線SLが基準面BFに対して第1側(例、-Z側)に配置される相対位置である特定する。また、部分判別部12は、上記最遠点が基準面BFに対して第2側(例、+Z側)に配置される場合、測地線SLが基準面BFに対して第2側(例、+Z側)に配置される相対位置であると特定する。上記所定の部分は、最遠点以外でもよく、例えば、測地線SLにおいて判別対象部分QXよりも第2基準位置BP2に近い部分(例、第2基準位置BP2を起点とする所定の長さの部分)でもよい。部分判別部12は、測地線SLのうち第2基準位置BP2を起点として所定の長さの部分が第2側(+Z側)に延びる場合に、判別対象部分QXが第2部分M2に属すると判別してもよい。部分判別部12は、上述の手法を組み合わせて、測地線SLと基準面BFとの相対位置を特定してもよい。
図6において、測地線SLは、第2基準位置BP2を起点として+Z側に延びており、基準面BFの+Z側を経由して判別対象部分QXに至る。このような場合、部分判別部12は、判別対象部分QXが第2部分M2(例、右半身)に属すると判別する。ここで、左足と右足とが交差するか、もしくは同一の線上に並ぶ状態を想定する。この状態において、右足は、人体の肩幅の方向において左足よりも左側の位置または同じ位置に配置される。そのため、従来の通常の装置は、検出された足が右足であるのか左足であるのかを自動的に判別することが難しい場合がある。左足と右足とが交差するか、もしくは人体の中心線上に並ぶ状態において、実施形態に係る検出装置1は、例えば測地線SLと基準面BFとの相対位置を用いることによって、測地線SLの少なくとも一部が基準面BFに対して+Z側または-Z側に配置されるので、検出された足が左足であるのか、若しくは右足であるのかを高精度に自動で判別することができる。
図1の説明に戻り、上述のように、部分判別部12は、点群データが表す物体M(人体M)の少なくとも一部に対して部分判別処理を実行し、その処理結果を記憶部14に記憶させる。例えば、部分判別部12は、点群データが表す物体M(人体M)の部分ごとに部分判別処理を実行し、この部分が第1部分M1と第2部分M2とのいずれに属するかを示す判別情報(例、フラグ、属性情報)を処理結果として記憶部14に記憶させる。
そして、姿勢推定部13は、部分判別部12が判別した第1部分M1と第2部分M2とに基づいて、物体Mの姿勢を推定する姿勢推定処理を実行する。部分判別部12は、例えば、人体Mの特徴的な部分(例、特徴部分、特徴点)の位置情報を生成する。人体Mの特徴部分は、例えば、人体Mのうち他の部分と区別可能な部分である。人体Mの特徴部分は、例えば、人体の末端部(手先、足先、頭部)、関節、又は末端部と関節との間もしくは2つの関節の間の中間部の少なくとも1つを含む。
姿勢推定部13は、例えば、点群データから得られる人体Mの形状に対して、認識処理(例、パターン認識、形状認識、骨格認識)を実行する。姿勢推定部13は、認識処理によって、上記の特徴部分の位置情報を生成する。特徴部分の位置情報は、例えば、特徴部分を代表する点の座標(例、3次元座標)を含む。姿勢推定部13は、上記の認識処理によって、特徴部分を表す点の座標を算出する。そして、姿勢推定部13は、特定した部分の情報(例、特徴部分を表す点の座標)を記憶部14に記憶させる。
図7は、第1実施形態に係る姿勢推定部の処理を示す図である。図7において、符号Q11からQ30は、姿勢推定部13が特定した人体Mの特徴部分である。符号Q11からQ15は末端部に対応する特徴部分であり、Q11は頭部、Q12は左足先、Q13は左手先、Q14は右足先、Q15は右手先である。また、符号Q16から符号Q27は、関節に対応する特徴部分であり、Q16は左足首、Q17は左膝、Q18は左股関節(左足の付け根)、Q19は右足首、Q20は右膝、Q21は右股関節(右足の付け根)、Q22は左手首、Q23は左肘、Q24は左肩甲上腕関節、Q25は右手首、Q26は右肘、Q27は右肩甲上腕関節である。また、符号Q28からQ30は、末端部と関節との間もしくは2つの関節の間の中間部に相当する特徴部分であり、Q28は腰(左右の股関節の中央)、Q29は頸部(左右の肩甲上腕関節の中央)、Q30は背中(腰Q28と頸部Q29との中央)である。
本実施形態の姿勢推定部13は、部分判別部12が左半身の部分と右半身の部分とを高精度に判別可能であるので、人体Mの特徴部分(例、左足首、右足首)を高精度に特定可能である。姿勢推定部13は、上記認識処理の結果として、各特徴部分の位置と、各特徴部分の情報(例、属性情報、名称(右膝、右股関節))と、2つの特徴部分の接続関係を示す接続情報とを一組にした姿勢情報(例、骨格情報、スケルトンデータ)を生成する。姿勢推定部13は、上記姿勢情報を図1の記憶部14に記憶させる。
姿勢推定部13は、上記姿勢情報に基づいて、人体Mの姿勢を推定する。姿勢推定部13は、接続関係がある一対の特徴部分を結ぶ第1線と、第1線に接続され、接続関係がある一対の特徴部分を結ぶ第2線との相対位置(例、角度)に基づいて、第1線および第2線を含む部分の姿勢を推定する。ここで、上記第1線は、右足首Q19と右膝Q20とを結ぶ右脛Q31であるとし、上記第2線は、右膝Q20と右股関節Q21とを結ぶ右大腿部Q32(ふともも)であるとする。姿勢推定部13は、右脛Q31と右大腿部Q32とがなす角度αを算出する。姿勢推定部13は、右脛Q31と右大腿部Q32とがなす角度αが閾値以下である場合、右脛Q31および右大腿部Q32を含む人体Mの右足が曲がった姿勢であると判定する。姿勢推定部13は、右脛Q31と右大腿部Q32とがなす角度αが閾値よりも大きい場合、右脛Q31および右大腿部Q32を含む人体Mの右足が伸びた姿勢であると判定する。
姿勢推定部13は、例えばユーザが予め設定した各特徴部分について、上述のように姿勢を推定することで、人体Mの一部または全体の姿勢を推定する。なお、姿勢推定部13は、物体(例、人体)の姿勢を定義した姿勢定義情報を参照して、姿勢を推定してもよい。上記の姿勢定義情報は、例えば、姿勢の種類を表す情報と、各特徴部分の相対位置を定義する情報とを一組にした情報である。姿勢の種類を表す情報は、例えば、歩行姿勢、座位、ヨガのポーズ名など姿勢の名称である。各特徴部分の相対位置を定義する情報は、例えば、右脛Q31と右大腿部Q32とがなす角度αの範囲あるいは閾値である。姿勢推定部13は、生成した上記姿勢情報と上記姿勢定義情報とを照合して、人体Mの姿勢を推定(識別)してもよい。
次に、上記検出装置1の構成に基づいて、実施形態に係る検出方法について説明する。図8は、第1実施形態に係る検出方法を示すフローチャートである。検出装置1の構成、各部による処理については、適宜、図1から図7を参照する。ステップS1において、位置検出部2は、物体Mの表面上の各点の位置情報を検出する。位置検出部2は、位置情報としてデプスを検出し、検出結果として位置情報を表す点群データを生成する(図3参照)。ステップS1の処理は、ステップS2の処理およびステップS3の処理を含む。ステップS2において、検出部4は、所定の点(視点)から対象領域ARの各点までのデプスを検出する。検出部4は、検出結果を表すデプスマップ(デプスの空間分布)を記憶部14に記憶させる。ステップS3において、点群データ生成部5は、デプスの検出結果に基づいて点群データを生成する。点群データ生成部5は、生成した点群データを記憶部14に記憶させる。
ステップS4において、基準算出部11は、位置情報の変化量が所定の条件を満たす位置を基準位置BPとして算出する。基準算出部11は、基準位置BPとして、第1基準位置BP1および第2基準位置BP2を算出する。ステップS4の処理は、ステップS5の処理およびステップS6の処理を含む。
ステップS5において、基準算出部11は、鉛直方向(Y方向)の座標(位置情報)の変化量に基づいて、第1基準位置BP1を算出する(図4参照)。基準算出部11は、算出した第1基準位置BP1を記憶部14に記憶させる。ステップS6において、基準算出部11は、第1基準位置BP1に基づいて第2基準位置BP2を算出する(図5参照)。基準算出部11は、ステップS5で算出した第1基準位置BP1に基づいて所定の領域AR2を設定し、所定の領域AR2において所定の条件を満たす位置を第2基準位置BP2として算出する。基準算出部11は、算出した第2基準位置BP2を記憶部14に記憶させる。
次に、ステップS7において、部分判別部12は、基準位置BPに基づいて基準面BFに対して第1側(-Z側)の第1部分M1と第2側(+Z側)の第2部分M2とを判別する。部分判別部12は、ステップS6で算出された第2基準位置BP2に基づいて基準面BFを設定する。また、部分判別部12は、部分判別処理の判別対象部分QXと第2基準位置BP2とを結ぶ測地線SLを算出する。
部分判別部12は、基準面BFと測地線SLとの相対位置に基づいて、判別対象部分QXが第1部分M1と第2部分M2とのいずれに属するかを判別する。部分判別部12は、部分判別処理の処理結果として、判別対象部分QXが第1部分M1と第2部分M2とのいずれに属するかを示す判別情報を生成する。部分判別部12は、生成した判別情報を記憶部14に記憶させる。
ステップS8において、姿勢推定部13は、物体Mの姿勢を推定する。姿勢推定部13は、部分判別部12の処理結果(例、判別情報)に基づいて、物体M(人体M)の姿勢を推定する姿勢推定処理を実行する。姿勢推定部13は、点群データから得られる人体Mの形状に対して認識処理を実行し、人体Mの特徴部分を特定する(図7参照)。姿勢推定部13は、特定した複数の特徴部分の相対位置に基づいて、人体Mの姿勢を推定する。
このように、実施形態に係る検出装置1は、基準算出部11が位置情報の変化量に基づいて基準位置BPを算出し、部分判別部12が基準位置BPに基づいて物体Mの第1側(例、-Z側、左側)の第1部分M1と第2側(例、+Z側、右側)の第2部分M2とを判別する。したがって、検出装置1は、第1部分M1(例、左足)と第2部分M2(例、右足)とを高精度に判別することができ、例えば姿勢推定部13が物体M(人体M)の姿勢を高精度に推定することができる。
また、本実施形態に係る基準算出部11は、基準位置BPとして、交差方向(例、Z方向)における物体Mの中心を含む部分の位置を推定する。この場合、部分判別部12は、物体Mの中心を含む部分の位置に基づいて部分判別処理を実行するので、第1側の第1部分M1と第2側の第2部分M2とを高精度に判別することができる。
次に、変形例について説明する。基準位置BPは、Z方向における物体Mの中心からずれていてもよい。例えば、基準位置BPが物体Mの中心に対して第1側(+Z側)に所定のずれ量でずれているとする。また、基準位置BPと物体Mの中心とのずれ量に対して、測地線SL(図6参照)と基準面BFとの最大の距離が大きいとする。この場合、部分判別部12は、測地線SLにおいて基準面BFに対して第1側(+Z側)に配置される部分の特徴量(例、測地線SLの全体に占める比率、基準面BFからの最大の距離)に基づいて、測地線SLが基準面BFに対していずれの側に配置されているかを判別してもよい。例えば、部分判別部12は、測地線SLにおいて基準面BFに対して第1側(+Z側)に配置される部分の比率が閾値以上である場合に、判別対象部分QXが第1側に配置された部分であると判別してもよい。
なお、位置検出部2は、位置情報として点群データを算出しなくてもよい。この場合、基準算出部11は、位置検出部2(検出部4)が検出したデプスを処理して基準位置BPを算出してもよい。また、基準算出部11は、位置検出部2(検出部4)が検出したデプスから得られる物体Mの形状情報(例、ポリゴンデータ)に基づいて、基準位置BPを算出してもよい(後に図10を参照して説明する。)。
なお、基準算出部11は、所定の領域AR2を設定しなくてもよい。例えば、基準算出部11は、第1基準位置BP1aと第1基準位置BP1bとの中心を第2基準位置BP2に設定してもよい。また、基準算出部11は、第1基準位置BP1として、第1基準位置BP1aと第1基準位置BP1bとの一方のみを算出してもよい。この場合、基準算出部11は、第1基準位置BP1からZ方向に所定量だけシフトした位置を第2基準位置BP2に設定してもよい。上記所定量は、例えば、物体Mのサイズ(スケール)に基づいて設定されてもよい。例えば、上記所定量は、物体MのZ方向の大きさ(例、左肩の左端と右肩の右端との距離)に対して所定の比率(例、25%)の量に設定されてもよい。また、基準算出部11は、第1基準位置BP1を算出しなくてもよい。例えば、基準算出部11は、図5(A)のように物体Mの前面側または後面側の特徴量(例、Xmin(Zi))がZ方向において変化するパターン(例、図5(B)参照)に基づいて、X=Xmin(Zc)、Y=Yk、Z=Zcの位置を基準位置BPとして算出してもよい。
なお、検出装置1は、上記の姿勢推定部13を備えなくてもよい。検出装置1は、部分判別部12が判別した部分の特徴量(例、寸法、外周の長さ、断面積)を算出してもよい。また、検出装置1は、部分判別部12による部分判別処理の処理結果を用いて、物体Mをセグメント化してもよい。検出装置1は、部分判別部12による部分判別処理の処理結果(例、検出された「足」が「左足」であるのか「右足」であるのか識別する情報)を用いて、物体Mのモデル情報を生成してもよい(後に図10で説明する)。
[第2実施形態]
次に、第2実施形態について説明する。本実施形態において、上述の実施形態と同様の構成については、同じ符号を付してその説明を省略あるいは簡略化する。図9は、第2実施形態に係る検出装置を示す図である。第1実施形態において、移動方向は、対象領域AR(例、位置検出部2の視野)に対して予め定められているものとしたが、本実施形態において、検出装置1は、物体M(例、人体M)の移動方向を検出する。検出装置1は、位置検出部2の検出結果に基づいて物体M(人体M)の移動方向を算出(導出、検出)する方向算出部21を備える。
次に、第2実施形態について説明する。本実施形態において、上述の実施形態と同様の構成については、同じ符号を付してその説明を省略あるいは簡略化する。図9は、第2実施形態に係る検出装置を示す図である。第1実施形態において、移動方向は、対象領域AR(例、位置検出部2の視野)に対して予め定められているものとしたが、本実施形態において、検出装置1は、物体M(例、人体M)の移動方向を検出する。検出装置1は、位置検出部2の検出結果に基づいて物体M(人体M)の移動方向を算出(導出、検出)する方向算出部21を備える。
本実施形態において、検出部4は人体Mを繰り返し検出し、点群データ生成部5は、位置情報として検出タイミングごとの人体Mの点群データを生成する。方向算出部21は、位置検出部2が検出した人体Mの位置情報の時間変化に基づいて、人体Mの移動方向を算出する。例えば、方向算出部21は、人体Mの軌跡(例、人体Mの所定位置の時間履歴)を算出し、軌跡に沿う方向を人体Mの移動方向とする。上記所定位置は、デフォルトの設定またはユーザの設定によって定められる人体M上の位置である。
方向算出部21は、人体Mの所定位置として、点群データに含まれる複数の点の重心を算出する。方向算出部21は、算出した重心の時間変化に基づいて、移動方向を算出する。例えば、方向算出部21は、第1時刻における検出部4検出結果から得られる人体Mの第1の所定位置を始点とし、第1時刻よりも後の第2時刻における検出部4検出結果から得られる人体Mの第2の所定位置を終点とするベクトルを算出し、このベクトルに平行な方向ベクトル(例、単位ベクトル)を、第1時刻における人体Mの移動方向を決定する。
方向算出部21は、算出した移動方向(例、移動情報)を記憶部14に記憶させる。基準算出部11は、方向算出部21が算出した移動方向に基づいて、基準位置BPを算出する。例えば、基準算出部11は、方向算出部21が算出した移動方向を記憶部14から読み出し、移動方向をX方向に設定して、基準算出処理を実行する。部分判別部12は、方向算出部21が算出した移動方向に基づいて、第1部分M1と第2部分M2とを判別する。例えば、部分判別部12は、鉛直方向と、方向算出部21が算出した移動方向とに平行、かつ第2基準位置BP2を含む平面を基準面BFに設定する。そして、部分判別部12は、判別対象部分QXについて、設定した基準面BFに対して第1側(例、-Z側)または第2側(例、+Z側)のいずれに配置されるかを判別する。
なお、上記所定位置は、第1実施形態で説明した特徴部分(例、人体Mの頭部)の位置でもよい。また、上記所定位置は、部分判別部12の判別結果に基づいて導出される人体Mの特徴部分(例、右足、左足)の位置でもよい。また、上記所定位置は、基準算出部11が算出した基準位置BP(例、第2基準位置BP2)でもよい。例えば、方向算出部21は、予め設定される第1の所定位置(例、重心)の軌跡に基づいて移動方向の候補を算出してもよい。そして、基準算出部11は、方向算出部21が算出した移動方向の候補をX方向として、基準位置BP(例、第2基準位置BP2)の候補を算出してもよい。方向算出部21は、基準算出部11が算出した第2基準位置BP2の候補を第2の所定位置に用いて、第2の所定位置の軌跡に基づいて移動方向を算出(例、再計算)してもよい。基準算出部11は、第2の所定位置を用いて算出される移動方向をX方向として、基準位置BPを算出(再計算)してもよい。
なお、方向算出部21は、全地球測位システム(GPS)から取得される物体Mの位置情報に基づいて、物体Mの移動方向を算出してもよい。また、物体Mに加速度センサが設けられ、方向算出部21は、上記加速度センサの検出結果に基づいて、物体Mの移動方向を算出してもよい。例えば、人体Mは、GPSから情報を受信する受信部と上記加速度センサとの一方または双方を備える携帯端末(例、スマートフォン)を付帯して移動し、方向算出部21は、上記携帯端末から人体Mの位置情報(例、GPS情報、加速度)を取得して、物体Mの移動方向を算出してもよい。
なお、検出装置1は、鉛直方向を検出する鉛直検出部(例、重力加速度の向きを検出するセンサ)を備え、鉛直検出部が検出した検出結果を上記のY方向に設定して基準算出処理と部分判別処理との一方または双方を実行してもよい。検出装置1は、上記鉛直検出部を備えなくてもよい。例えば、上記鉛直検出部は、物体Mに設けられ(人体Mが携帯し)、検出装置1は、鉛直検出部から取得される鉛直方向に基づいて、基準算出処理と部分判別処理との一方または双方を実行してもよい。また、鉛直検出部は、検出装置1と物体Mとのいずれとも別に設けられてもよい。例えば、鉛直検出部は、物体Mを検出する場所(例、検出装置1が設置される設備)に設けられてもよい。
[第3実施形態]
次に、第3実施形態について説明する。本実施形態において、上述の実施形態と同様の構成については、同じ符号を付してその説明を省略あるいは簡略化する。図10は、第3実施形態に係る検出装置を示す図である。検出装置1は、物体M(この場合、人体M)のモデル情報を生成するモデル生成部22を備える。モデル情報は、例えば3次元のCGモデルデータであり、物体Mの形状情報を含む。モデル生成部22は、部分判別部12が判別した第1部分M1と第2部分M2とに基づいて、物体Mのモデル情報を算出する。
次に、第3実施形態について説明する。本実施形態において、上述の実施形態と同様の構成については、同じ符号を付してその説明を省略あるいは簡略化する。図10は、第3実施形態に係る検出装置を示す図である。検出装置1は、物体M(この場合、人体M)のモデル情報を生成するモデル生成部22を備える。モデル情報は、例えば3次元のCGモデルデータであり、物体Mの形状情報を含む。モデル生成部22は、部分判別部12が判別した第1部分M1と第2部分M2とに基づいて、物体Mのモデル情報を算出する。
本実施形態に係るモデル生成部22は、点群データ生成部5とサーフェス情報生成部23とを備える。点群データ生成部5は、第1実施形態で説明したように、検出部4が検出した物体Mのデプスに基づいて、形状情報として点群データを生成する。サーフェス情報生成部23は、形状情報としてサーフェス情報を算出するサーフェス処理を実行する。
サーフェス情報は、例えばポリゴンデータ、ベクタデータ、及びドローデータの少なくとも1つを含む。サーフェス情報は、物体の表面上の複数の点の座標と、複数の点間の連結情報とを含む。連結情報(例、属性情報)は、例えば、物体表面の稜線(例、エッジ)に相当する線の両端の点を互いに関連付ける情報を含む。また、連結情報は、例えば、物体表面(サーフェス)の輪郭に相当する複数の線を互いに関連付ける情報を含む。
サーフェス情報生成部23は、サーフェス処理において、点群データに含まれる複数の点から選択される点とその近傍の点との間の面を推定する。サーフェス情報生成部23は、点とその近傍の点との間の面を推定する際に、部分判別部12の処理結果を用いて点群データをセグメント化する。例えば、サーフェス情報生成部23は、人体Mの左足のサーフェス情報を生成する際に、部分判別部12の処理結果に基づいて左足の点群データを右足の点群データと区別する。この場合、サーフェス情報生成部23は、例えば左膝と右膝とが接近(例、接触)している場合等において、左膝と右膝とにまたがった面を推定することが回避され、高精度なサーフェス情報を生成可能である。
また、サーフェス情報生成部23は、サーフェス処理において、点群データを点間の平面情報を持つポリゴンデータに変換する。サーフェス情報生成部23は、例えば、最小二乗法を用いたアルゴリズムにより、点群データをポリゴンデータへ変換する。このアルゴリズムは、例えば、点群処理ライブラリに公開されているアルゴリズムを適用したものでもよい。サーフェス情報生成部23は、算出したサーフェス情報を記憶部14に記憶させる。
なお、モデル情報は、物体Mのテクスチャ情報を含んでもよい。モデル生成部22は、3次元の点座標及びその関連情報で規定された面のテクスチャ情報を生成してもよい。テクスチャ情報は、例えば、物体表面の文字や図形、模様、質感、パターン、凹凸を規定する情報、特定の画像、及び色彩(例、有彩色、無彩色)の少なくとも1つの情報を含む。モデル生成部22は、生成したテクスチャ情報を記憶部14に記憶させてもよい。
また、モデル情報は、画像の空間情報(例、照明条件、光源情報)を含んでもよい。光源情報は、物体Mに対して光(例、照明光)を照射する光源の位置、この光源から物体Mへ光が照射される方向(照射方向)、この光源から照射される光の波長、及びこの光源の種類のうち少なくとも1項目の情報を含む。モデル生成部22は、例えば、ランバート反射を仮定したモデル、アルベド(Albedo)推定を含むモデルなどを利用して、光源情報を算出してもよい。モデル生成部22は、生成した空間情報を記憶部14に記憶させてもよい。モデル生成部22は、テクスチャ情報と空間情報との一方または双方を生成しなくてもよい。
[第4実施形態]
次に、第4実施形態について説明する。本実施形態において、上述の実施形態と同様の構成については、同じ符号を付してその説明を省略あるいは簡略化する。図11は、第4実施形態に係る検出装置を示す図である。本実施形態に係る検出装置1(検出システム)は、モデル生成部22と、レンダリング処理部24(レンダリング処理装置、情報処理装置)と、入力装置25と、表示装置26とを備える。
次に、第4実施形態について説明する。本実施形態において、上述の実施形態と同様の構成については、同じ符号を付してその説明を省略あるいは簡略化する。図11は、第4実施形態に係る検出装置を示す図である。本実施形態に係る検出装置1(検出システム)は、モデル生成部22と、レンダリング処理部24(レンダリング処理装置、情報処理装置)と、入力装置25と、表示装置26とを備える。
レンダリング処理部24は、例えば、グラフィックス プロセッシング ユニット(GPU)を含む。なお、レンダリング処理部24は、CPUおよびメモリが画像処理プログラムに従って各処理を実行する態様でもよい。レンダリング処理部24は、例えば、描画処理、テクスチャマッピング処理、シェーディング処理の少なくとも一つの処理を行う。
レンダリング処理部24は、描画処理において、例えば、モデル情報の形状情報に定められた形状を任意の視点から見た推定画像(例、再構築画像)を算出できる。以下の説明において、形状情報が示す形状をモデル形状という。レンダリング処理部24は、例えば、描画処理によって、モデル情報(例、形状情報)からモデル形状(例、推定画像)を再構成できる。レンダリング処理部24は、例えば、算出した推定画像のデータを記憶部14に記憶させる。
また、レンダリング処理部24は、テクスチャマッピング処理において、例えば、推定画像上の物体の表面に、モデル情報のテクスチャ情報が示す画像を貼り付けた推定画像を算出できる。レンダリング処理部24は、推定画像上の物体の表面に、対象物と別のテクスチャを貼り付けた推定画像を算出することができる。
レンダリング処理部24は、シェーディング処理において、例えば、モデル情報の光源情報が示す光源により形成される陰影を推定画像上の物体に付加した推定画像を算出できる。また、レンダリング処理部24は、シェーディング処理において、例えば、任意の光源により形成される陰影を推定画像上の物体に付加した推定画像を算出できる。
入力装置25は、処理装置3に対する各種情報(例、データ、指令)の入力に利用される。ユーザは、入力装置25を操作することによって、処理装置3に対して各種情報を入力可能である。入力装置25は、例えば、キーボード、マウス、トラックボール、タッチパネル、及び音声入力デバイス(例、マイク)の少なくとも一つを含む。
表示装置26は、処理装置3から出力される画像のデータに基づいて、この画像を表示する。例えば、処理装置3は、レンダリング処理部24が生成した推定画像のデータを表示装置26に出力する。表示装置26は、処理装置3から出力された推定画像のデータに基づいて、推定画像を表示する。表示装置26は、例えば、液晶ディスプレイを含む。表示装置26および入力装置25は、タッチパネルなどでもよい。
なお、検出装置1は、入力装置25を備えなくてもよい。例えば、検出装置1は、各種の指令、情報が通信を介して入力される形態でもよい。また、検出装置1は、表示装置26を備えなくてもよい。例えば、検出装置1は、レンダリング処理により生成された推定画像のデータを通信を介して表示装置へ出力し、この表示装置が推定画像を表示してもよい。レンダリング処理部24は、図11において処理装置3に設けられるが、処理装置3の外部の装置に設けられてもよい。上記外部の装置は、処理装置3と通信可能に接続されるクラウドコンピュータでもよい。
上述の実施形態において、処理装置3は、例えばコンピュータシステムを含む。処理装置3は、記憶部14に記憶されている処理プログラムを読み出し、この処理プログラムに従って各種の処理を実行する。この処理プログラムは、例えば、コンピュータに、移動する物体の移動方向と鉛直方向とに交差する交差方向において、物体の表面上の各点の位置情報の変化量が所定の条件を満たす位置を基準位置として算出することと、基準位置に基づいて、移動方向と鉛直方向とを含む基準面に対して第1側に配置される物体の第1部分と、基準面に対して第1側と反対の第2側に配置される物体の第2部分とを判別することと、を実行させる。このプログラムは、コンピュータ読み取り可能な記憶媒体(例、非一時的な記録媒体、non-transitory tangible media)に記録されて提供されてもよい。
なお、本発明の技術範囲は、上述の実施形態などで説明した態様に限定されるものではない。上述の実施形態などで説明した要件の1つ以上は、省略されることがある。また、上述の実施形態などで説明した要件は、適宜組み合わせることができる。また、法令で許容される限りにおいて、日本特許出願である特願2018-143687、及び、上述の実施形態などで引用した全ての文献の開示を援用して本文の記載の一部とする。
1・・・検出装置、2・・・位置検出部、3・・・処理装置、4・・・検出部、5・・・点群データ生成部、11・・・基準算出部、12・・・部分判別部、13・・・姿勢推定部、14・・・記憶部、21・・・方向算出部、22・・・モデル生成部、BF・・・基準面、BP・・・基準位置、BP1・・・第1基準位置、BP1a・・・第1基準位置、BP1b・・・第1基準位置、BP2・・・第2基準位置、CL・・・中心線、D2・・・点群データ、M・・・物体(人体)、M1・・・第1部分(左半身)、M2・・・第2部分(右半身)、MD・・・移動方向、SL・・・測地線、V1・・・第1閾値、V2・・・第2閾値
Claims (25)
- 移動する物体の各点の位置情報を検出する検出部と、
前記物体の移動方向と鉛直方向とに交差する交差方向において前記位置情報の変化量が所定の条件を満たす位置を基準位置として算出する基準算出部と、
前記基準算出部が算出した前記基準位置に基づいた、前記移動方向と前記鉛直方向とを含む基準面に対して、第1側に配置される前記物体の第1部分と、前記基準面に対して前記第1側と反対の第2側に配置される前記物体の第2部分とを判別する判別部と、を備える検出装置。 - 前記基準位置は、前記交差方向における前記物体の中心を含む部分の位置である、
請求項1に記載の検出装置。 - 前記検出部は、前記位置情報として、前記物体の表面上の各点の三次元座標を含む点群データを検出し、
前記基準位置は、前記点群データに基づいて求められる、
請求項1または請求項2に記載の検出装置。 - 前記基準位置は、前記点群データの座標の変化量が所定値以上となる第1基準位置によるものである、
請求項3に記載の検出装置。 - 前記基準位置は、前記点群データに含まれる点について前記交差方向の各座標における前記鉛直方向の座標の最大値を算出し、前記交差方向の座標に対する前記最大値の変化量が所定値以上となる位置を前記第1基準位置とする、
請求項4に記載の検出装置。 - 前記基準位置は、前記第1基準位置によって決まる所定の領域内の第2基準位置であり、
前記判別部は、前記第2基準位置に対して前記第1側に配置される部分を前記第1部分として判別し、前記第2基準位置に対して前記第2側に配置される部分を前記第2部分として判別する、
請求項4または請求項5に記載の検出装置。 - 前記第1基準位置は、前記物体における前記第1側の位置と前記第2側の位置とを含み、
前記第1側の位置と前記第2側の位置との間を前記所定の領域とし、
前記所定の領域により前記第2基準位置を求める、
請求項6に記載の検出装置。 - 前記基準算出部は、前記点群データに含まれる点について前記交差方向の各座標における前記移動方向の前方を正とした座標の極小値を算出し、前記交差方向の座標に対する前記極小値の変化量に基づいて前記第2基準位置を選択する、
請求項6または請求項7に記載の検出装置。 - 前記基準算出部は、前記極小値が最大となる位置を前記第2基準位置として算出する、
請求項8に記載の検出装置。 - 前記判別部は、前記第2基準位置を含む面を前記基準面として、前記第1部分と前記第2部分とを判別する、
請求項6から請求項9のいずれか一項に記載の検出装置。 - 前記判別部は、前記基準位置と前記物体の部分とを結ぶ測地線と前記基準面との相対位置に基づいて、前記第1部分と前記第2部分とを判別する、
請求項1から請求項10のいずれか一項に記載の検出装置。 - 前記判別部は、前記測地線において前記基準面に対して前記第1側に配置される部分の第1特徴量と、前記測地線において前記基準面に対して前記第2側に配置される部分の第2特徴量とに基づいて、前記測地線と前記基準面との相対位置を特定し、特定した前記測地線と前記基準面との相対位置に基づいて前記第1部分と前記第2部分とを判別する、
請求項11に記載の検出装置。 - 前記第1特徴量は、前記基準面に対して前記第1側に配置される前記測地線上の複数の点についての各点と前記基準面との距離の平均であり、
前記第2特徴量は、前記基準面に対して前記第2側に配置される前記測地線上の複数の点についての各点と前記基準面との距離の平均である、
請求項12に記載の検出装置。 - 前記第1特徴量は、前記基準面から前記第1側へ最も離れた前記測地線上の点と前記基準面との距離であり、
前記第2特徴量は、前記基準面から前記第2側へ最も離れた前記測地線上の点と前記基準面との距離である、
請求項12または請求項13に記載の検出装置。 - 前記判別部が判別した前記第1部分と前記第2部分とに基づいて、前記物体のモデル情報を算出するモデル生成部を備える、
請求項1から請求項14のいずれか一項に記載の検出装置。 - 前記判別部が判別した前記第1部分と前記第2部分とに基づいて、前記物体の姿勢を推定する姿勢推定部を備える、
請求項1から請求項15のいずれか一項に記載の検出装置。 - 前記物体は、前記第1部分と前記第2部分とが交互に前記移動方向に移動する、
請求項1から請求項16のいずれか一項に記載の検出装置。 - 前記物体は人体を含み、
前記第1部分は、左半身の少なくとも一部であり、
前記第2部分は、右半身の少なくとも一部である、
請求項1から請求項17のいずれか一項に記載の検出装置。 - 前記基準算出部は、前記基準位置として、前記人体の腕から頭部までの前記位置情報の変化量に基づいて、前記人体の頭部に対応する第1基準位置を算出する、
請求項18に記載の検出装置。 - 前記基準算出部は、前記人体の左半身に対応する前記第1基準位置と前記人体の右半身に対応する前記第1基準位置とに基づいて、前記基準位置として、前記交差方向における前記人体の中心線の位置に対応する第2基準位置を算出する、
請求項19に記載の検出装置。 - 前記検出部の検出結果に基づいて前記物体の移動方向を算出する方向算出部を備え、
前記基準算出部は、前記方向算出部が算出した移動方向に基づいて、前記基準位置を算出し、
前記判別部は、前記方向算出部が算出した移動方向に基づいて、前記第1部分と前記第2部分とを判別する、
請求項1から請求項20のいずれか一項に記載の検出装置。 - 前記検出部は、前記物体を含む対象領域における各点の位置情報を検出し、前記対象領域における各点の位置情報から前記物体の表面上の各点の位置情報を抽出する、
請求項1から請求項21のいずれか一項に記載の検出装置。 - 移動する物体の移動方向と鉛直方向とに交差する交差方向において、前記物体の表面上の各点の位置情報の変化量が所定の条件を満たす位置を基準位置として算出する基準算出部と、
前記基準位置に基づいて、前記物体のうち前記移動方向と前記鉛直方向とを含む基準面に対して第1側に配置される第1部分と、前記物体のうち前記基準面に対して前記第1側と反対の第2側に配置される第2部分とを判別する判別部と、を備える処理装置。 - 移動する物体の各点の位置情報を検出することと、
前記物体の移動方向と鉛直方向とに交差する交差方向において前記位置情報の変化量が所定の条件を満たす位置を基準位置として算出することと、
前記基準位置に基づいた、前記移動方向と前記鉛直方向とを含む基準面に対して、第1側に配置される前記物体の第1部分と、前記基準面に対して前記第1側と反対の第2側に配置される前記物体の第2部分とを判別することと、を含む検出方法。 - コンピュータに、
移動する物体の移動方向と鉛直方向とに交差する交差方向において、前記物体の表面上の各点の位置情報の変化量が所定の条件を満たす位置を基準位置として算出することと、
前記基準位置に基づいて、前記移動方向と前記鉛直方向とを含む基準面に対して第1側に配置される前記物体の第1部分と、前記基準面に対して前記第1側と反対の第2側に配置される前記物体の第2部分とを判別することと、を実行させる処理プログラム。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018143687 | 2018-07-31 | ||
JP2018143687 | 2018-07-31 | ||
PCT/JP2019/026218 WO2020026677A1 (ja) | 2018-07-31 | 2019-07-02 | 検出装置、処理装置、検出方法、及び処理プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2020026677A1 JPWO2020026677A1 (ja) | 2021-08-02 |
JP7024876B2 true JP7024876B2 (ja) | 2022-02-24 |
Family
ID=69230965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020534123A Active JP7024876B2 (ja) | 2018-07-31 | 2019-07-02 | 検出装置、処理装置、検出方法、及び処理プログラム |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7024876B2 (ja) |
WO (1) | WO2020026677A1 (ja) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP7261342B1 (ja) | 2022-09-22 | 2023-04-19 | 三菱ケミカルグループ株式会社 | 情報処理装置、方法、プログラム、およびシステム |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007107927A (ja) | 2005-10-11 | 2007-04-26 | Nittetsu Hokkaido Control Systems Corp | 長さ測定装置、長さ測定方法および長さ測定用コンピュータプログラム |
JP2012215555A (ja) | 2011-03-30 | 2012-11-08 | Advanced Telecommunication Research Institute International | 計測装置,計測方法および計測プログラム |
WO2017119154A1 (ja) | 2016-01-07 | 2017-07-13 | 三菱電機株式会社 | 検出装置および検出方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008032489A (ja) * | 2006-07-27 | 2008-02-14 | Kanazawa Inst Of Technology | 人体の3次元形状データ生成方法および3次元形状データ生成装置 |
-
2019
- 2019-07-02 JP JP2020534123A patent/JP7024876B2/ja active Active
- 2019-07-02 WO PCT/JP2019/026218 patent/WO2020026677A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007107927A (ja) | 2005-10-11 | 2007-04-26 | Nittetsu Hokkaido Control Systems Corp | 長さ測定装置、長さ測定方法および長さ測定用コンピュータプログラム |
JP2012215555A (ja) | 2011-03-30 | 2012-11-08 | Advanced Telecommunication Research Institute International | 計測装置,計測方法および計測プログラム |
WO2017119154A1 (ja) | 2016-01-07 | 2017-07-13 | 三菱電機株式会社 | 検出装置および検出方法 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2020026677A1 (ja) | 2021-08-02 |
WO2020026677A1 (ja) | 2020-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9898651B2 (en) | Upper-body skeleton extraction from depth maps | |
US9842405B2 (en) | Visual target tracking | |
US8565476B2 (en) | Visual target tracking | |
US8577084B2 (en) | Visual target tracking | |
US8682028B2 (en) | Visual target tracking | |
JP6392756B2 (ja) | 2次元画像シーケンスから正確な身体サイズ測定値を得るためのシステム及び方法 | |
US7974443B2 (en) | Visual target tracking using model fitting and exemplar | |
JP5873442B2 (ja) | 物体検出装置および物体検出方法 | |
US8577085B2 (en) | Visual target tracking | |
US8565477B2 (en) | Visual target tracking | |
JP2019096113A (ja) | キーポイントデータに関する加工装置、方法及びプログラム | |
JP5868426B2 (ja) | 停立人物の向き推定方法 | |
JP7363962B2 (ja) | 処理装置、検出装置、システム及びプログラム | |
JP7024876B2 (ja) | 検出装置、処理装置、検出方法、及び処理プログラム | |
JP7200994B2 (ja) | 処理装置、検出装置、処理方法、及び処理プログラム | |
JP7447956B2 (ja) | 処理装置、姿勢解析システム、及びプログラム | |
JP2022037506A (ja) | 検出装置、処理装置、検出方法、及び処理プログラム | |
JP7234595B2 (ja) | 検出装置、処理装置、検出方法、及び処理プログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210107 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20220111 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220124 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7024876 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |