4

FaceDetectorAndroid Vision APIを使用して、ビデオ ファイル (ユーザー ギャラリーの MP4 など) で顔検出/追跡を実行したいと考えています。CameraSourceクラスを使用して、カメラから直接来るストリーム (たとえばandroid-vision github ) で顔追跡を実行する例はたくさんありますが、ビデオ ファイルでは何も見られません。

CameraSourceAndroid Studio 経由でソースコードを見てみましたが、難読化されていて、元のオンラインを見ることができませんでした。カメラの使用とファイルの使用には多くの共通点があると思います。おそらく、ビデオ ファイルを で再生し、Surfaceそれをパイプラインに渡します。

Frame.Builderあるいは、関数setImageDataとがあることがわかりますsetTimestampMillis。ビデオを として読み取ることができた場合、それをAPIByteBufferに渡すにはどうすればよいですか? この質問は似ているFaceDetectorと思いますが、答えはありません。同様に、ビデオをフレームにデコードし、それを に渡します。BitmapsetBitmap

理想的には、ビデオを画面にレンダリングしたくないので、FaceDetectorAPI が可能な限り高速に処理を行う必要があります。

4

2 に答える 2

2

あるいは、Frame.Builder に関数 setImageData と setTimestampMillis があることがわかります。ビデオを ByteBuffer として読み取ることができた場合、それを FaceDetector API に渡すにはどうすればよいでしょうか?

次のように作成する必要がSparseArray<Face> faces = detector.detect(frame);ある場所を呼び出すだけです。detector

FaceDetector detector = new FaceDetector.Builder(context)
   .setProminentFaceOnly(true)
   .build();
于 2016-08-18T13:56:06.677 に答える