Googleは、黒人コミュニティの人種平等を推進することに取り組んでいます。 方法をご覧ください。
このページは Cloud Translation API によって翻訳されました。
Switch to English

基本的な概念

ARCoreに飛び込む前に、いくつかの基本的な概念を理解しておくと役に立ちます。これらの概念を組み合わせることで、ARCoreが、仮想コンテンツを実際の表面に置いたり、実際の場所に接続したりできるエクスペリエンスを実現する方法を示しています。

モーショントラッキング

携帯電話が世界中を移動するとき、ARCoreは同時ローカリゼーションとマッピング(SLAM)呼ばれるプロセスを使用して、携帯電話が周囲の世界との相対的な位置を把握します。 ARCoreは、キャプチャされたカメラ画像内の特徴点と呼ばれる視覚的に異なる特徴を検出し、これらの点を使用して位置の変化を計算します。視覚情報は、デバイスのIMUからの慣性測定値と組み合わされて、時間の経過に伴う世界に対するカメラのポーズ(位置と向き)を推定します。

3Dコンテンツをレンダリングする仮想カメラのポーズをARCoreが提供するデバイスのカメラのポーズに合わせると、開発者は正しい視点から仮想コンテンツをレンダリングできます。レンダリングされた仮想画像は、デバイスのカメラから取得した画像の上にオーバーレイして、仮想コンテンツが現実世界の一部であるかのように見せることができます。

環境理解

ARCoreは、特徴点と平面を検出することにより、実世界の環境に対する理解を絶えず向上させています。

ARCoreは、テーブルや壁などの一般的な水平面または垂直面にあるように見える特徴点のクラスターを探し、これらの面を平面としてアプリで使用できるようにします。 ARCoreは、各平面の境界を決定し、その情報をアプリで利用できるようにすることもできます。この情報を使用して、平らな面に仮想オブジェクトを配置できます。

ARCoreは特徴点を使用して平面を検出するため、白い壁などのテクスチャのない平らな表面は正しく検出されない場合があります。

深さの理解

ARCoreは、サポートされているデバイスのメインRGBカメラを使用して、特定のポイントからのサーフェス間の距離に関するデータを含む画像である深度マップを作成できます。デプスマップによって提供される情報を使用して、仮想オブジェクトを観測面と正確に衝突させたり、実世界のオブジェクトの前または後ろに表示したりするなど、没入型でリアルなユーザーエクスペリエンスを実現できます。

光の見積もり

ARCoreは、その環境の照明に関する情報を検出し、特定のカメラ画像の平均強度と色補正を提供します。この情報により、周囲の環境と同じ条件下で仮想オブジェクトを照らし、臨場感を高めることができます。

ユーザーインタラクション

ARCoreは、ヒットテストを使用して、電話の画面に対応する(x、y)座標を取得し(タップまたはアプリでサポートするその他のインタラクションによって提供されます)、光線をカメラの世界のビューに投影し、飛行機を返します。光線が交差する特徴点と、ワールド空間でのその交差のポーズ。これにより、ユーザーは環境内のオブジェクトを選択したり、オブジェクトを操作したりできます。

オリエンテーションポイント

方向付けされたポイントを使用すると、角度の付いたサーフェスに仮想オブジェクトを配置できます。特徴点を返すヒットテストを実行すると、ARCoreは近くの特徴点を調べ、それらを使用して、指定された特徴点でのサーフェスの角度を推定しようとします。その後、ARCoreはその角度を考慮したポーズを返します。

ARCoreは特徴点のクラスターを使用してサーフェスの角度を検出するため、白い壁などのテクスチャのないサーフェスは正しく検出されない場合があります。

アンカーと追跡可能

ARCoreが自身の位置と環境についての理解を深めるにつれて、ポーズは変化する可能性があります。仮想オブジェクトを配置する場合は、ARCoreがオブジェクトの位置を経時的に追跡するようにアンカーを定義する必要があります。多くの場合、ユーザーインタラクションで説明されているように、ヒットテストによって返されたポーズに基づいてアンカーを作成します

ポーズが変わる可能性があるという事実は、ARCoreが平面や特徴点などの環境オブジェクトの位置を時間の経過とともに更新する可能性があることを意味します。平面と点は、追跡可能と呼ばれる特殊なタイプのオブジェクトです。名前が示すように、これらはARCoreが時間の経過とともに追跡するオブジェクトです。仮想オブジェクトを特定のトラッカブルに固定して、デバイスが動き回っても仮想オブジェクトとトラッカブルの関係が安定していることを確認できます。つまり、仮想のAndroidフィギュアを机の上に置いた場合、後でARCoreが机に関連付けられた飛行機のポーズを調整しても、Androidフィギュアはテーブルの上にとどまっているように見えます。

拡張画像

拡張画像は、製品のパッケージや映画のポスターなど、特定の2D画像に応答できるARアプリを構築できる機能です。ユーザーは、携帯電話のカメラを特定の画像に向けるとARエクスペリエンスをトリガーできます。たとえば、携帯電話のカメラを映画のポスターに向けて、キャラクターを飛び出させてシーンを演じることができます。

ARCoreは、移動するバスの側面にある看板などの動画も追跡します。

画像をオフラインでコンパイルして画像データベースを作成したり、デバイスからリアルタイムで個々の画像を追加したりできます。登録されると、ARCoreはこれらの画像と画像の境界を検出し、対応するポーズを返します。

共有

ARCore Cloud Anchor APIを使用すると、AndroidおよびiOSデバイス用のコラボレーションアプリまたはマルチプレーヤーアプリを作成できます。

クラウドアンカーを使用すると、1つのデバイスがアンカーと近くの機能ポイントをクラウドに送信してホスティングします。これらのアンカーは、同じ環境のAndroidまたはiOSデバイス上の他のユーザーと共有できます。これにより、アプリはこれらのアンカーにアタッチされた同じ3Dオブジェクトをレンダリングできるようになり、ユーザーは同じARエクスペリエンスを同時に体験できるようになります。

もっと詳しく知る

選択したプラットフォームでARエクスペリエンスを構築することにより、これらの概念の実践を開始します。