Pregunta

Estoy experimentando con Android Facedetector. Necesito usar un archivo de mapa de bits (FaceS.BMP es de una foto de grupo) ya que no he encontrado una manera de usar la cámara Android en el emulador de Android. Pero BitMapFactory.DecodeFile devuelve NULL y la documentación solo dice que devuelve nulo si el mapa de bits no puede decodificarse. Es solo un archivo .bmp de 24 bits. Estoy usando Eclipse en Windows 7. ¿Especificé PathName incorrectamente? ¿Necesito usar algo más que un archivo .bmp de 24 bits?

public class MyFaces extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        final int width = 600;
        final int height = 600;
        final int maxFaces = 8;
        FaceDetector faceDetector = new FaceDetector(width, height, maxFaces);
        String pathName = "../res/drawable-hdpi/faces.bmp";
        try {
         Bitmap bitmap = BitmapFactory.decodeFile(pathName);
         Face faces[] = new Face[maxFaces];
            int nFaces = faceDetector.findFaces(bitmap, faces);
            Log.d(this.getClass().toString(), "Faces: " + nFaces);
  } catch (Exception e) {
   Log.e(this.getClass().toString(), e.getMessage(), e);
  }
    }
}
¿Fue útil?

Solución

Si solo está probando, entonces en lugar de Bitmap bitmap = BitmapFactory.decodeFile(pathName); Podrías usar:

Bitmap bitmap = BitmapFactory.decodeResource(R.drawable.faces);
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top