Se ha hablado mucho, pero mucho de como hacer crop (recortar) una imagen en Android. Si uno busca en Google, probablemente lo que encuentre es muchos posts y discusiones sobre el uso de una actividad de recorte que “normalmente” traen los devices. Se debe destacar que a pesar de que dicha Actividad se encuentra en el mismísio código fuente de Android, al ser una Actividad interna, no nos asegura de que se encuentre disponible en cualquier dispositivo y más aún, Google y sus ingenieros no recomiendan utilizarla. En todo caso, si usted lo que desea hacer es recortar una imagen a nivel de código, tal vez este script le pueda servir:

    public static Bitmap cropBitmap(Bitmap original, int height, int width) {
        Bitmap croppedImage = Bitmap.createBitmap(width, height, Bitmap.Config.RGB_565);
        Canvas canvas = new Canvas(croppedImage);

        Rect srcRect = new Rect(0, 0, original.getWidth(), original.getHeight());
        Rect dstRect = new Rect(0, 0, width, height);

        int dx = (srcRect.width() - dstRect.width()) / 2;
        int dy = (srcRect.height() - dstRect.height()) / 2;

        // If the srcRect is too big, use the center part of it.
        srcRect.inset(Math.max(0, dx), Math.max(0, dy));

        // If the dstRect is too big, use the center part of it.
        dstRect.inset(Math.max(0, -dx), Math.max(0, -dy));

        // Draw the cropped bitmap in the center
        canvas.drawBitmap(original, srcRect, dstRect, null);

        original.recycle();

        return croppedImage;
    }

Éste código es tomado del source del proyecto Android y modificado para poder ejecutarse como una función. El código origjnal se puede encontrar aqui.