Comments
Description
Transcript
修士論文 複数台カメラの観測統合による広範囲な顔計測 浅野慧
NAIST-IS-MT0751002 修士論文 複数台カメラの観測統合による広範囲な顔計測 浅野 慧 2009 年 3 月 17 日 奈良先端科学技術大学院大学 情報科学研究科 情報システム学専攻 本論文は奈良先端科学技術大学院大学情報科学研究科に 修士 (工学) 授与の要件として提出した修士論文である. 浅野 慧 審査委員: 小笠原 司 教授 (主指導教員) 横矢 直和 教授 (副指導教員) 高松 淳 准教授 (副指導教員) 松本 吉央 客員准教授 (委員) 複数台カメラの観測統合による広範囲な顔計測∗ 浅野 慧 内容梗概 人の顔向きは人間の注意を表現する特徴量として有用である.このため,近年 ステレオカメラ,および単眼カメラを用いて人間の顔を 3 次元的にトラッキング するシステムの構築が行われてきた.しかしながら,現状のシステムではカメラ の視野角の制限により,人間の自由な動きをサポートできないという問題がある. そこで,本研究では従来の単眼トラッキングシステムを拡張し,複数台のカメ ラを利用することにより,計測範囲を拡大することを目的とする.複数台のカメ ラによる観測から得られた特徴点を信頼度の情報を加味して統合し,顔の 6 軸の 動きを推定する.これにより,複数台のカメラにまたがるトラッキングをシーム レスにつなぐことができ,結果として計測範囲の拡大することができる,単眼シ ステムを並列動作させた例に対しての優位性を示すため,比較実験を行い,その 結果を述べる. キーワード 顔トラッキング,視線計測,複数台カメラ, 単眼カメラ,顔の位置と姿勢 ∗ 奈良先端科学技術大学院大学 情報科学研究科 情報システム学専攻 修士論文, NAIST-ISMT0751002, 2009 年 3 月 17 日. i Face tracking system for wider range scene by intergrating multi-camera observation ∗ Satoshi Asano Abstract Many system for masureing face pose have been proposed, because facial information provides us with guess of user’s interest and attention. It has been achived to measure face pose in 6DOF using stereo camera pair or single camera in real-time. However, measurement range was strictly limited because of field of view. In this paper, a face tracking algorithm for multi-camera system is proposed for expanding measurement range. Face pose is estimated by integrating only features that were captured from multi-camera. The accuracy of estimated face pose in 6DOF was evaluated. Furthermore, the effectiveness of proposed method was confirmed through comparative experiments. Keywords: face tracking, multi-camera, single-camera, face position and pose ∗ Master’s Thesis, Department of Information Systems, Graduate School of Information Science, Nara Institute of Science and Technology, NAIST-IS-MT0751002, March 17, 2009. ii 目次 1. はじめに 1 1.1 研究の背景と目的 . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 1.2 本論文の構成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2. 関連研究と本研究のアプローチ 4 2.1 関連研究 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1.1 顔の位置や姿勢 . . . . . . . . . . . . . . . . . . . . . . . . 4 2.1.2 広範囲な空間を対象とした人間計測 . . . . . . . . . . . . . 5 2.2 本研究のアプローチ . . . . . . . . . . . . . . . . . . . . . . . . . 5 3. 複数台カメラによる頭部の位置姿勢推定 7 3.1 先行研究 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.1.1 3 次元顔モデル . . . . . . . . . . . . . . . . . . . . . . . . 9 3.1.2 実動きベクトルと単位動きベクトル . . . . . . . . . . . . . 10 3.1.3 6 自由度動き推定 . . . . . . . . . . . . . . . . . . . . . . . 12 3.2 提案手法 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.2.1 複数台観測統合 . . . . . . . . . . . . . . . . . . . . . . . . 14 3.2.2 相関値を考慮した重み付け . . . . . . . . . . . . . . . . . . 14 3.3 実装 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.3.1 システム構成 . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.3.2 テンプレートの拡大縮小 . . . . . . . . . . . . . . . . . . . 19 3.3.3 カメラキャリブレーション . . . . . . . . . . . . . . . . . . 20 3.3.4 様々な配置への対応 . . . . . . . . . . . . . . . . . . . . . 21 4. 実験 25 4.1 従来手法との精度評価実験 . . . . . . . . . . . . . . . . . . . . . . 25 4.1.1 実験システム構成 . . . . . . . . . . . . . . . . . . . . . . . 25 4.1.2 実験概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.1.3 結果と考察 . . . . . . . . . . . . . . . . . . . . . . . . . . 31 iii 4.2 並列システムとの精度比較実験 . . . . . . . . . . . . . . . . . . . 34 4.2.1 実験概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.2.2 結果と考察 . . . . . . . . . . . . . . . . . . . . . . . . . . 34 4.3 特徴点の重み行列の違いによる比較実験 . . . . . . . . . . . . . . 37 4.3.1 実験概要 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 4.3.2 結果と考察 . . . . . . . . . . . . . . . . . . . . . . . . . . 37 5. おわりに 45 謝辞 46 参考文献 47 付録 50 A. ロボットアーム PA-10 の仕様 50 B. 並列処理による複数台単眼システム 51 iv 図目次 1.1 大型ディスプレイ環境における注意計測 . . . . . . . . . . . . . . 3 2.1 システム概要図 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.1 従来手法の処理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 3.2 3 次元顔モデル . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 3.3 実動きベクトルと単位動きベクトル [5] . . . . . . . . . . . . . . . 11 3.4 提案手法の処理 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 3.5 相関値が異なる場合 . . . . . . . . . . . . . . . . . . . . . . . . . 15 3.6 システム構成 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.7 カメラの配置 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18 3.8 並進方向へ拡張した例 . . . . . . . . . . . . . . . . . . . . . . . . 19 3.9 キャリブレーションパターン . . . . . . . . . . . . . . . . . . . . 20 3.10 並進方向へ拡張したカメラ配置 . . . . . . . . . . . . . . . . . . . 21 3.11 並進方向へ拡張した例 . . . . . . . . . . . . . . . . . . . . . . . . 22 3.12 回転方向へ拡張した配置 . . . . . . . . . . . . . . . . . . . . . . . 23 3.13 回転方向へ拡張した例 . . . . . . . . . . . . . . . . . . . . . . . . 24 4.1 実験システム構成 . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 4.2 実験環境と座標の対応 . . . . . . . . . . . . . . . . . . . . . . . . 27 4.3 並進方向の実験結果 . . . . . . . . . . . . . . . . . . . . . . . . . 29 4.4 回転方向の実験結果 . . . . . . . . . . . . . . . . . . . . . . . . . 30 4.5 従来手法との精度評価実験の実験結果 . . . . . . . . . . . . . . . 33 4.6 提案手法と並列システムの比較実験結果 . . . . . . . . . . . . . . 36 4.7 特徴点の重み考慮手法の違いによる比較実験結果 (X 軸方向の並進) 40 4.8 特徴点の重み考慮手法の違いによる比較実験結果 (Y 軸方向の並進) 40 4.9 特徴点の重み考慮手法の違いによる比較実験結果 (Z 軸方向の並進) 41 4.10 特徴点の重み考慮手法の違いによる比較実験結果 (X 軸方向の回転) 41 4.11 特徴点の重み考慮手法の違いによる比較実験結果 (Y 軸方向の回転) 42 4.12 特徴点の重み考慮手法の違いによる比較実験結果 (Z 軸方向の回転) 42 4.13 速度を変化させた場合の実験結果 (10 [mm/sec]) . . . . . . . . . . v 43 4.14 速度を変化させた場合の実験結果 (20 [mm/sec]) . . . . . . . . . . 43 4.15 速度を変化させた場合の実験結果 (80 [mm/sec]) . . . . . . . . . . 44 B.1 並列処理システム . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 表目次 3.1 計測 PC の仕様 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 3.2 カメラ (FL2-08S2M/C) の仕様 . . . . . . . . . . . . . . . . . . . . 17 4.1 生成した動作 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 4.2 精度評価実験の計測誤差 . . . . . . . . . . . . . . . . . . . . . . . 32 4.3 提案手法と並列システムの比較実験における計測誤差 . . . . . . . 35 4.4 特徴点の重み考慮手法の違いによる比較実験の計測誤差 . . . . . . 38 4.5 速度を変化させた場合の実験における計測誤差 . . . . . . . . . . . 39 A.1 ロボットアーム (PA-10-7C) の仕様 . . . . . . . . . . . . . . . . . 50 A.2 ロボットアーム (PA-10-7C) のコントローラ仕様 . . . . . . . . . . 51 A.3 ロボットアーム (PA-10-7C) 制御 PC の仕様 . . . . . . . . . . . . . 51 vi 1. はじめに 1.1 研究の背景と目的 近年,コンピュータの発展と共に,人間にとって便利なシステムを探るユーザ インタフェースの研究が盛んになってきており,その中でも新しい入力機器とし て,人の顔向きを計測できるシステムは非常に注目されている. 既に実用化されている例としては,心理学分析,動作解析,入力インタフェー スなどの応用がある.心理学分析においては,注意や集中力を計測することが可 能なため,心理物理学や認知心理学実験などでの定量化手法として古くから利用 されてきている.また,動作解析の分野では,スポーツ科学やインタフェース分 析等が挙げられ,特定のタスク中の集中などを分析することにより,運動効果や 製品の改善などに役立てられている.一方システム自体を入力インタフェースと して用いる研究も盛んであり,特に手などが使用できない障害者用の入力装置と して既に実用化がなされており,筋萎縮性側索硬化症患者向けの製品などが販売 されている. また,インタフェース分野の新しいパラダイムとして,人間の注意を計測し, 適切な補助を行う Attentive Interface[1] の研究が盛んになってきている.その中 でも人間の注意が現れる顔の向きや視線をリアルタイムに計測できるシステムは, 受動的に計測が可能なため,負荷をかけない計測方法として有望視されている. このような背景から,ステレオカメラ,および単眼カメラを用いて人間の顔を リアルタイムに三次元計測するシステムの構築が行われてきた.ステレオカメラ を用いたシステムは既にロボット対話 [2] や,視線車いす [3] ,視線で家電を動かす リモートコントロールシステム [4] などに応用されており,その有効性が示されて きた.また,単眼計測システムも既に実装され,リアルタイムでのトラッキング が可能になっている [5] . しかしながら,ステレオのシステムはカメラ 2 台の輻輳部分のみが計測可能範 囲であり,単眼のシステムの計測範囲もカメラ一台分の視野角に限定されている. この問題により,視野角内にユーザが拘束され,受動的なシステムという本来の 目的が妨げられている.また,範囲に制限があるため,システムをより広い空間 1 へ適用することが出来ない. このような広範囲を計測可能なシステムが実現された場合,現在存在する顔計 測のアプリケーションの利用範囲が大きく広がるだけでなく,新たなアプリケー ションの創出も期待できる可能性がある.例えば,図 1.1 のように,大型のディ スプレイの前にいる人間にコンテンツや広告を見せ,その際の注意を分析するこ とができる.さらに注意の集まる場所に広告を表示するといったような応用も可 能になる.また,スーパーマーケットの棚に設置することで,従来の POS シス テムでは把握できなかった「他の商品と迷っている」「商品に注意は向いたが買 わなかった」 等の行動を細やかに計測することが可能となる. このような背景から,より広範囲を計測することが可能な顔計測システムを実 現する手法が求められている.しかし単純に単眼システムを複数用意するという 方法では,カメラとカメラの間に顔がまたがった際に,計測が不可能になるとい う問題がある.この問題を回避するためには,各カメラ間の輻輳を多く取らなけ ればならなくなり,広範囲なトラッキングを可能にするという本来の目的を達成 することは出来ない.さらに,特徴点の追従処理と 6 軸動き推定処理がカメラの 台数倍増加するため,先行研究の特徴であるリアルタイム性が損なわれてしまい, アプリケーションへの適用が困難になる可能性がある. そこで本論文では,複数台の単眼カメラを用いた頭部位置計測システムを実現 する統合アルゴリズムを提案する.このシステムはリアルタイムに動作し,計測 範囲を使用するカメラ台数分拡張することを可能とする.具体的には,複数台の カメラから得られたオプティカルフローを,顔モデルから得られた単位動きベク トルと比較することにより,3 次元位置の推定を行う.また,精度評価実験,お よび実環境での使用例についても述べる. 1.2 本論文の構成 本論文の 2 章では,関連研究とアプローチについて述べる.3 章では,複数台 カメラによる観測統合を用いた顔視線計測システムについて述べ,評価実験を行 う.4 章では,提案手法と数種類のアルゴリズムとで比較実験を行い,考察を行 う.最後に 5 章では本論文のまとめを行い,今後の課題について述べる. 2 図 1.1: 大型ディスプレイ環境における注意計測 3 2. 関連研究と本研究のアプローチ 2.1 関連研究 2.1.1 顔の位置や姿勢 人間の注意を計測しようと考えた場合,大まかな視線の方向は顔の向きで近似 できる場合が多い.このため顔のトラッキングについての研究は数多い. 古くから活用されている手法としては,頭部に磁気センサを装着する方法があ る [6] .しかしながら,近くに金属がある場合に精度が低下するといった問題があ り,利用環境が限られる.また,機械的なリンク機構を用いて頭部の位置を計測す るもの [7] もあるが,拘束感が強く,ユーザへの負荷が高い点が問題である.モー ションキャプチャーを用いて動きを計測することも可能であるが,設備が大がか りかつ高価である. これらの問題を解決する手法として,非接触かつ受動的に,画像から顔の位置 や姿勢を計測する研究が数多く行われてきた.人間の顔は特徴量が多い,かつ変 化が少ないため,人体の部位の中では,比較的計測が行いやすい部分である. 2 次元画像中の顔の位置を計測する手法は広く存在しており,Active Appearance Model[8] や Online Appearance Model[9] ,ブースティング等の機械学習アルゴリ ズムを用いたもの [10] が主流である.これらは既に民生用カメラなどに応用され ているが,2 次元画像中の位置しか特定できないため,人間の行動を詳細に観察 する際には,3 次元位置を計測する手法が求められる. ステレオカメラを用いて直接 3 次元位置を推定する手法は従来より多く研究さ れている [11][12][13] .しかし,視野角がカメラ 2 台の輻輳が重なる部分にのみ制限 されてしまうという問題がある. これに対し,単眼カメラと 3 次元顔モデルを用いた頭部計測についての研究も 存在している.[14] .顔の目や口などの特徴点の位置を幾何的に拘束することで, 顔向きを求めている研究もある [15] Zhang ら [16] は,詳細な 3 次元モデルの顔を 用いて,部分的なオクルージョンに対してロバストなトラッキングを行っている. しかし,莫大な情報量をもつ詳細な 3 次元モデルを用いているため,リアルタイ ムにトラッキングはできていない. 4 菅野らはパーティクルフィルターを用いて,汎用的な顔モデルを適宜変形するこ とで,顔の変形にも追従するトラッキングシステムを提案している [17] .Yamazoe らの手法では,特定の顔モデルを持たずに顔トラッキングが可能であると同時に 眼球モデルも推定可能である [18] .これらの手法の欠点としては,画像のみを用 いるため,計測精度が比較的低く,視角にして 3∼5 度程度になることが挙げられ る.しかしこれらの手法は,単眼カメラ単体でのトラッキングを想定しており, 複数台のカメラを用いての運用は考慮していない. 2.1.2 広範囲な空間を対象とした人間計測 動画像に基づく顔の位置や姿勢推定が研究される一方,カメラ 1 台および 2 台 よりも広範囲な空間を対象とした研究も存在している. この分野の研究には全方位カメラを用いたものが多い [19][20] .しかし全方位カ メラは単眼のビデオカメラと比較して解像度が低く,頭部の詳細な位置を計測で きているものはない.Qu らは複数台の単眼カメラと分散ベイジアン確率を用い て,オクルージョンに強く,かつ複数人をトラッキングできるシステムを提案し ている [21] .[22] しかし,このシステムは体のトラッキングを主眼に置いており, 人の顔の詳細な方向を求めることは出来ない. また,近年のセキュリティ対策への需要から,監視カメラで顔を自動計測する 技術も注目を集めている.Heath らは複数台のネットワークカメラを用いて顔を 自動的に記録する研究を行っている [23] が,頭部の 3 次元的な位置を求めること は出来ない. 2.2 本研究のアプローチ 1.1 節でも述べた通り,単純にシステムを並列に増やすだけでは,カメラの輻 輳が二次元投影した顔の大きさ以下である場合,複数のカメラにまたがる部分で の計測が不可能になる.これを解決する方法の一つとして,画像を結合するモザ イキング処理により,単一画像に変換する方法が挙げられるが,計測精度がモザ イキングの精度に依存してしまうという問題がある.また,それぞれのシステム 5 から得られた計測値を統合するアルゴリズムに結果が左右されてしまう.さらに, 計算量が増加する問題から従来研究の特徴であるリアルタイム性を損なってしま う可能性がある. そこで本論文では,複数カメラ観測から得られた特徴点の実動きベクトルを統 合し,6 自由度動き推定を行うアプローチを提案する.提案システムの概要を図 2.1 に示す. 図 2.1 にある通り,カメラ台数が増えても増加するのは実動きベクトルのみで あるため,カメラを増やした場合も並列増やした場合に比べ,計算量の増加が抑 えられる.このため,カメラが増加してもリアルタイム性は保てると考えられる. また,構成する PC を複数台にして分散処理をさせる場合にも PC 間で特徴点 の実動きベクトルのみを伝送すれば良いため,ネットワーク負荷がかからないと いう利点がある. 図 2.1: システム概要図 6 3. 複数台カメラによる頭部の位置姿勢推定 本論文では複数台の単眼カメラから成るシステムを用いて,計測範囲を拡張す る手法を提案する.開発したシステムは先行研究である単眼カメラ計測システム を土台として拡張を行っているため,まず従来の単眼カメラ計測システムの詳細 について解説を行い,その後に提案手法について述べる.また,構築したシステ ムの実装と精度評価実験についても述べる. 3.1 先行研究 本論文では,基礎となる先行研究として,佐々尾らによる単眼カメラシステム [5] を用いる.佐々尾らのシステムは計算量が少なく,リアルタイムで動作すると いう特徴を持つ.この手法においては,単眼カメラ画像から得られた実動きベク トルと,3 次元顔モデルから得られた単位動きベクトルの 2 種類の特徴ベクトル を比較することにより,顔の 6 軸動き推定を行う.この手法の概要を図 3.1 に示 す.本節ではこれらの 3 次元顔モデル,実動きベクトル,単位動きベクトルにつ いて述べ,6 自由度動き推定に示す. 7 図 3.1: 従来手法の処理 8 3.1.1 3 次元顔モデル 単位動きベクトルを求めるために,3 次元顔モデルを用いる.この 3 次元顔モ デルは個人ごとに作られ.特徴領域画像とその 3 次元座標で構成されている.図 3.2 に顔モデルにおける特徴点の配置を図示する. 3 次元座標は顔中心からの相対座標として記録されている.顔モデルの作成に はステレオカメラを用い,各特徴領域画像は 16 × 16 ピクセルで構成されている. 図 3.2: 3 次元顔モデル 9 3.1.2 実動きベクトルと単位動きベクトル カメラから得られた画像に顔モデルが持つ特徴点画像をテンプレートとして正 規化相関を行い,特徴点座標を求める.この特徴点座標と前のフレームの座標を 比較することにより,得られたオプティカルフローを実動きベクトルと呼ぶ.特 徴点座標の計算には,顔モデルの特徴領域画像と,入力されたカメラ画像との正 規化相関を行った結果を使用する.このようにして得られた実動きベクトル f を 以下のように表現する.水平方向のベクトルは u, 垂直方向のベクトルは v で表 される. f = (uf 1 , vf 1 , uf 2 , vf 2 , · · · , uf n , vf n )T (3.1) 3 次元顔モデルを 3 次元空間中で 6 軸方向に微小に動かし,それぞれの動きを 2 次元平面に投影する.これにより,顔が各軸方向に単位量動いた際に,特徴点が 取りうる 2 次元的な動きを単位動きベクトル場として表現することができる.こ こでは単位動きベクトル場として,n 個の特徴点を記述する.X, Y, Z 軸方向の 並進に関する動きとしてベクトル場を ⎧ ⎪ ⎨ xt yt ⎪ ⎩ xt = (uxt1 , vxt1 , uxt2 , vxt2 , · · · , uxtn , vxtn )T = (uyt1 , vyt1 , uyt2 , vyt2 , · · · , uytn , vytn )T = (uzt1 , vzt1 , uzt2 , vzt2 , · · · , uztn , vztn )T (3.2) とする. ここで uxt1 は,顔モデルが X 軸方向へ並進した際,カメラで撮影した画像上で の特徴点の X 軸方向変位を表す.また,以下のように X,Y,Z 軸まわりの回転に関 する 3 つの単位動きベクトル場を ⎧ ⎪ ⎨ xr yr ⎪ ⎩ zr = (uxr1 , vxr1 , uxr2 , vxr2 , · · · , uxtn , vxrn )T = (uyr1 , vyr1 , uyr2 , vyr2 , · · · , uytn , vyrn )T = (uzr1 , vzr1 , uzr2 , vzr2 , · · · , uztn , vzrn )T のように生成する. 10 (3.3) (a) 実動きベクトル (b) 単位動きベクトル 図 3.3: 実動きベクトルと単位動きベクトル [5] 11 3.1.3 6 自由度動き推定 3 次元的な動きの推定には,3 次元顔モデルを 2 次元平面に投影した画像と,入 力画像におけるそれぞれの特徴点の配置が近づくように,3 次元顔モデルをフィッ ティングする必要がある.任意の微小な顔の動きによる実動きベクトル場は,6 つの単位動きベクトル場の線形和で表現でき, f = a1 xt + a2 yt + a3 zt + a4 xr + a5 yr + a6 zr (3.4) と記述される. このときの各単位ベクトル場の係数 a1 , · · · , a6 が各自由度の移動量に対応する. これを展開することで,特徴点数 n×2 個の連立一次方程式を得る. n × m > 3 の際に連立方程式は冗長になるため,最小二乗法を用いて各係数を 求める.この際には最小二乗法を用いる. V = (xt , yt , zt , xr , yr , zr ), a = (a1 , a2 , · · · , a6 )T (3.5) f = Va (3.6) V+ = (VT V)−1 VT (3.7) a = V+ f (3.8) とおくと となる. これに対し,擬似逆行列 を用いて となり,6 自由度の移動量が求まる.これを用いて, ⎛ ⎞ ⎛ ⎞ ⎛ ⎞ Xtn−1 δX Xtn ⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ Ytn−1 ⎟ ⎜ Ytn ⎟ ⎜ δY ⎟ ⎜ ⎜ ⎟ ⎜ ⎟ ⎟ ⎜ ⎜ ⎟ ⎜ ⎟ ⎟ ⎜ ⎜ Ztn ⎟ ⎜ δZ ⎟ ⎟ ⎜ ⎟ = ⎜ ⎟ a + ⎜ Ztn−1 ⎟ ⎜ ⎜ ⎟ ⎜ ⎟ ⎟ ⎜Xrn−1 ⎟ ⎜Xrn ⎟ ⎜δXr ⎟ ⎜ ⎜ ⎟ ⎜ ⎟ ⎟ ⎜Y ⎟ ⎜Y ⎟ ⎜ δ ⎟ ⎝ rn−1 ⎠ ⎝ rn ⎠ ⎝ Y r ⎠ Zrn−1 Zrn δZr (3.9) の様に表現することが出来,これにより実際の動きを復元することが可能となる. 12 3.2 提案手法 提案手法では,3.1 節で示したアルゴリズム中の実動きベクトルを,複数の実 動きベクトルとする.図 3.4 に提案手法の処理フローを示す. 図 3.4: 提案手法の処理 13 3.2.1 複数台観測統合 複数台カメラシステムにおいては,3.1.2 で取り上げた実動きベクトル場を拡 張し,n 個ある各特徴点について,m 台のカメラからオプティカルフロー f を求 める.このとき,個々のカメラが観測可能な特徴点は,状況によりそれぞれに異 なっており,nm 個である. f = (uf 1c1 , vf 1c1 , uf 2c1 , vf 2c1 , · · · , vf ncm )T (3.10) また,それに合わせて,単位動きベクトル場においても n 個の特徴点について m 台のカメラに対応する特徴点を記述する.X, Y, Z 軸方向の並進に関する動きと して単位ベクトル場を生成する. ⎧ ⎪ ⎨ xt yt ⎪ ⎩ xt = (uxt1c1 , vxt1c1 , uxt2c1 , vxt2c1 , · · · , uxtncm , vxtncm )T = (uyt1c1 , vyt1c1 , uyt2c1 , vyt2c1 , · · · , uytncm , vytncm )T = (uzt1c1 , vzt1c1 , uzt2c1 , vzt2c1 , · · · , uztncm , vztncm )T (3.11) ⎧ ⎪ ⎨ xr yr ⎪ ⎩ zr = (uxr1c1 , vxr1c1 , uxr2c1 , vxr2c1 , · · · , uxtncm , vxrncm )T = (uyr1c1 , vyr1c1 , uyr2c1 , vyr2c1 , · · · , uytncm , vyrncm )T = (uzr1c1 , vzr1c1 , uzr2c1 , vzr2c1 , · · · , uztncm , vzrncm )T (3.12) このときの 6 自由度動き推定は従来手法と同様に f = a1 xt + a2 yt + a3 zt + a4 xr + a5 yr + a6 zr (3.13) と表現できる. 3.2.2 相関値を考慮した重み付け 展開することで,特徴点数 n × カメラ数 m × 2 個の連立一次方程式が得られ る.n × m > 3 の際に連立方程式は冗長になるため,従来手法と同様に最小二乗 法を用いて各係数を求める.しかしここで,図 3.5 にあるように,1 つの特徴領 域が複数のカメラに写ってしまった場合を考えると,それぞれのカメラから微妙 に異なった特徴点が得られる場合が発生する.また,オクルージョンが生じた場 合や,特徴点の追従に失敗している場合に,それぞれの特徴点の値を全て用いる ことは,ノイズの混入に繋がり,結果に悪影響を及ぼす可能性がある. 14 図 3.5: 相関値が異なる場合 そこで,それぞれの特徴点を追従する際の正規化相関から得られた相関値を, 信頼度の指標として用いることを提案する.信頼度を考慮することにより,ノイ ズになり得る特徴点の貢献度を下げ,計算結果を改善できると期待される. この際には各特徴点の相関値を重みとして考慮した重み付き最小二乗法を用 いる. V = (xt , yt , zt , xr , yr , zr ), a = (a1 , a2 , · · · , a6 )T (3.14) f = Va (3.15) となり,それぞれの特徴点の相関値を対角に並べた行列 W を加えた重み付き擬 似逆行列 Vw + = (VT W−1 V)−1 VT W−1 (3.16) a = Vw + f (3.17) を用いて となり,ベクトル a を用いて 6 自由度の移動量が求まる. 15 3.3 実装 3.2 節において提案した手法に基づき,システムの実装を行った.本節では実 装のシステム構成,および実際に人間の顔を計測した様子について述べる. 3.3.1 システム構成 システムは PC 一台と IEEE 1394a カメラ FL2-08S2M/C 3 台で構成されてい る.システム構成を図 3.6 に示す.カメラは三脚に固定し,並列に並べた配置で 使用する.実際に用いたカメラの配置を図 3.7 に示す.計測 PC の仕様を表 3.1 に,カメラにの仕様を表 3.2 に示す.表にあるようにカメラは 1024 × 768 [pixel] の解像度で撮影が可能であるが,複数台のカメラを接続した際の帯域を確保する ため,カメラ側で 512 × 384 [pixel] の解像度にダウンスケールしたものを用いて いる. 実装においては,本システムの特徴であるリアルタイム性を追求するため,顔 発見と特徴点追従をマルチスレッドで記述し,デュアルコア CPU の特性を活か す仕様になっている.これにより,カメラが 3 台の状態でも平均 30 フレーム/秒 を維持することが可能となった. さらに,得られた座標から,OpenGL を用いて顔の位置姿勢を描画することに より,計測値をリアルタイムで確認することが可能になっている. 表 3.1: 計測 PC の仕様 CPU PentiumD 2.8 GHz メモリ 1GB グラフィック Nvidia Geforce 7600 GS OS Ubuntu Linux 8.04 カーネル 2.6.24 GCC 4.2.4 16 表 3.2: カメラ (FL2-08S2M/C) の仕様 最大解像度 1032 × 776 [pixel] イメージャ ソニー 1/3” プログレッシブスキャン CCD ICX204 ピクセルサイズ 7.4 [μm] × 7.4 [μm] A/D 変換 12 [bit] 最大フレームレート 30 [F P S] 消費電力 2 [W ] 以下 (12 [V ]) シャッター Automatic/Manual/OnePush シャッターモード 0.02 [msec] ∼ 66.63 [msec] at 15 [F P S] Extended シャッターモード: 0.02 [msec] ∼ 10 [sec] 以上 ゲイン 0 [dB] 24 [dB] ガンマ補正 0.5 4.0 / プログラマブル LUT インターフェース 9pin IEEE-1394b コネクタ 4pin GPIO 寸法 29 × 29 × 30 [mm] (光学系を除く) 重量 約 58 [g] (光学系を除く) 17 図 3.6: システム構成 図 3.7: カメラの配置 18 3.3.2 テンプレートの拡大縮小 奥行き方向の並進においては,特徴領域画像の拡大縮小が伴うため,同じ特徴 領域画像を用いると,相関値が低下してしまう問題点がある.これに対しては, 顔が近づいた場合,離れた場合の 2 つの場合に分けて対処している.拡大におい ては,図 3.8(a) のように特徴領域画像をあらかじめ大きく取得しておき,通常は そのうちの全部を使用せず,特徴領域の拡大に合わせて,より広い部分を特徴領 域画像として使用する.縮小においては,図 3.8(b) のようにカメラ入力画像を縮 小し,特徴領域画像として使用している. (a) 顔が近づいた場合 (b) 顔が離れた場合 図 3.8: 並進方向へ拡張した例 19 3.3.3 カメラキャリブレーション 複数のカメラを使用する際には,カメラ間での原点統一を行う必要がある.本 手法ではキャリブレーションに Zhang の手法 [24] を用いる.さらに図 3.9 のよう に統一平面に置かれた複数枚のチェスパターンを用いてそれぞれのカメラでキャ リブレーションをしたあと,原点を統一するという手法を採用している. 図 3.9: キャリブレーションパターン 20 3.3.4 様々な配置への対応 提案システムは様々な配置への対応が可能であり,アプリケーションに応じて 計測範囲の拡張方向を自由に選択することができる.ここでは,壁に配置した例, 頭部を囲む配置の例について示す. 並進方向への拡張 顔の水平方向の動きを計測する拡張例として,図 3.10 のよ うに仕切りの上に 0.4m おきにカメラ 4 台を配置した.頭部の動く範囲は約 2.2m である. 動作の結果を図 3.11 に示す.この図より,水平方向の動きに対して,計測範囲 が拡張されていることが確認できる.また,この例では 4 台で計測を行ったが, さらに多数のカメラを配置することで,水平方向の動きをより広範囲に計測する ことが可能になる.たとえば,カメラを上下に配置することで,上下の並行移動 に対応できるシステムなども構築可能である. 図 3.10: 並進方向へ拡張したカメラ配置 21 (a) 入力画像 (b) OpenGL による描画 (c) 入力画像 (d) OpenGL による描画 (e) 入力画像 (f) OpenGL による描画 図 3.11: 並進方向へ拡張した例 22 回転方向への拡張 顔の回転方向の動きを計測する拡張例として,図 3.12 のよ うに顔の周りに 0.2m の間隔でカメラ 3 台を配置した.頭部は −160 ∼ 160 [deg] の範囲で動く. 動作の結果を図 3.13 に示す.この図より,回転方向の動きに対して,計測範囲 が拡張されていることが確認できる. ただし,横向きの顔が撮影されているような場合では,特徴点が傾いてしまう ため,各特徴点の相関値が下がってしまう.このような場合には,特徴点をアフィ ン変換などで様々な角度から見た形状に変形させることで,さらに精度が向上す る可能性がある. また,前項で示した平行移動方向への拡張と組み合わせることも可能である. 例えば部屋の外周を囲むように,並列に並んだカメラと角に置くカメラを混在さ せた場合には,部屋全体から死角無く顔を計測すことが可能となる.ただし,広 範囲な空間を計測しようとする場合には,カメラの解像度が不足し,計測結果が 不十分になる可能性がある,このような場合には,カメラのレンズを望遠寄りの 焦点距離のものに変更し,カメラの台数を増やすことで対応することができる. 図 3.12: 回転方向へ拡張した配置 23 (a) 入力画像 (b) OpenGL による描画 (c) 入力画像 (d) OpenGL による描画 (e) 入力画像 (f) OpenGL による描画 図 3.13: 回転方向へ拡張した例 24 4. 実験 3.2 節で示した手法を検証するため,評価実験を行う.本章では従来手法であ る単眼システムとの比較,並列処理を行ったシステムとの比較,および重み関数 の違いについての比較実験を行う. 4.1 従来手法との精度評価実験 本節では,実際にシステムを構築し,その有効性を検証するため,従来の手法 との精度比較実験を行う.実験では,従来手法と比較して • 広範囲な計測が可能となっているか • 精度の低下はないか について確認する. 4.1.1 実験システム構成 実験用のシステム構成を図 4.1 に示す.本実験では統制された環境で動きを生 成するため,トラッキング対象にマネキンの頭部を用いた.実験環境と座標の配 置の対応を図 4.2 に示す.マネキン頭部とカメラの距離は 420 [mm] である.本実 験で用いたカメラのレンズは 6 [mm] (35 [mm] フィルム換算 34 [mm])であった. また,実験を行う際に,汎用ロボットアーム PA-10[25] の手先にマネキンの頭 部を装着し,6 自由度 (X 軸並進,Y 軸並進,Z 軸並進,X 軸周りの回転,Y 軸周 りの回転,Z 軸周りの回転) をそれぞれ移動,回転させる.PA-10 の仕様を表 A.1 に,コントローラの仕様を表 A.2 に,制御用 PC の仕様を表 A.3 に示す. 実験を行う際には,PA-10 側で得られた 3 次元座標にタイムスタンプを付加し て出力し,真値として用いる.この真値は,計測後に計測システム側から出力さ れた値と,タイムスタンプを用いて統合する. 実験においては,あらかじめカメラを用いて画像を記憶しておき,それを連続 的に読み込むことで,オフライン環境での実験を行う.これにより,比較実験に おいて同じ入力データを用いて評価を行うことが可能になる. 25 図 4.1: 実験システム構成 26 図 4.2: 実験環境と座標の対応 27 4.1.2 実験概要 3.2 節において提案した手法を用いて,頭の位置や姿勢の計測を行い,ロボット アームの移動距離や回転角度を真値とし,計測値との比較実験を行う.また,従 来手法との比較も行う. 計測においては,X,Y,Z 軸それぞれの方向に並進運動,回転運動を行う.生 成した動きを表 4.1 に示す.また,それぞれの動きの実験時の画像を図 4.3, 4.4 に示す. 表 4.1: 生成した動作 (a) 並進動作 動作 移動距離 [mm] X軸 600.0 Y軸 120.0 Z軸 300.0 (b) 回転動作 動作 回転角度 [deg] X軸 60.0 Y軸 60.0 Z軸 60.0 28 (a) X 軸方向の並進 (b) Y 軸方向の並進 (c) Z 軸方向の並進 図 4.3: 並進方向の実験結果 29 (a) X 軸方向の回転 (b) Y 軸方向の回転 (c) Z 軸方向の回転 図 4.4: 回転方向の実験結果 30 4.1.3 結果と考察 実験から得られた結果を図 4.5 に示す,図中の X 軸は PA10 から得られた真値, Y 軸はカメラから得られた計測値であり,真値である直線に最も近いほど,精度 が高い.また計測誤差を表 4.2 に示す.なお,図 4.5(a) からわかる通り,X 軸方 向の並進において,従来手法は途中からトラッキングできなくなっているため, 平均誤差はトラッキングができている 180 [mm] までの値とした. X 軸方向の並進結果から,180 [mm] 以上においては従来手法では追従できて いないが,提案手法では追従ができていることがわかる.これにより,提案シス テムの目的である,計測領域の拡大が達成されていることが確認できる. Y 軸方向の回転も図 4.5(d) では誤差が生じているように見えるが,提案システ ムの計測誤差は 3 [deg] 以内である.この動きにおける単眼カメラでの誤差が大き いのは,Y 軸方向の回転では,回転方向の目尻など,観測できなくなる特徴点が 発生するためであると考えられる.このため,使用できる特徴点の数が減り,計 測結果に誤差が生じる.提案システムにおいては,複数のカメラからの見えを利 用できるため,精度が改善されていると考えられる. 以上のように,多少の改善点はあるものの,ほとんどの場面で従来手法と同等 以上の精度が示されている.これにより,提案手法は従来手法と同等の精度を持 ちながら,計測範囲を拡大することを可能にしていると結論できる. 31 表 4.2: 精度評価実験の計測誤差 (a) 並進方向の計測誤差 並進方向 提案システム [mm] 単眼システム [mm] X軸 1.5 4.3 Y軸 2.7 3.6 Z 軸 4.7 3.3 (b) 回転方向の計測誤差 回転方向 提案システム [deg] 単眼システム [deg] X軸 3.1 3.4 Y軸 2.9 5.7 Z軸 5.3 2.8 32 300 30 20 observed value[deg] observed value[mm] 200 100 0 -100 -200 -200 ground truth proposal method single camera -100 0 100 moving distance[mm] 10 0 -10 200 -30 -30 300 60 30 40 20 20 0 -20 ground truth proposal method single camera -60 -60 -40 -20 0 20 moving distance[mm] 40 -30 -30 60 -20 -10 0 10 rotation angle[deg] 30 20 30 (d) Y 軸方向の回転 20 observed value[deg] observed value[mm] 20 ground truth proposal method single camera -20 100 50 0 -50 ground truth proposal method single camera -50 0 50 moving distance[mm] 30 -10 30 -100 20 0 150 -150 -150 -10 0 10 rotation angle[deg] 10 (c) Y 軸方向の並進 -100 -20 (b) X 軸方向の回転 observed value[deg] observed value[mm] (a) X 軸方向の並進 -40 ground truth proposal method single camera -20 100 10 0 -10 ground truth proposal method single camera -20 -30 -30 150 (e) Z 軸方向の並進 -20 -10 0 10 rotation angle[deg] (f) Z 軸方向の回転 図 4.5: 従来手法との精度評価実験の実験結果 33 4.2 並列システムとの精度比較実験 提案したシステムは従来のシステムと同等の計測精度,リアルタイム性を保ち ながら計測範囲を拡張したことが特徴である.しかしながら,広範囲な顔計測は 1.1 章で述べたように,従来手法を並列実行可能に拡張する手法でも実現可能で ある.そこで本節では,提案手法の優位性を示すため,並列処理との比較を行う. 比較は計測精度,および計算時間の 2 つの観点から行う. 4.2.1 実験概要 比較に用いる並列処理システムは,付録 B に示すように単眼トラッキングを 2 眼並列に動作させ,値の統合を行ったものである. 従来システムの実装は 2 つより多いカメラへの拡張が困難であったため,2 眼 での実験となった.計測する動きは 4.1 節で行われた精度評価実験と同じものを 用いる. また,計算時間を評価するため,並進,回転方向の動作生成を連続で計測し, 一連の処理の所要時間を記録する. 4.2.2 結果と考察 並進方向の実験結果を図 4.6 に示す.また,並進方向の平均計測誤差を表 4.3 に示す.ここに見られるように,並列処理は全ての数値で明らかに誤差が大きく 生じている.これは.個々のカメラ画角で特徴点が不足している場合,安定して 推定することが困難であり,顔が回転していると見なしてしまう場合があるから である.一方,観測統合を行っている場合は,片方のカメラの画角境界において も,他のカメラの特徴点から正しい姿勢を計算できるため,精度を向上させるこ とができる. また,顔モデルの初期姿勢に依存する形で,相関値の高くなる位置姿勢が存在 する.このため,頭部が 2 つのカメラのどちらを向いているかによって,それぞ れのカメラの相関値が異なってくる場合があり得る.Y 軸方向の回転においては, 並列処理では計測が不可能になっているのは,このことが原因となり,カメラの 34 優先度が急激に入れ替わってしまい,トラッキングが不可能になったためである と考察される. 所要時間の合計は,観測統合システムが 1 分 5 秒,並列システムが 2 分 28 秒で あった.これは,並列システムにおいては 6 自由度動き推定処理がカメラの台数 分必要なためであると考えられる. 以上から,単純な並列処理モデルに対して,観測統合システムは計測精度,計 算時間の面から優位性を持っていることが示された.これらの結果から提案手法 は有用であると結論される. 表 4.3: 提案手法と並列システムの比較実験における計測誤差 (a) 並進方向の計測誤差 並進方向 提案システム [mm] 並列システム [mm] X軸 1.6 30.6 Y軸 6.5 15.4 Z 軸 2.2 58.9 (b) 回転方向の計測誤差 回転方向 提案システム [deg] 並列システム [deg] X軸 0.8 8.7 Y軸 3.9 計測不能 Z軸 3.7 9.2 35 200 30 20 100 observed value[deg] observed value[mm] 150 50 0 -50 -100 ground truth proposal method parallel -150 -200 -200 -150 -100 -50 0 50 100 moving distance[mm] 10 0 -10 150 -30 -30 200 60 30 40 20 20 0 -20 ground truth proposal method parallel -60 -60 -40 -20 0 20 moving distance[mm] 40 -30 -30 60 -20 -10 0 10 rotation angle[deg] 30 20 30 (d) Y 軸方向の回転 20 observed value[deg] observed value[mm] 20 ground truth proposal method parallel -20 100 50 0 -50 ground truth proposal method parallel -50 0 50 moving distance[mm] 30 -10 30 -100 20 0 150 -150 -150 -10 0 10 rotation angle[deg] 10 (c) Y 軸方向の並進 -100 -20 (b) X 軸方向の回転 observed value[deg] observed value[mm] (a) X 軸方向の並進 -40 ground truth proposal method parallel -20 100 10 0 -10 ground truth proposal method parallel -20 -30 -30 150 (e) Z 軸方向の並進 -20 -10 0 10 rotation angle[deg] (f) Z 軸方向の回転 図 4.6: 提案手法と並列システムの比較実験結果 36 4.3 特徴点の重み行列の違いによる比較実験 3.2.2 節では特徴点の重みを考慮した最小自乗法による手法を提案した.本節 では,この重み付け手法の効果を検証するため,他の重み付け手法との比較を行 う.比較の内容としては,計測精度,および頭部が素早く動いた場合の追従性の 観点から検証を行う. 4.3.1 実験概要 以下の条件について比較を行う. 条件 1 : 提案手法に重みを付加しない場合 条件 2 : 相関値の平均が最も高いカメラの相関値を使用 条件 3 : 相関値が閾値以上の特徴点のみを使用 条件 1 については,式 3.16 の重み W の対角成分を全て 1 にしたものを用いる. 条件 2 については,各カメラごとに相関値の平均を取り,最も高い相関値を持つ カメラの相関値のみを使用する.条件 3 については,閾値を 0.7 に設定し,その 閾値以上の相関値は全て採用する.また,重みは考慮しない. 6 軸方向それぞれの比較については 4.1 節と同様の動きを用いて実験を行う. 速度の比較については,10 [mm/sec], 30 [mm/sec], 80 [mm/sec] の三種類の 速度を用いる.動作については,X 軸方向に 300 mm の並進運動させたものを用 いる. 4.3.2 結果と考察 図 4.7, 4.8, 4.9, 4.10, 4.11, 4.12,に 6 軸方向それぞれの動きを生成した 実験結果を示す.また,計測誤差を表 4.4 に示す. 図 4.7 より,X 軸方向の並進においては,提案手法の精度が他の手法に比べて 高いことがわかる.これは,相関値による重みを考慮しない手法では, 複数のカ メラにまたがって頭部が移動する際に値が急激に変化してしまう.これに対し, 37 徐々に変化する相関値を重みとして用いる提案手法は,急激な変化を抑制できる ため,安定した計測を行うことができると考えられる. 図 4.9 より,提案手法と条件 1 において Z 方向の並進の精度が他の 2 つに比べ て低いことがわかる.4.1 節でも述べた通り,Z 方向の並進は特徴点の拡大縮小が 伴うため,計測誤差が生じやすい.提案手法と条件 1 は相関値を全て採用するた め,Z 方向の誤差の影響を受けやすい可能性がある.このため,他の 2 手法に比 べて計測精度が低下してしまったと考察される. また,速度を変化させた際の結果を図 4.13, 4.14, 4.15 に示す.さらに,計 測誤差を表 4.5 に示す.図 4.15 においては,提案手法以外は途中からトラッキン グができていない.特徴点の移動が高速になる場合,特徴点のトラッキングに失 敗する場合があるが,その場合は相関値が低下するので,重みを考慮している提 案手法は,トラッキングに失敗した特徴点の影響を減らすことができるため, 安 定的にトラッキングすることが可能であると考えられる. 以上より,提案手法は手法 1∼3 に比べ,計測精度,高速な被写体への追従性能 に優れていると言える. 表 4.4: 特徴点の重み考慮手法の違いによる比較実験の計測誤差 (a) 並進方向 並進方向 提案手法 [mm] 条件 1 [mm] 条件 2 [mm] 条件 3 [mm] X軸 2.0 4.1 6.3 7.8 Y軸 11.8 11.0 11.2 11.4 Z軸 10.1 10.0 4.3 4.5 (b) 回転方向 並進方向 提案手法 [deg] 条件 1 [deg] 条件 2 [deg] 条件 3 [deg] X軸 2.5 2.7 2.9 2.1 Y軸 5.4 5.8 5.7 6.8 Z軸 4.5 3.7 3.8 4.9 38 表 4.5: 速度を変化させた場合の実験における計測誤差 並進方向 提案手法 [mm] 条件 1 [mm] 条件 2 [mm] 条件 3 [mm] 10 [mm/sec] 8 9.9 11.9 15.7 20 [mm/sec] 9.1 12.7 16.1 22.7 80 [mm/sec] 7.0 26.0 85.9 80.5 39 300 250 observed value[mm] 200 150 100 50 0 grand truth proposal method method 1 method 2 method 3 -50 -100 -100 -50 0 50 100 150 moving distance[mm] 200 250 300 図 4.7: 特徴点の重み考慮手法の違いによる比較実験結果 (X 軸方向の並進) 60 40 observed value[mm] 20 0 -20 -40 -60 -60 grand truth proposal method method 1 method 2 method 3 -40 -20 0 moving distance[mm] 20 40 60 図 4.8: 特徴点の重み考慮手法の違いによる比較実験結果 (Y 軸方向の並進) 40 60 40 observed value[mm] 20 0 -20 -40 -60 -60 grand truth proposal method method 1 method 2 method 3 -40 -20 0 moving distance[mm] 20 40 60 図 4.9: 特徴点の重み考慮手法の違いによる比較実験結果 (Z 軸方向の並進) 30 20 observed value[deg] 10 0 -10 -20 -30 -30 grand truth proposal method method 1 method 2 method 3 -20 -10 0 rotation angle[deg] 10 20 30 図 4.10: 特徴点の重み考慮手法の違いによる比較実験結果 (X 軸方向の回転) 41 30 20 observed value[deg] 10 0 -10 -20 -30 -30 grand truth proposal method method 1 method 2 method 3 -20 -10 0 rotation angle[deg] 10 20 30 図 4.11: 特徴点の重み考慮手法の違いによる比較実験結果 (Y 軸方向の回転) 30 20 observed value[deg] 10 0 -10 -20 -30 -30 grand truth proposal method method 1 method 2 method 3 -20 -10 0 rotation angle[deg] 10 20 30 図 4.12: 特徴点の重み考慮手法の違いによる比較実験結果 (Z 軸方向の回転) 42 300 250 observed value[mm] 200 150 100 50 grand truth proposal method method 1 method 2 method 3 0 0 50 100 150 moving distance[mm] 200 250 300 図 4.13: 速度を変化させた場合の実験結果 (10 [mm/sec]) 300 250 observed value[mm] 200 150 100 50 grand truth proposal method method 1 method 2 method 3 0 0 50 100 150 moving distance[mm] 200 250 図 4.14: 速度を変化させた場合の実験結果 (20 [mm/sec]) 43 300 300 250 observed value[mm] 200 150 100 50 grand truth proposal method method 1 method 2 method 3 0 0 50 100 150 moving distance[mm] 200 250 図 4.15: 速度を変化させた場合の実験結果 (80 [mm/sec]) 44 300 5. おわりに 本論文では単眼顔トラッキングシステムを複数台用いることにより,計測範囲 の拡張を行ったシステムを提案した.また,提案した手法に基づきカメラを 3 台 用いたシステムを実装した. 従来手法との精度評価実験においては,従来手法と同等の精度を保ちながら計 測範囲が拡張されていることが示された.また,並列処理との比較実験では,精 度,計算時間の両面で提案手法が優れていることが確認された.提案手法と重み 行列を様々に変えた手法との比較実験では,精度,高速な被写体への追従性能の 面で,提案手法が優れていることが示された. 今後の課題としては,カメラの台数が増え,必要とするバス帯域が PC1 台の 容量を超えた場合について考慮する必要があることが挙げられる.この場合,2.2 節で述べたように,複数の PC で実動きベクトルを生成する分散処理が必要にな ると考えられる.分散処理を行う際には個々のカメラを受け持つクライアントと, 実動きベクトルを統合し 6 軸動き推定を行うサーバに,実装を分ける必要がある. また,現状では一人の顔を計測することしかできないが,実環境に適応する際 には複数人の顔を認識することが求められる場合が想定される.このような場合 には,複数の顔モデルを顔認識によって分類し,計測対象によって使い分けるよ うな処理が必要になると思われる. 45 謝辞 本研究は奈良先端科学技術大学情報科学研究科 小笠原 司 教授(ロボティクス 講座)の元で行われたものです.小笠原教授には,本研究の修士 2 年間にわたり 御指導,御助言を頂きました.筆者の考えの及ばない問題点や考察すべき課題に ついて助言をいただき,考え方,研究者のアプーチを学ぶ事ができました.深く 御礼申し上げます. 本学 情報科学研究科 横矢 直和 教授には研究をまとめるにあたり,御指導,御 助言を頂きました.最終発表,中間発表では研究の問題を的確に指摘して頂きま した.深く御礼申し上げます. 本学 情報科学研究科 松本 吉央 客員准教授には研究の最も核となるアイデア に御助言を頂きました.大阪大学特任教授としてのお仕事がお忙しい中も,お時 間を割いて本学にお越し下さり,御指導を頂きました.深く御礼申し上げます. 本学 情報科学研究科 高松 淳 准教授には研究を進める上での,些細な相談に も毎回真摯なご助言を頂きました.とりわけ,修士論文の執筆の際には熱心な御 指導を頂きました.深く感謝をいたします. 本学 情報科学研究科 竹村 憲太郎 助教には研究を進める上での基礎的な技術 から手法,考え方まで多くの御指導,御助言をいただきました.研究における方 向性の修正,学会原稿の校正,発表練習など 2 年間の研究生活において多くの御 指導を頂きました.深く感謝をいたします. 本研究を遂行するにあたり ロボティクス講座 末永 剛 研究員 には,必要な 手法やアルゴリズムをご教授いただきました.ありがとうございました. 学会や研究時の事務手続きなど,研究生活を支援していただいたロボティクス 講座 山口 美幸 秘書に深く感謝いたします. また修士生活において同輩や後輩との議論はは筆者の研究意欲を向上させ,講 座内でのささやかなイベントは筆者の心を和ませてくれました.この 2 年間とい う短い時間で得られた多くの技術もさることながら,先輩,同輩,後輩と過ごし た時間は,筆者にとって何物にも変えられない大きな糧となりました.ロボティ クス講座のみなさまに深く感謝をいたします. 最後に,筆者をここまで育て見守ってきてくれた両親に感謝をいたします. 46 参考文献 [1] Roel Vertegaal. Attentive User Interfaces. Communications of the ACM, Vol. 46, No. 3, pp. 31–33, 2003. [2] 怡土順一, 西村竜一, 末永剛, 佐々尾直樹, 近藤理, 松本吉央, 小笠原司. Hrp-2 によるマルチモーダルインタラクション-視覚と音声を利用した対話システ ムの構築-. 第 23 回日本ロボット学会学術講演会予稿集 CD-ROM, No. 1H12, 2005. [3] 足立佳久, 恒成裕行, 松本吉央, 小笠原司. ユーザーの注意推定に基づく搭乗 型移動ロボットの走行支援システム. ヒューマンインタフェース学会論文誌, Vol. 6, No. 3, pp. 9–18, 2004. [4] Kentaro Takemura, Hayato Minamide, Yoshio Matsumoto, and Tsukas Ogasawara. What You Look at Is What You Control: A Universal Remote Control Based on Gaze Measurement Technology. 1st IEEE Technical Exhibition Based Conference on Robotics and Automation (TExCRA2004), 2004. [5] 松本吉央, 佐々尾直樹, 小笠原司. 単眼カメラによる顔トラッキング-3 次元顔 形状に基づく 6 自由度動き推定. 第 6 回計測自動制御学会システムインテグ レーション部門講演会, 2005. [6] Polhemus 社. Fastrak. http://www.polhemus.com/. [7] Ivan E. Sutherland. A Head-mounted Three Dimensional Display. Proc. 1968 Fall Joint Computer Conf., part 1,, Vol. 33, pp. 757–764, 1968. [8] Iain Matthews and Simon Baker. Active appearance models revisited. International Journal of Computer Vision, pp. 135–164, 2004. [9] Allan D. Jepson, David J. Fleet, and Thomas F. El-Maraghi. Robust Online Appearance Models for Visual Tracking. IEEE Transactions on Pattern Analysis and Machine Learning, Vol. 25, No. 10, pp. 1296–1311, 2003. 47 [10] Paul Viola and Michael Jones. Rapid Object Detection Using a Boosted Cascade of Simple Features. IEEE Computer Society Conference on Computer Vision and Pattern Recognition, pp. 511–518, 2001. [11] Louis-Philippe Morency and Trevor Darrell. Stereo Tracking Using ICP and Normal Flow Constraint. Proc. of International Conference on Pattern Recognition, 2002. [12] Rhys Newman, Yoshio Matsumoto, Sebastien Rougeaux, and Alexander Zelinsky. Real-time stereo tracking for head pose and gaze estimation. Automatic Face and Gesture Recognition, 2000. [13] Yoshio Matsumoto and Alexander Zelinsky. An Algorithm for Real-time Stereo Vision Implementation of Head Pose and Gaze Direction Measurement. Automatic Face and Gesture Recognition, 2000. Proceedings. Fourth IEEE International Conference, 2000. [14] K. Heinzmann and A. Zelinsky. 3-d facial pose and gaze point estimation using a robust real-time tracking paradigm. 3rd. International Conference on Face & Gesture Recognition, p. 148, 1998. [15] Shi-Hong Jenga, Hong Yuan Mark Liaob, Chin Chuan Han, Ming Yang Cherna, and Yao Tsorng Liu. Facial Feature Detection Using Geometrical Face Model: An Efficient Approach. Pattern Recognition, pp. 273–282, 1998. [16] Ye Zhang and Ra Kambhamettu. Robust 3D head tracking under partial occlusion. Pattern Recognition, Vol. 35, pp. 176–182, 2000. [17] 菅野裕介, 佐藤洋一. 顔変形をともなう 3 次元頭部姿勢の単眼推定. 情報処 理学会論文誌コンピュータビジョンとイメージメディア, Vol. 1, No. 2, pp. 50–62, 2008. [18] Hirotake Yamazoe, Akira Utsumi, Tomoko Yonezawa, and Shinji Abe. Remote Gaze Estimation with a Single Camera based on Facial-feature Tracking 48 without Special Calibration Action. Proceedings of the 2008 symposium on Eye Tracking Research & Application Symposium, pp. 245–250, 2008. [19] John Krumm, Steve Harris, Brian Meyers, Barry Brumitt, and Mmichael Hale. Multi-Camera Multi-Person Tracking for EasyLiving. IEEE Workshop on Visual Surveillance, pp. 3–10, 2000. [20] Kohsia S. Huang and Mohan M. Trivedi. Video Arrays for Real-Time Tracking of Person, Head, and Face in an Intelligent Room. Machine Vision and Applications, 2003. [21] Wei Qu, Dan Schonfeld, and Magdi Mohamed. Distributed Bayesian Multiple-Target Tracking in Crowded Environments Using Multiple Collaborative Cameras. EURASIP Journal on Applied Signal Processing, Vol. 1, p. 36, 2007. [22] Tao Zhao, Manoj Aggarwal, Rakesh Kumar, and Harpreet Sawhney. RealTime Wide Area Multi-Camera Stereo Tracking. IEEE Computer Vision and Pattern Recognition, pp. 976–983, 2005. [23] Kyle Heath and Leonidas Guibas. Facenet: Tracking People and Acquiring Canonical Face Images in a Wireless Camera Sensor Network. ICDSC ’07. First ACM/IEEE International Conference on Distributed Smart Cameras, pp. 117–124, 2007. [24] Zhengyou Zhang. A flexible new technique for camera calibration. IEEE Transactions on Pattern Analysis and Machine Intelligenc, Vol. 22, No. 11, pp. 1330–1334, 2000. [25] 大西献, 時岡淳, 大西典子, 弘津健二, 大道武生, 白須勲. 可搬式汎用知能アー ムの実用化. 日本ロボット学会誌, Vol. 18, , 2000. 49 付録 A. ロボットアーム PA-10 の仕様 表 A.1: ロボットアーム (PA-10-7C) の仕様 構造 垂直多関節型(7 自由度) アーム本体質量 40 [kg] 先端取扱質量 10 [kg] 動作範囲 S1 軸 (肩軸回転) ± 177 [deg] S2 軸 (肩軸旋回) ± 94 [deg] S3 軸 (肩軸回転) ± 174 [deg] E1 軸 (肘軸旋回) ± 137 [deg] E2 軸(肘軸回転) ± 255 [deg] W1 軸 (手首軸旋回) ± 165 [deg] W2 軸 (手首軸回転) ± 255 [deg] S1 軸 S2 軸 57 [deg/s] S3 軸 E1 軸 114 [deg/s] E2 軸 W1 軸 W2 軸 360 [deg/s] 動作速度 クリーン度 クラス 1 (0.2 [μ m]) 保護構造 防塵ニ錨 (IP54) 周囲環境 温度 0∼50 [℃] 湿度 90% [RH] 以下 (但し結露なきこと) 駆動方式ぅ屮譟璽 AC サーボモータ+電磁ブレーキ 位置検出器 アブソリュート角度検出器 位置繰返精度 ± 0.1 [mm] 最長関節間距離 930 [mm] ユーザ用エア配管 2 本 (外径 4 [mm]・内径 2.5 [mm]) ユーザ用信号線 6 本 (0.3 [sq])、3 本 (0.75 [sq]) 50 表 A.2: ロボットアーム (PA-10-7C) のコントローラ仕様 経路制御方式 PTP(点間) 制御 (直線・円弧・円・各軸) 外部入出力信号 入力:24 [ch],出力:24 [ch] 外径寸法 240(W)×400(D)×300(H) [mm] 質量 14kg(運動制御 CPU ボード,パソコン,ペンダントを除く) 電源 単相 AC100∼240 [V ] ± 10% 50/60 [Hz] 1.5 [kV A] 以下 周囲環境 温度 0∼40 [℃], 湿度 80% [RH] 以下 (但し結露なきこと) 運動制御 CPU ボード PCI バス対応 (パソコンの PCI バスに挿入) デジタル入出力ボード PCI バス対応 (パソコンの PCI バスに挿入) 表 A.3: ロボットアーム (PA-10-7C) 制御 PC の仕様 CPU Pentium4 3.0 GHz メモリ 512 MB OS Windows XP SP3 Professional 開発環境 Visual Studio .NET 2005 B. 並列処理による複数台単眼システム 従来のシステムを並列に実行し,複数台の単眼計測を実現したシステムについ て述べる.図 B.1 に示されている処理手順の通り,並列処理を用いて複数台の単 眼計測を行う際には,それぞれの単眼システムが計測した値を統合する必要があ る.この統合手法については,並進ベクトル T 及び回転ベクトル R は,カメラ A で計測された並進 Ta と回転 Ra ,相関値 fa と,カメラ B で計測された並進 Tb と回転 Ra ,相関値 fb を用いて T = (fa Ta + fb Tb )/(fa + fb ) (B.1) R = (fa Ra + fb Rb )/(fa + fb ) (B.2) のように正規化を行い,相関値を考慮したアルゴリズムを用いた. 51 図 B.1: 並列処理システム 52