JP2023111654A - Program, apparatus and method for statistically analyzing posture based on skeleton from skin model - Google Patents

Program, apparatus and method for statistically analyzing posture based on skeleton from skin model Download PDF

Info

Publication number
JP2023111654A
JP2023111654A JP2022013607A JP2022013607A JP2023111654A JP 2023111654 A JP2023111654 A JP 2023111654A JP 2022013607 A JP2022013607 A JP 2022013607A JP 2022013607 A JP2022013607 A JP 2022013607A JP 2023111654 A JP2023111654 A JP 2023111654A
Authority
JP
Japan
Prior art keywords
joint
axis
joint point
axis angle
model
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.)
Granted
Application number
JP2022013607A
Other languages
Japanese (ja)
Other versions
JP7141610B1 (en
Inventor
裕樹 有光
Hiroki Arimitsu
茂和 大黒
Shigekazu Oguro
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Orbis Brain Co Ltd
Orbisbrain
Wacoal Corp
Original Assignee
Orbis Brain Co Ltd
Orbisbrain
Wacoal Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Orbis Brain Co Ltd, Orbisbrain, Wacoal Corp filed Critical Orbis Brain Co Ltd
Priority to JP2022013607A priority Critical patent/JP7141610B1/en
Application granted granted Critical
Publication of JP7141610B1 publication Critical patent/JP7141610B1/en
Publication of JP2023111654A publication Critical patent/JP2023111654A/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Analysis (AREA)

Abstract

To provide a program, or the like, for statistically analyzing a skin model formed by including a plurality of joint points in a polygon mesh formed of multiple vertices.SOLUTION: A program causes a computer to function as: axial angle vector extraction means which extracts axial angle vectors with respect to all joint points each having a joint coordinate system, in a skin model (human model); and a statistical learning engine which constructs a statistical learning model so as to receive, in training stage, axial angle vectors of each joint point in multiple skin models serving as a training data group, and output component variables. The axial angle vector extraction means converts a rotation matrix R of the joint points to an axial angle vector r. The axial angle vector r is represented by a combination [e,θ] of a rotation axis e as a direction vector starting with a joint point and an axial rotation angle θ.SELECTED DRAWING: Figure 2

Description

本発明は、スキンモデルを統計的に分析する技術に関する。特にスキンモデルとして、3次元の人体モデルに適する。 The present invention relates to techniques for statistically analyzing skin models. In particular, it is suitable for a three-dimensional human body model as a skin model.

人体の形状データを取得するために、3次元ボディスキャナの技術がある(例えば非特許文献1参照)。この技術によれば、非接触の光学測量によって3次元の人体モデルを計測する。この人体モデルは、複数の頂点からなるポリゴンをメッシュ状に構成した「スキン」として表現される。頂点数は、例えば約150万点と超高密度で計測することもできる。 There is a three-dimensional body scanner technique for acquiring shape data of a human body (see, for example, Non-Patent Document 1). According to this technology, a three-dimensional human body model is measured by non-contact optical surveying. This human body model is expressed as a "skin" in which polygons made up of a plurality of vertices are configured in a mesh form. The number of vertices can also be measured at an ultra-high density of, for example, about 1.5 million points.

従来、採寸値のみから3次元モデルを簡易に生成すると共に、次元圧縮によってデータ容量を小さくする技術がある(例えば特許文献1参照)。この技術によれば、3次元モデル毎に、複数の採寸箇所に対応する次元数nの採寸値が対応付けられている教師データ群を用いて、1体の次元数nの採寸値から、3次元モデルを生成することができる。具体的には、教師データ群の複数体の3次元モデルから、次元圧縮された次元数mの成分変数を出力すると共に、統計学習モデルを構築する統計学習エンジンと、次元数nの採寸値と、次元数mの成分変数との相関学習モデルを構築する相関学習エンジンとを有する。また、相関学習エンジンを用いて、対象データとしての1体の次元数nの採寸値から次元数mの成分変数を生成するエンコード部と、統計学習エンジンを用いて、当該次元数mの成分変数から3次元モデルを生成するデコード部とを有する。 2. Description of the Related Art Conventionally, there is a technique for easily generating a three-dimensional model from only measured values and reducing the data volume by dimensional compression (see Patent Document 1, for example). According to this technique, using a training data group in which measured values of n dimensions corresponding to a plurality of measurement locations are associated with each three-dimensional model, three A dimensional model can be generated. Specifically, from a plurality of three-dimensional models of the teacher data group, a statistical learning engine that outputs dimensionally compressed component variables with the number of dimensions m and constructs a statistical learning model, and a measured value with the number of dimensions n , and a correlation learning engine that constructs a correlation learning model with component variables of the number of dimensions m. Also, using a correlation learning engine, an encoding unit that generates a component variable of the number of dimensions m from the measured value of the number of dimensions n of one body as target data, and a statistical learning engine is used to generate a component variable of the number of dimensions m and a decoding unit for generating a three-dimensional model from.

特許6424309号公報Japanese Patent No. 6424309

「smart&try」、株式会社ワコール、[online]、[令和3年11月20日検索]、インターネット<URL:https://www.wacoal.jp/smart_try/>“smart & try”, Wacoal Corporation, [online], [searched on November 20, 2021], Internet <URL: https://www.wacoal.jp/smart_try/> 「人間工学」、[online]、[令和3年11月20日検索]、インターネット<URL:https://www.cc.miyazaki-u.ac.jp/mitarai/room707/ergo002.html>"Ergonomics", [online], [searched on November 20, 2021], Internet <URL: https://www.cc.miyazaki-u.ac.jp/mitarai/room707/ergo002.html> 向井智彦、川地克明、三宅陽一郎、「キャラクタアニメーションの数理とシステム、-3次元ゲームにおける身体運動生成と人工知能-」、[online]、[令和3年11月20日検索]、インターネット<URL:https://www.coronasha.co.jp/np/isbn/9784339029093/>Tomohiko Mukai, Katsuaki Kawachi, Yoichiro Miyake, "Mathematics and Systems of Character Animation, -Body Motion Generation and Artificial Intelligence in 3D Games-", [online], [Searched on November 20, 2021], Internet < URL: https://www.coronasha.co.jp/np/isbn/9784339029093/> 「回転行列(方向余弦行列)とは?」、スカイ技術研究所ブログ、[online]、[令和3年11月20日検索]、インターネット<URL:https://www.sky-engin.jp/blog/rotation-matrix/>"What is a Rotation Matrix (Direction Cosine Matrix)?", Sky Research Institute Blog, [online], [Searched on November 20, 2021], Internet <URL: https://www.sky-engin.jp /blog/rotation-matrix/>

特許文献1に記載の技術によれば、3次元モデルは、各頂点を、世界座標系(World coordinate system, Global coordinate system)の3次元(x,y,z)で表現する。例えば1体毎に頂点数がN=150万である場合、1体の3次元モデルは、3N(=450万)次元のベクトルで表現される。そして、例えば6000体ほどの3次元モデルを、統計学習エンジンに入力し、成分変数を得ることができる。統計学習エンジンは、具体的には、主成分分析(Principal Component Analysis)に基づくものである。 According to the technique described in Patent Literature 1, the three-dimensional model expresses each vertex in three dimensions (x, y, z) of a world coordinate system (Global coordinate system). For example, if the number of vertices for each object is N=1,500,000, the three-dimensional model of one object is represented by a 3N (=4,500,000)-dimensional vector. Then, for example, about 6000 3D models can be input to the statistical learning engine to obtain component variables. The statistical learning engine is specifically based on Principal Component Analysis.

3次元の人体モデルを取得するためには、人物が実際に3次元ボディスキャナ内に入って撮影しなければならないが、このとき、人物毎に姿勢のばらつきが生じる。世界座標系である場合、同一人物であっても、その人物の姿勢の影響を受けて、異なる3次元モデルが取得されることとなる。
姿勢は、関節点の位置に応じて異なる。例えば全く同一の人物であっても、両足を開いた場合と、両足を閉じた場合とでは、特に足の部分で大きく異なる人体モデルとして取得されることとなる。また、3次元スキャナによって計測する場合、生身の人物である全員に、同一姿勢を強要することは非常に難しい。
即ち、3次元スキャナによって人体を計測した場合、人体の長さや周径に基づく「体形」と、人体の関節の位置に基づく「姿勢」とが混在したデータとなってしまう。
In order to obtain a three-dimensional human body model, a person must actually enter the three-dimensional body scanner and take an image. In the case of the world coordinate system, even for the same person, different three-dimensional models will be acquired under the influence of the person's posture.
The posture differs according to the positions of the joint points. For example, even if the person is exactly the same, the human body model will be acquired as a human body model that is greatly different, especially in the leg portion, when both legs are open and when both legs are closed. Moreover, when measuring with a three-dimensional scanner, it is very difficult to force all real persons to have the same posture.
That is, when the human body is measured by a three-dimensional scanner, the data is a mixture of the "body shape" based on the length and circumference of the human body and the "posture" based on the positions of the joints of the human body.

これに対し、本願の発明者らは、3次元スキャナによって計測された人体の3次元モデルから、「体形」を分離した「姿勢」のみを抽出することができないか、と考えた。これによって、その人物について、「体形」に依存しない、「姿勢」のみを得ることができるのではないか、と考えた。 On the other hand, the inventors of the present application considered whether it would be possible to extract only the "posture" by separating the "body shape" from the three-dimensional model of the human body measured by the three-dimensional scanner. I thought that it might be possible to obtain only the "posture" of the person without depending on the "body shape".

例えば「体形」に基づく採寸値としては、身長や股下長のような「長さ」と、腹囲や太もも径のような「周径」とがある。ここで、長さは、人体の骨格長に基づくものであり、周径は、骨の周りの肉付きに基づくものである。本来、このような人体の「体形」に基づく長さや周径は、「姿勢」の影響を受けないものである。
一方で、「姿勢」は、人物における骨格の関節点の位置によって変化する。同じ体形の人物同士であっても、例えば前傾、後傾、猫背、巻き肩などのような姿勢の変化によって、その外観的印象は大きく異なる。
For example, measurement values based on "body shape" include "length" such as height and crotch length, and "circumference" such as waist circumference and thigh diameter. Here, the length is based on the skeletal length of the human body, and the circumference is based on the flesh around the bone. Originally, the length and circumference based on the "body shape" of the human body are not affected by the "posture".
On the other hand, the "posture" changes depending on the positions of the joint points of the skeleton of the person. Even for people with the same body shape, their external impressions are greatly different depending on changes in their postures, such as leaning forward, leaning backward, stooping, and rolling shoulders.

これに対し、本願の発明者らは、複数体の3次元モデルについて、「体形」を分離した「骨格に基づく姿勢」のみのデータから統計的に分析するはできないか、と考えた。特に、人の姿勢から醸し出される外観的印象となる「佇まい」を分析するための要素となる、と考えた。 On the other hand, the inventors of the present application considered whether it would be possible to statistically analyze a plurality of three-dimensional models from the data of only the "posture based on the skeleton" from which the "body shape" is separated. In particular, I thought that it would be an element for analyzing the "appearance", which is the external impression that is created by the posture of a person.

そこで、本発明によれば、スキンモデルから骨格に基づく姿勢を分析可能な統計形状空間を生成するプログラム、装置及び方法を提供することを目的とする。 SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a program, apparatus, and method for generating a statistical shape space capable of analyzing a posture based on a skeleton from a skin model.

本発明によれば、複数の頂点からなるポリゴンメッシュに複数の関節点を内在するスキンモデルを統計的に分析する装置に搭載されたコンピュータを機能させるプログラムであって、
関節点毎に、関節座標系が設定されており、
スキンモデルにおける全ての関節点に対する軸角度ベクトルを抽出する軸角度ベクトル抽出手段と、
訓練段階として、教師データ群となる複数体のスキンモデルにおける各関節点の軸角度ベクトルを入力し、成分変数を出力するように統計学習モデルを構築する統計学習エンジンと
してコンピュータを機能させることを特徴とする。
According to the present invention, there is provided a program for operating a computer installed in a device for statistically analyzing a skin model in which a plurality of joint points are inherent in a polygon mesh composed of a plurality of vertices,
A joint coordinate system is set for each joint point,
axis angle vector extracting means for extracting axis angle vectors for all joint points in the skin model;
In the training stage, the computer functions as a statistical learning engine that constructs a statistical learning model by inputting the axis angle vectors of each joint point in multiple skin models that serve as training data groups and outputting the component variables. and

本発明のプログラムにおける他の実施形態によれば、
軸角度ベクトル抽出手段は、全ての関節点の回転行列Rを軸角度ベクトルrへ変換する
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
Preferably, the axis angle vector extracting means causes the computer to transform the rotation matrix R of all joint points into axis angle vectors r.

本発明のプログラムにおける他の実施形態によれば、
軸角度ベクトル抽出手段は、軸角度ベクトルrを、関節点を始点とした方向ベクトルを回転軸eと、その軸周りの回転角度θとを組み合わせ{e,θ}て表現する
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
The axis angle vector extracting means functions the computer to express the axis angle vector r by combining {e, θ} a direction vector starting from the joint point with a rotation axis e and a rotation angle θ about the axis. It is also preferable to let

本発明のプログラムにおける他の実施形態によれば、
1体のポリゴンメッシュから、関節点の位置を推定する関節点推定手段と
して更にコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
It is also preferable to cause the computer to further function as joint point estimation means for estimating the positions of joint points from one polygon mesh.

本発明のプログラムにおける他の実施形態によれば、
関節点推定手段は、関節点学習エンジンであり、
訓練段階として、教師データ群の複数体のポリゴンメッシュをそれぞれ入力し、関節点の位置を出力するように関節点学習モデルを構築し、
推定段階として、推定対象となるポリゴンメッシュを入力し、関節点の位置を出力する
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
The joint point estimation means is a joint point learning engine,
In the training stage, multiple polygon meshes of the training data group are input, and a joint point learning model is constructed so as to output the positions of the joint points,
In the estimation step, it is also preferable to input the polygon mesh to be estimated and operate the computer to output the positions of the joint points.

本発明のプログラムにおける他の実施形態によれば、
第1の推定段階として、
統計学習エンジンは、推定対象となる1体のポリゴンメッシュにおける軸角度ベクトルを入力し、成分変数を出力する
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
As a first estimation step,
The statistical learning engine also preferably operates a computer to input axis angle vectors in a single polygon mesh to be estimated and to output component variables.

本発明のプログラムにおける他の実施形態によれば、
関節点同士を親子関係によってボーンで結ぶことによってスケルトンを構成し、
関節点毎の関節座標系は、当該関節点を親として子関節点へ向かう方向をz軸とし、当該関節点の屈曲する方向をx軸とし、x軸及びz軸と直交する方向をy軸として設定される
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
A skeleton is constructed by connecting joint points with bones by parent-child relationship,
The joint coordinate system for each joint point has the joint point as a parent and the direction toward the child joint point as the z-axis, the bending direction of the joint point as the x-axis, and the direction perpendicular to the x-axis and the z-axis as the y-axis. It is also preferable to have the computer function so that it is set as

本発明のプログラムにおける他の実施形態によれば、
スキンモデルは、人体モデルであり、
スケルトンは、人体の骨格であり、
ボーンは、関節点間の骨であり、
全ての関節点の軸角度ベクトルは、人体モデルにおける骨格に対する姿勢となる
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
A skin model is a human body model,
Skeleton is the skeleton of the human body,
Bones are bones between articulation points,
It is also preferable to have the computer function so that the axis angle vectors of all joint points are poses relative to the skeleton in the human body model.

本発明のプログラムにおける他の実施形態によれば、
統計学習エンジンは、主成分分析(Principal Component Analysis)又はオートエンコーダ(AutoEncoder)に基づくものである
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
The statistical learning engine is also preferably computer functioning based on Principal Component Analysis or AutoEncoder.

本発明によれば、複数の頂点からなるポリゴンメッシュに複数の関節点を内在するスキンモデルを統計的に分析する分析装置であって、
関節点毎に、関節座標系が設定されており、
スキンモデルにおける全ての関節点に対する軸角度ベクトルを抽出する軸角度ベクトル抽出手段と、
訓練段階として、教師データ群となる複数体のスキンモデルにおける各関節点の軸角度ベクトルを入力し、成分変数を出力するように統計学習モデルを構築する統計学習エンジンと
を有することを特徴とする。
According to the present invention, there is provided an analysis apparatus for statistically analyzing a skin model having a plurality of joint points in a polygon mesh composed of a plurality of vertices,
A joint coordinate system is set for each joint point,
axis angle vector extracting means for extracting axis angle vectors for all joint points in the skin model;
and a statistical learning engine that constructs a statistical learning model so as to input axis angle vectors of each joint point in a plurality of skin models as a training data group and output component variables as a training stage. .

本発明によれば、複数の頂点からなるポリゴンメッシュに複数の関節点を内在するスキンモデルを統計的に分析する装置の分析方法であって、
関節点毎に、関節座標系が設定されており、
装置は、
スキンモデルにおける全ての関節点に対する軸角度ベクトルを抽出する第1のステップと、
訓練段階として、統計学習エンジンによって、教師データ群となる複数体のスキンモデルにおける各関節点の軸角度ベクトルを入力し、成分変数を出力するように統計学習モデルを構築する第2のステップと
を実行することを特徴とする。
According to the present invention, there is provided an analysis method for a device for statistically analyzing a skin model in which a plurality of joint points are inherent in a polygon mesh composed of a plurality of vertices, comprising:
A joint coordinate system is set for each joint point,
The device
a first step of extracting axis angle vectors for all joint points in the skin model;
a second step of constructing a statistical learning model by a statistical learning engine, as a training step, by inputting axis angle vectors of each joint point in a plurality of skin models as a training data group and outputting component variables; characterized by executing

本発明のプログラム、装置及び方法によれば、スキンモデルから骨格に基づく姿勢を分析可能な統計形状空間を生成することができる。 According to the program, device, and method of the present invention, a statistical shape space capable of analyzing a posture based on a skeleton can be generated from a skin model.

関節点と頂点との関係を表す説明図である。FIG. 4 is an explanatory diagram showing the relationship between joint points and vertices; 本発明における分析装置の基本的な機能構成図である。1 is a basic functional configuration diagram of an analyzer in the present invention; FIG. 本発明における関節点の関節座標系と回転角及び回転軸とを表す説明図である。FIG. 4 is an explanatory diagram showing a joint coordinate system of joint points, a rotation angle, and a rotation axis according to the present invention; 統計学習エンジンにおける3次元モデルのベクトル空間を表す説明図である。FIG. 4 is an explanatory diagram showing a vector space of a three-dimensional model in a statistical learning engine; 統計学習エンジンにおける統計形状空間を表す説明図である。FIG. 4 is an explanatory diagram showing a statistical shape space in the statistical learning engine; 統計学習エンジンにおける主成分分析を表す簡易なコードである。A simple code for principal component analysis in a statistical learning engine. 関節点推定部及びスケルトン変形部を更に有する分析装置の機能構成図である。FIG. 3 is a functional configuration diagram of an analysis device further including a joint point estimator and a skeleton deformation unit;

以下では、本発明の実施の形態について、図面を用いて詳細に説明する。 BEST MODE FOR CARRYING OUT THE INVENTION Below, embodiments of the present invention will be described in detail with reference to the drawings.

図1は、関節点と頂点との関係を表す説明図である。 FIG. 1 is an explanatory diagram showing the relationship between joint points and vertices.

本発明の実施形態によれば、用語を、以下のように定義する。
「スキン」 :複数の頂点からなるポリゴンメッシュ
(例えば人体を3次元スキャナで撮影した人体のポリゴンメッシュ)
「スキンモデル」 :スキンに複数の関節点を内在するモデル
「関節点」 :スキンを変形させるジョイント(例えば人体の関節)
「ボーン」 :関節点を結ぶ線分(例えば人体の骨)
「スケルトン」 :関節点同士を親子関係によってボーンで結んだ構成
(例えば人体の骨格)
「スキンウェイト」:関節点がスキンの各頂点に及ぼす影響度
According to embodiments of the present invention, terms are defined as follows.
"Skin": Polygon mesh with multiple vertices
(For example, a polygon mesh of a human body photographed with a 3D scanner)
"Skin model" : A model that has multiple joint points in the skin "Joint point" : A joint that transforms the skin (for example, a joint of the human body)
"Bone" : Line segments connecting joint points (e.g. bones of the human body)
"Skeleton" : A structure in which joint points are connected with bones by parent-child relationships
(e.g. human skeleton)
"Skin Weight": How much influence each joint point has on each vertex of the skin

図1によれば、人体は、例えば頂点数150万頂点のポリゴンメッシュで表現されている。また、関節点は、例えば以下の15箇所とする。
「頚椎」
「中央胸」
「左肩」「左肘」「左手首」
「右肩」「右肘」「右手首」
「中央腰」
「左腰」「左膝」「左足首」
「右腰」「右膝」「右足首」
尚、姿勢による座標の変動は、関節点を中心とした回転動作の結果と考えられる。
According to FIG. 1, the human body is represented by a polygon mesh with 1.5 million vertices, for example. Also, the joint points are, for example, the following 15 points.
"cervical spine"
"central chest"
"Left shoulder""Leftelbow""Leftwrist"
"Rightshoulder""Rightelbow""Rightwrist"
"Centralwaist"
"Lefthip""Leftknee""Leftankle"
"Righthip""Rightknee""Rightankle"
It should be noted that the change in coordinates due to posture is considered to be the result of rotational motion about the joint point.

図2は、本発明における分析装置の基本的な機能構成図である。 FIG. 2 is a basic functional configuration diagram of the analysis device in the present invention.

分析装置1は、複数の頂点からなるポリゴンメッシュに複数の関節点を内在するスキンモデルを統計的に分析する。スキンモデルから「骨格に基づく姿勢」を分析可能とする統計形状空間を生成する。
図2によれば、分析装置1は、軸角度ベクトル抽出部11と、統計学習エンジン12とを有する。これら機能構成部は、分析装置に搭載されたコンピュータを機能させるプログラムを実行させることによって実現される。また、これら機能構成部の処理の流れは、分析方法としても理解できる。
The analysis device 1 statistically analyzes a skin model having multiple joint points in a polygon mesh composed of multiple vertices. Statistical shape space is generated from the skin model to enable analysis of "posture based on skeleton".
According to FIG. 2, the analysis device 1 has an axis angle vector extractor 11 and a statistical learning engine 12 . These functional components are implemented by executing a program that causes a computer installed in the analyzer to function. In addition, the flow of processing of these functional components can also be understood as an analysis method.

分析装置1は、統計学習のための教師データとして、多数のスキンモデルを準備する。前述したように、スキンモデルは、スキンに複数の関節点を内在したものである。関節点は、ボーンによって親子関係で結ばれている。スキンモデルが人体である場合、人体のポリゴンメッシュに、関節点を結んだ骨格を内在したものである。即ち、不特定多数の人物から取得した人体のスキンモデルを準備する。
尚、本発明が想定する関節点や骨格とは、人体の解剖学的なものではなく、あくまで動き(モーション)の際の基軸となるものに過ぎない。
The analysis device 1 prepares many skin models as teacher data for statistical learning. As described above, the skin model is a skin with multiple joint points. Joint points are connected by bones in a parent-child relationship. When the skin model is a human body, it is a polygon mesh of the human body with a skeleton that connects joint points. That is, human body skin models obtained from an unspecified number of persons are prepared.
It should be noted that the joint points and the skeleton assumed in the present invention are not anatomical of the human body, but are merely basic axes for motion.

[軸角度ベクトル抽出部11]
軸角度ベクトル抽出部11は、スキンモデルにおける全ての関節点に対する「軸角度ベクトル」を抽出する。
[Axis angle vector extraction unit 11]
The axis angle vector extraction unit 11 extracts "axis angle vectors" for all joint points in the skin model.

図3は、本発明における関節点の関節座標系と回転角及び回転軸とを表す説明図である。 FIG. 3 is an explanatory diagram showing a joint coordinate system of joint points, a rotation angle, and a rotation axis in the present invention.

<関節点毎の位置ベクトル>
関節点は、3次元の世界座標系を基準として表現される。世界座標系では基本的に、y軸正方向を鉛直上向き方向、x-z平面を水平面とした座標系とする。その上で、関節点毎の位置ベクトルを、以下のように表す。
関節点の位置ベクトル :t=(tx ty tz)
<Position vector for each joint point>
Joint points are expressed with reference to a three-dimensional world coordinate system. The world coordinate system is basically a coordinate system in which the positive direction of the y-axis is the vertically upward direction and the xz plane is the horizontal plane. Then, the position vector for each joint point is expressed as follows.
Joint point position vector: t = (tx ty tz)

<関節点毎の関節座標系>
関節点毎に、関節座標系を、以下のように設定する。
z軸:当該関節点を親として子関節点へ向かう方向
x軸:当該関節点の屈曲する方向
y軸:x軸及びz軸と直交する方向
尚、人体の骨格は、関節点を結ぶツリー構造として表現される。
<Joint coordinate system for each joint point>
A joint coordinate system is set for each joint point as follows.
z-axis: direction toward the child joint point with the joint point as the parent
x-axis: bending direction of the joint point
y-axis: direction orthogonal to the x-axis and z-axis The skeleton of the human body is expressed as a tree structure connecting joint points.

図3によれば、肩関節点の関節座標系と、ヒジ関節点の関節座標系とが表されている。肩関節点の関節座標系のz軸は、肩関節点の子関節点となるヒジ関節点へ向かう方向へ設定される。また、肩関節点の関節座標系のx軸は、肩関節点の屈曲する方向へ設定される。そして、肩関節点の関節座標系のy軸は、x軸及びz軸と直交する方向に設定される。 According to FIG. 3, the joint coordinate system of the shoulder joint point and the joint coordinate system of the elbow joint point are represented. The z-axis of the joint coordinate system of the shoulder joint point is set in the direction toward the elbow joint point, which is the child joint point of the shoulder joint point. Also, the x-axis of the joint coordinate system of the shoulder joint point is set in the bending direction of the shoulder joint point. The y-axis of the joint coordinate system of the shoulder joint point is set in a direction orthogonal to the x-axis and the z-axis.

<関節点毎の軸角度ベクトル>
軸角度ベクトル抽出部11は、各関節点の回転行列Rと位置tとからなる同次座標変換行列Aを算出する。
同次座標系(homogeneous coordinate system)は、平行移動を含む全ての座標変換を行列演算とした記法である(例えば非特許文献3参照)。これは、3次元空間の位置や方向を表すベクトルを、同次座標の成分を加えた4次元ベクトルとして表現する。
各関節点の関節座標系の基底ベクトル: rx,ry,rz
(単位ベクトルで互いに直交(正規直交基底))

Figure 2023111654000002
尚、この表記は、行ベクトルで、行列が右から作用する場合の表現である。列ベクトルで、行列が左から作用する場合は、回転行列や同次変換行列を転置する。 <Axis angle vector for each joint point>
The axis angle vector extraction unit 11 calculates a homogeneous coordinate transformation matrix A consisting of the rotation matrix R and the position t of each joint point.
A homogeneous coordinate system is a notation in which all coordinate transformations, including translation, are matrix operations (see, for example, Non-Patent Document 3). This expresses a vector representing the position and direction in a three-dimensional space as a four-dimensional vector to which homogeneous coordinate components are added.
Base vectors of the joint coordinate system of each joint point: r x , r y , r z
(Unit vectors are orthogonal to each other (orthonormal basis))
Figure 2023111654000002
Note that this notation is a row vector representation when the matrix operates from the right. Transposes a rotation matrix or homogeneous transformation matrix if it is a column vector and the matrix operates from the left.

軸角度ベクトルrは、関節点を始点とした方向ベクトルを回転軸eとし、その軸周りの回転角度θとの組み合わせ{e,θ}によって表現される。これは、任意軸周りの回転表現(axis-angle表現)と称される。回転軸eは3次元ベクトルで表され、回転角度θは1値で表されるので、軸角度ベクトルは4パラメータで表される。このとき、回転軸eに回転角度θを大きさとして含め、回転軸及び回転角度をθe=(θex,θey,θez)とすることによって、3パラメータで表すことができる。但し、{e,θ}と{-e,-θ}とは同一回転となるので、正値回転のみを扱う非負制約を条件とする。
軸角度ベクトル :r=θe=(θex,θey,θez)
回転軸(単位ベクトル):e=(ex,ey,ez)=r/|r|
回転角 :θ=|r|
The axis angle vector r is represented by a combination {e, θ} of a direction vector starting from the joint point as a rotation axis e and a rotation angle θ about the axis. This is called a rotation representation around an arbitrary axis (axis-angle representation). Since the rotation axis e is represented by a three-dimensional vector and the rotation angle θ is represented by one value, the axis angle vector is represented by four parameters. At this time, it can be represented by three parameters by including the rotation angle .theta. However, since {e, θ} and {−e, −θ} are the same rotation, the condition is a non-negative constraint that handles only positive value rotations.
Axis angle vector: r=θe=(θex, θey, θez)
Axis of rotation (unit vector): e = (ex, ey, ez) = r/|r|
Rotation angle: θ=|r|

その上で、軸角度ベクトル抽出部11は、全ての関節点の回転行列Rを軸角度ベクトルrへ変換する。
軸角度ベクトル :r=log(R)
各関節点の回転行列 :R=exp(r)
回転行列Rと軸角度ベクトルrとの変換は、ロドリゲスの回転公式に基づくものである(例えば非特許文献3及び4参照)。
Then, the axis angle vector extraction unit 11 transforms the rotation matrix R of all joint points into axis angle vectors r.
Axis angle vector: r=log(R)
Rotation matrix of each joint point: R=exp(r)
The conversion between the rotation matrix R and the axis angle vector r is based on Rodriguez's rotation formula (see, for example, Non-Patent Documents 3 and 4).

尚、骨格における関節点の回転は、一般的に、オイラー角で表現される。オイラー角は、3軸(x軸周りの回転、y周りの回転、z周りの回転)で表現される。しかしながら、オイラー角は、2つ以上の回転を補完する際に、ジンバルロックの状態を生じてしまい、表現できる姿勢が制限されるという問題を生じる(例えば非特許文献3参照)。そのために、本発明は、関節点の回転を、「軸角度ベクトル」として表現している。 The rotation of the joint points in the skeleton is generally represented by Euler angles. Euler angles are represented by three axes (rotation around the x axis, rotation around the y axis, and rotation around the z axis). However, when complementing two or more rotations, the Euler angles cause a gimbal lock state, which limits the poses that can be expressed (see Non-Patent Document 3, for example). Therefore, the present invention expresses the rotation of the articulation point as an "axis angle vector".

[統計学習エンジン12]
統計学習エンジン12は、訓練段階として、以下のように機能する。
<訓練段階>
統計学習エンジン12は、訓練段階として、教師データ群となる複数体のスキンモデルにおける各関節点の軸角度ベクトルを入力し、成分変数を出力するように統計学習モデルを構築する。
[Statistical learning engine 12]
The statistical learning engine 12, as a training phase, functions as follows.
<Training stage>
As a training stage, the statistical learning engine 12 constructs a statistical learning model so as to input axis angle vectors of each joint point in a plurality of skin models that serve as teacher data groups and output component variables.

図4は、統計学習エンジンにおける3次元モデルのベクトル空間を表す説明図である。 FIG. 4 is an explanatory diagram showing the vector space of the three-dimensional model in the statistical learning engine.

図4によれば、教師データとしては、様々な体形を持つ例えば6000体の人体を想定している。
図4(a)によれば、人体の3次元モデル毎に、関節点数D=15であり、各関節点は3パラメータ(θe)で表現されるとする。1体の3次元モデルは、D=15の各関節点に対する軸角度ベクトルとなる3D(例えば3×15=45)次元のベクトルで表現される。
図4(b)によれば、3次元モデルの人体毎に、3D次元空間における1点で表される。
According to FIG. 4, as training data, for example, 6000 human bodies having various body shapes are assumed.
According to FIG. 4A, the number of joint points D=15 for each three-dimensional model of the human body, and each joint point is represented by three parameters (θe). A single three-dimensional model is represented by a 3D (for example, 3×15=45) dimensional vector, which is an axis angle vector for each D=15 joint point.
According to FIG. 4B, each human body in the three-dimensional model is represented by one point in the three-dimensional space.

図5は、統計学習エンジンにおける統計形状空間を表す説明図である。
図6は、統計学習エンジンにおける主成分分析を表す簡易なコードである。
FIG. 5 is an explanatory diagram showing the statistical shape space in the statistical learning engine.
FIG. 6 is a simple code representing principal component analysis in the statistical learning engine.

統計学習エンジン12は、具体的には、主成分分析(Principal Component Analysis)に基づくものであってもよい。
「主成分分析」によって、相関のある3D次元空間の6000点から、互いに無相関で全体のばらつきをよく表す次元(例えば45次元)の主成分(成分変数)を導出する。第1主成分の分散を最大化し、続く主成分はそれまでに決定した主成分と無相関という拘束条件の下で、分散を最大化するようにして選択される。主成分の分散を最大化することによって、観測値の変化に対する説明能力を可能な限り主成分に持たせる。主成分を与える主軸は3D次空間における6000点の群の直交基底となっている。主軸の直交性は、主軸が共分散行列の固有ベクトルになっており、共分散行列が実対称行列であることから導かれる。
The statistical learning engine 12 may specifically be based on Principal Component Analysis.
By "principal component analysis", from 6000 points in the correlated 3D space, the principal components (component variables) of dimensions (for example, 45 dimensions) that are mutually uncorrelated and well represent the overall variation are derived. The variance of the first principal component is maximized, and the subsequent principal components are selected so as to maximize the variance under the constraint that they are uncorrelated with the previously determined principal components. By maximizing the variance of the principal components, the principal components are given as much explanatory power as possible for changes in observations. The principal axes that give the principal components are the orthogonal basis of the group of 6000 points in the 3D space. The orthogonality of the principal axes is derived from the fact that the principal axes are the eigenvectors of the covariance matrix and the covariance matrix is a real symmetric matrix.

統計学習エンジン12は、3D次元空間に対して、主成分分析に基づく成分変数を次元数とする統計形状空間(例えば45次元)に射影させる統計学習モデルを構築する。
本発明によれば、3D(=45)次元空間における各3次元モデルを、例えば45次元(成分変数)空間に射影する。主成分を与える変換は、観測値の集合からなる行列の特異値分解で表され、3D次元空間の6000点の群からなる矩形行列Xの特異値分解は、以下の式で表される。
X=U*Σ*VT
X:3D次元空間の6000点からなる行列(6000行×3D列)
U:n(6000)×n(6000)の正方行列(n次元単位ベクトルの直交行列)
Σ:n(6000)×p(3D)の矩形対角行列(対角成分は、Xの特異値)
V:p(3D)×p(3D)の正方行列(p次元単位ベクトルの直交行列)
ここで、行列Vによる線形変換はXの主成分を与える。
V:3D次元空間->統計形状(45次元)空間への変換を表す行列
-1:統計形状(45次元)空間->3D次元空間への変換を表す行列
尚、行列の上付き添え字-1は逆行列を示す記号ではなく、行列が定めるベクトルの変換に対して、その逆変換を意味する抽象的な記号として用いている。ここでは、V-1は、Vの転置VTと等しい。
The statistical learning engine 12 constructs a statistical learning model that projects the 3D space onto a statistical shape space (for example, 45 dimensions) having dimensions of component variables based on principal component analysis.
According to the present invention, each three-dimensional model in a 3D (=45) dimensional space is projected onto, for example, a 45-dimensional (component variable) space. The transformation that gives the principal components is represented by the singular value decomposition of a matrix consisting of a set of observed values.
X=U*Σ* VT
X: matrix of 6000 points in 3D dimensional space (6000 rows x 3D columns)
U: n(6000)×n(6000) square matrix (an orthogonal matrix of n-dimensional unit vectors)
Σ: n(6000)×p(3D) rectangular diagonal matrix (diagonal elements are singular values of X)
V: p(3D)×p(3D) square matrix (orthogonal matrix of p-dimensional unit vectors)
Here, a linear transformation by matrix V gives the principal components of X.
V: Matrix representing transformation from 3D dimensional space to statistical shape (45 dimensional) space
V -1 : Matrix representing the transformation from statistical shape (45-dimensional) space to 3D space Note that the superscript -1 of the matrix is not a symbol indicating the inverse matrix, but the transformation of the vector defined by the matrix , is used as an abstract symbol meaning its inverse transformation. Here, V −1 is equal to the transpose of V, V T .

図6からも明らかなとおり、行列V又はV-1による線形変換によって、3D次元空間と統計形状空間との間で、3次元モデルの人体毎に対応付けることができる。
s=x*V
x=s*V-1
s:統計形状空間のベクトル
x:3D次元空間のベクトル
V:統計学習モデル
統計形状空間における原点は、教師データとして訓練した全ての人体モデルの姿勢(関節点の回転)の平均となる。即ち、平均となる原点から離れるほど、その点における姿勢は、特徴的であることを意味する。
As is clear from FIG. 6, by linear transformation using the matrix V or V −1 , correspondence can be established between the 3D dimensional space and the statistical shape space for each human body in the 3D model.
s=x*V
x=s*V -1
s: vector in statistical shape space
x: vector in 3D space
V: Statistical Learning Model The origin in the statistical shape space is the average posture (rotation of joint points) of all human body models trained as teacher data. In other words, the further away from the origin that is the average, the more characteristic the posture at that point.

また、統計学習エンジン12は、オートエンコーダ(AutoEncoder)に基づくものであってもよい。
オートエンコーダは、ニューラルネットワークの一種で、入力データの情報量から抽象的概念(特徴量)を出力する。具体的には、入力データを、隠れ層で次元圧縮し、出力時に元のサイズに戻す。
オートエンコーダも、主成分分析と同様に、相関のある3D次元空間の6000点から、互いに無相関で全体のばらつきを最もよく表す45次元の成分変数を導出する。
Statistical learning engine 12 may also be based on an AutoEncoder.
An autoencoder is a type of neural network that outputs abstract concepts (feature values) from the amount of information in input data. Specifically, the input data is dimensionally compressed in the hidden layer and returned to the original size at the time of output.
Similar to principal component analysis, the autoencoder also derives 45-dimensional component variables that are mutually uncorrelated and best represent the overall variability from 6000 points in a correlated 3D-dimensional space.

前述した図2によれば、統計学習エンジン12は、2つの推定段階として、以下のように機能する。
<エンコーダとしての推定段階>
統計学習エンジン12は、推定対象となる1体のポリゴンメッシュにおける全ての関節点の軸角度ベクトルを入力し、成分変数を出力する。
成分変数は、例えば45次元ベクトルであって、推定対象となるスキンモデル(ポリゴンメッシュ+スケルトン)の「姿勢(全ての関節点の回転)」の主成分となる。
<デコーダとしての推定段階>
統計学習エンジン12は、推定対象となる成分変数を入力し、1体のスキンモデルにおける「全ての関節点の軸角度ベクトル」を出力する。
例えば推定対象となる45次元ベクトルの成分変数を入力することによって、1体の全ての関節点の軸角度ベクトルを出力することができる。全ての関節点の軸角度ベクトルは、その人体の姿勢を表す。
According to FIG. 2 described above, the statistical learning engine 12 functions as follows as two stages of estimation.
<Estimation stage as an encoder>
The statistical learning engine 12 inputs axis angle vectors of all joint points in one polygon mesh to be estimated, and outputs component variables.
The component variable is, for example, a 45-dimensional vector, and is the principal component of the "attitude (rotation of all joint points)" of the skin model (polygon mesh + skeleton) to be estimated.
<Estimation stage as a decoder>
The statistical learning engine 12 inputs component variables to be estimated, and outputs "axis angle vectors of all joint points" in one skin model.
For example, by inputting component variables of a 45-dimensional vector to be estimated, the axis angle vectors of all joint points of one body can be output. The axis angle vectors of all joint points represent the pose of the human body.

ここで、本発明の特徴を改めて詳述する。
従来技術によれば、スキニングでは一般に、関節点を中心とした人体部位の回転として姿勢や動きを表現する。スキニング処理は、「Skeleton Subspace Deformation」とも称され、骨格における関節点毎の座標系によって変形を記述するものである。その骨格を変位させることによって、ポリゴンメッシュを変形させる。また、一般的なアニメーションの用途によれば、骨格の作成の設定は、作業者が手動で操作するものである。
これに対し、本発明は、骨格における関節点毎の軸角度ベクトルのみを抽出し、3Dポリゴンメッシュの変形とは別に、統計的に分析するものである。このような技術は、既存技術として存在しない。本発明によれば、関節点の軸角度ベクトルの分解は、スキニングアルゴリズムを最後まで計算せずに、中間データとなる軸角度ベクトルを抽出し、統計学習エンジンで訓練させたことにある。
Here, the features of the present invention will be described again in detail.
According to the prior art, skinning generally expresses poses and movements as rotations of human body parts about joint points. The skinning process is also called "Skeleton Subspace Deformation", and describes deformation using a coordinate system for each joint point in the skeleton. Deform the polygon mesh by displacing its skeleton. Also, according to general animation applications, the settings for skeleton creation are manually operated by the operator.
In contrast, the present invention extracts only the axis angle vector for each joint point in the skeleton and statistically analyzes it separately from the deformation of the 3D polygon mesh. Such technology does not exist as an existing technology. According to the present invention, the decomposition of the axis angle vectors of the joint points is achieved by extracting the axis angle vectors as intermediate data without calculating the skinning algorithm to the end, and training it with the statistical learning engine.

<姿勢判定アプリケーション>
例えば衣服の場合、人のサイズ(骨格の長さ)や周径に基づいて設計されているが、その衣服が似合うような人の姿勢(関節点の回転)までも考慮されたものではない。一方で、衣服を購入するユーザも、自らのサイズや体形は考慮するが、姿勢までも考慮することは全くない。ユーザ自らの姿勢が、平均的な姿勢又は理想的な姿勢からどの程度離れたものであるか、も考慮することはない。
姿勢判定アプリケーションとして、様々な用途が想定されるが、異なる人体における姿勢の相違を数値的に取得することができる。姿勢の相違は、例えば主成分分析に基づく統計形状空間では、点間の距離として認識することができる。
<Posture determination application>
For example, clothing is designed based on the size (length of the skeleton) and circumference of a person, but the posture (rotation of joint points) that suits the clothing is not taken into consideration. On the other hand, users who purchase clothes also consider their size and body shape, but they do not consider their posture at all. Nor does it consider how far the user's own posture is from the average or ideal posture.
As a posture determination application, various uses are assumed, and the difference in posture between different human bodies can be numerically acquired. Pose differences can be recognized as distances between points, for example in a statistical shape space based on principal component analysis.

図7は、関節点推定部及びスケルトン変形部を更に有する分析装置の機能構成図である。 FIG. 7 is a functional configuration diagram of an analysis device further including a joint point estimation unit and a skeleton deformation unit.

図7によれば、図2と比較して、関節点推定部13と、スケルトン変形部14とを更に有する。これら機能構成部も、分析装置に搭載されたコンピュータを機能させるプログラムを実行させることによって実現される。また、これら機能構成部の処理の流れは、分析方法としても理解できる。 According to FIG. 7, a joint point estimator 13 and a skeleton deformer 14 are further provided as compared with FIG. These functional components are also realized by executing a program that causes a computer installed in the analyzer to function. In addition, the flow of processing of these functional components can also be understood as an analysis method.

人体を光学スキャナによって撮影した場合、3次元の人体モデルは、スキン(ポリゴンメッシュ)となる。即ち、スキンは、スキンモデルのようにスケルトン(骨格)を含むものではない。そのために、図7によれば、軸角度ベクトル抽出部11の前段で、スキンから関節点を抽出し、関節点同士を親子関係によってボーンで結んだスケルトンを推定する。 When the human body is photographed by an optical scanner, the three-dimensional human body model becomes a skin (polygon mesh). That is, a skin does not contain a skeleton (framework) like a skin model. For this purpose, according to FIG. 7, before the axis angle vector extraction unit 11, joint points are extracted from the skin, and a skeleton is estimated in which the joint points are connected by bones according to the parent-child relationship.

[関節点推定部13]
関節点推定部13は、1体のポリゴンメッシュから、関節点の位置を推定する。
関節点推定部13は、関節点学習エンジンであってもよく、以下のように機能させる。
(訓練段階)教師データ群の複数体のポリゴンメッシュ(説明変数)をそれぞれ入力し、関節点の位置(目的変数)を出力するように関節点学習モデルを構築する。
(推定段階)推定対象となるポリゴンメッシュ(説明変数)を入力し、関節点の位置(目的変数)を出力する。
[Joint point estimation unit 13]
The joint point estimation unit 13 estimates the positions of joint points from one polygon mesh.
The joint point estimator 13 may be a joint point learning engine and functions as follows.
(Training stage) Input multiple polygon meshes (explanatory variables) of the teacher data group, and build a joint point learning model so as to output joint point positions (objective variables).
(Estimation Stage) A polygon mesh to be estimated (explanatory variable) is input, and joint point positions (objective variable) are output.

関節点学習エンジンとしては、関節点の推定に、ポリゴンメッシュの頂点位置から、モーションキャプチャの関節点を予測する回帰モデルを用いることもできる。回帰モデルの訓練としては、「人体形状は関節の周囲でほぼ凸形状」と仮定する。凸形状とは、任意の2点間を結ぶ線分が、その多角形の外に出ることがないものをいう(内角は180°以下)。
勿論、回帰モデルのような機械学習ではなく、モーションキャプチャに基づくフレーム画像に映るマーク点に対応するメッシュ頂点を指定して、メッシュから直接に関節位置を計算したものであってもよい。
As a joint point learning engine, a regression model that predicts motion capture joint points from polygon mesh vertex positions can also be used for joint point estimation. For the training of the regression model, it is assumed that "the shape of the human body is approximately convex around the joints". A convex shape is one in which a line segment connecting any two points does not go outside the polygon (the interior angle is 180° or less).
Of course, instead of machine learning such as a regression model, joint positions may be calculated directly from a mesh by designating mesh vertices corresponding to mark points appearing in frame images based on motion capture.

また、関節位置を、モーションキャプチャデータから推定するものであってもよい。例えばVICON(登録商標)のように、モーションキャプチャの各フレームから、関節位置を推定するものであってもよい。例えば多数の人の歩行動作を撮影したモーションキャプチャの各フレームから、歩行動作に基づく関節位置の変位を推定することができる。 Alternatively, joint positions may be estimated from motion capture data. For example, like VICON (registered trademark), joint positions may be estimated from each frame of motion capture. For example, displacements of joint positions based on walking motions can be estimated from each motion-captured frame in which walking motions of many people are photographed.

尚、本願発明の特徴として、スケルトンを含まないスキン(ポリゴンメッシュ)のみから、姿勢を分析することができる。これは、市販されている様々な3次元スキャナの機種や撮影環境を問わないこと可能にする。即ち、様々な3次元スキャナによって撮影されたポリゴンメッシュであっても、相同モデル化されている限り、関節位置を推定し、統計形状空間に対応付けることができる。このように、人体のスキンから姿勢のみを分離することによって、3次元スキャナの異なる機種や撮影環境を統一的に扱うことが可能となる。 As a feature of the present invention, the posture can be analyzed only from the skin (polygon mesh) that does not include the skeleton. This makes it possible regardless of the models of various three-dimensional scanners available on the market and the shooting environment. That is, even for polygon meshes captured by various three-dimensional scanners, as long as they are homologously modeled, joint positions can be estimated and associated with the statistical shape space. In this way, by separating only the posture from the skin of the human body, it is possible to uniformly handle different types of three-dimensional scanners and imaging environments.

[スケルトン変形部14]
スケルトン変形部14は、1体の全ての関節点の軸角度ベクトルから、1体のスケルトンを再生する。
統計学習エンジン12から出力されるものは、軸角度ベクトルのみであるので、スケルトンのテンプレートを予め用意しておく。そのテンプレートを、統計学習エンジン12から出力された軸角度ベクトル(回転軸、回転角)に対応させて、テンプレートのスケルトンモデルを変形(関節点の回転)させる。
このように、スケルトン変形部14によって、スケルトンに基づく姿勢を視覚的に認識することができる。
[Skeleton deformation part 14]
The skeleton deformation unit 14 regenerates one skeleton from the axis angle vectors of all the joint points of one body.
Since only the axis angle vector is output from the statistical learning engine 12, a skeleton template is prepared in advance. The template is made to correspond to the axis angle vector (rotation axis, rotation angle) output from the statistical learning engine 12, and the skeleton model of the template is deformed (rotation of the joint points).
In this way, the posture based on the skeleton can be visually recognized by the skeleton deformation section 14 .

以上、詳細に説明したように、本発明のプログラム、装置及び方法によれば、スキンモデルから骨格に基づく姿勢を分析可能な統計形状空間を生成することができる。 As described in detail above, according to the program, apparatus, and method of the present invention, a statistical shape space capable of analyzing a posture based on a skeleton can be generated from a skin model.

前述した本発明の種々の実施形態について、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略は、当業者によれば容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。 For the various embodiments of the present invention described above, various changes, modifications and omissions within the spirit and scope of the present invention can be easily made by those skilled in the art. The foregoing description is exemplary only and is not intended to be limiting. The invention is to be limited only as limited by the claims and the equivalents thereof.

1 分析装置
11 軸角度ベクトル抽出部
12 統計学習エンジン
13 関節点推定部
14 スケルトン変形部
REFERENCE SIGNS LIST 1 analyzer 11 axis angle vector extractor 12 statistical learning engine 13 joint point estimator 14 skeleton deformation unit

そこで、本発明によれば、スキンモデルから骨格(スケルトン)に基づく姿勢を分析可能な統計形状空間を生成するプログラム、装置及び方法を提供することを目的とする。 SUMMARY OF THE INVENTION Accordingly, it is an object of the present invention to provide a program, apparatus and method for generating a statistical shape space capable of analyzing posture based on a skeleton from a skin model.

本発明によれば、複数の頂点からなるポリゴンメッシュに複数の関節点を内在するスキンモデルを統計的に分析する装置に搭載されたコンピュータを機能させるプログラムであって、
関節点毎に、関節座標系が設定されており、
関節点同士を親子関係によってボーンで結ぶことによってスケルトンを構成し、
全ての関節点のボーンの軸角度ベクトルは、スケルトンに対する姿勢を表し、
スキンモデルにおける全ての関節点に対する軸角度ベクトルを抽出する軸角度ベクトル抽出手段と、
訓練段階として、教師データ群となる複数体のスキンモデルにおける各関節点の軸角度ベクトルを入力し、成分変数を出力するように統計学習モデルを構築する統計学習エンジンと
してコンピュータを機能させることを特徴とする。
According to the present invention, there is provided a program for operating a computer installed in a device for statistically analyzing a skin model in which a plurality of joint points are inherent in a polygon mesh composed of a plurality of vertices,
A joint coordinate system is set for each joint point,
A skeleton is constructed by connecting joint points with bones by parent-child relationship,
The axis angle vector of the bone at every articulation point represents the pose relative to the skeleton,
axis angle vector extracting means for extracting axis angle vectors for all joint points in the skin model;
In the training stage, the computer functions as a statistical learning engine that constructs a statistical learning model by inputting the axis angle vectors of each joint point in multiple skin models that serve as training data groups and outputting the component variables. and

本発明のプログラムにおける他の実施形態によれば、
軸角度ベクトル抽出手段は、軸角度ベクトルrを、関節点を始点とした方向ベクトルを回転軸eと、その軸周りの回転角度θとを組み合わせて表現する
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
It is also preferable that the shaft angle vector extracting means cause the computer to express the shaft angle vector r by combining the direction vector starting from the joint point with the rotation axis e and the rotation angle θ about the axis. .

本発明のプログラムにおける他の実施形態によれば、
節点毎の関節座標系は、当該関節点を親として子関節点へ向かう方向をz軸とし、当該関節点の屈曲する方向をx軸とし、x軸及びz軸と直交する方向をy軸として設定される
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
The joint coordinate system for each joint point has the joint point as a parent and the direction toward the child joint point as the z-axis, the bending direction of the joint point as the x-axis, and the direction perpendicular to the x-axis and the z-axis as the y-axis. It is also preferable to have the computer function so that it is set as

本発明のプログラムにおける他の実施形態によれば、
スキンモデルは、人体モデルであり、
スケルトンは、人体の骨格であり、
ボーンは、関節点間の骨であ
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
A skin model is a human body model,
Skeleton is the skeleton of the human body,
Bones are bones between articulation points
It is also preferable to have the computer function as

本発明によれば、複数の頂点からなるポリゴンメッシュに複数の関節点を内在するスキンモデルを統計的に分析する分析装置であって、
関節点毎に、関節座標系が設定されており、
関節点同士を親子関係によってボーンで結ぶことによってスケルトンを構成し、
全ての関節点のボーンの軸角度ベクトルは、スケルトンに対する姿勢を表し、
スキンモデルにおける全ての関節点に対する軸角度ベクトルを抽出する軸角度ベクトル抽出手段と、
訓練段階として、教師データ群となる複数体のスキンモデルにおける各関節点の軸角度ベクトルを入力し、成分変数を出力するように統計学習モデルを構築する統計学習エンジンと
を有することを特徴とする。
According to the present invention, there is provided an analysis apparatus for statistically analyzing a skin model having a plurality of joint points in a polygon mesh composed of a plurality of vertices,
A joint coordinate system is set for each joint point,
A skeleton is constructed by connecting joint points with bones by parent-child relationship,
The axis angle vector of the bone at every articulation point represents the pose relative to the skeleton,
axis angle vector extracting means for extracting axis angle vectors for all joint points in the skin model;
and a statistical learning engine that constructs a statistical learning model so as to input axis angle vectors of each joint point in a plurality of skin models as a training data group and output component variables as a training stage. .

本発明によれば、複数の頂点からなるポリゴンメッシュに複数の関節点を内在するスキンモデルを統計的に分析する装置の分析方法であって、
関節点毎に、関節座標系が設定されており、
関節点同士を親子関係によってボーンで結ぶことによってスケルトンを構成し、
全ての関節点のボーンの軸角度ベクトルは、スケルトンに対する姿勢を表し、
装置は、
スキンモデルにおける全ての関節点に対する軸角度ベクトルを抽出する第1のステップと、
訓練段階として、統計学習エンジンによって、教師データ群となる複数体のスキンモデルにおける各関節点の軸角度ベクトルを入力し、成分変数を出力するように統計学習モデルを構築する第2のステップと
を実行することを特徴とする。
According to the present invention, there is provided an analysis method for a device for statistically analyzing a skin model in which a plurality of joint points are inherent in a polygon mesh composed of a plurality of vertices, comprising:
A joint coordinate system is set for each joint point,
A skeleton is constructed by connecting joint points with bones by parent-child relationship,
The axis angle vector of the bone at every articulation point represents the pose relative to the skeleton,
The device
a first step of extracting axis angle vectors for all joint points in the skin model;
a second step of constructing a statistical learning model by a statistical learning engine, as a training step, by inputting axis angle vectors of each joint point in a plurality of skin models as a training data group and outputting component variables; characterized by executing

本発明のプログラムにおける他の実施形態によれば、
軸角度ベクトル抽出手段は、軸角度ベクトルrを、関節点を始点とした方向ベクトル回転軸eと、その軸周りの回転角度θとを組み合わせて表現する
ようにコンピュータを機能させることも好ましい。
According to another embodiment of the program of the present invention,
It is also preferable that the shaft angle vector extracting means cause the computer to express the shaft angle vector r by combining the rotation axis e of the direction vector starting from the joint point and the rotation angle θ about the axis.

軸角度ベクトルrは、関節点を始点とした方向ベクトル回転軸eと、その軸周りの回転角度θとの組み合わせ{e,θ}によって表現される。これは、任意軸周りの回転表現(axis-angle表現)と称される。回転軸eは3次元ベクトルで表され、回転角度θは1値で表されるので、軸角度ベクトルは4パラメータで表される。このとき、回転軸eに回転角度θを大きさとして含め、回転軸及び回転角度をθe=(θex,θey,θez)とすることによって、3パラメータで表すことができる。但し、{e,θ}と{-e,-θ}とは同一回転となるので、正値回転のみを扱う非負制約を条件とする。
軸角度ベクトル :r=θe=(θex,θey,θez)
回転軸(単位ベクトル):e=(ex,ey,ez)=r/|r|
回転角 :θ=|r|

The axis angle vector r is represented by a combination {e, θ} of the rotation axis e of the direction vector starting from the joint point and the rotation angle θ about the axis. This is called a rotation representation around an arbitrary axis (axis-angle representation). Since the rotation axis e is represented by a three-dimensional vector and the rotation angle θ is represented by one value, the axis angle vector is represented by four parameters. At this time, it can be represented by three parameters by including the rotation angle .theta. However, since {e, θ} and {−e, −θ} are the same rotation, the condition is a non-negative constraint that handles only positive value rotations.
Axis angle vector: r=θe=(θex, θey, θez)
Axis of rotation (unit vector): e = (ex, ey, ez) = r/|r|
Rotation angle: θ=|r|

Claims (11)

複数の頂点からなるポリゴンメッシュに複数の関節点を内在するスキンモデルを統計的に分析する装置に搭載されたコンピュータを機能させるプログラムであって、
関節点毎に、関節座標系が設定されており、
スキンモデルにおける全ての関節点に対する軸角度ベクトルを抽出する軸角度ベクトル抽出手段と、
訓練段階として、教師データ群となる複数体のスキンモデルにおける各関節点の軸角度ベクトルを入力し、成分変数を出力するように統計学習モデルを構築する統計学習エンジンと
してコンピュータを機能させることを特徴とするプログラム。
A program for operating a computer installed in a device for statistically analyzing a skin model in which a plurality of joint points are inherent in a polygon mesh composed of a plurality of vertices,
A joint coordinate system is set for each joint point,
axis angle vector extracting means for extracting axis angle vectors for all joint points in the skin model;
In the training stage, the computer functions as a statistical learning engine that constructs a statistical learning model by inputting the axis angle vectors of each joint point in multiple skin models that serve as training data groups and outputting the component variables. A program to
軸角度ベクトル抽出手段は、各関節点の回転行列Rを軸角度ベクトルrへ変換する
ようにコンピュータを機能させることを特徴とする請求項1に記載のプログラム。
2. The program according to claim 1, wherein the axis angle vector extracting means causes the computer to function to convert the rotation matrix R of each joint point into the axis angle vector r.
軸角度ベクトル抽出手段は、軸角度ベクトルrを、関節点を始点とした方向ベクトルを回転軸eと、その軸周りの回転角度θとを組み合わせ{e,θ}て表現する
ようにコンピュータを機能させることを特徴とする請求項2に記載のプログラム。
The axis angle vector extracting means functions the computer to express the axis angle vector r by combining {e, θ} a direction vector starting from the joint point with a rotation axis e and a rotation angle θ about the axis. 3. The program according to claim 2, wherein the program causes
1体のポリゴンメッシュから、関節点の位置を推定する関節点推定手段と
して更にコンピュータを機能させることを特徴とする請求項1から3のいずれか1項に記載のプログラム。
4. The program according to any one of claims 1 to 3, further causing the computer to function as joint point estimation means for estimating positions of joint points from one polygon mesh.
関節点推定手段は、関節点学習エンジンであり、
訓練段階として、教師データ群の複数体のポリゴンメッシュをそれぞれ入力し、関節点の位置を出力するように関節点学習モデルを構築し、
推定段階として、推定対象となるポリゴンメッシュを入力し、関節点の位置を出力する
ようにコンピュータを機能させることを特徴とする請求項4に記載のプログラム。
The joint point estimation means is a joint point learning engine,
In the training stage, multiple polygon meshes of the training data group are input, and a joint point learning model is constructed so as to output the positions of the joint points,
5. The program according to claim 4, wherein, in the estimation stage, a polygon mesh to be estimated is input and the computer is caused to output positions of joint points.
第1の推定段階として、
統計学習エンジンは、推定対象となる1体のポリゴンメッシュにおける軸角度ベクトルを入力し、成分変数を出力する
ようにコンピュータを機能させることを特徴とする請求項1から5のいずれか1項に記載のプログラム。
As a first estimation step,
6. The statistical learning engine according to any one of claims 1 to 5, wherein the statistical learning engine inputs an axis angle vector in one polygon mesh to be estimated, and causes a computer to function to output a component variable. program.
関節点同士を親子関係によってボーンで結ぶことによってスケルトンを構成し、
関節点毎の関節座標系は、当該関節点を親として子関節点へ向かう方向をz軸とし、当該関節点の屈曲する方向をx軸とし、x軸及びz軸と直交する方向をy軸として設定される
ようにコンピュータを機能させることを特徴とする請求項1から6のいずれか1項に記載のプログラム。
A skeleton is constructed by connecting joint points with bones by parent-child relationship,
The joint coordinate system for each joint point has the joint point as a parent and the direction toward the child joint point as the z-axis, the bending direction of the joint point as the x-axis, and the direction perpendicular to the x-axis and the z-axis as the y-axis. 7. A program according to any one of claims 1 to 6, characterized in that it causes a computer to function so as to be set as
スキンモデルは、人体モデルであり、
スケルトンは、人体の骨格であり、
ボーンは、関節点間の骨であり、
全ての関節点の軸角度ベクトルは、人体モデルにおける骨格に対する姿勢となる
ようにコンピュータを機能させることを特徴とする請求項7に記載のプログラム。
A skin model is a human body model,
Skeleton is the skeleton of the human body,
Bones are bones between articulation points,
8. The program according to claim 7, causing the computer to function such that the axis angle vectors of all joint points are postures with respect to the skeleton of the human body model.
統計学習エンジンは、主成分分析(Principal Component Analysis)又はオートエンコーダ(AutoEncoder)に基づくものである
ようにコンピュータを機能させることを特徴とする請求項1から8のいずれか1項に記載のプログラム。
9. A program according to any one of claims 1 to 8, characterized in that the statistical learning engine makes the computer behave as if it is based on Principal Component Analysis or AutoEncoder.
複数の頂点からなるポリゴンメッシュに複数の関節点を内在するスキンモデルを統計的に分析する分析装置であって、
関節点毎に、関節座標系が設定されており、
スキンモデルにおける全ての関節点に対する軸角度ベクトルを抽出する軸角度ベクトル抽出手段と、
訓練段階として、教師データ群となる複数体のスキンモデルにおける各関節点の軸角度ベクトルを入力し、成分変数を出力するように統計学習モデルを構築する統計学習エンジンと
を有することを特徴とする分析装置。
An analysis device for statistically analyzing a skin model having multiple joint points in a polygon mesh composed of multiple vertices,
A joint coordinate system is set for each joint point,
axis angle vector extracting means for extracting axis angle vectors for all joint points in the skin model;
and a statistical learning engine that constructs a statistical learning model so as to input axis angle vectors of each joint point in a plurality of skin models as a training data group and output component variables as a training stage. Analysis equipment.
複数の頂点からなるポリゴンメッシュに複数の関節点を内在するスキンモデルを統計的に分析する装置の分析方法であって、
関節点毎に、関節座標系が設定されており、
装置は、
スキンモデルにおける全ての関節点に対する軸角度ベクトルを抽出する第1のステップと、
訓練段階として、統計学習エンジンによって、教師データ群となる複数体のスキンモデルにおける各関節点の軸角度ベクトルを入力し、成分変数を出力するように統計学習モデルを構築する第2のステップと
を実行することを特徴とする分析方法。
An analysis method for a device for statistically analyzing a skin model in which a plurality of joint points are inherent in a polygon mesh composed of a plurality of vertices, comprising:
A joint coordinate system is set for each joint point,
The device
a first step of extracting axis angle vectors for all joint points in the skin model;
a second step of constructing a statistical learning model by a statistical learning engine, as a training step, by inputting axis angle vectors of each joint point in a plurality of skin models as a training data group and outputting component variables; A method of analysis characterized by performing
JP2022013607A 2022-01-31 2022-01-31 Program, device and method for statistically analyzing posture based on skeleton from skin model Active JP7141610B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2022013607A JP7141610B1 (en) 2022-01-31 2022-01-31 Program, device and method for statistically analyzing posture based on skeleton from skin model

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2022013607A JP7141610B1 (en) 2022-01-31 2022-01-31 Program, device and method for statistically analyzing posture based on skeleton from skin model

Publications (2)

Publication Number Publication Date
JP7141610B1 JP7141610B1 (en) 2022-09-26
JP2023111654A true JP2023111654A (en) 2023-08-10

Family

ID=83400851

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2022013607A Active JP7141610B1 (en) 2022-01-31 2022-01-31 Program, device and method for statistically analyzing posture based on skeleton from skin model

Country Status (1)

Country Link
JP (1) JP7141610B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117274449B (en) * 2023-11-15 2024-02-09 唯物(杭州)科技有限公司 Method and system for generating bones based on model

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008282110A (en) * 2007-05-09 2008-11-20 Univ Of Tokyo Method and apparatus for acquiring joint structure of object
WO2017065241A1 (en) * 2015-10-14 2017-04-20 国立大学法人東京工業大学 Automated diagnostic device
JP2021155893A (en) * 2020-03-27 2021-10-07 株式会社ゴールドウイン Device, method and program for supporting design of garment for exercise

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008282110A (en) * 2007-05-09 2008-11-20 Univ Of Tokyo Method and apparatus for acquiring joint structure of object
WO2017065241A1 (en) * 2015-10-14 2017-04-20 国立大学法人東京工業大学 Automated diagnostic device
JP2021155893A (en) * 2020-03-27 2021-10-07 株式会社ゴールドウイン Device, method and program for supporting design of garment for exercise

Also Published As

Publication number Publication date
JP7141610B1 (en) 2022-09-26

Similar Documents

Publication Publication Date Title
Alldieck et al. imghum: Implicit generative models of 3d human shape and articulated pose
Kadleček et al. Reconstructing personalized anatomical models for physics-based body animation
Hasler et al. Estimating body shape of dressed humans
Lassner et al. A generative model of people in clothing
CN114663199B (en) Dynamic display real-time three-dimensional virtual fitting system and method
Hasler et al. Multilinear pose and body shape estimation of dressed subjects from image sets
Jiang et al. Disentangled human body embedding based on deep hierarchical neural network
Stoll et al. Template Deformation for Point Cloud Fitting.
JP2022544353A (en) A method for estimating naked body shape from hidden body scans
CN109655011B (en) Method and system for measuring dimension of human body modeling
Kaashki et al. Deep learning-based automated extraction of anthropometric measurements from a single 3-D scan
CN117635897B (en) Three-dimensional object posture complement method, device, equipment, storage medium and product
Danckaers et al. Posture normalisation of 3D body scans
JP7141610B1 (en) Program, device and method for statistically analyzing posture based on skeleton from skin model
Lifkooee et al. Real-time avatar pose transfer and motion generation using locally encoded laplacian offsets
CN115083015A (en) 3D human body posture estimation data labeling mode and corresponding model construction method
JP2010211732A (en) Object recognition device and method
JP7067709B1 (en) Programs, devices and methods for statistically analyzing skeleton-based body length from skin models
Laga et al. 4d atlas: Statistical analysis of the spatiotemporal variability in longitudinal 3D shape data
Endo et al. Hand modeling and motion reconstruction for individuals
JP7120532B1 (en) Program, device and method for statistically analyzing body shape based on flesh from skin model
Li et al. SwinGar: Spectrum-Inspired Neural Dynamic Deformation for Free-Swinging Garments
CN117689820A (en) Construction method of digital human body figure ruler for clothing
Cha et al. Mobile. Egocentric human body motion reconstruction using only eyeglasses-mounted cameras and a few body-worn inertial sensors
Garcia-D’Urso et al. Accurate estimation of parametric models of the human body from 3D point clouds

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20220228

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20220228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220513

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220615

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220725

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220725

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: 20220829

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20220829

R150 Certificate of patent or registration of utility model

Ref document number: 7141610

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313117

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350