第 4 章 点群の分類と表面再構成 17
5.2 姿勢推定実験
シミュレーションデータに対して第3章で述べた姿勢推定手法を適用して,姿 勢を推定する実験を行った.点群データに対してボリュームデータを構築し,人 体モデルをマッチングした結果を表5.2に示す.また,点群データを用いてマッ チング結果を修正した結果を表5.3に示す.各点ごとに求めた近傍の数はk =5, ボクセルサイズの上限は40mm,モデルマッチングの際の輪郭ボクセルの重み はn =2とした.
姿勢推定実験の結果を評価するため,シミュレーションデータのもととなる 人体形状の各体節と推定した結果の各体節の位置・向きの誤差を計算した.も との人体形状の各体節の位置・向きは直接獲得することができなかったため,手 作業で人体モデルをマッチングし,得られたモデルの各体節の位置・向きを正 解として用いた.
まず,向きの誤差の計算について説明する.各体節の向きは本来3自由度で あるが,本手法で用いた体節モデルのうち,胸部・腰部を除く体節モデルは,円 筒と,その両端を閉じる形の半球を組み合わせたモデルである.このため,円 筒の軸を中心とした回転方向の誤差は,姿勢推定の評価としては意味を持たな い.そこで胸部と腰部を除く各体節の向きの誤差評価は単純な1次元の角度と
した.胸部・腰部に関しては,体節モデルの前後方向を中心とした回転,左右 方向を中心とした回転,軸方向を中心とした回転の3つの角度で表した.
次に体節の位置の誤差の計算についてであるが,位置の誤差評価はもとの人 体形状の各体節の始点位置と推定結果の各体節の始点位置とのユークリッド 距 離で表した.
直立姿勢及び腕を横に広げた姿勢についてボリュームモデルとのマッチング によって得られた姿勢の誤差評価を表5.4,5.5に示す.点群を用いて修正した 結果の評価を表5.6,5.7に示す.また,その他の姿勢についてマッチングによっ て得られた姿勢の誤差を表A.1〜A.16に示す.
結果から,ほぼ全ての姿勢について,各体節の向きを10度以内の誤差で,始 点位置を50mm以内の誤差で推定することができた.これは,点群を体節に分 類するための姿勢推定の結果としては十分であった.また,大部分の姿勢で,点 群を用いてマッチング結果を修正することで誤差を減少させることができるこ とを確認した.
一部の体節で始点位置に100mm程度の誤差が見られた.これは腕を伸ばし た姿勢のように,どこまでがその体節でどこからが別の体節であるかを判断す ることが難しい部位に多く見られた.しかし,こうした誤差は点群の分類や表 面の再構成には影響しないと考える.
また,点群を用いてマッチング結果を修正することで逆に誤差が大きくなっ た体節があった.これは点群の欠損により体節モデルが点群の欠損の少ない方 の位置に片寄り,正しい位置からずれてしまったためであると考える.
表5.2: ボリュームデータとのモデルマッチング結果
姿勢 正面 側面 姿勢 正面 側面
直立 腕を横
走る 座る
歩く1 歩く2
ダンス1 ダンス2
ダンス3 ダンス4
表5.3: 点群を用いたマッチングの修正結果
姿勢 正面 側面 姿勢 正面 側面
直立 腕を横
走る 座る
歩く1 歩く2
ダンス1 ダンス2
ダンス3 ダンス4
表5.4: ボリュームモデルとのモデルマッチングにおける誤差(直立)
角度誤差(度)
始点位置誤差(mm) 前後方向 左右方向 回転方向
胸部 2.86618 0.647035 14.2153 17.7393
腰部 4.09500 0.0166524 14.2384 7.53184
右上腕 2.80448 22.4590
右前腕 4.15640 17.3399
左上腕 5.80812 34.9950
左前腕 2.51065 5.45217
右大腿 9.72413 48.3085
右下腿 3.01422 27.0331
左大腿 5.14725 23.5741
左下腿 3.58954 6.66651
表5.5: ボリュームモデルとのモデルマッチングにおける誤差(腕を横)
角度誤差(度)
始点位置誤差(mm) 前後方向 左右方向 回転方向
胸部 5.69203 4.08224 5.52313 47.2329
腰部 8.03297 0.628117 171.565 63.1159
右上腕 5.86306 21.8268
右前腕 3.91389 24.4456
左上腕 1.79900 29.9121
左前腕 3.60421 91.9453
右大腿 2.68234 71.6425
右下腿 5.62655 72.7237
左大腿 4.42353 68.6510
左下腿 6.76731 69.9717
表5.6: 点群を用いて修正した結果における誤差(直立)
角度誤差(度)
始点位置誤差(mm) 前後方向 左右方向 回転方向
胸部 2.86619 0.647010 14.2153 17.7393
腰部 4.09500 0.0166391 14.2384 7.53184
右上腕 2.71196 12.2929
右前腕 0.223114 10.8371
左上腕 1.52915 12.8164
左前腕 0.419123 4.26977
右大腿 8.39565 41.1483
右下腿 1.25942 21.0151
左大腿 5.35227 23.0294
左下腿 1.82488 5.45119
表5.7: 点群を用いて修正した結果における誤差(腕を横)
角度誤差(度)
始点位置誤差(mm) 前後方向 左右方向 回転方向
胸部 5.69218 4.08231 5.52313 47.2329
腰部 8.03310 0.628109 171.565 63.1159
右上腕 4.88057 15.0702
右前腕 2.89073 17.0811
左上腕 2.57955 29.3263
左前腕 6.91408 90.1509
右大腿 4.48550 109.220
右下腿 3.49604 71.0304
左大腿 7.50357 116.509
左下腿 2.61863 66.1758