1. A non-transitory computer readable storage medium including instructions stored thereon which, when executed by a processor, cause the processor to perform the steps of: obtaining a first image of a user from a mobile computing device; obtaining a second image of at least one portion of an object; identifying a dimension of at least one portion of the user in the first image; generating a transformation based on at least one of a rotation, a scaling, or a translation to be applied to the second image based at least in part upon the dimension of the at least one portion of the user, the at least one of the rotation, the scaling, or the translation calculated at least in part by: determining an intersection point of diagonals of a shape formed by the one or more dimensions; determining an axis of the at least one portion of the user through the intersection point of the diagonals with an orientation perpendicular to an average orientation of the one or more dimensions; and determining a segment of the axis located between the one or more dimensions as the rotation, the scaling, or the translation; generating a third image based on the first image and the transformation of the second image, the third image including the at least one portion of the object applied to the at least one portion of the user; and providing the third image for display on the mobile computing device.