gpt4 book ai didi

Android:FaceDetector 不工作。 findface 始终检测零面;

转载 作者:太空宇宙 更新时间:2023-11-03 12:10:15 25 4
gpt4 key购买 nike

我在 Android 中使用 android.media.FaceDetector 进行人脸检测时遇到问题我尝试使用此代码检测人脸:

BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.RGB_565;
Bitmap b = BitmapFactory.decodeFile(Environment.getExternalStorageDirectory()+"/myimage.jpg", options);
FaceDetector fd = new FaceDetector(b.getWidth(), b.getHeight(), 1);
Face[] face = new Face[1];
int detected_face = fd.findFaces(b, face);

detected_face始终为0;

我尝试使用不同的图像,但收到了相同的结果。有人可以向我解释我的代码有什么问题吗?

问候

最佳答案

下面的代码适用于我,我记得照片上的脸必须是直立的,这意味着如果在图片中一个人头朝下,那么你必须将位图旋转 180 度才能将它提供给FaceDetector,否则他的脸将不会被检测到)

private void detectFaces() {
int max = 5;
BitmapFactory.Options bfo = new BitmapFactory.Options();
bfo.inPreferredConfig = Bitmap.Config.RGB_565;
bfo.inScaled = false;
bfo.inDither = false;
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.myphoto, bfo);
int w = bitmap.getWidth();
int h = bitmap.getHeight();
FaceDetector fd = new FaceDetector(w, h, max);
Face[] faces = new Face[max];
int c = fd.findFaces(bitmap, faces);
for (int i=0;i<c;i++) {
Log.d("TAG", Float.toString(faces[i].eyesDistance()));
}
}

关于Android:FaceDetector 不工作。 findface 始终检测零面;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13402499/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com