A system for ranging of objects in a scene, the system comprising: an optical pulse projector configured to project a time sequence of optical pulses onto the scene; an optical imager having an optical axis aligned so as to receive reflected portions of the time sequence of optical pulses projected onto a scene and reflected by the objects in the scene, so as to form a time sequence of two-dimensional images of the scene, each corresponding to a corresponding one of the time sequence of optical pulses projected; a fast shutter aligned along the optical axis of the optical imager so as to controllably transmit the reflected portions to the optical imager and/or block the reflected portions from the optical imager, wherein the fast shutter is capable of transitioning after a projection time between transmitting and blocking the reflected portions at times corresponding to a transition range separating a transmitted range domain from a blocked range domain; a timing controller configured to coordinate shutter timing of the fast shutter, so as to transmit the reflected portions to the optical imager for object having ranges within a range domain and to block the reflected portions from the optical imager for objects not within the range domain; characterized by : an image processor configured to generate difference images between two of the time sequence of two-dimensional images captured using two different shutter timings corresponding to two different range domains; and a range calculator configured to determine the ranges of objects identified in the difference images as being within a subrange calculated as being a difference between the range domains of the two of the time sequence of two-dimensional images used to calculate the difference image. an optical pulse projector configured to project a time sequence of optical pulses onto the scene; an optical imager having an optical axis aligned so as to receive reflected portions of the time sequence of optical pulses projected onto a scene and reflected by the objects in the scene, so as to form a time sequence of two-dimensional images of the scene, each corresponding to a corresponding one of the time sequence of optical pulses projected; a fast shutter aligned along the optical axis of the optical imager so as to controllably transmit the reflected portions to the optical imager and/or block the reflected portions from the optical imager, wherein the fast shutter is capable of transitioning after a projection time between transmitting and blocking the reflected portions at times corresponding to a transition range separating a transmitted range domain from a blocked range domain; a timing controller configured to coordinate shutter timing of the fast shutter, so as to transmit the reflected portions to the optical imager for object having ranges within a range domain and to block the reflected portions from the optical imager for objects not within the range domain; characterized by : an image processor configured to generate difference images between two of the time sequence of two-dimensional images captured using two different shutter timings corresponding to two different range domains; and a range calculator configured to determine the ranges of objects identified in the difference images as being within a subrange calculated as being a difference between the range domains of the two of the time sequence of two-dimensional images used to calculate the difference image. <EOS>