More Related Content Similar to ARCore Update (Jan 2020) (20) More from Hirokazu Egashira (20) ARCore Update (Jan 2020)2. Who are you?
eegozilla (@ega1979)
Copyright @Hirokazu Egashira a.k.a eegozilla. All right reserved.
• フリーランスのエンジニア(ARのアプリをつくってます)
• ROSCon JP 理事
• 日本アンドロイドの会 運営委員
• GoogleXR WG主宰 (最近活動していない…)
• html5j運営スタッフ, ロボット部部長, Webプラットフォーム部スタッフ (最近活動していない…)
11. Preview 単体カメラによるARプラットフォームとしてリリース
しかし、Tangoのプロセスで実⾏される(つまりTangoそのものを弄ったもの)
Preview2 Tangoとは異なるプロセスで実⾏されるようになる。C APIリリース(NDK)
ARセッションを⼀時停⽌、再開させる機能
(例)電話かけた後にユーザーがARアプリに戻れる
v1.0.0 正式リリーズされる。Android Studio 3.1のエミュレータもサポート。
サポート端末追加
v1.1.0 パフォーマンスのチューニング。API追加。
v1.2.0 Cloud Anchors API、Argumented Images API追加
縦⽅向の検出が可能に
Sceneformが追加。
Session.isSupported()が廃⽌。
Release Note
v1.3.0 新しいAPI・仕様変更:
・FrameクラスにgetAndroidSensorPose()メソッドが追加
・CameraクラスにgetImageIntrinsics()メソッドが追加
・新しくCameraIntrinsicsクラスが追加
・SessionクラスにgetConfig()メソッドが追加
Copyright @Hirokazu Egashira a.k.a eegozilla. All right reserved.
12. v1.4.0 amera configuration APIが追加
・CameraConfigクラス
・SessionクラスにgetSupportedCameraConfigs()、setCameraConfig(…)、getCameraConfig()
新しいraycastメソッドが追加
・Frame.hitTest(float[] origin, int originOffset, float[] direction, int directionOffset)
camera auto focus modeが追加
・configクラスにsetFocusMode(FocusMode focusMode)
・getFocusMode()
Release Note
v1.5.0 新しいAPIの追加・仕様変更:
・PointCloud.getIds() : point cloud の各点に関連付けられた安定したIDを返却
v1.6.0 License and terms of service changes
あとは主にチューニングとバグフィックス
Copyright @Hirokazu Egashira a.k.a eegozilla. All right reserved.
13. v1.7.0 新しいAPI・仕様変更:
・Camera.getTrackingFailureReason() :ステートがPAUSEDの場合、ARトラッキングの失敗の理由を返却。
・Frame.transformCoordinates2d(…) :2D座標のリストを1つの2D座標系から別の2D座標系に変換。
・Session constructors Session(Context, Set<Session.Feature>) (Java) enables new capabilities, starting with:
・Front-facing CameraとAugmented Faces
・セッションを⽣成するときにFRONT_CAMERAの機能をリクエストすることで、前⾯カメラ(⾃撮り)
でAugmented Facesを有効にできるように。
・CameraConfig.getFacingDirection() :前⾯カメラを使⽤しているかどうかをアプリに確認
・注): フロントカメラを利⽤する場合、モーショントラッキング、すべてのタイプのアンカー、 Augmented
Images 、平⾯検知は使えません。
・Config.setAugmentedFaceMode(…) :アプリでAugmented Facesを有効にする。
・Trackable AugmentedFaceクラス:顔を検出し、領域のポーズを決定し、3D face meshを⽣成。
・AugmentedFaceクラスのメソッド:3D face meshの中⼼ポーズ、領域ポーズ、頂点、法線、および三
⾓形のインデックスを要求するgetterを提供。
Release Note
Copyright @Hirokazu Egashira a.k.a eegozilla. All right reserved.
14. v1.7.0 ・Shared Camera access
・カメラのみ(AR以外)とARCoreモード間の⾼速切り替えを可能にするため、アプリはセッションの作
成時にSHARED_CAMERAの機能をリクエストすることで、カメラ制御をARCoreと共有できる。
・shared_camera_java exampleはカメラアクセスをARCoreと共有する⽅法を⽰すサンプル。
・SharedCameraクラス:アプリがARCoreとCamera2 APIアクセスを共有できるクラス。
注) Frame.getImageMetadata() は 共有カメラセッションの使⽤時にIllegalStateException を投げ
る。代わりに、SharedCamera.setCaptureCallback(…)を使って直接カメラのコールバックをサブス
クライブして、Frame.getAndroidCameraTimestamp()を使⽤してフレームをメタデータに関連付ける。
・Session.getSharedCamera():セッションの共有カメラオブジェクトを取得。
・Frame.getAndroidCameraTimestamp() :画像のAndroidカメラのタイムスタンプを返却。
・JavaSDKのみの追加:
・Session.close(): ARCoreセッションが保持しているリソースを明⽰的に解放して、リソース制御を改善。
・PointCloud:Closeableを実装し、Java try-with-resourcesおよびKotlinの useブロックで使⽤できるよう
に変更。
Release Note
Copyright @Hirokazu Egashira a.k.a eegozilla. All right reserved.
15. v1.8.0 主にチューニングとバグフィックス
v1.9.0 前⾯(selfie)カメラを使⽤するように設定されたセッションを使う場合、getSupportedCameraConfigs()
は1つ以上のサポートされているカメラ設定を返却。
SDK 1.7.0か1.8.0を使⽤してビルドされたアプリだと、前⾯カメラを使⽤すると、3つの同⼀のカメラ設定が返却
されていた。
getMeshTriangleIndices(…) は、CharBufferではなくShortBufferを返却するように変更。カメラフレーム
を離れても、拡張画像が追跡されるようになりました。
新しいAPI・仕様変更:
・移動する拡張画像を追跡できるように(以前は、画像は動かないと想定されており、それらのポーズはま
れにしか更新されない)。
・カメラからは画像が離れて⾒えても、永続的に画像を追跡できるようになる。
AugmentedImage#getTrackingMethod() を使って、 AugmentedImage#getTrackingMethod()画
像が現在カメラによって追跡されているかどうかを判断(FULL_TRACKING)、または最後の既知のポース
に基づいて追跡(LAST_KNOWN_POSE).
・ <model-viewer> Webコンポーネントを使⽤して、ほとんどのAndroidブラウザーからARで3Dモデルを
表⽰するために使⽤できるScene Viewerの機能を追加。
Release Note
Copyright @Hirokazu Egashira a.k.a eegozilla. All right reserved.
16. v1.10.0 新しいAPI・仕様変更:
・光源推定のAPIにEnvironmental HDRモードが追加
・Environmental HDR: 背⾯カメラを使⽤時に現実世界の照明を複製する3つのAPIを提供
・ Main Directional Light:正しい⽅向に影を落とすのをサポート
・ Ambient Spherical Harmonics:すべての⽅向からの周囲照明のモデリングをサポート
・ HDR Cubemap:鏡⾯ハイライトと反射を提供
・ ArImage_* :Android NDKを介さずにCPU画像データにアクセス
ARCoreがGoogle Play 開発者サービス(AR)に名称変更。
新しいカメラ設定ですべてのARCoreサポート端末に対して60⇒30fpsをターゲットに。
すべてのサンプルアプリで、デバイスがテーブルやポケットやバッグに置かれたときなど、追跡が失われたとき
にデバイスがスリープできるようになる。
v1.11.0
新しいAPI・仕様変更:
Target FPSとDepthセンサの使⽤に基づきカメラ設定をフィルタリングする機能。
・CameraConfigFilterクラス:アプリが Target FPSと(もしくは)Depthカメラの使⽤に
基づいてCameraConfigのリストをフィルタリングする。
・Session.getSupportedCameraConfigs(CameraConfigFilter):提供されたフィルタ設定に基づ
いてサポートされているカメラ設定のリストを返却する。
廃⽌:
・Session.getSupportedCameraConfigs() が廃⽌。
・代わりにgetSupportedCameraConfigs(CameraConfigFilter)
Release Note
Copyright @Hirokazu Egashira a.k.a eegozilla. All right reserved.
17. v1.12.0 hostCloudAnchor()によってキャプチャされたデータはARCore Cloud Anchor APIサービスにアップロード。
resolveCloudAnchor()は、ARCore Cloud Anchor APIサービスに到達できない場合、またはアンカーをす
ぐに解決できない場合にタイムアウトまたは失敗しなくなる。
代わりに、提供されたアンカーが切り離されるまで、APIは引き続きアンカーの解決を試みる。
新しいAPI・仕様変更:
CloudAnchorStateに新しいenum値にERROR_HOSTING_SERVICE_UNAVAILABLE
Cloud Anchorのサービスに到達できない場合にホスティングプロセス中に設定される。
廃⽌:
CloudAnchorStateのenum、ERROR_RESOLVING_LOCALIZATION_NO_MATCHと
ERROR_SERVICE_UNAVAILABLE
v1.13.0
チューニングとバグフィックスなど
v1.14.0
新しいAPI・仕様変更:
・TrackingFailureReason enumに CAMERA_UNAVAILABLE が追加:
デバイス上の別のアプリでカメラが⼀時的に失われたこと表す。アプリの優先度が回復すると、
追跡が再開される。
Release Note
Copyright @Hirokazu Egashira a.k.a eegozilla. All right reserved.
21. Call for collaborators (Already closed)
https://developers.google.com/ar/develop/call-for-collaborators#cloud-anchors
Copyright @Hirokazu Egashira a.k.a eegozilla. All right reserved.