Firebase ML Kit如何在后台作为服务运行人脸检测?

时间:2018-12-08 12:53:00

标签: android firebase face-detection firebase-mlkit

在我使用Google gms vision进行面部检测之前,在我的应用中。我已经使用https://developers.google.com/android/reference/com/google/android/gms/vision/CameraSource.Builder在后台服务类中创建了camerasource。

但是在Firebase ML Kit中,没有为camerasource生成器和预览添加通用包。是否可以在Background服务类中使用CameraSourcePreview和CameraSource Builder。

通过在窗口管理器中的如下服务类中添加CameraSourcePreview布局,我感到很累。但是没有运气,它没有像我所排除的那样运行。每当我的服务启动时都需要检测人脸,而看不到预览布局。在应用程序背景和前景中,我还需要检测面部特征。

以下我用于在服务级别显示camerapreview的代码

LayoutInflater  inflater = (LayoutInflater) getSystemService(LAYOUT_INFLATER_SERVICE);
    WindowManager wm = (WindowManager) getSystemService(WINDOW_SERVICE);

    View mView = inflater.inflate(R.layout.child_camerapreview, null);

    wm.addView(mView, params);

Xml布局:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="@android:color/transparent"
>
<RelativeLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:keepScreenOn="true"
    >
    <co.demo.facekit.common.CameraSourcePreview
        android:id="@+id/childbgCameraPreview"
        android:layout_width="match_parent"
        android:layout_height="240dp"
        android:layout_alignParentStart="true"
        android:layout_alignParentTop="true">

        <co.demo.facekit.common.GraphicOverlay
            android:id="@+id/childbgFaceOverlay"
            android:layout_width="0dp"
            android:layout_height="0dp"
            android:layout_alignParentStart="true"
            android:layout_alignParentTop="true"
            android:layout_alignParentBottom="true"/>
    </co.demo.facekit.common.CameraSourcePreview>

</RelativeLayout>

<ImageView
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="#00000000"
    />

0 个答案:

没有答案