夜風のMixedReality

xRと出会って変わった人生と出会った技術を書き残すためのGeekなHoloRangerの居場所

Apple ARKit について学ぶ

本日はApple枠です。

 筆者は今まではほぼUnityエンジニアとしてXRを触っていましたが、Apple VisionProでの開発をするにあたってSwiftを学んでいます。

 AppleのAR系機能ARKitによって提供されているものを使用することが多いです。

 今回は今まで何となくの理解であったApple ARKitをまずは機能がどのようなものがあるかを勉強していきます。

〇ARkitとは?

ARkitはAppleが提供している開発者向けのiOSでのAR体験構築フレームワークです。

 iPhoneiPadなどのApple製端末のカメラを使用して動作し、現実世界に対してデジタルデータを配置することができます。

 最大の特徴として現実空間の特徴を捉えることが可能であり、例えば現実の床や壁、手といった物体を捉えることができます。

 ARKitが発表されたのは2017年のWWDC2017です。

 2017年はMicrosoft HoloLensが登場した年の翌年でもあり、Mirosoftへの対抗としてARKitが影響を受け進化してきた可能性があります。

〇ARKitで提供されている機能

ポジショントラッキング

 現実世界の位置と向きを正確にトラッキングし、デバイスの動きに応じたARコンテンツを表示します。

ポイントクラウド

 デバイスのカメラで捉えた環境情報を点群データとして記録し、現実世界の詳細な3Dマップを作成します。

AR Quick Look View

 クイックルックビューはApple VisionProでUSDZを表示させたときに使用しています。これは対応している3DモデルをARで表示する機能です。このAR Quick Look Viewの機能もARKitで提供されている機能を使用していると言えます。

GeoAnchor

 現実世界の特定の場所にデジタルコンテンツを固定する機能で、位置情報を基にしてARオブジェクトを配置します。

・AR Quick Look View

クイックルックビューはApple VisionProでUSDZを表示させたときに使用しています。

これは対応しているの3DモデルをARで表示する機能です。

このAR Qucik Look Viewの機能もARKitで提供されている機能を使用していると言えます。

〇ARkit2

ARKit2は初代ARKitの機能をさらに強化・拡張したバージョンです。ARKit2で追加された主な機能は以下の通りです:

アプリを中断した後でもAR空間を再現可能 ユーザーがアプリを一時停止しても、再開後に同じAR体験を継続できます。

AR空間の共有

複数のデバイス間で同じAR体験を共有することができ、協力プレイや共有エクスペリエンスを実現します。

立体物の認識 (Object Detection)

現実世界のオブジェクトを認識し、その形状やサイズに基づいてインタラクティブなAR体験を提供します。

現実世界をARオブジェクトに反映

ARKit2からユーザーの周辺物理環境を認識してAR表示する物体のライトに使用するImage Based Lighting (IBL)が標準搭載されています。これはApple VisionProでも再現されていた機能であり、現実の光環境を反映してARオブジェクトのライティングをリアルにします。

〇ARKit3

 ARKit3はさらに進化し、2019年6月WWDC19で発表されています。リアルタイムの体験とユーザーのインタラクションを強化しました。ARKit3の主な機能は以下の通りです

ピープルオクルージョン (People Occlusion)

バイスのカメラが捉えた人の前後関係を正確に認識し、現実の人とARオブジェクトが自然に重なり合う体験を提供します。

モーションキャプチャ (Motion Capture)

ユーザーの動きをリアルタイムでトラッキングし、その動きをARオブジェクトに反映させることができます。

コラボレーティブセッション (Collaborative Sessions)

複数のデバイスが同じAR体験をリアルタイムで共有し、共同作業やゲームプレイを可能にします。

複数の顔のトラッキング (Multiple Face Tracking)

 同時に複数の顔をトラッキングし、AR体験に反映させることができます。これはiPhone X以降のデバイスで利用可能です。

〇ARKit4

2020年にWDC20で発表されたARKit4の主な機能は以下の通りです

Location Anchors

位置情報を利用して、現実世界の特定の場所にARオブジェクトを配置します。これにより、実際の地理的な場所に基づいたAR体験を提供することができます。

Depth API

iPhone 12 ProおよびiPad ProのLiDARスキャナーを利用して、環境の深度情報を正確に取得します。これにより、現実世界のオクルージョンや物体の配置がよりリアルになります。

これはRecord3DLumaAIなどのスキャン系アプリで効率的に使用されています。

redhologerbera.hatenablog.com

Improved Face Tracking

フェイストラッキングがさらに改善され、より多くの表情や動きを認識できるようになりました。  これはiPhone X以降のデバイスで利用可能です。

 

〇ARKit5

2021年のWWDC21で発表されたARKit5では、さらなる進化を遂げて新機能が追加されています。

Face Tracking on More Devices

フェイストラッキングがより多くのデバイスで利用可能になり、旧モデルのiPadでもフェイストラッキングを利用できるようになりました。

Expanded Location Anchors

ロケーションアンカーの精度と対応地域が拡大され、より多くの場所で正確な位置情報に基づいたAR体験を提供できるようになりました。

App Clip Code Recognition

App Clip Codesを認識し、QRコードのように簡単にARコンテンツにアクセスできるようになりました。これにより、ユーザーは特定の場所やオブジェクトに関連するAR体験をすばやく始めることができます。

〇ARKit6

2022年に発表されたARKit6は、AR体験をさらにリアルにするための新機能を提供します。主な機能は以下の通りです:

4K Video Recording

AR体験を4K解像度で録画できるようになりました。これにより、高品質なビデオキャプチャが可能となり、ユーザーはよりリアルなARコンテンツを作成できます。

Improved Motion Capture

モーションキャプチャの精度が向上し、ユーザーの動きをより自然にトラッキングできるようになりました。

ARKitは年々進化し続け、より高度でリアルなAR体験を提供するための機能が追加されています。

AppleのAR技術は、VisionProの登場により今後もますます多様化し、発展していくことが期待されます。

個人的にはApp Clip Code Recognitionをリサーチしなくてはと思っています。

〇参考

www.apple.com

qiita.com

developer.apple.com

developer.apple.com