我正在試圖製作相機應用,使用谷歌移動視覺檢測臉部使用自定義相機實例的Api Api Array中的「CameraSource」不同於我製作的幀處理以檢測顏色,並與相機源我不允許獲取相機幀。 我搜索它後,我得到的所有結果都是關於使用CameraSource的移動視覺而不是任何定製的camera1 Api。 我試圖讓那麼幀處理檢測喜歡這裏如何使用Android移動視覺庫處理單個相機框架
camera.setPreviewCallback(new Camera.PreviewCallback() {
@Override
public void onPreviewFrame(byte[] data, Camera camera) {
Log.d("onPreviewFrame", "" + data.length);
Camera.Parameters parameters = camera.getParameters();
int width = parameters.getPreviewSize().width;
int height = parameters.getPreviewSize().height;
ByteArrayOutputStream outstr = new ByteArrayOutputStream();
Rect rect = new Rect(0, 0, width, height);
YuvImage yuvimage = new YuvImage(data, ImageFormat.NV21, width, height, null);
yuvimage.compressToJpeg(rect, 20, outstr);
Bitmap bmp = BitmapFactory.decodeByteArray(outstr.toByteArray(), 0, outstr.size());
detector = new FaceDetector.Builder(getApplicationContext())
.setTrackingEnabled(true)
.setClassificationType(FaceDetector.ALL_LANDMARKS)
.setMode(FaceDetector.FAST_MODE)
.build();
detector.setProcessor(
new MultiProcessor.Builder<>(new GraphicFaceTrackerFactory())
.build());
if (detector.isOperational()) {
frame = new Frame.Builder().setBitmap(bmp).build();
mFaces = detector.detect(frame);
// detector.release();
}
}
});
輸出圖片所以是沒有辦法,我可以用我的相機實例鏈接移動願景幀處理的麻袋來檢測它的臉什麼辦法? 你可以看到我在這裏迄今所做: https://github.com/etman55/FaceDetectionSampleApp
**新的更新
找到了CameraSource類的開源文件我解決我的大部分問題,但現在經過努力到人臉時,探測器正確地接收幀,但它無法檢測到任何東西>>你可以看到我在github回購中的最後一次提交。
我覺得這很難支持視覺API的API級別21的Android視覺API的 檢查先決條件是SDK 26級以上,並且 攝像機1從API棄用21級 https://github.com/googlesamples/android-vision https://developer.android.com/reference/android/hardware/Camera.html –
其實android視覺是使用自己的camera1 Api類,它是與proguard鎖定,因此很難判斷出'爲什麼我要讓我的自定義camera1類 –