fd = new FaceDetector(mFaceWidth, mFaceHeight, MAX_FACES);
count = fd.findFaces(mFaceBitmap, faces);
使用上面的代码,我得到了一些图像上的这个错误。
返回0个面,因为btk_facefinder_putdcr存在错误
有人能帮我吗?怎么摆脱这个?
同样的代码也适用于其他一些图像。
最佳答案
http://blog.csdn.net/devilkin64/article/details/8509767
传入的图片的宽度必须是偶数的
Bitmap srcImg = BitmapFactory.decodeFile(imgUrl);
Bitmap srcFace = srcImg.copy(Bitmap.Config.RGB_565, true);
srcImg = null;
int w = srcFace.getWidth();
int h = srcFace.getHeight();
if (w % 2 == 1) {
w++;
srcFace = Bitmap.createScaledBitmap(srcFace,
srcFace.getWidth()+1, srcFace.getHeight(), false);
}
if (h % 2 == 1) {
h++;
srcFace = Bitmap.createScaledBitmap(srcFace,
srcFace.getWidth(), srcFace.getHeight()+1, false);
}