Julius is right that this is essentially a duplicate question. However, to eliminate one problem - do you want the user to be able to see the overlay when taking a picture? (i.e. if your application makes different hats appear on people's heads, do you want to show a hat floating in space when they take a photo?). If you want to know more about this, you will need to use the cameraOverlayView property for imagePickerController, which allows you to overlay your own views on the camera. There are questions on this topic already on SO, like this one: How to add overlay viewing to the camera and save it
re: - LilMoke, , , , (4: 3) iPhone (3: 4). cameraViewTransform UIImagePickerController. , raywenderlich.com:
#define CAMERA_TRANSFORM 1.24299
overlay = [[UIView alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
overlay.backgroundColor=[UIColor clearColor];
overlay.opaque = NO;
UIImagePickerController *imagePicker;
imagePicker = [[[UIImagePickerController alloc] init] autorelease];
imagePicker.sourceType = UIImagePickerControllerSourceTypeCamera;
imagePicker.showsCameraControls = YES;
imagePicker.toolbarHidden = YES;
imagePicker.navigationBarHidden = YES;
imagePicker.wantsFullScreenLayout = YES;
imagePicker.cameraViewTransform = CGAffineTransformScale(imagePicker.cameraViewTransform,
CAMERA_TRANSFORM, CAMERA_TRANSFORM);
imagePicker.cameraOverlayView = overlay;
, , , . , CameraViewTransform, .