【发布时间】:2023-03-11 03:18:01
【问题描述】:
我正在使用 ML 人脸检测器:https://developers.google.com/ml-kit/vision/face-detection/android#kotlin_2
然后我从 Camera2 拍摄图像并进行处理。但我经常遇到错误“FaceDetector 没有通过 FaceDetector.release() 发布”
更多细节:
W/FaceDetector: FaceDetector was not released with FaceDetector.release()
E/BufferQueueProducer: [ImageReader-960x1280f23m2-7166-0](id:1bfe00000000,api:4,p:386,c:7166) dequeueBuffer: BufferQueue has been abandoned
我已经按照本教程获得了 camera2:https://medium.com/@tylerwalker/integrating-camera2-api-on-android-feat-kotlin-4a4e65dc593f
这是我尝试为 ML 编写的代码:
val realTimeOps = FaceDetectorOptions.Builder()
.setContourMode(FaceDetectorOptions.CONTOUR_MODE_ALL)
.build()
val detector = FaceDetection.getClient(realTimeOps)
imageReader.setOnImageAvailableListener({
imageReader.acquireLatestImage()?.let { image ->
val mlImage = InputImage.fromMediaImage(image, 0) // TODO change image for calculation
val result = detector.process(mlImage)
.addOnSuccessListener {faces ->
Log.d("photo", "Face found!")
}
.addOnFailureListener { e ->
Log.d("photo", "Error: $e")
}
image.close()
}
}, Handler { true })
而且,我的“检测器”val 没有功能释放 :'(
我希望有人可以帮助我:)
【问题讨论】:
-
使用标签前请阅读标签说明
-
抱歉,这是我第一次发帖,下次会注意的