画像クラウド認識の概要
このガイドでは、EasyAR CRS(Cloud Recognition Service)のクラウド認識機能の基本原理、期待される結果、そして平面画像トラッキングとの違いを紹介し、開発者がクラウド側の認識に適した利用シナリオと制約を理解できるようにします。
基本原理
クラウド認識(Cloud Recognition) は、認識処理をクラウドへ移す方式で、ターゲットライブラリが大きい場合や動的更新が必要なシナリオに適しています。その主な流れは次のとおりです。
ライブラリ管理
- ライブラリの作成:CRS コンソールにターゲット画像をアップロードします。システムはターゲット画像の視覚特徴を自動で計算し、Target としてバックエンドのデータベースに追加します。
- CRUD:CRS コンソールでは、ターゲットライブラリの追加、削除、変更、検索などを行えます。操作後は、アプリを更新せずにクライアント側でそのまま利用できます。
重要
クラウド認識に使うターゲット画像の品質要件は、平面画像トラッキングの場合とまったく同じです。詳しくは ターゲット画像のベストプラクティス を参照してください。
認識フロー
- 画像のアップロード:クライアントがカメラで現在のフレームを取得し、画像データを EasyAR CRS サービスに送信します。
- クラウドでの照合:サーバーはクラウド上のターゲットライブラリを高速に検索し、事前に保存された Target データ(つまり開発者がアップロードしたターゲット画像)と照合します。
- 結果の返却:照合に成功すると、クラウドは認識結果(ターゲット ID、ターゲット画像など)をクライアントへ返し、クライアントはそれを使って仮想コンテンツを表示したり、画像を使って後続のトラッキングを続けたりします。
平面画像トラッキングとの違い
| 特性 | 平面画像トラッキング(ローカル) | クラウド認識 |
|---|---|---|
| 認識計算 | デバイス上で実行 | クラウドサーバーで実行 |
| ターゲットライブラリの規模 | メモリ制約と読み込み時間の兼ね合いがあり、通常は 100 枚を超えないことを推奨 | 1 ライブラリあたり最大 10 万枚、さらに億規模まで拡張可能 |
| ターゲット更新 | アプリを再パッケージして再配布する必要がある | リアルタイムにアップロードされ、即時反映される |
| ネットワーク依存 | ネットワーク不要(オフライン可) | ネットワーク必須(認識リクエストに通信が必要) |
| 機能の重点 | 認識して継続的にトラッキングする(6DoF pose を出力) | 単発の認識(ターゲット照合) |
重要な説明:
- 認識(Recognition): “これは何のターゲットか” という照合のみを行い、継続的なトラッキングは提供しません。トラッキングが必要な場合は、ローカルの平面画像トラッキング機能と組み合わせてください。
- 適用シナリオ:ターゲット数が多い場合(商品カタログ、児童書など)、頻繁に更新する場合(イベントポスターなど)、または機能要件が単純な場合(認識だけでトラッキング不要など)。
サービスの利用と管理
EasyAR CRS は、個人開発から企業向けアプリケーションまで対応できる、柔軟で安全なクラウドターゲット管理を提供します。
ライブラリの分離と安全性
- 複数ライブラリのサポート:複数の独立した CRS ライブラリを作成でき、それぞれは完全に分離され、ターゲット同士が競合しません。例:
- ライブラリ A:マーケティング用途で、製品ポスターを保存。
- ライブラリ B:教育用途で、教材の図版を保存。
- セキュリティ機構:各ライブラリは一意の API Key と Secret でアクセスし、データの安全性を確保します。
同時処理モードの選択
アプリの規模やスキャン量の要件に応じて、CRS には 2 つの同時処理モードがあります。
| モード | 適用シナリオ | 特徴 | 有効化方法 |
|---|---|---|---|
| 基本同時処理量 | AR アプリの QPS < 50、一般的なスキャン量 | 自己申請で有効化、安定かつ信頼性が高い | CRS コンソールでオンライン申請 |
| 高同時処理量 | AR アプリの QPS ≥ 50、大量スキャン | 専用リソース保証、低レイテンシ | EasyAR 技術サポート に連絡して評価後に有効化 |
ヒント
スタートアップ案件やテスト段階では基本モードを選べます。リリース後は実際のトラフィック(たとえば QPS の認識リクエスト数)をもとにアップグレードを判断してください。
ライブラリ管理と API
- ライブラリ管理:作成、削除、ターゲットのアップロードなどの日常操作は ライブラリ管理 を参照してください。詳細な手順とスクリーンショットがあります。
- CRS API:豊富な REST API を提供し、次のシナリオをサポートします。
- ヘルスチェック:API でサービス状態を確認する。
- 自動化:ターゲットの一括アップロード、削除、変更、検索。
- 便利なツール:ターゲットの認識しやすさスコアや類似性衝突のチェック。
注記
CRS は SDK、WeChat ミニプログラム、Web などを通じて統合できます。SDK 統合は EasyAR Sense v2.0.0 以降のみ対応しています。
期待される結果
クラウド認識の実際の挙動を理解すると、プロジェクト目標を適切に設定できます。以下は典型的なシナリオでの効果です。
理想的な結果
- 高速認識:撮影から結果返却までの遅延が 1 秒未満(ネットワークが良好な場合)。
- 高精度:ターゲット画像が鮮明でネットワークが安定している場合、精度は 98% を超えます。
- 大規模ターゲットライブラリ対応:1 ライブラリで最大 10 万枚のターゲット画像を管理できます。
- リアルタイム更新:新しいターゲットをアップロードした後、クライアントは更新なしで認識できます(接続のみ必要)。
理想的でない場合と対策
| 現象 | 原因 | ユーザーの見え方 | 解決策 |
|---|---|---|---|
| 認識遅延が高い | ネットワーク不良、画像アップロードが遅い | 結果が出るまで数秒待つ必要がある | アプリ側で適切な案内を表示する |
| 認識失敗 | 画像がぼやけている、ターゲットがクラウドに未登録 | 仮想コンテンツが表示されない | CRS ライブラリの状態を確認し、ユーザーにデバイスを安定させるよう案内する |
| ターゲット衝突 | ライブラリ内に似た画像が多すぎる | 誤ったターゲットが認識される | ターゲット画像の差異を増やすよう最適化するか、似た画像を別ライブラリで管理する |
期待結果の検証方法
- 開発段階:EasyAR CRS コンソールにテストターゲットをアップロードし、まず HelloARCRS サンプルで認識フローを確認してアプリのロジックに慣れてから、自分のアプリに統合します。
- テスト段階:弱いネットワーク環境、ターゲット画像の動的更新、クラウドライブラリ容量の増加など、さまざまな条件で認識成功率をテストします。
ベストプラクティス
クラウド認識はクラウド計算によってターゲットライブラリの容量と動的更新能力を拡張しますが、オフライン能力とリアルタイムトラッキングを犠牲にします。開発者は、ターゲット数、更新頻度、ネットワーク環境などの要件に応じて、ローカル追跡かクラウド認識かを選択してください。小規模で静的なシナリオにはローカル追跡、大規模で動的なシナリオにはクラウド認識が適しています。
CRS を使う際は、次のような開発フローを推奨します。
- テスト段階:基本同時処理モードを使い、少数のターゲットをアップロードしてフローを検証する。
- 公開前:想定同時処理量を見積もり、事前に技術サポートへ連絡して高同時処理モードへアップグレードする(1〜2 営業日必要)。
- 運用段階:API を定期的に使ってライブラリの健全性を監視し、サービスの安定性を確保する。
重要
季節的なトラフィック急増への警告:祝日、大規模イベント、マーケティング施策の期間に一時的な同時処理量の急増が予想される場合は、認識サービスの利用制限を避けるため、少なくとも 3 営業日前までに EasyAR 技術サポートへ連絡してサービスのアップグレードを申請してください。
また、アプリケーションで大規模なライブラリが必要で、かつターゲット画像のトラッキングも必要な場合は、クラウド認識と平面画像トラッキングを組み合わせて使えます。詳細は 平面画像トラッキングと組み合わせる を参照してください。