技術開発事例

RK3588スマートグラス向けオフライン顔検出とAndroid SDK納品事例

Winge Technology は RK3588 Android スマートグラス向けに、端末内で動作する正面・左側面・右側面の顔検出処理を実装し、Core AAR、Face AAR、Camera2 Demo、統合資料と短時間の実機回帰結果を納品しました。

RK3588スマートグラス向けオフライン顔検出とAndroid SDK納品事例

事例概要

本プロジェクトは RK3588 Android スマートグラスを対象とし、クラウド認識サービスに依存せず、端末内で正面、左側面、右側面の顔を検出します。SDK は Camera2 のリアルタイムフレームまたはローカル画像を受け取り、顔矩形、5点ランドマーク、向き、yaw、信頼度、短時間追跡 ID、処理時間を返します。納品物は Core AAR、Face AAR、Camera2 Demo、統合資料です。

本事例の範囲は顔検出と姿勢方向推定であり、本人識別ではありません。氏名・社員番号、人顔データベース、1:1照合、1:N検索、なりすまし検知、年齢・性別・感情分析は含みません。

プロジェクト背景

対象は arm64-v8a の RK3588 Android スマートグラスです。カメラプレビュー内の人物位置を取得し、タップ選択、部分拡大、後続の業務操作に利用する必要がありました。処理は端末側でオフライン実行し、既存 Android アプリへ統合できることが条件でした。

入力は Camera2 YUV_420_888NV21RGBA_8888、ローカル静止画です。カメラフレームレートと推論投入頻度の差、画像バッファの寿命、回転・ミラー、YUV stride、モデル座標からプレビュー座標への変換も実装対象です。

納品範囲

項目内容
Android SDKCore AAR と Face AAR
DemoCamera2 リアルタイム顔検出 Demo APK
API同期検出と非同期検出
入力YUV_420_888NV21RGBA_8888、ローカル画像
出力顔矩形、信頼度、5点ランドマーク、正面/左/右、yaw、trackId、1回の処理時間
資料統合ガイド、サンプルコード、障害切り分け、リリースノート、SHA-256一覧
実行方式RK3588 Android 端末内のオフライン処理

技術構成

処理経路は、Camera2 または静止画 → 画像形式・方向処理 → OpenCV YuNet 検出 → 5点ランドマークの幾何解析 → 正面/左側面/右側面判定 → 短時間追跡 → 結果コールバックと画面重畳です。

納品ベースラインは OpenCV 4.10.0 と YuNet CPU 検出器です。リアルタイム処理では入力を 320×320、静止画の標準検出では 640×640 にします。3方向は同じ検出器と SDK API を使用し、方向はランドマークの幾何関係から推定します。

Demo は100 msごとに1回、約10回/秒の検出要求を投入します。各 SDK インスタンスは未完了の非同期要求を1件だけ保持し、アプリ所有の DirectBuffer に Y/U/V を保存します。Camera2 は acquireLatestImage() で古いフレームを飛ばし、遅延の累積を抑えます。

主要問題と修正

一部の画像はデスクトップで検出できる一方、Android Demo では結果が0件になる事象がありました。モデル、入力、モバイル出力を比較し、OpenCV Java の結果行列の読み取りに原因を特定しました。

FaceDetectorYN.detect() は1チャンネルの N×15 行列を返します。元の Android コードは各行の15値を完全に取得しておらず、有効結果が長さ検査で破棄されていました。修正では列数とチャンネル数に基づき行全体を読み取り、回転、色変換、横長画像のクロップ回避、AAR整合性検査も追加しました。

回帰範囲は正面、側面、顔なし、静止画、Camera2 の経路まで拡張し、モデル、前処理、結果デコード、画面座標変換の問題を切り分けました。

技術検証

次のデータは 2026-07-29 の納品記録に基づき、Eye Algo Face SDK 0.4.5 fix5、RK3588 Android arm64-v8a に適用されます。指定ビルド、API、短時間経路の動作を示しますが、量産精度、長期安定性、量産性能を示すものではありません。

確認項目結果
SDK、Core、Face 単体テスト157/157 合格
独立 Demo 単体テスト13/13 合格
Python 顔ツールテスト143/143 合格
Android Lint0 Error、19 Warning
APK/AAR ビルド合格
RK3588 インストール、起動、権限合格
Camera2 10秒経路submit/callback 79/79、dropped 0
短時間エラースキャンクラッシュ、カメラ、権限、ネイティブライブラリエラーなし

技術サンプルには正面、左右対称の側面、顔なし負例を含みます。この小規模回帰は検出、方向出力、画面経路の確認用であり、Precision、Recall、F1、姿勢別精度の根拠には使用しません。

プロジェクト結果

  • 正面、左側面、右側面の検出を1つの Android SDK API に統合しました。
  • Camera2 フレームとローカル画像で共通の結果構造を使用します。
  • 端末内処理により、原動画のクラウド送信を減らせます。ネットワークがなくても顔位置と方向を取得できます。
  • 顔矩形と5点ランドマークを人物選択、短時間追跡、部分拡大、後段処理の入力に利用できます。
  • 実行可能 Demo、AAR、統合手順、障害切り分け、ハッシュ一覧を含みます。

適用場面

  • スマートグラス視野内の人物検出と対象矩形選択。
  • 複数人物画面でのタップ選択と部分拡大。
  • 端末側の正面・左側面・右側面方向表示。
  • オフラインアルバムまたは現場撮影画像の顔領域取得。
  • 後続の本人識別、なりすまし検知、行動分析用の顔切り出し。これら後続機能は今回の範囲外です。

受入範囲と制限

現在の成果物は顧客テスト・技術統合用で、製品署名版ではありません。本番前に顧客の署名材料を使用し、固定した実受入データでアノテーション規則、Precision、Recall、F1、姿勢別混同行列、許容しきい値を確認する必要があります。

極端な側面、遮蔽、強い反射、暗所、小さい顔、画面の再撮影では、未検出または方向誤判定が残る可能性があります。1枚の処理時間を平均値、P95、安定フレームレート、長時間性能へ外挿できません。未完了の8時間連続試験は合格扱いにしていません。

よくある質問

SDK はネットワーク接続が必要ですか。

検出処理は RK3588 Android 端末内で動作し、クラウド認識には依存しません。アプリの通信要否は顧客側の業務機能によります。

本人識別を含みますか。

含みません。顔位置、5点ランドマーク、正面/左/右方向のみで、氏名、顔データベース、1:1、1:N照合は提供しません。

既存 Android アプリへどう統合しますか。

Core AAR と Face AAR が同期・非同期 API を提供します。Camera2 Demo、入力形式、バッファ寿命、サンプルコード、障害切り分け資料を同梱します。

完了した RK3588 検証は何ですか。

インストール、起動、権限、静止画サンプル、Camera2 10秒経路を確認しました。正式精度、製品署名、8時間安定性は別の受入項目です。

別の RK3588 端末でそのまま使用できますか。

API と統合方法は再利用できますが、カメラ仕様、Android 版、向き、stride、メモリ、温度、負荷が異なるため、対象端末でビルド、機能、性能、安定性を再検証します。

関連サービス

類似プロジェクトの相談

対象端末、Android バージョン、カメラ入力、受入基準を送付いただければ、初期技術確認を行います。

Online
Phone
13910119357
WeChat
WhatsApp
Winge Technology WhatsApp QR code Scan or click to contact us
Top