Android: ¿cómo comprimir o reducir el tamaño de una imagen?

ImageButton avatarButton = (ImageButton) findViewById(R.id.ImageButton_Avatar);
avatarButton.setImageResource(R.drawable.avatar);
strAvatarFilename =  "Image.jpg"; 
final Uri imageUriToSaveCameraImageTo = Uri.fromFile(new File(Environment.getExternalStorageDirectory()+"/Folder/"+strAvatarFilename));
avatarButton.setOnClickListener(new View.OnClickListener() {
    public void onClick(View v) {
        Intent pictureIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        pictureIntent.putExtra( MediaStore.EXTRA_OUTPUT, imageUriToSaveCameraImageTo );
        startActivityForResult(Intent.createChooser(pictureIntent, strAvatarPrompt), TAKE_AVATAR_CAMERA_REQUEST);
        Editor editor = Preferences.edit();
        editor.putString(PREFERENCES_AVATAR, imageUriToSaveCameraImageTo.getPath());
        editor.commit();
    }
});

Tengo este codigo Toma una foto y luego la almacena en dos ubicaciones, la ubicación predeterminada en la tarjeta SD y el archivo / carpeta / archivo en el que quiero que también se almacene la foto. Una vez tomada, actualizo la pantalla usando esto ...

ImageButton avatarButton = (ImageButton) findViewById(R.id.ImageButton_Avatar);
String strAvatarUri = Preferences.getString(PREFERENCES_AVATAR, "");
Uri imageUri = Uri.parse(strAvatarUri);
avatarButton.setImageURI(null);
avatarButton.setImageURI(imageUri);

Esto actualiza el botón de imagen para que el usuario pueda ver la imagen que ha tomado. Sin embargo, esto parece muy grande y llena la pantalla. ¿Hay alguna forma de comprimir o reducir el tamaño de la imagen para que el usuario pueda verla a un tamaño razonable? Gracias

Respuestas a la pregunta(3)

Su respuesta a la pregunta