1. A method for swapping faces in images, comprising: receiving a detected face and face data corresponding to an input image; identifying a pose bin associated with the detected face based on the face data; aligning the detected face to a generic face associated with the pose bin; selecting a plurality of candidate faces associated with the pose bin; copying at least a portion of each of the plurality of candidate faces to a copy of the input image that is aligned with the genetic face to form a plurality of swapped-face images; comparing boundary pixels in each of the plurality of swapped-face images with boundary pixels in the detected face; selecting a swapped-face image from the plurality of swapped-face images based on the comparing; aligning the selected swapped-face image to the input image to form an output image; and outputting the output image to a display.