Step One: Open Image
Open any image that you want to use in Photoshop. Make sure that it is in RGB mode by clicking "Image", choosing "Mode", and ticking "RGB". Crop the photo if necessary.
The photo we'll be using as an example is by emsago at sxc.hu
Click to enlarge
Step Two: Make a Shape
This method will work with absolutely any custom shape you feel like using on your photographs. We're just using a heart that's part of Photoshop's default selection.
Make sure that the shape you draw is a shape - NOT a selection. Center it over the area of the photo you want "cut out". Do NOT rasterize the shape at this point.
Step Three: Drag the Vector Mask
Your shape layer, since it's not rasterized, has two boxes showing on it. One of the boxes is mostly gray, with the shape you've drawn in white. This gray box is called a vector mask.
We want to use the vector mask on our photo; masks are non-destructive forms of editing. They don't destroy the original photo, they just hide parts of it.
To move the vector mask, you'll need to click on the gray box to select it. Then, drag the gray box (not the whole layer) on to your photo's layer. This applies the vector mask to your photo. Reference the illustration below to see how the layers should look before and after.
Step Four: Delete
Click once on the "Shape 1" layer (which is now nothing more than a layer filled with white, which we don't need) to select it. Then, right-click the layer and choose "Delete Layer". This gets the extra layer out of the way now that we're done with it.
Step Five: Rasterize Vector Mask
The second you deleted the "Shape 1" layer, you should have seen your photo finished ... or nearly so. We need to make the lines of our shape - the vector mask - smooth by rasterizing it.
First, click the vector mask to select it just as you did in step 3. Right-click the mask and choose "Rasterize Vector Mask". Beautiful!
Click to enlarge