【連載】

コンピュータビジョンのセカイ - 今そこにあるミライ

6 拡張現実感「AR」(2) - マーカ有りARとマーカレスARの仕組み

6/85

「マーカ有りAR」の仕組み

以下の画像は、マーカを用いたARアプリケーションの代表例「AR Defense」の画像です。

マーカ有りのARの処理の流れは以下の通りです。

マーカ有りARの処理の流れ

  1. しきい値処理(一定の黒さ以上の部分のみを残す処理)により、マーカの黒色領域の輪郭(マーカの外側の四角形)とコーナー4点を検出
  2. 検出した輪郭とコーナー4点から、既に知っているマーカのサイズを用いて、マーカの座標系を計算
  3. マーカの中心部分の模様でパターンマッチング。マーカの模様と一致していれば、探しているマーカであることが認識される(これにより複数のマーカを識別することもできる。)
  4. 2で計算した対応関係を用いて、3次元座標に一致するようにマーカ上にCGを表示

この手順が基本的なARの仕組みです。映像に映っているマーカから取得した3次元座標系とCGの3次元座標系を一致させることにより、3次元的に位置合わせできた状態でCGを表示するわけです。また、マーカの中央の模様を用ることで、どのマーカにどのCGを表示させるかの対応付けを行っています。

典型的なマーカの模様とコーナー点

マーカにはコーナー検出という処理を用いることが多いゆえ、その模様は以下のように角が鮮明でコーナー検出がしやすい白黒のものになるわけです。

一方で、コーナー点以外の特徴点を取得する手法を用いることで、マーカ有りARを実現することもできます。以下の動画は、私もお世話になっている、皆川卓也さんによる、結婚式のハガキの写真をマーカとしたARの例「ARウェルカムボード」です。

ハガキ裏に描かれたデザインや写真のように、テクスチャ(模様)をあらかじめ決めておけばそのテクスチャからもマーカでのコーナーのように座標系に一致した特徴点を計算することが可能で、その特徴点によりARを行うことができます。この場合「局所特徴量」という少し高度な処理を用いているので、次回以降別のテーマで局所特徴量が中心の技術を紹介する際に、あらためて局所特徴量の仕組みを説明する予定です。

「マーカレスAR」の仕組み

マーカを用いないマーカレスARでは、以前「マッチムーブ」の回で紹介したStructure from Motionにより3次元構造を計算し、その計算した構造を基準にARを表示します(Structure from Motionの詳細は連載第2回を参照)。マッチムーブをリアルタイムで実行して、現在撮影している映像の地形に一致するようにCGを表示するのがマーカレスARです。

マーカ有りARではマーカの特徴点(4角形の角のコーナー)をもとにARを表示する3次元空間を計算していましたが、マーカ無しの場合はマーカが無いわけです。そこで画面全体に対してコーナー点、もしくは局所特徴量をもとにまずは2次元画像上での特徴点の座標を計算します。マーカレスARではマーカがないわけなので、撮影した動画中のコーナー点(例えば机の角や、4角形の窓の角など)がマーカ有りARでの特徴点の代わりとして自動的に選ばれてくるわけです。

次にそれらの2次元画像上の特徴点の位置をもとに3次元地形をStructure from Motionにより計算し、その地形に沿うように(自然な見え方がするように)ARを表示します。Structure from Motionは3次元地形全体の計算です。従って、マーカ有りARで用いたマーカのような「ARを表示させるための2次元平面(例えば壁や机の上)」にARを表示させたいという場合は、Structure from Motionは不要です。

以前マッチムーブの時にも述べましたが、リアルタイムでStructure from Motionにより3次元情報を取得できるようになったのは、PTAMという手法が登場したつい最近(ここ2年くらい)のことです。それまではStructure from Motionは計算コストが高すぎて、CGを表示する3次元地形をリアルタイムに計算する必要があるARには使用できなかったのですが、PTAMという高速な手法の登場でリアルタイムに3次元地形を計算しつつその上にARを表示させることが可能になったわけです。ただ、次回に述べるようなマーティング的な事情もあり、現状は2次元平面マーカを使った「マーカ有りAR」が主流です。

6/85

インデックス

連載目次
第85回 点群応用(建築編) - LIDARを用いた高精度/広域3Dスキャン
第84回 点群応用(建築編) - 3Dスキャンが活きる建築物の規模
第83回 点群応用(建築編) - 高精度かつ広域な建築物の3Dスキャン
第82回 まだまだ使える人が少ない3D点群処理
第81回 3Dデータで処理を行う利点とは?
第80回 点群データを取得・解析する技術「3D点群」はデプスセンサと何が違うのか?
第79回 動きに反応して映像が変わるインタラクティブなプロジェクションマッピング
第78回 プロジェクションマッピングの原理
第77回 「プロジェクションマッピング」とはどういったものか?
第76回 顔や視線でコントロール
第75回 手や指の動きだけでコントロール
第74回 3Dジェスチャー認識のおおまかな原理
第73回 全身の人物姿勢情報を活用したアプリ例 - 腕の動きからのジェスチャー認識
第72回 Kinectはどのように人物姿勢推定の性能を向上させたのか?
第71回 Kinectの人物姿勢推定手法は学習時にどのような処理を行っているのか?
第70回 どうやってKinectは人体パーツを識別しているのか?
第69回 「人体パーツ識別技術」により実現されているKinect向け人物姿勢推定技術
第68回 まだ完全には解けていない人物姿勢推定の問題
第67回 3D人物姿勢推定の仕組みとナチュラルユーザーインタフェース
第66回 3Dデプスセンサーーを用いた注目の新ベンチャー企業(後編)
第65回 3Dデプスセンサーを用いた注目の新ベンチャー企業(前編)
第64回 アクティブステレオ方式とは違う3D形状の動画計測方式 - ToF形式
第63回 Kinectで3D撮影を行うための条件
第62回 モーションセンサとして見た場合のKinect
第61回 Kinectセンサの動作原理を読み解く
第60回 kinectを用いたビジネスのアイデアを競う「Kinect for Windows Contest」
第59回 Kinectがもたらしたセンシング革命
第58回 Kinectの登場がもたらしたコンピュータビジョン革命
第57回 Kinectなどで使われるデプスセンサを用いた3Dコンピュータビジョン技術
第56回 組込分野でのコンピュータビジョンは使いやすくなったのか(後編)
第55回 組込分野でのコンピュータビジョンは使いやすくなったのか(前編)
第54回 デジタルビデオの安定化処理の注意点
第53回 デジタルビデオの安定化処理の手順
第52回 デジタルビデオの安定化技術の概要
第51回 2種類のオプティカルフローの計算手法
第50回 画素ごと独立した移動量パラメータを割り当てる「オプティカルフロー」
第49回 パラメトリックモーション - 特定の1つの動き表現モデル
第48回 デジタルビデオ安定化技術
第47回 動画に対するシーム・カービング
第46回 メッシュ変形ベースのリターゲティング手法
第45回 重要度マップへの「主観」の追加
第44回 自動作成を行うために用いられることの多い3つの重要度マップ手法
第43回 元画像を「縮小」する時に自然にリサイズする技術 - リターゲティング
第42回 漫画カメラで使われる漫画風画像生成とトゥーンシェーディングの違い
第41回 iPhoneアプリ「漫画カメラ」で使われている画像処理手法その2
第40回 iPhoneアプリ「漫画カメラ」で使われている画像処理手法その1
第39回 iPhoneアプリ「漫画カメラ」に見るコンピュータビジョンの実応用例
第38回 パッチマッチによる画像編集の1つ - リシャッフリング
第37回 パッチ探索をランダムに実行することで高速化を目指す「パッチマッチ」
第36回 インペインティングの手法の1つ - パッチベースの手法
第35回 2つの目的で使われるコンピュータビジョンのインペインティング
第34回 人工知能/ロボット応用で使われるコンピュータビジョン技術(後編)
第33回 人工知能/ロボット応用で使われるコンピュータビジョン技術(前編)
第32回 ホモグラフィ変換における画像間のレジストレーション処理
第31回 張り合わせ先の座標系モデルと移動量の算出
第30回 各画像の「移動量」と「変形量」の算出による特徴点の対応づけ
第29回 キーポイントの検出とSIFT記述子の計算
第28回 パノラマ画像の生成手順
第27回 "画像の張り合わせ"で手軽に作れるようになったパノラマ画像
第26回 身近になったコンピュータビジョン技術を用いた写真・映像の編集技術
第25回 進むステレオカメラのDepth Mapを用いた3D道路表面モデリングの研究
第24回 車線逸脱警告システムにおけるレーン検出の仕組み
第23回 パーティクルフィルタによる観測技術
第22回 前方衝突防止システム - 人物をトラッキングする手法
第21回 前方衝突防止システム - 「平行等位ステレオ」による3次元形状復元
第20回 ビジョンべースの自動車運転手支援システム - 前方衝突防止システム
第19回 MAP推定はどのように行われるのか
第18回 超解像の計算アルゴリズム「MAP推定」
第17回 超解像で高画質化処理を担当する「ボケ補正」
第16回 入力画像が2枚以上(動画)の場合における画像レジストレーション
第15回 1枚画の静止画における画像レジストレーション
第14回 画像の劣化に対する「高解像度化」と「高画質化」のための3つの技術
第13回 超解像における劣化関数で改善すべき2種類の劣化
第12回 高解像かつ高画質の映像を作り出す技術 - 超解像
第11回 「顔検出」を高速化する技術
第10回 顔検出の主流アルゴリズム「Viola-Jones法」
第9回 人間の顔があるかを判断する「顔検出」技術(2) - テンプレートマッチング
第8回 人間の顔があるかを判断する「顔検出」技術(1) - 「顔検出」と「顔認識」
第7回 拡張現実感「AR」(3) - 「ARToolkit」の登場によりARが一気に普及期へ
第6回 拡張現実感「AR」(2) - マーカ有りARとマーカレスARの仕組み
第5回 拡張現実感「AR」(1)
第4回 動画編集技術「マッチムーブ」(3)
第3回 動画編集技術「マッチムーブ」(2)
第2回 動画編集技術「マッチムーブ」(1)
第1回 身近なものとなってきたコンピュータビジョンの世界

もっと見る



人気記事

一覧

イチオシ記事

新着記事