1. A method for measuring three-dimensional coordinates of a surface of an object, the method comprising: providing a line scanner that includes a processor, a projector and a camera, the line scanning having a first frame of reference, the projector including a light source and a projector lens, the light source being configured to emit a line of light substantially straight when projected onto a plane perpendicular to a direction of propagation of the line of light, the projector having a projector perspective center, the camera including a photosensitive array and a camera lens, the camera having a camera perspective center, the camera lens being configured to form an image of a portion of the surface on the photosensitive array, the photosensitive array including an array of pixels, the array of pixels having M rows and N columns, where M and N are integers, each of the pixels in the array of pixels configured to convert an optical energy captured by each of the pixels into an electrical value corresponding to a digital value, the processor configured to receive the digital values, the line scanner having a baseline, the baseline being a straight line segment between the projector perspective center and the camera perspective center, the projector having a projector orientation with respect to the baseline, the camera having a camera orientation with respect to the baseline, the processor configured to control the light source and to receive the digital values; generating a first line of light at a first time, the first line of light having a first optical power; projecting the first line of light onto the surface; reflecting the first line of light as a first reflected light from the surface; receiving the first reflected light with the camera lens; forming with the camera lens a first image of the first reflected light on the photosensitive array over a first integration time and generating in response a first optical energy for each of the pixels, the first optical energy for each of the pixels depending at least in part on a first integrated energy, the first integrated energy equal to an integral of the first optical power over the first integration time; sending for each of the pixels a first digital value to the processor to obtain a first M×N array of first digital values; generating a second line of light at a second time, the second line of light having a second optical power; projecting the second line of light onto the surface; reflecting the second line of light as a second reflected light from the surface; receiving the second reflected light with the camera lens; forming with the camera lens a second image of the second reflected light on the photosensitive array over a second integration time and generating in response a second optical energy for each of the pixels, the second optical energy for each of the pixels depending at least in part on a second integrated energy, the second integrated energy equal to an integral of the second optical power over the second integration time, wherein the second integrated energy is different than the first integrated energy; sending for each of the pixels a second digital value to the processor to obtain a second M×N array of second digital values; determining with the processor for each of the M rows of the first M×N array of first digital values a first maximum digital value and a first center value, the first maximum digital value for the row equal to a maximum of the N first digital values of the row, the first center value based at least in part on at least one of the N first digital values of the row; determining with the processor for each of the M rows of the second M×N array of second digital values a second maximum digital value and a second center value, the second maximum digital value for the row equal to a maximum of the N second digital values of the row, the second center value based at least in part on at least one of the N second digital values of the row; determining with the processor a composite center value for each of the M rows in which a first condition or a second condition is met, the first condition being that the first maximum digital value is less than a saturation level and exceeds a noise level, the second condition being that the second maximum digital value is less than the saturation level and exceeds the noise level, the composite center value based at least in part on the first center value and the second center value; calculating with the processor for each of the M rows having a composite center value three-dimensional coordinates of a point on the surface, the three-dimensional coordinates calculated in the first frame of reference, the three-dimensional coordinates based at least in part on the composite center value, a length of the baseline, the projector orientation, and the camera orientation; and storing the three-dimensional coordinates for each of the M rows having a composite center value.