JP7647032B2 - DETECTION APPARATUS, PROCESSING APPARATUS, AND PROCESSING PROGRAM - Google Patents
DETECTION APPARATUS, PROCESSING APPARATUS, AND PROCESSING PROGRAM Download PDFInfo
- Publication number
- JP7647032B2 JP7647032B2 JP2020141682A JP2020141682A JP7647032B2 JP 7647032 B2 JP7647032 B2 JP 7647032B2 JP 2020141682 A JP2020141682 A JP 2020141682A JP 2020141682 A JP2020141682 A JP 2020141682A JP 7647032 B2 JP7647032 B2 JP 7647032B2
- Authority
- JP
- Japan
- Prior art keywords
- point
- calculation unit
- point cloud
- information
- processing device
- 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
Landscapes
- Image Analysis (AREA)
Description
本発明は、検出装置、処理装置、検出方法、及び処理プログラムに関する。 The present invention relates to a detection device, a processing device, a detection method, and a processing program.
例えば、特許文献1に記載のように、複数の撮像装置により対象物を撮像し、得られた複数の画像をコンピュータに入力して対象物の3次元形状を取得する技術が提案されているが、対象物(物体)の全部又は一部の形状あるいは姿勢を高精度に検出することが望まれている。
For example, as described in
本発明の態様に従えば、対象物の表面における各点の位置情報を受け取り、位置情報による、点における法線から対象物に関する特徴点を求める演算部と、複数の特徴点から対象物の姿勢を求める姿勢演算部と、を備え、姿勢演算部は、骨格情報を複数の特徴点を連結した連結線に対してフィッティングして対象物の姿勢を求める、処理装置が提供される。
本発明の態様に従えば、対象物の表面における各点の位置情報を示す点群データを受け取り、点群データ上の点における法線から対象物に関する特徴点を求める演算部と、複数の特徴点から対象物の姿勢を求める姿勢演算部と、点群データに基づいて対象物の形状情報を含むモデル情報を生成するモデル生成部と、を備え、姿勢演算部は、骨格情報を複数の特徴点に対してフィッティングして対象物の姿勢を求め、モデル生成部は、姿勢演算部で求められた対象物の姿勢に基づいて、点群データのうちの第1部分点群と第2部分点群とを区別する、処理装置が提供される。
According to an aspect of the present invention, there is provided a processing device comprising: a calculation unit that receives positional information of each point on the surface of an object, and determines feature points of the object from normals at the points using the positional information; and a posture calculation unit that determines the posture of the object from the multiple feature points, wherein the posture calculation unit determines the posture of the object by fitting skeletal information to connecting lines connecting the multiple feature points.
According to an aspect of the present invention, there is provided a processing device comprising: a calculation unit that receives point cloud data indicating positional information of each point on a surface of an object, and determines feature points of the object from normals at points on the point cloud data; a posture calculation unit that determines the posture of the object from the plurality of feature points; and a model generation unit that generates model information including shape information of the object based on the point cloud data, wherein the posture calculation unit determines the posture of the object by fitting skeletal information to the plurality of feature points, and the model generation unit distinguishes between a first partial point cloud and a second partial point cloud of the point cloud data based on the posture of the object determined by the posture calculation unit.
本発明の態様に従えば、対象物の表面の位置を示す位置情報を受け取り、位置情報上の点における法線から対象物に関する特徴点を求める演算部と、複数の特徴点と骨格情報とに基づいて対象物の姿勢を求める姿勢演算部と、を備える、処理装置が提供される。According to an aspect of the present invention, there is provided a processing device comprising: a calculation unit that receives position information indicating a surface position of an object and calculates feature points of the object from normals at points on the position information; and a posture calculation unit that calculates the posture of the object based on a plurality of feature points and skeletal information.
本発明の態様に従えば、対象物の表面の位置を示す位置情報を受け取り、位置情報上の点における法線から対象物に関する特徴点を求める演算部と、対象物の姿勢を算出する姿勢演算部と、を備え、演算部は、対象物の内部に複数の特徴点を求め、姿勢演算部は、対象物の内部に設定される複数の特徴点を用いて、対象物の姿勢を算出する、処理装置が提供される。According to an aspect of the present invention, there is provided a processing device comprising: a calculation unit that receives position information indicating a position of a surface of an object, and determines feature points related to the object from normals at points on the position information, and an attitude calculation unit that calculates the attitude of the object, wherein the calculation unit determines a plurality of feature points inside the object, and the attitude calculation unit calculates the attitude of the object using the plurality of feature points set inside the object.
本発明の態様に従えば、対象物の表面における各点の位置情報を検出する検出部と、上記の処理装置と、を備える検出装置が提供される。According to an aspect of the present invention, there is provided a detection device including a detection section that detects position information of each point on a surface of an object, and the above-mentioned processing device.
本発明の態様に従えば、コンピュータに、対象物の表面における各点の位置情報を受け取り、位置情報による、点における法線から対象物に関する特徴点を求めることと、複数の特徴点から対象物の姿勢を求めることと、を実行させ、対象物の姿勢を求める処理では、骨格情報を複数の特徴点を連結した連結線に対してフィッティングして対象物の姿勢が求められる、処理プログラムが提供される。
本発明の態様に従えば、コンピュータに、対象物の表面における各点の位置情報を示す点群データを受け取り、点群データ上の点における法線から対象物に関する特徴点を求めることと、複数の特徴点から対象物の姿勢を求めることと、点群データに基づいて対象物の形状情報を含むモデル情報を生成することと、を実行させ、対象物の姿勢を求める処理では、骨格情報を複数の特徴点に対してフィッティングして対象物の姿勢が求められ、対象物の形状情報を含むモデル情報を生成する処理では、求められた対象物の姿勢に基づいて、点群データのうちの第1部分点群と第2部分点群とが区別される、処理プログラムが提供される。
According to an aspect of the present invention, there is provided a processing program that causes a computer to receive positional information of each point on the surface of an object, determine feature points of the object from normals at the points based on the positional information, and determine the orientation of the object from the multiple feature points, where the process of determining the orientation of the object involves fitting skeletal information to connecting lines connecting the multiple feature points to determine the orientation of the object.
According to an aspect of the present invention, a processing program is provided that causes a computer to receive point cloud data indicating positional information of each point on the surface of an object, determine feature points related to the object from normals at points on the point cloud data, determine the orientation of the object from the plurality of feature points, and generate model information including shape information of the object based on the point cloud data, wherein in the process of determining the orientation of the object, the orientation of the object is determined by fitting skeletal information to the plurality of feature points, and in the process of generating the model information including the shape information of the object, a first partial point cloud and a second partial point cloud of the point cloud data are distinguished based on the determined orientation of the object.
本発明の態様に従えば、コンピュータに、対象物の表面の位置を示す位置情報を受け取り、位置情報上の点における法線から対象物に関する特徴点を求めることと、複数の特徴点と骨格情報とに基づいて対象物の姿勢を求めることと、を実行させる処理プログラムが提供される。According to an aspect of the present invention, there is provided a processing program that causes a computer to receive position information indicating a position of a surface of an object, determine feature points of the object from normals at points on the position information, and determine the posture of the object based on a plurality of feature points and skeletal information.
本発明の態様に従えば、コンピュータに、対象物の表面の位置を示す位置情報を受け取り、位置情報上の点における法線から対象物に関する特徴点を求めることと、対象物の姿勢を算出することと、を実行させ、特徴点を求める処理では、対象物の内部に複数の特徴点が求められ、対象物の姿勢を算出する処理では、対象物の内部に設定される複数の特徴点を用いて、対象物の姿勢が算出される、処理プログラムが提供される。According to an aspect of the present invention, there is provided a processing program that causes a computer to receive position information indicating a position of a surface of an object, determine feature points of the object from normals at points on the position information, and calculate the orientation of the object, wherein in the process of determining the feature points, a plurality of feature points are determined within the object, and in the process of calculating the orientation of the object, the orientation of the object is calculated using the plurality of feature points set within the object.
以下、実施形態について図面を参照しながら説明する。図面においては実施形態を説明するため、一部分を大きく又は強調して表すなど適宜縮尺を変更して表現しており、実際の製品とは大きさ、形状が異なる場合がある。また、以下の説明においては、図中において示したXYZ直交座標系を用いて方向を説明する場合がある。 The following describes the embodiments with reference to the drawings. In order to explain the embodiments, the drawings are appropriately scaled, with some parts enlarged or emphasized, and may differ in size and shape from the actual product. In the following description, directions may be explained using the XYZ Cartesian coordinate system shown in the drawings.
[第1実施形態]
第1実施形態について説明する。図1は、第1実施形態に係る検出装置の例を示す図である。検出装置1(検出システム)は、例えばモーションキャプチャ装置、動作検出システム、運動支援システム等である。また、検出装置1は姿勢解析又は3次元モデリング等に使用される。これらの場合、検出装置1は、所定の時間範囲において一方向又は複数の方向に移動する対象物Mを検出する。検出装置1は、直線的に移動する対象物Mを検出してもよいし、蛇行して移動する対象物Mを検出してもよい。すなわち、検出装置1が対象物Mを検出する際の対象物Mの移動経路(例えば、軌跡)は、直線が含まれていてもよいし、曲線が含まれていてもよく、直線及び曲線が含まれていてもよい。
[First embodiment]
The first embodiment will be described. FIG. 1 is a diagram showing an example of a detection device according to the first embodiment. The detection device 1 (detection system) is, for example, a motion capture device, a motion detection system, an exercise support system, etc. The
対象物Mは、検出装置1による検出の対象となる対象領域ARにおいて移動可能である。対象領域ARは、例えば検出装置1が検出可能な対象の領域や範囲、あるいは視野等に相当する。対象物Mは、例えば人体又は人以外の動物、人型又は人以外の動物型のロボット、若しくは動物型以外のロボット等である。対象物Mは、例えば移動に伴って姿勢と形状との一方又は双方が変化する。例えば、対象物Mが人体である場合は移動(例えば、歩行、走行、運動、動作)する際に第1部分(例えば、左足)と第2部分(例えば、右足)とが交互に移動方向MDに移動する。このとき、対象物Mは少なくとも一部の形状(例えば、姿勢)が変化する。
The object M is movable within a target area AR that is the subject of detection by the
移動する人体は、例えばフェンシング、野球、サッカー、ゴルフ、剣道、アメリカンフットボール、アイスホッケー、又は体操等のスポーツにおいて動作する人体である。また、移動する人体は、例えばランニング、エクササイズ、ヨガ、ボディビル、ファッションショー等のウォーキング、又はポージングにおいて動作する人体である。また移動する人体は、例えばゲーム、人物認証、又は仕事において動作する人体である。なお、対象物Mには移動する人体と、移動する人体に付帯する物体(例えば、衣類、装着物、運動器具、防具)とが含まれてもよい。 The moving human body is, for example, a human body moving in sports such as fencing, baseball, soccer, golf, kendo, American football, ice hockey, or gymnastics. The moving human body is, for example, a human body moving while walking or posing in running, exercise, yoga, bodybuilding, fashion shows, etc. The moving human body is, for example, a human body moving in games, person authentication, or work. Note that the target M may include the moving human body and objects attached to the moving human body (for example, clothing, wearables, exercise equipment, protective gear).
以下では、図1等に示すXYZ直交座標系を参照する。このXYZ直交座標系において、X方向は対象物Mの移動方向MDであり、Y方向は対象物Mの移動方向MDの鉛直方向であり、Z方向は対象物Mの移動方向MDと鉛直方向とに交差(直交)する交差方向(直交方向)である。対象物Mが人体である場合に、Z方向は人体の肩幅の方向を含む。また、以下では、X、Y、Zの各方向において、適宜、矢印が指す側を+側(例えば、+Z側)と称し、矢印が指す側に対して反対側を-側(例えば、-Z側)と称する。例えば上記の第1部分(例えば、左足)は第2部分(例えば、右足)に対して-Z側に存在し、第2部分は第1部分に対して+Z側に存在する。 In the following, the XYZ Cartesian coordinate system shown in FIG. 1 and the like will be referred to. In this XYZ Cartesian coordinate system, the X direction is the moving direction MD of the object M, the Y direction is the vertical direction of the moving direction MD of the object M, and the Z direction is the intersecting direction (orthogonal direction) that intersects (is perpendicular to) the moving direction MD of the object M and the vertical direction. When the object M is a human body, the Z direction includes the direction of the shoulder width of the human body. In addition, in the following, in each of the X, Y, and Z directions, the side indicated by the arrow is appropriately referred to as the + side (e.g., the +Z side), and the opposite side to the side indicated by the arrow is appropriately referred to as the - side (e.g., the -Z side). For example, the first part (e.g., the left foot) is on the -Z side of the second part (e.g., the right foot), and the second part is on the +Z side of the first part.
検出装置1は、検出部10と処理装置100とを備える。検出部10は、対象物Mの表面における各点の位置情報を検出する。検出部10は、後述のように対象物Mの位置情報として対象物Mの表面における各点の3次元座標を含む点群データを検出する。本実施形態において、対象物Mの移動方向MDは対象領域ARに対して予め定められている。対象領域ARにおける鉛直方向及び対象物Mの移動方向MDは、既知の情報として検出装置1に与えられている。検出部10による検出結果(点群データ)において、X、Y、Zの各方向は上記の既知の情報に基づいて設定される。検出部10は、情報取得部11と点群データ生成部110とを含む。
The
情報取得部11は、例えば携帯型の装置(携帯機器)の少なくとも一部である。情報取得部11は据え置き型の装置の少なくとも一部であってもよい。情報取得部11は処理装置100の内部に設けられていてもよい。また、点群データ生成部110は処理装置100の外部の装置に設けられて処理装置100と接続されていてもよい。例えば、検出部10は処理装置100の外部の装置であって、情報取得部11と点群データ生成部110とを内蔵していてもよい。検出装置1の一部又は全部は、携帯可能な装置(例えば情報端末、スマートフォン、タブレット、カメラ付き携帯電話、ウェアラブル端末)であってもよい。また、検出装置1の一部又は全体は、据え置き型の装置(例えば、定点カメラ)であってもよい。
The
図2は、第1実施形態に係る情報取得部の例を示す図である。情報取得部11は、対象物Mのデプスを検出する。情報取得部11は、例えばデプスセンサ(デプスカメラ)を含む。情報取得部11は、所定の点から、対象領域ARに配置された物体の表面における各点までのデプス(距離、奥行き、深度)を検出する。所定の点は、例えば情報取得部11による検出の基準になる位置の点(例えば視点、検出元の点、情報取得部11の位置を表す点、後述する撮像素子14の画素の位置)である。
Figure 2 is a diagram showing an example of an information acquisition unit according to the first embodiment. The
情報取得部11は、照射部12と光学系13と撮像素子14とを備える。照射部12は、対象領域ARに光La(例えばパターン光、照射光)を照射(投影)する。光学系13は、例えば結像光学系(撮像光学系)を含む。撮像素子14は、例えばCMOSイメージセンサ又はCCDイメージセンサを含む。撮像素子14は2次元的に配列された複数の画素を有する。撮像素子14は、光学系13を介して対象領域ARを撮像する。撮像素子14は、光Laの照射によって対象領域ARに配置された物体から放射される光Lb(赤外光、戻り光)を検出する。
The
情報取得部11は、例えば照射部12から照射される光Laのパターン(例えば強度分布)と、撮像素子14によって検出された光Lbのパターン(例えば強度分布、撮像画像)とに基づいて、撮像素子14の各画素に対応する対象領域AR上の点から撮像素子14の各画素までのデプスを検出する。情報取得部11は、その検出結果として対象領域ARにおけるデプスの分布を表すデプスマップ(デプス画像、奥行き情報、距離画像)を処理装置100に出力する。すなわち、情報取得部11は対象物Mのデプスマップを処理装置100に出力する。
The
なお、情報取得部11はTOF(Time Of Flight)法によってデプスを検出するデバイスであってもよい。また、情報取得部11はTOF法以外の手法でデプスを検出するデバイスであってもよい。例えば、情報取得部11はレーザスキャナ(レーザ測距器)を含み、レーザスキャンによってデプスを検出してもよい。例えば、情報取得部11は位相差センサを含み、位相差法によってデプスを検出してもよい。例えば、情報取得部11はDFD(Depth From Defocus)法によってデプスを検出してもよい。
The
なお、情報取得部11は赤外光以外の光(例えば可視光)を対象物Mに照射し、対象物Mから出射される光(例えば可視光)を検出してもよい。例えば、情報取得部11はステレオカメラ等を含み、複数の視点から対象物Mを検出(撮像)してもよい。例えば、情報取得部11は複数の視点から対象物Mを撮像した撮像画像を用いて三角測量によってデプスを検出してもよい。例えば、情報取得部11は光学的な手法以外の手法(例えば超音波によるスキャン)でデプスを検出してもよい。
The
図1の説明に戻り、点群データ生成部110は情報取得部11が検出したデプスに基づいて、対象物Mの位置情報として、対象物Mの表面の位置や対象物Mの形状を表す情報に相当する点群データを生成する。図1において、情報取得部11は処理装置100の外部に設けられる。また、図1において、点群データ生成部110は処理装置100の内部に設けられる。処理装置100は情報取得部11と通信可能に接続される。情報取得部11は検出結果を処理装置100に出力する。処理装置100は情報取得部11から出力された検出結果をもとに処理を実行する。
Returning to the explanation of FIG. 1, the point cloud
処理装置100は、点群データ生成部110と演算部120と姿勢演算部130と記憶部140とを備える。記憶部140は、例えば不揮発性のメモリ、ハードディスクドライブ(HDD:Hard Disk Drive)、ソリッドステートドライブ(SSD:Solid State Drive)等である。記憶部140は、処理装置100で処理される元データや、処理装置100で処理(生成)されたデータを記憶する。記憶部140は、点群データの元データとして情報取得部11から出力されるデプスマップを記憶する。
The
点群データ生成部110は、対象物Mの位置情報として点群データを生成する点群処理を実行する。点群データには、対象領域ARにおける対象物M上の複数の点の3次元座標が含まれる。このほか、点群データには対象物Mの周囲の物体(例えば、壁、床)上の複数の点の3次元座標が含まれていてもよい。点群データ生成部110は、記憶部140に記憶されたデプスマップを読み出して対象物Mの点群データを算出する。点群データ生成部110は、対象物Mのモデル情報(形状情報)として、点群データを生成してもよい。
The point cloud
図3~図5は、第1実施形態に係る点群データ生成部の処理の例を示す図である。図3に示すD1は、情報取得部11の検出結果に相当するデプスマップである。デプスマップD1は、情報取得部11によるデプスの測定値の空間分布を表す情報(画像)である。デプスマップD1は、対象領域ARの各点におけるデプスを階調値で表したグレースケールの画像である。デプスマップD1において階調値が相対的に高い部分(例えば白い部分、明るい部分)は、デプスが相対的に小さい部分(例えば検出部10から相対的に近い部分)である。デプスマップD1において階調値が相対的に低い部分(例えば黒い部分、暗い部分)は、デプスが相対的に大きい部分(例えば検出部10から相対的に遠い部分)である。
Figures 3 to 5 are diagrams showing an example of processing by the point cloud data generation unit according to the first embodiment. D1 shown in Figure 3 is a depth map corresponding to the detection result of the
点群データ生成部110は、記憶部140からデプスマップD1のデータを読み出し、デプスマップD1の各画素の階調値(デプスの測定値)に基づいて各画素に相当する実空間上の点の3次元座標を算出し、点群データD2(図4参照)を生成する。以下では、1つの点の3次元座標を点データと呼ぶ場合がある。点群データD2は複数の点データを一組にしたデータである。
The point
点群データ生成部110は、例えば対象領域ARの全体の点群データに対してセグメント化やパターン認識等を施して、対象物Mの点群データD2を抽出する。つまり、点群データ生成部110は、対象領域ARに配置される物体の位置情報から物体の一部(対象物M)の位置情報を抽出する抽出処理(セグメント化)を実行する。ここで、対象領域ARに配置される物体は、対象物Mと、対象物Mの周囲の物体(例えば、床、壁、背景の物体)とを含む。
The point cloud
上記の抽出処理に先立ち、検出部10は、対象領域ARに対象物Mが配置されていない第1状態と、対象領域ARに対象物Mが配置されている第2状態とのそれぞれの状態において、対象領域ARにおける物体の位置情報を検出する。抽出処理において、点群データ生成部110は、第1状態における検出部10の検出結果と、第2状態における検出部10の検出結果との差分を算出することによって、対象物Mの位置情報を抽出する。
Prior to the above extraction process, the
上記の第1状態は、第2状態とは異なる状態で対象領域ARに対象物Mが配置される状態であってもよい。例えば、上記の第1状態は対象領域ARにおける第1位置に対象物Mが配置される状態であり、上記の第2状態は対象領域ARにおける第1位置とは異なる第2位置に対象物Mが配置される状態であってもよい。なお、上記の抽出処理は、点群データ生成部110以外の処理部によって実行されてもよい。かかる処理部は、処理装置100に設けられてもよいし、処理装置100の外部の装置に設けられてもよい。また、上記の抽出処理は実行されなくてもよい。
The first state may be a state in which the object M is placed in the target area AR in a state different from the second state. For example, the first state may be a state in which the object M is placed in a first position in the target area AR, and the second state may be a state in which the object M is placed in a second position different from the first position in the target area AR. The extraction process may be performed by a processing unit other than the point cloud
また、処理装置100は、検出部10の検出結果からノイズを除去してもよい。ノイズを除去するノイズ除去処理は、例えば検出部10(情報取得部11)が生成したデプスマップD1から空間的なノイズを除去する処理を含む。例えば、処理装置100は、デプスマップD1において隣り合う第1領域(第1画素)と第2領域(第2画素)とでデプスの差が閾値を超える場合に、第1領域におけるデプス又は第2領域におけるデプスがノイズであると判定する。処理装置100は、第1領域におけるデプスがノイズであると判定した場合に、第1領域の周囲の領域(第3画素、第4画素)のデプスを用いた補間等によって第1領域のデプスを推定する。そして、処理装置100は、推定したデプスで第1領域のデプスを更新(置換、補正)することによって空間的なノイズを除去する。点群データ生成部110は、空間的なノイズが除去されたデプスマップD1に基づいて点群データを生成してもよい。
The
また、ノイズ除去処理は、例えば、検出部10(情報取得部11)が生成したデプスマップD1から時間的なノイズ(時間的に変化するノイズ)を除去する処理を含む。例えば、検出部10は所定のサンプリング周波数で検出を繰り返す。そして、処理装置100は、検出のタイミングが異なる検出部10の検出結果(情報取得部11で生成されるデプスマップD1)を比較する。例えば、処理装置100は、第1フレームにおけるデプスマップD1と、第1フレームの次の第2フレームにおけるデプスマップD1とで、各画素におけるデプスの変化量(例えば時間変化量)を算出する。
The noise removal process also includes, for example, a process of removing temporal noise (noise that changes over time) from the depth map D1 generated by the detection unit 10 (information acquisition unit 11). For example, the
処理装置100は、各画素におけるデプスの変化量が所定の条件を満たす場合に、この画素の第1フレームにおけるデプス、又は第2フレームにおけるデプスがノイズであると判定する。処理装置100は、第2フレームにおけるデプスがノイズであると判定した場合に、第1フレームにおけるデプスと、第2フレームの次の第3フレームにおけるデプスとを用いた補間等によって、第2フレームのデプスを推定する。処理装置100は、ノイズに対応する画素のデプスを推定したデプスで更新(置換、補正)することによって時間的なノイズを除去する。点群データ生成部110は、時間的なノイズが除去されたデプスマップD1に基づいて点群データを生成してもよい。
When the amount of change in depth for each pixel satisfies a predetermined condition, the
なお、ノイズ除去処理は、空間的なノイズを除去する処理、又は、時間的なノイズを除去する処理を含まなくてもよい。また、ノイズ除去処理は、処理装置100以外の部分(例えば、検出部10)で実行されてもよい。また、検出装置1はノイズ除去処理を実行しなくてもよい。
The noise removal process does not have to include a process for removing spatial noise or a process for removing temporal noise. The noise removal process may be performed by a part other than the processing device 100 (e.g., the detection unit 10). The
点群データ生成部110は、点群データD2に基づいて点における法線Hを求める(図5参照)。ここで、「点」は対象物Mの表面S1における各点のうちの任意の点である。なお、点における法線Hは点群データ生成部110によって求められなくてもよく、点群データ生成部110以外の処理部によって求められてもよい。処理部は、処理装置100に設けられてもよいし、処理装置100の外部の装置に設けられてもよい。
The point cloud
点群データ生成部110は、例えば点群データD2における対象物Mの表面S1における各点のうちの任意の点D2a1から所定距離の範囲DR1内に存在する他の各点(D2a2、D2a3、D2a4、D2a5)を選択する。範囲DR1は、例えば点D2a1を中心とする球(又は楕円体)に含まれる範囲を指し、予めユーザにより設定されてもよいし、点群データD2の数や密度に応じて設定される可変の範囲でもよい。点群データ生成部110は、点D2a1から各点(D2a2、D2a3、D2a4、D2a5)のそれぞれに対するベクトルVをとり正規化する。これらにより、点群データ生成部110は点D2a1における法線Hを求める。なお、点群データ生成部110は複数の任意の点D2a1それぞれから、複数の法線Hそれぞれを求める。法線Hは、対象物Mを人体とする場合、人体の表面S1が丸みを帯びていることにより、人体の内部の方向に向かうベクトルになる。
The point cloud
図1の説明に戻り、演算部120は、検出部10が検出した位置情報による、点(対象物Mの表面S1における点)における法線Hから対象物Mに関する特徴点を求める。本実施形態において、特徴点は対象物Mの姿勢を求めるために利用される。
Returning to the explanation of FIG. 1, the
図6は、第1実施形態に係る演算部の処理の例を示す図である。演算部120は、例えば対象物Mの表面における各点から近傍の点を選択し、選択した点によって構成される面を求める。面は対象物Mの全体にわたって求められる。図6では、近傍の点により構成される面の1つをS2としている。近傍の点により構成される面は、点群データ生成部110によって求められてもよいし、演算部120以外の処理部によって求められてもよい。処理部は、処理装置100に設けられてもよいし、処理装置100の外部の装置に設けられてもよい。演算部120は、点群データ生成部110が求めた法線Hを対象物Mの内部に向けて延長したときに法線H’が面S2(対象物Mの表面S1に対向する面)に衝突する場合に、点D2a1と面S2との距離を求めて、求めた距離の中点を特徴点Qとして求める。特徴点Qは、対象物Mの内部に向かう法線Hに基づいて求められるため、対象物Mの内部に存在する点となる。
FIG. 6 is a diagram showing an example of processing of the calculation unit according to the first embodiment. The
図7は、第1実施形態に係る演算部の処理の例を示す図である。図7に示す複数の円(楕円)は特徴点Qである。図7では、対象物Mの内部側(詳細には、求められた特徴点Qが存在する箇所)の拡大図を表している。 Figure 7 is a diagram showing an example of processing by the calculation unit according to the first embodiment. The multiple circles (ellipses) shown in Figure 7 are feature points Q. Figure 7 shows an enlarged view of the inside of the object M (more specifically, the location where the determined feature point Q exists).
図7に示すように、特徴点Qは局所(範囲DR2)に集中する場合がある。演算部120は、範囲DR2に含まれる特徴点Qが複数存在する場合に、複数の特徴点Qを1つの特徴点Qtとしてまとめる。範囲DR2は、点群データD2の数や、後述する姿勢検出の精度の程度によって変化させてもよいし、ユーザが設定できるようにしてもよい。
As shown in FIG. 7, feature points Q may be concentrated in a local area (range DR2). When there are multiple feature points Q included in range DR2, the
演算部120は、例えば複数の特徴点Qの座標の平均値から特徴点Qtを求めてもよい。このほか、演算部120は、例えば複数の特徴点Qの座標の中央値から特徴点Qtを求めてもよい。なお、特徴点Qtを求める手法は上記に限られず、ある範囲(例えば、範囲DR2)にばらついた点(特徴点Q)を1つの点(特徴点Qt)にまとめる各種手法が用いられてもよい。
The
処理装置100は、演算部120が特徴点Qtを求めた場合、このときの範囲DR2に含まれる特徴点Qを以降の処理において使用しなくてもよい。なお、演算部120は範囲DR2に含まれる特徴点Qが所定数未満である場合、このときの範囲DR2において特徴点Qtを求めなくてもよい。また、演算部120は範囲DR2に含まれる特徴点Qのうち任意の1点(又はいくつかの点)を採用し、他の特徴点Qを使用しなくてもよい。また、演算部120は特徴点Qtを求めなくてもよい(特徴点Qが使用されればよい)。また、演算部120によって求められた特徴点Qt、Qの情報は、任意の装置(処理装置100とは異なる外部の装置)に出力されてもよい。処理装置100は、上記した特徴点Qt(特徴点Q)の算出を、対象物Mの内部において位置を変えながら取得する。処理装置100は、例えば対象物Mの内部において位置を所定距離だけずらしながら、それぞれの位置から特徴点Qt(特徴点Q)を算出する。つまり、処理装置100は複数の特徴点Qt(特徴点Q)を取得する。
When the
図1の説明に戻り、姿勢演算部130は演算部120が求めた複数の特徴点Qt(特徴点Q)から対象物Mの姿勢を求める。上述したように、演算部120の処理結果は特徴点Qのみである場合もあるし、特徴点Qtのみである場合もあるし、特徴点Qt及び特徴点Qが混在する場合もある。姿勢演算部130は、これらの特徴点Qt、Qを用いて、対象物Mの姿勢を求める。例えば、姿勢演算部130は所定のモデル情報を複数の特徴点Qt、Qにフィッティングして対象物Mの姿勢を求める。なお、所定のモデル情報は記憶部140に予め記憶されていてもよいし、処理装置100の外部から取得されてもよい。また、所定のモデル情報は対象物Mが人体ではない場合、それに応じて準備されてもよい。
Returning to the explanation of FIG. 1, the
ここで、対象物Mの姿勢を求める手法の一例を説明する。図8は、第1実施形態に係る姿勢演算部の処理の例を示す図である。図8では、演算部120が求めた特徴点Qt、Qを円形で示している。なお、図8では説明のために対象物Mを2点鎖線で示しているが、対象物M(2点鎖線)は実際に(図示のとおりに)表現されない。姿勢演算部130は、演算部120が求めた複数の特徴点Qt、Qを連結する。図8では、特徴点Qt、Qを連結した連結線CLを表している。そして、姿勢演算部130はモデル情報として所定の骨格情報(例えばスケルトン情報)を、複数の特徴点Qt、Qを連結した連結線CLに対してフィッティングして対象物Mの姿勢を求めてもよい。
Here, an example of a method for determining the posture of the object M will be described. FIG. 8 is a diagram showing an example of processing by the posture calculation unit according to the first embodiment. In FIG. 8, the feature points Qt and Q determined by the
図9は、第1実施形態に係る所定の骨格情報の例を示す図である。すなわち、姿勢演算部130はモデル情報の一例であるスケルトン情報Siを用いて、対象物Mの姿勢を求める。スケルトン情報Siは、例えば頭部のほか、対象物Mの関節等の箇所についての情報を保持する。上述したように、スケルトン情報Siは対象物Mが人体ではない場合、それに応じて準備されてもよい。
Figure 9 is a diagram showing an example of predetermined skeletal information according to the first embodiment. That is, the
図10は、第1実施形態に係る姿勢演算部の処理の例を示す図である。なお、図10では説明のために連結線CL上に塗り潰された円形を示しているが、この円形は実際に(図示のとおりに)表現されない。姿勢演算部130は、図10の矢印で示すように、スケルトン情報Siを連結線CLに対してフィッティングする。フィッティングによって得られたスケルトン情報Siの形状は、対象物Mの姿勢となり得る。また、フィッティングによって得られたスケルトン情報Siや、該スケルトン情報Siに所定の処理(例えば、外形を付加する処理)を施した処理結果等は、任意の装置(処理装置100とは異なる外部の装置)に出力(表示)してもよい。スケルトン情報Siに所定の処理を施した処理結果は、例えば対象物Mの姿勢を表す線や点等が含まれたデータである。なお、検出装置1は、姿勢演算部130を備えてなくてもよい。
10 is a diagram showing an example of processing by the posture calculation unit according to the first embodiment. Note that, for the sake of explanation, FIG. 10 shows a circle filled in on the connecting line CL, but this circle is not actually expressed (as shown in the figure). The
次に、上記の検出装置1の構成に基づいて、実施形態に係る検出方法について説明する。図11は、第1実施形態に係る検出方法の例を示すフローチャートである。検出装置1の構成、各部による処理については、適宜、図1から図10を参照する。
Next, a detection method according to an embodiment will be described based on the configuration of the
ステップS101において、検出部10は、対象物Mの表面における各点の位置情報を検出する。検出部10は、対象物Mのデプスを検出し(図3参照)、検出結果として点群データD2を生成する(図4参照)。例えば、情報取得部11は所定の点(視点)から対象領域ARの各点までのデプスを検出する。情報取得部11は、検出結果を表すデプスマップ(デプスの空間分布)を記憶部140に格納する。点群データ生成部110は、デプスの検出結果に基づいて点群データD2を生成する。点群データ生成部110は、生成した点群データD2を記憶部140に格納する。点群データ生成部110は、点群データD2をもとに、対象物Mの表面S1上の点D2a1における法線Hを求める(図5参照)。
In step S101, the
ステップS102において、演算部120は、点D2a1における法線Hから対象物Mに関する特徴点Qを求める(図6参照)。例えば、演算部120は点D2a1から、法線Hを延長した法線H’が通る他の面S2までの距離の中点となる特徴点Qを求める。また、演算部120は範囲DR2に含まれる特徴点Qの座標の平均値や中央値から、特徴点Qtを求めてもよい(図7参照)。
In step S102, the
ステップS103において、姿勢演算部130は、複数の特徴点Qt、Qから、対象物Mの姿勢を求める(図8、図9、図10参照)。例えば、姿勢演算部130は複数の特徴点Qt、Qを連結し、連結線CLを生成する(図8参照)。姿勢演算部130は、所定のスケルトン情報Si(図9参照)を連結線CLに対してフィッティングする(図10参照)。これらにより、姿勢演算部130は対象物Mの姿勢を求める。
In step S103, the
上述したように、検出装置1は、対象物Mの表面における各点の位置情報を検出し、位置情報による、点における法線から対象物Mに関する特徴点Qを求め、複数の特徴点Qから対象物Mの姿勢を求める。この結果、検出装置1は、対象物Mの内部に想定される特徴点Qをもとに対象物Mの姿勢を求めるので、対象物Mの姿勢を高精度に求めることができる。換言すると、検出装置1は、対象物の表面部分(例えば、他の部位よりも特徴がある部分になり得る手や足)に特徴点を設定する場合に、可動範囲が大きいことからノイズが大きくなってしまう技術と比較して、対象物Mの姿勢を高精度に求めることができる。
As described above, the
[第2実施形態]
次に、第2実施形態について説明する。本実施形態において、上述した実施形態と同様の構成については同一の符号を付し、その説明を省略又は簡略化する場合がある。上述した実施形態では、特徴点Qt、Qについて、点から、該点における法線が通る他の面までの距離によって求める場合を説明した。第2実施形態では、特徴点Qt、Qを求める異なる手法を説明する。
[Second embodiment]
Next, a second embodiment will be described. In this embodiment, the same components as those in the above-mentioned embodiment are denoted by the same reference numerals, and the description thereof may be omitted or simplified. In the above-mentioned embodiment, the feature points Qt, Q are calculated based on the distance from a point to another surface through which the normal line at the point passes. In the second embodiment, a different method for calculating the feature points Qt, Q will be described.
図12は、第2実施形態に係る検出装置の例を示す図である。検出装置1aに含まれる処理装置200は、検出部10の検出結果に基づいて複数の法線(点における法線)から特徴点Q(Qt)を求める演算部220を備える。
Figure 12 is a diagram showing an example of a detection device according to the second embodiment. The
図13は、第2実施形態に係る演算部の処理の例を示す図である。図13に示す方形は、点群データD2の一部を表している。図13では、対象物Mの表面における任意の点それぞれを、点D2a、点D2b、点D2cとしている。点のそれぞれは、面S1a、面S1b、面S1cにおける点である。第1実施形態と同様に、演算部120は点D2a、点D2b、点D2cのそれぞれにおける法線を求める。各法線はHa、Hb、Hcとし、各法線を延長した法線は法線Ha’、法線Hb’、法線Hc’とする。
Figure 13 is a diagram showing an example of processing by the calculation unit according to the second embodiment. The rectangle shown in Figure 13 represents a portion of the point cloud data D2. In Figure 13, arbitrary points on the surface of the object M are designated as points D2a, D2b, and D2c. The points are points on surfaces S1a, S1b, and S1c, respectively. As in the first embodiment, the
演算部220は、複数の法線Ha’~Hc’の交点により特徴点Qを求める。特徴点Qは、複数の法線Ha’~Hc’の交点により求められるため、対象物Mの内部に存在する(想定される)点となる。なお、点における法線の算出は、対象物Mの表面の全域において実行されなくてもよい。
The
すなわち、本実施形態では複数の法線Ha’~Hc’の交点に基づいて特徴点Qを求めており、法線が通る他の面を処理に使用していないため、対象物Mの表面の全域にわたる点を用いなくてもよい。換言すると、本実施形態では少なくとも複数の法線の交点が定まればよいため、対象物Mの表面の全方向からの法線を要すことなく、対象物Mの表面の全ての領域にわたる点を用いなくてもよい。どの領域における点を使用するかについては、対象物Mの種類(又は、大きさ、形状等)に応じて変化させてもよいし、ユーザが設定できるようにしてもよい。 In other words, in this embodiment, the feature point Q is found based on the intersection of multiple normal lines Ha'-Hc', and other surfaces through which the normal lines pass are not used in the processing, so it is not necessary to use points over the entire surface of the object M. In other words, in this embodiment, it is sufficient to determine at least the intersection of multiple normal lines, so normal lines from all directions on the surface of the object M are not required, and it is not necessary to use points over the entire surface of the object M. The area in which points are used may be changed depending on the type (or size, shape, etc.) of the object M, or may be set by the user.
図14は、第2実施形態に係る演算部の処理の例を示す図である。図14では、複数の法線(延長した複数の法線)をH’で表している。また、図14では複数の法線H’の交点付近(対象物Mの内部側であり、求められた特徴点Qが存在する箇所)の拡大図を表している。 Fig. 14 is a diagram showing an example of processing by the calculation unit according to the second embodiment. In Fig. 14, multiple normals (multiple extended normals) are represented by H'. Fig. 14 also shows an enlarged view of the vicinity of the intersection of the multiple normals H' (the interior side of the object M, where the determined feature point Q exists).
図14に示すように、特徴点Qは局所(範囲DR3)に集中する場合がある。演算部220は、範囲DR3に含まれる特徴点Qが複数存在する場合に、複数の特徴点Qを1つの特徴点Qtとしてまとめる。範囲DR3は、点群データD2の数や、姿勢検出の精度の程度によって変化させてもよいし、ユーザが設定できるようにしてもよい。
As shown in FIG. 14, feature points Q may be concentrated in a local area (range DR3). When there are multiple feature points Q included in range DR3, the
演算部220は、例えば複数の特徴点Qの座標の平均値から特徴点Qtを求めてもよい。このほか、演算部220は、例えば複数の特徴点Qの座標の中央値から特徴点Qtを求めてもよい。なお、特徴点Qtを求める手法は第1実施形態と同様にこれらに限られない。処理装置200は、演算部220が特徴点Qtを求めた場合、このときの範囲DR3に含まれる特徴点Qを以降の処理において使用しなくてもよい。
The
なお、演算部220は範囲DR3に含まれる特徴点Qが所定数未満である場合、このときの範囲DR3において特徴点Qtを求めなくてもよい。また、演算部220は特徴点Qtを求めなくてもよい(特徴点Qが使用されればよい)。また、演算部220によって求められた特徴点Qt、Qの情報は、任意の装置(処理装置200とは異なる外部の装置)に出力されてもよい。
When the number of feature points Q included in range DR3 is less than a predetermined number,
次に、上記の検出装置1aの構成に基づいて、実施形態に係る検出方法について説明する。図15は、第2実施形態に係る検出方法の例を示すフローチャートである。検出装置1aの構成、各部による処理については、適宜、図1から図14を参照する。
Next, a detection method according to an embodiment will be described based on the configuration of the
ステップS201において、検出部10は、対象物Mの表面における各点の位置情報を検出する。検出部10は、対象物Mのデプスを検出し(図3参照)、検出結果として点群データD2を生成する(図4参照)。例えば、情報取得部11は所定の点(視点)から対象領域ARの各点までのデプスを検出する。情報取得部11は、検出結果を表すデプスマップ(デプスの空間分布)を記憶部140に格納する。点群データ生成部110は、デプスの検出結果に基づいて点群データD2を生成する。点群データ生成部110は、生成した点群データD2を記憶部140に格納する。点群データ生成部110は、点群データD2をもとに、対象物Mの面S1a、S1b、S1c上の点D2a、D2b、D2cにおける法線Ha、Hb、Hcを求める。
In step S201, the
ステップS202において、演算部220は、複数の法線の交点に基づいて特徴点Qを求める(図13参照)。例えば、演算部220は点D2aにおける法線Haを延長した法線Ha’と、点D2bにおける法線Hbを延長した法線Hb’と、点D2cにおける法線Hcを延長したHc’との交点に基づいて特徴点Qを求める(図13参照)。また、演算部220は範囲DR3に含まれる特徴点Qの座標の平均値や中央値から、特徴点Qtを求めてもよい(図14参照)。
In step S202, the
ステップS203において、姿勢演算部130は、複数の特徴点Qt、Qから、対象物Mの姿勢を求める(図8、図9、図10参照)。例えば、姿勢演算部130は複数の特徴点Qt、Qを連結し、連結線CLを生成する(図8参照)。姿勢演算部130は、スケルトン情報Si(図9参照)を連結線CLに対してフィッティングする(図10参照)。これらにより、姿勢演算部130は対象物Mの姿勢を求める。
In step S203, the
上述したように、検出装置1aは、対象物Mの表面における各点の位置情報を検出し、位置情報による、点における複数の法線の交点により特徴点Qを求め、複数の特徴点Qから対象物Mの姿勢を求める。この結果、検出装置1aは、対象物Mの内部に想定される特徴点Qを、対象物Mの表面における全領域ではない任意の領域の点を用いて求めるので、処理負荷の削減や処理速度の高速化を実現しつつ、対象物Mの姿勢を高精度に求めることができる。
As described above, the
[第3実施形態]
次に、第3実施形態について説明する。本実施形態において、上述した実施形態と同様の構成については同一の符号を付し、その説明を省略又は簡略化する場合がある。上述した実施形態では、対象物Mの移動方向MDについて、対象領域ARに対して予め定められている場合を説明した。第3実施形態では、対象物Mの移動方向MDを検出する場合を説明する。
[Third embodiment]
Next, a third embodiment will be described. In this embodiment, the same reference numerals are used for the same configurations as those in the above-mentioned embodiment, and the description thereof may be omitted or simplified. In the above-mentioned embodiment, the moving direction MD of the object M is predetermined with respect to the target area AR. In the third embodiment, the case where the moving direction MD of the object M is detected will be described.
図16は、第3実施形態に係る検出装置の例を示す図である。検出装置1bに含まれる処理装置300は、検出部10の検出結果に基づいて、対象物Mの移動方向を算出する方向検出部350を備える。本実施形態において、情報取得部11は対象物Mを繰り返し検出する。また、点群データ生成部110は位置情報として検出タイミングごとの対象物Mの点群データを生成する。方向検出部350は、検出部10が検出した対象物Mの位置情報の時間変化に基づいて、対象物Mの移動方向MDを算出する。例えば、方向検出部350は対象物Mの軌跡(例えば、対象物Mの所定位置の時間履歴)を算出し、軌跡に沿う方向を対象物Mの移動方向MDとする。かかる所定位置は、デフォルトの設定又はユーザの設定によって定められる対象物M上の位置である。
FIG. 16 is a diagram showing an example of a detection device according to the third embodiment. The
方向検出部350は、対象物Mの所定位置として、点群データに含まれる複数の点の重心を算出する。方向検出部350は、算出した重心の時間変化に基づいて移動方向MDを算出する。例えば、方向検出部350は第1時刻における情報取得部11の検出結果から得られる対象物Mの第1の所定位置を始点とする。そして、方向検出部350は第1時刻よりも後の第2時刻における情報取得部11の検出結果から得られる対象物Mの第2の所定位置を終点とするベクトルを算出する。続いて、方向検出部350は算出したベクトルに平行な方向ベクトル(例えば単位ベクトル)を、第1時刻における対象物Mの移動方向MDとして決定する。
The
なお、方向検出部350は、全地球測位システム(GPS:Global Positioning System)から取得される対象物Mの位置情報に基づいて、対象物Mの移動方向MDを算出してもよい。また、対象物Mに加速度センサが設けられる場合、方向検出部350は加速度センサの検出結果に基づいて対象物Mの移動方向MDを算出してもよい。例えば、対象物MはGPSから情報を受信する受信部と、加速度センサとの一方又は双方を備える携帯端末(例えば、スマートフォン)を付帯して移動する場合がある。かかる場合、方向検出部350は携帯端末から対象物Mの位置情報(例えばGPS情報、加速度情報)を取得して、対象物Mの移動方向MDを算出してもよい。
The
[第4実施形態]
次に、第4実施形態について説明する。本実施形態において、上述した実施形態と同様の構成については同一の符号を付し、その説明を省略又は簡略化する場合がある。
[Fourth embodiment]
Next, a fourth embodiment will be described. In this embodiment, the same components as those in the above-described embodiments are denoted by the same reference numerals, and the description thereof may be omitted or simplified.
図17は、第4実施形態に係る検出装置の例を示す図である。検出装置1cに含まれる処理装置400は、対象物Mのモデル情報を生成するモデル生成部460を備える。モデル情報は、例えば3次元のCG(Computer Graphics)モデルデータであり、対象物Mの形状情報を含む。なお、第1実施形態で説明したように、点群データ生成部110は情報取得部11が検出した対象物Mのデプスに基づいて、形状情報として点群データを生成する。モデル生成部460は、形状情報としてサーフェス情報を算出するサーフェス処理を実行する。
Figure 17 is a diagram showing an example of a detection device according to the fourth embodiment. The
サーフェス情報は、例えばポリゴンデータ、ベクタデータ、及び、ドローデータの少なくとも1つを含む。サーフェス情報は、物体の表面上の複数の点の座標と、複数の点間の連結情報(属性情報)とを含む。連結情報は、例えば物体表面の稜線(例えばエッジ)に相当する線の両端の点を互いに関連付ける情報を含む。また、連結情報は、例えば物体表面(サーフェス)の輪郭に相当する複数の線を互いに関連付ける情報を含む。 Surface information includes, for example, at least one of polygon data, vector data, and draw data. Surface information includes the coordinates of multiple points on the surface of an object, and connectivity information (attribute information) between the multiple points. The connectivity information includes, for example, information that associates with each other the points at both ends of a line that corresponds to a ridge (e.g., an edge) on the object surface. The connectivity information also includes, for example, information that associates with each other multiple lines that correspond to the contour of the object surface.
モデル生成部460は、サーフェス処理において、点群データに含まれる複数の点から選択される点と、選択された点の近傍の点との間の面を推定する。モデル生成部460は、点と、該点の近傍の点との間の面を推定する際に点群データをセグメント化する。例えば、モデル生成部460は推定の際に、姿勢演算部130の処理結果を用いて点群データをセグメント化してもよい。例えば、モデル生成部460は対象物Mの左右の足のサーフェス情報を生成する際に、姿勢演算部130の処理結果に基づいて左足の点群データと右足の点群データとを区別する。これにより、モデル生成部460は、例えば左膝と右膝とが接近(接触)している場合等において左膝と右膝とに跨った面を推定することを回避し、高精度なサーフェス情報を生成することができる。
In surface processing, the
また、モデル生成部460はサーフェス処理において点群データを点間の平面情報を持つポリゴンデータに変換する。モデル生成部460は、例えば最小二乗法を用いたアルゴリズムにより点群データをポリゴンデータへ変換する。このアルゴリズムは、例えば点群処理ライブラリに公開されているアルゴリズムを適用したものでもよい。モデル生成部460は、算出したサーフェス情報を記憶部140に格納する。
In addition, in surface processing, the
なお、モデル情報は対象物Mのテクスチャ情報を含んでもよい。モデル生成部460は、3次元の点座標及びその関連情報で規定された面のテクスチャ情報を生成してもよい。テクスチャ情報は、例えば物体表面の文字や図形、模様、質感、パターン、凹凸を規定する情報、特定の画像、及び、色彩(例えば、有彩色、無彩色)のうち少なくとも1つの情報を含む。モデル生成部460は、生成したテクスチャ情報を記憶部140に格納してもよい。
The model information may include texture information of the object M. The
また、モデル情報は画像の空間情報(例えば、照明条件、光源情報)を含んでもよい。光源情報は、対象物Mに対して光を照射する光源の位置、この光源から対象物Mへ光が照射される方向、この光源から照射される光の波長、及び、この光源の種類のうち少なくとも1項目の情報を含む。モデル生成部460は、例えばランバート反射を仮定したモデル、アルベド(Albedo)推定を含むモデル等を利用して光源情報を算出してもよい。モデル生成部460は、テクスチャ情報と空間情報との一方又は双方を生成しなくてもよい。
The model information may also include spatial information of the image (e.g., lighting conditions, light source information). The light source information includes information on at least one of the following: the position of the light source that irradiates the object M with light, the direction in which light is irradiated from this light source to the object M, the wavelength of the light irradiated from this light source, and the type of this light source. The
[第5実施形態]
次に、第5実施形態について説明する。本実施形態において、上述した実施形態と同様の構成については同一の符号を付し、その説明を省略又は簡略化する場合がある。
[Fifth embodiment]
Next, a fifth embodiment will be described. In this embodiment, the same components as those in the above-described embodiments are denoted by the same reference numerals, and the description thereof may be omitted or simplified.
図18は、第5実施形態に係る検出装置の例を示す図である。検出装置1dに含まれる処理装置500は、モデル生成部460とレンダリング処理部570とを備える。また、処理装置500には、入力装置21と表示装置22とが接続される。レンダリング処理部570は、例えばGPU(Graphics Processing Unit)を含む。なお、レンダリング処理部570は、CPU(Central Processing Unit)及びメモリが画像処理プログラムに従って各処理を実行する態様でもよい。レンダリング処理部570は、例えば描画処理、テクスチャマッピング処理、シェーディング処理のうち少なくとも1つの処理を実行する。
FIG. 18 is a diagram showing an example of a detection device according to the fifth embodiment. A
レンダリング処理部570は、描画処理において、例えばモデル情報の形状情報に定められた形状を任意の視点から見た推定画像(再構築画像)を算出できる。以下では、形状情報によって示される形状をモデル形状と呼ぶ場合がある。レンダリング処理部570は、例えば描画処理によって、モデル情報(形状情報)からモデル形状(推定画像)を再構成できる。レンダリング処理部570は、例えば算出した推定画像のデータを記憶部140に格納する。
In the drawing process, the
また、レンダリング処理部570は、テクスチャマッピング処理において、例えば推定画像上の物体の表面にモデル情報のテクスチャ情報が示す画像を貼り付けた推定画像を算出できる。レンダリング処理部570は、推定画像上の物体の表面に対象とは別のテクスチャを貼り付けた推定画像を算出できる。
In addition, in the texture mapping process, the
レンダリング処理部570は、シェーディング処理において、例えばモデル情報の光源情報が示す光源により形成される陰影を推定画像上の物体に付加した推定画像を算出できる。また、レンダリング処理部570は、シェーディング処理において、例えば任意の光源により形成される陰影を推定画像上の物体に付加した推定画像を算出できる。
In the shading process, the
入力装置21は、処理装置500に対する各種情報(例えば、データ、命令)の入力に利用される。ユーザは、入力装置21を操作することによって処理装置500に対して各種情報を入力可能である。入力装置21は、例えばキーボード、マウス、トラックボール、タッチパネル、及び、音声入力デバイス(例えば、マイク)のうち少なくとも1つを含む。
The
表示装置22は、処理装置500から出力される画像のデータに基づいてこの画像を表示する。例えば、処理装置500はレンダリング処理部570が生成した推定画像のデータを表示装置22に出力する。表示装置22は、処理装置500から出力された推定画像のデータに基づいて推定画像を表示する。表示装置22は、例えば液晶ディスプレイを含む。入力装置21及び表示装置22は、タッチパネル等で構成されてもよい。
The
また、入力装置21や表示装置22は上述してきた実施形態に係る検出装置に接続されていてもよい。例えば、表示装置22は特徴点算出部122等によって求められた特徴点Qt、Qの情報を表示してもよい。例えば、表示装置22は姿勢演算部130等によって求められたスケルトン情報Siや、スケルトン情報Siに所定の処理を施した処理結果(例えば、対象物Mの姿勢を表す線や点等が含まれたデータ)を表示してもよい。
The
なお、検出装置1dは入力装置21を備えていなくてもよい。例えば、検出装置1dは各種の命令や情報が通信を介して入力される形態でもよい。また、検出装置1dは表示装置22を備えていなくてもよい。例えば、検出装置1dはレンダリング処理により生成された推定画像のデータを、通信を介して表示装置へ出力し、この表示装置に推定画像を表示させてもよい。レンダリング処理部570は、処理装置500の外部の装置に設けられてもよい。かかる外部の装置は、処理装置500と通信可能に接続されるクラウドコンピューティングにより提供されてもよい。
The
上述してきた実施形態において、処理装置100等は、例えばコンピュータシステムを含む。処理装置100は、記憶部140に記憶された処理プログラムを読み出し、読み出した処理プログラムに従って各種の処理を実行する。かかる処理プログラムは、例えば、コンピュータに、対象物の表面における各点の位置情報による、点における法線から対象物に関する特徴点を求めること、を実行させる。この処理プログラムは、コンピュータ読み取り可能な記憶媒体(例えば、非一時的な記憶媒体、non‐transitory tangible media)に記録されて提供されてもよい。
In the above-described embodiment, the
なお、技術範囲は、上述した実施形態等で説明した態様に限定されない。上述した実施形態等で説明した要件の1つ以上は、省略されることがある。また、上述した実施形態等で説明した要件は、適宜、組み合わせることができる。また、法令で許容される限りにおいて、上述した実施形態等で引用した全ての文献の開示を援用して本文の記載の一部とする。 The technical scope is not limited to the aspects described in the above-mentioned embodiments. One or more of the requirements described in the above-mentioned embodiments may be omitted. The requirements described in the above-mentioned embodiments may be combined as appropriate. In addition, to the extent permitted by law, the disclosures of all documents cited in the above-mentioned embodiments are incorporated by reference and made part of the description in this text.
1・・・検出装置、10・・・検出部、11・・・情報取得部、100・・・処理装置、110・・・点群データ生成部、120・・・演算部、130・・・姿勢演算部、140・・・記憶部 1: Detection device, 10: Detection unit, 11: Information acquisition unit, 100: Processing unit, 110: Point cloud data generation unit, 120: Calculation unit, 130: Attitude calculation unit, 140: Storage unit
Claims (15)
複数の前記特徴点から前記対象物の姿勢を求める姿勢演算部と、
前記点群データに基づいて前記対象物の形状情報を含むモデル情報を生成するモデル生成部と、を備え、
前記姿勢演算部は、骨格情報を複数の前記特徴点に対してフィッティングして前記対象物の姿勢を求め、
前記モデル生成部は、前記姿勢演算部で求められた前記対象物の姿勢に基づいて、前記点群データのうちの第1部分点群と第2部分点群とを区別する、処理装置。 a calculation unit that receives point cloud data indicating position information of each point on a surface of an object, and calculates feature points related to the object from normals at points on the point cloud data ;
a posture calculation unit that calculates a posture of the object from a plurality of the feature points;
a model generation unit that generates model information including shape information of the object based on the point cloud data ,
the posture calculation unit obtains a posture of the object by fitting skeleton information to the plurality of feature points ;
The model generation unit distinguishes between a first partial point cloud and a second partial point cloud of the point cloud data based on the posture of the object calculated by the posture calculation unit .
請求項1または請求項2に記載の処理装置。 The calculation unit determines the feature points within the object.
The processing device according to claim 1 or 2 .
請求項1から請求項3のいずれか一項に記載の処理装置。 the calculation unit determines the feature point from a normal at the point that is determined based on the position information between the point and each of other points that exist within a predetermined distance from the point;
The processing device according to any one of claims 1 to 3 .
請求項1から請求項4のいずれか一項に記載の処理装置。 The calculation unit determines the feature point based on a distance from the point to a plane through which a normal line at the point passes.
The processing device according to any one of claims 1 to 4 .
請求項5に記載の処理装置。 The calculation unit determines the feature point from a midpoint of a distance to a surface through which a normal line at the point passes.
The processing device according to claim 5 .
請求項6に記載の処理装置。 The calculation unit calculates the feature point from an average value of coordinates of the plurality of midpoints.
The processing device of claim 6 .
請求項6に記載の処理装置。 The calculation unit determines the feature point from a median value of coordinates of the plurality of midpoints.
The processing device of claim 6 .
請求項1から請求項4のいずれか一項に記載の処理装置。 The calculation unit determines the feature points from normals at the plurality of points.
The processing device according to any one of claims 1 to 4 .
請求項9に記載の処理装置。 The calculation unit determines the feature point based on an intersection of normals at the plurality of points.
The processing device of claim 9 .
請求項10に記載の処理装置。 the calculation unit determines the feature point from an average value of coordinates of intersections of normal lines at a plurality of the points;
The processing device of claim 10 .
請求項10に記載の処理装置。 the calculation unit determines the feature point from a median value of coordinates of intersections of normal lines at a plurality of the points;
The processing device of claim 10 .
請求項1から請求項13のいずれか一項に記載の処理装置と、
を備える検出装置。 A detection unit that detects position information of each point on a surface of an object;
A processing device according to any one of claims 1 to 13 ;
A detection device comprising:
対象物の表面における各点の位置情報を示す点群データを受け取り、前記点群データ上の点における法線から前記対象物に関する特徴点を求めることと、
複数の前記特徴点から前記対象物の姿勢を求めることと、
前記点群データに基づいて前記対象物の形状情報を含むモデル情報を生成することと、を実行させ、
前記対象物の姿勢を求める処理では、骨格情報を複数の前記特徴点に対してフィッティングして前記対象物の姿勢が求められ、
前記対象物の形状情報を含むモデル情報を生成する処理では、求められた前記対象物の姿勢に基づいて、前記点群データのうちの第1部分点群と第2部分点群とが区別される、処理プログラム。 On the computer,
receiving point cloud data indicating positional information of each point on a surface of an object, and determining feature points related to the object from normals at points on the point cloud data ;
determining a posture of the object from a plurality of the feature points;
generating model information including shape information of the object based on the point cloud data;
In the process of determining the posture of the object, the posture of the object is determined by fitting skeleton information to the plurality of feature points ;
A processing program in which, in a process of generating model information including shape information of the object, a first partial point cloud and a second partial point cloud of the point cloud data are distinguished based on the determined posture of the object .
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020141682A JP7647032B2 (en) | 2020-08-25 | 2020-08-25 | DETECTION APPARATUS, PROCESSING APPARATUS, AND PROCESSING PROGRAM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020141682A JP7647032B2 (en) | 2020-08-25 | 2020-08-25 | DETECTION APPARATUS, PROCESSING APPARATUS, AND PROCESSING PROGRAM |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022037506A JP2022037506A (en) | 2022-03-09 |
JP7647032B2 true JP7647032B2 (en) | 2025-03-18 |
Family
ID=80494644
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020141682A Active JP7647032B2 (en) | 2020-08-25 | 2020-08-25 | DETECTION APPARATUS, PROCESSING APPARATUS, AND PROCESSING PROGRAM |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7647032B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014522058A (en) | 2012-06-14 | 2014-08-28 | ソフトキネティック ソフトウェア | Modeling, fitting, and tracking of 3D objects |
US20170154471A1 (en) | 2014-06-26 | 2017-06-01 | Korea Advanced Institute Of Science And Technology | Apparatus and method for providing augmented reality interaction service |
JP2017151652A (en) | 2016-02-23 | 2017-08-31 | 村田機械株式会社 | Object state identification method, object state identification device, and transport vehicle |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5381004A (en) * | 1993-08-31 | 1995-01-10 | Applied Materials, Inc. | Particle analysis of notched wafers |
JPH07287750A (en) * | 1994-04-19 | 1995-10-31 | Nippon Steel Corp | A method for recognizing road regions from line segment data representing a map |
-
2020
- 2020-08-25 JP JP2020141682A patent/JP7647032B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2014522058A (en) | 2012-06-14 | 2014-08-28 | ソフトキネティック ソフトウェア | Modeling, fitting, and tracking of 3D objects |
US20170154471A1 (en) | 2014-06-26 | 2017-06-01 | Korea Advanced Institute Of Science And Technology | Apparatus and method for providing augmented reality interaction service |
JP2017151652A (en) | 2016-02-23 | 2017-08-31 | 村田機械株式会社 | Object state identification method, object state identification device, and transport vehicle |
Also Published As
Publication number | Publication date |
---|---|
JP2022037506A (en) | 2022-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9594950B2 (en) | Depth mapping with enhanced resolution | |
US7974443B2 (en) | Visual target tracking using model fitting and exemplar | |
US8588465B2 (en) | Visual target tracking | |
US8565476B2 (en) | Visual target tracking | |
US8577084B2 (en) | Visual target tracking | |
US8682028B2 (en) | Visual target tracking | |
CA2748557C (en) | Visual target tracking | |
US8577085B2 (en) | Visual target tracking | |
US20140328519A1 (en) | Method and apparatus for estimating a pose | |
JP2019534510A5 (en) | ||
US20100197393A1 (en) | Visual target tracking | |
JP2019096113A (en) | Processing device, method and program relating to keypoint data | |
CN113474816A (en) | Elastic dynamic projection mapping system and method | |
KR101593316B1 (en) | Method and apparatus for recontructing 3-dimension model using stereo camera | |
JP7200994B2 (en) | Processing device, detection device, processing method, and processing program | |
JP7363962B2 (en) | Processing equipment, detection equipment, systems and programs | |
JP7024876B2 (en) | Detection device, processing device, detection method, and processing program | |
JP7647032B2 (en) | DETECTION APPARATUS, PROCESSING APPARATUS, AND PROCESSING PROGRAM | |
JP7147848B2 (en) | Processing device, posture analysis system, processing method, and processing program | |
JP7234595B2 (en) | Detection device, processing device, detection method, and processing program | |
HK1173829A (en) | Moving object segmentation using depth images | |
HK1173829B (en) | Moving object segmentation using depth images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230119 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20231204 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20231205 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20240205 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240301 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20240702 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20240826 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20241023 |
|
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: 20250204 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20250217 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7647032 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |