A system comprising: a computing device; a projector comprising a non-planar lens, the projector configured for projection onto a object; the computing device configured to: using an initial model of the non-planar lens that relates a position of projected points on the object to corresponding pixel points at an image modulator of the projector, determine at least one initial estimate of intrinsic parameters of the projector using the initial model by determining a set of discrete estimates of a plurality of the intrinsic parameters; determine at least one initial estimate of extrinsic parameters of the projector using the at least one initial estimate of the intrinsic parameters and a new set of correspondences between the projected points on the object and flattened pixel points, wherein a flattened pixel point is determined by, for each element of the set of discrete estimates of the plurality of intrinsic parameters, extrapolating a line between a given projected point and a corresponding pixel point at a theoretical curved image modulator that has a curvature determined from each of the elements of the set of discrete estimates of the plurality of the intrinsic parameters, to a flattened pixel point on a flat image modulator that shares a principal point with the theoretical curved image modulator; iteratively evaluate an error function that includes a comparison between the pixel points and a transformation of the projected points to the pixel points, an initial transformation determined using the at least one initial estimate of the intrinsic parameters and the at least one initial estimate of the extrinsic parameters, and iterative transformations including one or more of: varying one or more nonlinear terms used in the initial model of the non-planar lens, in one or more iterations; increasing a number of the one or more nonlinear terms used in the initial model of the non-planar lens, in one or more of the iterations; varying intrinsic parameters of the projector; and varying extrinsic parameters of the projector; when the error function, of one or more iterations, one or more of converges, reaches a minimum, and is less than a threshold value: store current value of the intrinsic parameters of the projector and the extrinsic parameters of the projector as pose data; and, control the projector to project images onto the object based on the pose data. using an initial model of the non-planar lens that relates a position of projected points on the object to corresponding pixel points at an image modulator of the projector, determine at least one initial estimate of intrinsic parameters of the projector using the initial model by determining a set of discrete estimates of a plurality of the intrinsic parameters; determine at least one initial estimate of extrinsic parameters of the projector using the at least one initial estimate of the intrinsic parameters and a new set of correspondences between the projected points on the object and flattened pixel points, wherein a flattened pixel point is determined by, for each element of the set of discrete estimates of the plurality of intrinsic parameters, extrapolating a line between a given projected point and a corresponding pixel point at a theoretical curved image modulator that has a curvature determined from each of the elements of the set of discrete estimates of the plurality of the intrinsic parameters, to a flattened pixel point on a flat image modulator that shares a principal point with the theoretical curved image modulator; iteratively evaluate an error function that includes a comparison between the pixel points and a transformation of the projected points to the pixel points, an initial transformation determined using the at least one initial estimate of the intrinsic parameters and the at least one initial estimate of the extrinsic parameters, and iterative transformations including one or more of: varying one or more nonlinear terms used in the initial model of the non-planar lens, in one or more iterations; increasing a number of the one or more nonlinear terms used in the initial model of the non-planar lens, in one or more of the iterations; varying intrinsic parameters of the projector; and varying extrinsic parameters of the projector; when the error function, of one or more iterations, one or more of converges, reaches a minimum, and is less than a threshold value: store current value of the intrinsic parameters of the projector and the extrinsic parameters of the projector as pose data; and, control the projector to project images onto the object based on the pose data.