Android Vision FaceDetector
APIを使用して、動画ファイル(ユーザーギャラリーのMP4など)で顔検出/追跡を行いたいとします。 CameraSourceクラスを使用して、カメラから直接送信されるストリーム(たとえばon the android-vision github)に顔のトラッキングを実行することについての多くの例を見ることができますが、ビデオファイルには何も表示されません。Androidの顔検出API - 保存された動画ファイル
CameraSource
のソースコードをAndroid Studioから見てみましたが、難読化されていて、元のオンラインを見ることができませんでした。私はイメージを使用して、カメラとファイルを使用する間に多くの共通点があります。おそらく私はSurface
でビデオファイルを再生し、それをパイプラインに渡すだけです。
また、Frame.Builder
は、機能がsetImageData
およびsetTimestampMillis
であることがわかります。動画の中でByteBuffer
と読むことができたら、それをどのようにFaceDetector
APIに渡すのですか?私はthis questionは似ていますが、答えはないと思います。同様に、ビデオをBitmap
フレームにデコードし、それをsetBitmap
に渡します。
理想的には、ビデオを画面にレンダリングしたくないので、処理は、APIが可能な限り速く行わなければなりません。
オープンソース版のCameraSourceここ:https://github.com/googlesamples/android-vision/blob/master/visionSamples/barcode-reader/app/src/main/java/com/google/android/gms/samples/vision/barcodereader/ui/カメラ/ CameraSource.java – pm0733464
あなたの問題を解決しましたか?同じですか? –