ビットマップが入力として与えられ、顔が検出されるアプリに Android ネイティブの顔検出を使用しています。大きな面を持つビットマップに適しています。小さい顔のビットマップでは機能しません。
10 個の顔を含むピクチャ ビットマップを試してみましたが、検出されたのは 3 個だけです。
detectedFaces=new FaceDetector.Face[NUMBER_OF_FACES];
faceDetector=new FaceDetector(resultBmp.getWidth(),resultBmp.getHeight(),NUMBER_OF_FACES);
NUMBER_OF_FACE_DETECTED=faceDetector.findFaces(resultBmp, detectedFaces);
for(int count=0;count<NUMBER_OF_FACE_DETECTED;count++)
{
if(count==0){
face1=detectedFaces[count];
midPoint1=new PointF();
face1.getMidPoint(midPoint1);
eyeDistance=face1.eyesDistance();
left1 = midPoint1.x - (float)(1.8 * eyeDistance);
right1 = midPoint1.x + (float)(1.4 * eyeDistance);
top1 = midPoint1.y - (float)(1.4 * eyeDistance);
bottom1 = midPoint1.y + (float)(1.8 * eyeDistance);
Bitmap bmface = Bitmap.createBitmap(resultBmp, (int) left1+5, (int) top1+5, (int) (2.8 * eyeDistance)+5, (int) (3.6 * eyeDistance)+5);
}
if(count==1)
{
----
}
-------------and so-on till count==10---------
}
今、私に何か提案してください。顔検出は小さな顔でも機能するはずです。私が使った写真は
前もって感謝します