Patent Publication Number: US-11378666-B2

Title: Sizing the field of view of a detector to improve operation of a lidar system

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
     This application is a continuation of U.S. application Ser. No. 15/710,744, filed on Sep. 20, 2017, which claims priority to U.S. Provisional Application Ser. No. 62/478,558, filed on Mar. 29, 2017, the entire disclosures of which are hereby expressly incorporated by reference herein. 
    
    
     FIELD OF TECHNOLOGY 
     This disclosure generally relates to lidar systems and, more particularly, photodetectors that can be used in such systems. 
     BACKGROUND 
     The background description provided herein is for the purpose of generally presenting the context of the disclosure. Work of the presently named inventors, to the extent it is described in this background section, as well as aspects of the description that may not otherwise qualify as prior art at the time of filing, are neither expressly nor impliedly admitted as prior art against the present disclosure. 
     Light detection and ranging (lidar) is a technology that can be used to measure distances to remote targets. Typically, a lidar system includes a light source and an optical receiver. The light source can be, for example, a laser which emits light having a particular operating wavelength. The operating wavelength of a lidar system may lie, for example, in the infrared, visible, or ultraviolet portions of the electromagnetic spectrum. The light source emits light toward a target which then scatters the light. Some of the scattered light is received back at the receiver. The system determines the distance to the target based on one or more characteristics associated with the returned light. For example, the system may determine the distance to the target based on the time of flight of a returned light pulse. 
     SUMMARY 
     According to the techniques of this disclosure, a light source, a scanner, and a receiver with a light detector in a lidar system are configured to define certain advantageous relationships between the light-detector field of view (FOV), which corresponds to an area illuminated by the light source, the instantaneous light-detector field of view (FOV), which corresponds to an area illuminated by the light source at a time when the light source emits a pulse of light, and the detector FOV, which corresponds to an angular region over which the detector is configured to receive scattered light. The techniques can include sizing the detector FOV relative to the light-source FOV in a certain manner, moving the detector FOV relative to the instantaneous light-source FOV according to a particular scheme, controlling the overlap between the detector FOV and the light-source FOV in a certain manner, etc. 
     In one implementation, a lidar system includes a light source configured to emit pulses of light along a light-source field of view (FOV), a scanner configured to scan a field of regard (FOR) of the light source and direct the pulses of light along a scan direction, where each of the pulses illuminates a respective instantaneous light-source FOV which corresponds to the light-source FOV at a time when the pulse is emitted, and a receiver configured to detect the pulses of light scattered by one or more remote targets. The receiver includes a detector with a detector field of view that corresponds to an angular region over which the detector is configured to receive scattered light. The light-source field of view is smaller than the detector field-of view. The system is configured to detect remote targets located up to R MAX  meters away. The scanner causes the detector field of view to move relative to the instantaneous light-source field of view along the scan direction, so that (i) when a pulse of light is emitted, the instantaneous light-source field of view is approximately centered within the detector field of view, and (ii) when a scattered pulse of light returns from a target located R MAX  meters away, the instantaneous light-source field of view is located near an edge of the field of view of the detector. 
     Another implementation of these techniques is a method in a lidar system for scanning a field of regard of the lidar system configured to detect remote targets located up to R MAX  meters away. The method includes generating a light pulse for each of multiple different scanning positions of scanner along a scan direction, where each of the generated pulses illuminates a respective instantaneous light-source field of view (FOV) which corresponds to a light-source FOV at a time when the pulse is emitted. The method also includes receiving scattered light pulses scattered from one or more remote targets in at least some of the different scanning positions, using a detector with a detector FOV that corresponds to an angular region over which the detector is configured to receive scattered light. The light-source FOV is smaller than the detector FOV. Receiving the scattered light pulses includes causing the detector FOV to move relative to the instantaneous light-source FOV along the scan direction, so that (i) when a pulse of light is emitted, the instantaneous light-source FOV is approximately centered within the detector FOV, and (ii) when a scattered pulse of light returns from a target located R MAX  meters away, the instantaneous light-source FOV is located near an edge of the detector FOV. 
     Yet another embodiment of these techniques is a lidar system including a light source configured to emit pulses of light along a light-source field of view (FOV), a scanner configured to scan a field of regard (FOR) of the light source and direct the pulses of light along a scan direction, where each of the pulses illuminates a respective instantaneous light-source FOV which corresponds to the light-source FOV at a time when the pulse is emitted, and a receiver configured to detect the pulses of light scattered by one or more remote targets. The receiver includes a detector with a detector FOV that corresponds to an angular region over which the detector is configured to receive scattered light. The system is configured to detect remote targets located up to R MAX  meters away. The scanner causes the detector FOV to move relative to the instantaneous light-source FOV along the scan direction so that an amount of overlap between the instantaneous light-source FOV and the detector FOV is different at two or more instances of time in an interval between (i) when a pulse of light is emitted and (ii) when a scattered pulse of light returns from a target located R MAX  meters away. 
     Still another embodiment of these techniques is a method in a lidar system for scanning a field of regard of the lidar system configured to detect remote targets located up to R MAX  meters away. The method includes generating a light pulse for each of multiple different scanning positions of scanner along a scan direction, where each of the generated pulses illuminates a respective instantaneous light-source field of view (FOV) which corresponds to a light-source FOV at a time when the pulse is emitted. The method also includes receiving scattered light pulses scattered from one or more remote targets in at least some of the different scanning positions, using a detector with a detector FOV that corresponds to an angular region over which the detector is configured to receive scattered light. Receiving the scattered light pulses includes causing the detector FOV to move relative to the instantaneous light-source FOV along the scan direction, so that an amount of overlap between the instantaneous light-source FOV and the detector FOV is different at two or more instances of time in an interval between (i) when a pulse of light is emitted and (ii) when a scattered pulse of light returns from a target located R MAX  meters away. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
         FIG. 1  is a block diagram of an example light detection and ranging (lidar) system in which the techniques of this disclosure can be implemented; 
         FIG. 2  illustrates in more detail several components that can operate in the system of  FIG. 1 ; 
         FIG. 3  illustrates an example configuration in which the components of  FIG. 1  scan a 360-degree field of regard through a window in a rotating housing; 
         FIG. 4  illustrates another configuration in which the components of  FIG. 1  scan a 360-degree field of regard through a substantially transparent stationary housing; 
         FIG. 5  illustrates an example scan pattern which the lidar system of  FIG. 1  can produce when identifying targets within a field of regard; 
         FIG. 6  illustrates an example scan pattern which the lidar system of  FIG. 1  can produce when identifying targets within a field of regard using multiple beams; 
         FIG. 7  schematically illustrates fields of view (FOVs) of a light source and a detector that can operate in the lidar system of  FIG. 1 ; 
         FIG. 8  illustrates an example configuration of the lidar system of  FIG. 1  or another suitable lidar system, in which a laser is disposed away from sensor components; 
         FIG. 9  illustrates an example vehicle in which the lidar system of  FIG. 1  can operate; 
         FIG. 10  illustrates an example InGaAs avalanche photodiode which can operate in the lidar system of  FIG. 1 ; 
         FIG. 11  illustrates an example photodiode coupled to a pulse-detection circuit, which can operate in the lidar system of  FIG. 1 ; 
         FIG. 12  is a diagram of an example detector array that can be implemented in the lidar system of  FIG. 1  to scan multiple lines using independent output beams; 
         FIG. 13  illustrates the spatial relationship between a downrange pixel and the field of view of a detector, where the detector field of view is larger than the pixel; 
         FIG. 14  is a diagram of example detector array with two detectors operating with a same output beam, which can be used in the lidar system of  FIG. 1 ; 
         FIG. 15  illustrates forward and reverse scans based on the detector array of  FIG. 14 ; 
         FIG. 16  a diagram of a detector array which includes three detectors, which can be used in the lidar system of  FIG. 1 ; 
         FIG. 17  illustrates forward and reverse scans based on the detector array of  FIG. 16 ; 
         FIG. 18  illustrates another example detector array that can be implemented in the lidar system of  FIG. 1 , in which each row includes multiple detectors; 
         FIG. 19  is a diagram of light pulse timing with respect to a detector field of view, where the detector field of view is larger than a light-source field of view; 
         FIG. 20  is a flow diagram of an example method for scanning a field of regard of the lidar system of  FIG. 1 ; 
         FIG. 21  illustrates an example detector array with nonuniform separation between adjacent array elements, which also can be implemented in the lidar system of  FIG. 1 ; 
         FIG. 22  illustrates another example detector array with nonuniform separation between adjacent array elements, which also can be implemented in the lidar system of  FIG. 1 ; 
         FIG. 23  schematically illustrates a distribution of pixels and/or information that can be produced using the detector array of  FIG. 21  or  FIG. 22 ; 
         FIG. 24  schematically illustrates another distribution of pixels and/or information that can be produced using the detector array of  FIG. 21  or  FIG. 22 ; 
         FIG. 25  is a diagram of a cluster of independently wired detectors collectively defining the active region of a detector site, which may be used with single-detector and/or detector array implementations of the systems depicted in the figures above; 
         FIG. 26  illustrates misalignment of detectors that may occur during assembly of a detector array for use in the lidar system of  FIG. 1 ; 
         FIG. 27  illustrates calibration of a cluster of detectors in view of a light-source field of view changing alignment during operation of the lidar system of  FIG. 1 ; 
         FIG. 28  is a diagram of a detector site including at least one high-gain and at least one low-gain detector to control the gain depending on when a return pulse may be received, which can be implemented in the system of  FIG. 1 ; 
         FIG. 29  is a diagram of another detector site with partially overlapping detectors, which can be implemented in the system of  FIG. 1  to control the gain depending on when a return pulse may be received; and 
         FIG. 30  is a diagram of another detector site with partially overlapping detectors, which can be implemented in the system of  FIG. 1  to control the gain depending on when a return pulse may be received. 
     
    
    
     DETAILED DESCRIPTION 
     In various implementations discussed below, a lidar system is equipped with a light source that can illuminate a field of view (light-source FOV) and, when the light source emits a pulse, illuminates an instantaneous light-source FOV, as well as a receiver that includes a detector with a certain FOV (detector FOV). The light-source FOV can be an angular cone because as a light-source beam propagates away from the light source, the diameter of the beam, as well as the size of a corresponding pixel, may increase according to the beam divergence (which may be 1 milliradian, for example). The detector FOV similarly can be an angular cone, with the same or different beam divergence. The lidar system of this disclosure operates to define certain relationships between the light-source FOV, instantaneous light-source FOV, and detector FOV to address such potential problems as erroneously interpreting scattered light from a target as corresponding to the most recently emitted pulse than a pulse emitted earlier, exposing the detector to excessive amount of light when scattered light reflects off a very proximate target (or the window of the lidar system), etc. 
     The lidar system may be configured to scan a field of regard (FOR) horizontally and vertically according to various scan patterns. The horizontal and vertical dimensions can be defined in any desired manner relative to the environment in which the lidar system operates. In some implementations, the lidar system scans the horizontal dimension in two directions, e.g., forward and back. In other implementations, the lidar system scans the horizontal dimension in a single direction. Certain relationships between the light-source FOV, the instantaneous light-source FOV, and detector FOVs may be more advantageous for bidirectional scans, and some may be more advantageous for unidirectional scans. Further, the receiver of the lidar system can include a single detector with an active region or multiple detectors with respective active regions. 
     As discussed below, the detector FOV in some implementations is configured to exceed the size of a pixel, which corresponds to the light-source FOV. The detector FOV moves relative to the instantaneous light-source FOV during a ranging event, so that the pixel effectively traverses the detector FOV. In this manner, an early return of an emitted pulse is received at one portion of the detector FOV, and a later return of the emitted pulse is received at another portion of the detector FOV. The initial position of the instantaneous light-source FOV may be outside the detector FOV completely, so as to effectively ignore early returns. This approach may be used in the implementations in which a scan proceeds along a single direction. On the other hand, the initial position of the instantaneous light-source FOV may be approximately in the middle of the detector FOV if the scan proceeds in two directions (e.g., forward and back). 
     According to another approach discussed below, a cluster of independently wired detectors collectively define the active region of a detector site. The capacitance of the cluster may be lower than a capacitance of a single detector with a detector field-of-view corresponding to the overall area of the cluster. Moreover, a detector array may include a cluster at each detector site. The area covered by the cluster may be larger than the light-source FOV to mitigate alignment and tolerance issues, as discussed below. The lidar system also may use clusters whose area exceeds the light-source field of view to calibrate the receiver, so that misalignment of the light-source field of view relative to the detector site does not necessary result in loss of accuracy or loss of data. 
     According to yet another approach, the lidar system accounts for the relatively high energy of return pulses reflected by nearby targets by first placing a lower-gain detector into the detector FOV followed by a higher-gain detector. This way, the lower-gain detector receives all or most of the light of the early returns, which typically have higher energy, and the higher-gain detector receives all or most of the light of the long-range returns, which typically have attenuated energy. In some implementations, the lower-gain detector may partially overlap the higher-gain detector. The gain of the detector may be related to its surface area, the type of a detector, and/or associated circuitry (e.g., amplifiers). 
     An example lidar system in which these techniques can be implemented is considered next with reference to  FIGS. 1-4 , followed by a discussion of the techniques which the lidar system can implement to scan a field of regard and generate individual pixels ( FIGS. 5-7 ). An example implementation in a vehicle is then discussed with reference to  FIGS. 8 and 9 . Then, an example photodetector and an example pulse-detection circuit are discussed with reference to  FIGS. 10 and 11 . Example arrangements of detectors and FOV configurations are discussed with reference to  FIGS. 12-30 . 
     System Overview 
       FIG. 1  illustrates an example light detection and ranging (lidar) system  100 . The lidar system  100  may be referred to as a laser ranging system, a laser radar system, a LIDAR system, a lidar sensor, or a laser detection and ranging (LADAR or ladar) system. The lidar system  100  may include a light source  110 , a mirror  115 , a scanner  120 , a receiver  140 , and a controller  150 . The light source  110  may be, for example, a laser which emits light having a particular operating wavelength in the infrared, visible, or ultraviolet portions of the electromagnetic spectrum. As a more specific example, the light source  110  may include a laser with an operating wavelength between approximately 1.2 μm and 1.7 μm. 
     In operation, the light source  110  emits an output beam of light  125  which may be continuous-wave, pulsed, or modulated in any suitable manner for a given application. The output beam of light  125  is directed downrange toward a remote target  130  located a distance D from the lidar system  100  and at least partially contained within a field of regard of the system  100 . Depending on the scenario and/or the implementation of the lidar system  100 , D can be between 1 m and 1 km, for example. 
     Once the output beam  125  reaches the downrange target  130 , the target  130  may scatter or, in some cases, reflect at least a portion of light from the output beam  125 , and some of the scattered or reflected light may return toward the lidar system  100 . In the example of  FIG. 1 , the scattered or reflected light is represented by input beam  135 , which passes through the scanner  120 , which may be referred to as a beam scanner, optical scanner, or laser scanner. The input beam  135  passes through the scanner  120  to the mirror  115 , which may be referred to as an overlap mirror, superposition mirror, or beam-combiner mirror. The mirror  115  in turn directs the input beam  135  to the receiver  140 . The input  135  may contain only a relatively small fraction of the light from the output beam  125 . For example, the ratio of average power, peak power, or pulse energy of the input beam  135  to average power, peak power, or pulse energy of the output beam  125  may be approximately 10 −1 , 10 −2 , 10 −3 , 10 −4 , 10 −5 , 10 −6 , 10 −7 , 10 −8 , 10 −9 , 10 −10 , 10 −11 , or 10 −12 . As another example, if a pulse of the output beam  125  has a pulse energy of 1 microjoule (μJ), then the pulse energy of a corresponding pulse of the input beam  135  may have a pulse energy of approximately 10 nanojoules (nJ), 1 nJ, 100 picojoules (pJ), 10 pJ, 1 pJ, 100 femtojoules (fJ), 10 fJ, 1 fJ, 100 attojoules (aJ), 10 aJ, or 1 aJ. 
     The output beam  125  may be referred to as a laser beam, light beam, optical beam, emitted beam, or just beam; and the input beam  135  may be referred to as a return beam, received beam, return light, received light, input light, scattered light, or reflected light. As used herein, scattered light may refer to light that is scattered or reflected by the target  130 . The input beam  135  may include light from the output beam  125  that is scattered by the target  130 , light from the output beam  125  that is reflected by the target  130 , or a combination of scattered and reflected light from target  130 . 
     The operating wavelength of a lidar system  100  may lie, for example, in the infrared, visible, or ultraviolet portions of the electromagnetic spectrum. The Sun also produces light in these wavelength ranges, and thus sunlight can act as background noise which can obscure signal light detected by the lidar system  100 . This solar background noise can result in false-positive detections or can otherwise corrupt measurements of the lidar system  100 , especially when the receiver  140  includes SPAD detectors (which can be highly sensitive). 
     Generally speaking, the light from the Sun that passes through the Earth&#39;s atmosphere and reaches a terrestrial-based lidar system such as the system  100  can establish an optical background noise floor for this system. Thus, in order for a signal from the lidar system  100  to be detectable, the signal must rise above the background noise floor. It is generally possible to increase the signal-to-noise (SNR) ratio of the lidar system  100  by raising the power level of the output beam  125 , but in some situations it may be desirable to keep the power level of the output beam  125  relatively low. For example, increasing transmit power levels of the output beam  125  can result in the lidar system  100  not being eye-safe. 
     In some implementations, the lidar system  100  operates at one or more wavelengths between approximately 1400 nm and approximately 1600 nm. For example, the light source  110  may produce light at approximately 1550 nm. 
     In some implementations, the lidar system  100  operates at frequencies at which atmospheric absorption is relatively low. For example, the lidar system  100  can operate at wavelengths in the approximate ranges from 980 nm to 1110 nm or from 1165 nm to 1400 nm. 
     In other implementations, the lidar system  100  operates at frequencies at which atmospheric absorption is high. For example, the lidar system  100  can operate at wavelengths in the approximate ranges from 930 nm to 980 nm, from 1100 nm to 1165 nm, or from 1400 nm to 1460 nm. 
     According to some implementations, the lidar system  100  can include an eye-safe laser, or the lidar system  100  can be classified as an eye-safe laser system or laser product. An eye-safe laser, laser system, or laser product may refer to a system with an emission wavelength, average power, peak power, peak intensity, pulse energy, beam size, beam divergence, exposure time, or scanned output beam such that emitted light from the system presents little or no possibility of causing damage to a person&#39;s eyes. For example, the light source  110  or lidar system  100  may be classified as a Class 1 laser product (as specified by the 60825-1 standard of the International Electrotechnical Commission (IEC)) or a Class I laser product (as specified by Title 21, Section 1040.10 of the United States Code of Federal Regulations (CFR)) that is safe under all conditions of normal use. In some implementations, the lidar system  100  may be classified as an eye-safe laser product (e.g., with a Class 1 or Class I classification) configured to operate at any suitable wavelength between approximately 1400 nm and approximately 2100 nm. In some implementations, the light source  110  may include a laser with an operating wavelength between approximately 1400 nm and approximately 1600 nm, and the lidar system  100  may be operated in an eye-safe manner. In some implementations, the light source  110  or the lidar system  100  may be an eye-safe laser product that includes a scanned laser with an operating wavelength between approximately 1530 nm and approximately 1560 nm. In some implementations, the lidar system  100  may be a Class 1 or Class I laser product that includes a fiber laser or solid-state laser with an operating wavelength between approximately 1400 nm and approximately 1600 nm. 
     The receiver  140  may receive or detect photons from the input beam  135  and generate one or more representative signals. For example, the receiver  140  may generate an output electrical signal  145  that is representative of the input beam  135 . The receiver may send the electrical signal  145  to the controller  150 . Depending on the implementation, the controller  150  may include one or more processors, an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), and/or other suitable circuitry configured to analyze one or more characteristics of the electrical signal  145  to determine one or more characteristics of the target  130 , such as its distance downrange from the lidar system  100 . More particularly, the controller  150  may analyze the time of flight or phase modulation for the beam of light  125  transmitted by the light source  110 . If the lidar system  100  measures a time of flight of T (e.g., T represents a round-trip time of flight for an emitted pulse of light to travel from the lidar system  100  to the target  130  and back to the lidar system  100 ), then the distance D from the target  130  to the lidar system  100  may be expressed as D=c·T/2, where c is the speed of light (approximately 3.0×10 8  m/s). 
     As a more specific example, if the lidar system  100  measures the time of flight to be T=300 ns, then the lidar system  100  can determine the distance from the target  130  to the lidar system  100  to be approximately D=45.0 m. As another example, the lidar system  100  measures the time of flight to be T=1.33 s and accordingly determines that the distance from the target  130  to the lidar system  100  is approximately D=199.5 m. The distance D from lidar system  100  to the target  130  may be referred to as a distance, depth, or range of the target  130 . As used herein, the speed of light c refers to the speed of light in any suitable medium, such as for example in air, water, or vacuum. The speed of light in vacuum is approximately 2.9979×10 8  m/s, and the speed of light in air (which has a refractive index of approximately 1.0003) is approximately 2.9970×10 8  m/s. 
     The target  130  may be located a distance D from the lidar system  100  that is less than or equal to a maximum range R MAX  of the lidar system  100 . The maximum range R MAX  (which also may be referred to as a maximum distance) of a lidar system  100  may correspond to the maximum distance over which the lidar system  100  is configured to sense or identify targets that appear in a field of regard of the lidar system  100 . The maximum range of lidar system  100  may be any suitable distance, such as for example, 25 m, 50 m, 100 m, 200 m, 500 m, or 1 km. As a specific example, a lidar system with a 200-m maximum range may be configured to sense or identify various targets located up to 200 m away. For a lidar system with a 200-m maximum range (R MAX =200 m), the time of flight corresponding to the maximum range is approximately 2·R MAX /c≅1.33 μs. 
     In some implementations, the light source  110 , the scanner  120 , and the receiver  140  may be packaged together within a single housing  155 , which may be a box, case, or enclosure that holds or contains all or part of a lidar system  100 . The housing  155  includes a window  157  through which the beams  125  and  135  pass. In one example implementation, the lidar-system housing  155  contains the light source  110 , the overlap mirror  115 , the scanner  120 , and the receiver  140  of a lidar system  100 . The controller  150  may reside within the same housing  155  as the components  110 ,  120 , and  140 , or the controller  150  may reside remotely from the housing. 
     Moreover, in some implementations, the housing  155  includes multiple lidar sensors, each including a respective scanner and a receiver. Depending on the particular implementation, each of the multiple sensors can include a separate light source or a common light source. The multiple sensors can be configured to cover non-overlapping adjacent fields of regard or partially overlapping fields of regard, depending on the implementation. 
     The housing  155  may be an airtight or watertight structure that prevents water vapor, liquid water, dirt, dust, or other contaminants from getting inside the housing  155 . The housing  155  may be filled with a dry or inert gas, such as for example dry air, nitrogen, or argon. The housing  155  may include one or more electrical connections for conveying electrical power or electrical signals to and/or from the housing. 
     The window  157  may be made from any suitable substrate material, such as for example, glass or plastic (e.g., polycarbonate, acrylic, cyclic-olefin polymer, or cyclic-olefin copolymer). The window  157  may include an interior surface (surface A) and an exterior surface (surface B), and surface A or surface B may include a dielectric coating having particular reflectivity values at particular wavelengths. A dielectric coating (which may be referred to as a thin-film coating, interference coating, or coating) may include one or more thin-film layers of dielectric materials (e.g., SiO 2 , TiO 2 , Al 2 O 3 , Ta 2 O 5 , MgF 2 , LaF 3 , or AlF 3 ) having particular thicknesses (e.g., thickness less than 1 m) and particular refractive indices. A dielectric coating may be deposited onto surface A or surface B of the window  157  using any suitable deposition technique, such as for example, sputtering or electron-beam deposition. 
     The dielectric coating may have a high reflectivity at a particular wavelength or a low reflectivity at a particular wavelength. A high-reflectivity (HR) dielectric coating may have any suitable reflectivity value (e.g., a reflectivity greater than or equal to 80%, 90%, 95%, or 99%) at any suitable wavelength or combination of wavelengths. A low-reflectivity dielectric coating (which may be referred to as an anti-reflection (AR) coating) may have any suitable reflectivity value (e.g., a reflectivity less than or equal to 5%, 2%, 1%, 0.5%, or 0.2%) at any suitable wavelength or combination of wavelengths. In particular embodiments, a dielectric coating may be a dichroic coating with a particular combination of high or low reflectivity values at particular wavelengths. For example, a dichroic coating may have a reflectivity of less than or equal to 0.5% at approximately 1550-1560 nm and a reflectivity of greater than or equal to 90% at approximately 800-1500 nm. 
     In some implementations, surface A or surface B has a dielectric coating that is anti-reflecting at an operating wavelength of one or more light sources  110  contained within enclosure  155 . An AR coating on surface A and surface B may increase the amount of light at an operating wavelength of light source  110  that is transmitted through the window  157 . Additionally, an AR coating at an operating wavelength of the light source  110  may reduce the amount of incident light from output beam  125  that is reflected by the window  157  back into the housing  155 . In an example implementation, each of surface A and surface B has an AR coating with reflectivity less than 0.5% at an operating wavelength of light source  110 . As an example, if the light source  110  has an operating wavelength of approximately 1550 nm, then surface A and surface B may each have an AR coating with a reflectivity that is less than 0.5% from approximately 1547 nm to approximately 1553 nm. In another implementation, each of surface A and surface B has an AR coating with reflectivity less than 1% at the operating wavelengths of the light source  110 . For example, if the housing  155  encloses two sensor heads with respective light sources, the first light source emits pulses at a wavelength of approximately 1535 nm and the second light source emits pulses at a wavelength of approximately 1540 nm, then surface A and surface B may each have an AR coating with reflectivity less than 1% from approximately 1530 nm to approximately 1545 nm. 
     The window  157  may have an optical transmission that is greater than any suitable value for one or more wavelengths of one or more light sources  110  contained within the housing  155 . As an example, the window  157  may have an optical transmission of greater than or equal to 70%, 80%, 90%, 95%, or 99% at a wavelength of light source  110 . In one example implementation, the window  157  can transmit greater than or equal to 95% of light at an operating wavelength of the light source  110 . In another implementation, the window  157  transmits greater than or equal to 90% of light at the operating wavelengths of the light sources enclosed within the housing  155 . 
     Surface A or surface B may have a dichroic coating that is anti-reflecting at one or more operating wavelengths of one or more light sources  110  and high-reflecting at wavelengths away from the one or more operating wavelengths. For example, surface A may have an AR coating for an operating wavelength of the light source  110 , and surface B may have a dichroic coating that is AR at the light-source operating wavelength and HR for wavelengths away from the operating wavelength. A coating that is HR for wavelengths away from a light-source operating wavelength may prevent most incoming light at unwanted wavelengths from being transmitted through the window  117 . In one implementation, if light source  110  emits optical pulses with a wavelength of approximately 1550 nm, then surface A may have an AR coating with a reflectivity of less than or equal to 0.5% from approximately 1546 nm to approximately 1554 nm. Additionally, surface B may have a dichroic coating that is AR at approximately 1546-1554 nm and HR (e.g., reflectivity of greater than or equal to 90%) at approximately 800-1500 nm and approximately 1580-1700 nm. 
     Surface B of the window  157  may include a coating that is oleophobic, hydrophobic, or hydrophilic. A coating that is oleophobic (or, lipophobic) may repel oils (e.g., fingerprint oil or other non-polar material) from the exterior surface (surface B) of the window  157 . A coating that is hydrophobic may repel water from the exterior surface. For example, surface B may be coated with a material that is both oleophobic and hydrophobic. A coating that is hydrophilic attracts water so that water may tend to wet and form a film on the hydrophilic surface (rather than forming beads of water as may occur on a hydrophobic surface). If surface B has a hydrophilic coating, then water (e.g., from rain) that lands on surface B may form a film on the surface. The surface film of water may result in less distortion, deflection, or occlusion of an output beam  125  than a surface with a non-hydrophilic coating or a hydrophobic coating. 
     With continued reference to  FIG. 1 , the light source  110  may include a pulsed laser configured to produce or emit pulses of light with a certain pulse duration. In an example implementation, the pulse duration or pulse width of the pulsed laser is approximately 10 picoseconds (ps) to 20 nanoseconds (ns). In another implementation, the light source  110  is a pulsed laser that produces pulses with a pulse duration of approximately 1-4 ns. In yet another implementation, the light source  110  is a pulsed laser that produces pulses at a pulse repetition frequency of approximately 100 kHz to 5 MHz or a pulse period (e.g., a time between consecutive pulses) of approximately 200 ns to 10 μs. The light source  110  may have a substantially constant or a variable pulse repetition frequency, depending on the implementation. As an example, the light source  110  may be a pulsed laser that produces pulses at a substantially constant pulse repetition frequency of approximately 640 kHz (e.g., 640,000 pulses per second), corresponding to a pulse period of approximately 1.56 μs. As another example, the light source  110  may have a pulse repetition frequency that can be varied from approximately 500 kHz to 3 MHz. As used herein, a pulse of light may be referred to as an optical pulse, a light pulse, or a pulse, and a pulse repetition frequency may be referred to as a pulse rate. 
     In general, the output beam  125  may have any suitable average optical power, and the output beam  125  may include optical pulses with any suitable pulse energy or peak optical power. Some examples of the average power of the output beam  125  include the approximate values of 1 mW, 10 mW, 100 mW, 1 W, and 10 W. Example values of pulse energy of the output beam  125  include the approximate values of 0.1 μJ, 1 μJ, 10 μJ, 100 μJ, and 1 mJ. Examples of peak power values of pulses included in the output beam  125  are the approximate values of 10 W, 100 W, 1 kW, 5 kW, 10 kW. An example optical pulse with a duration of 1 ns and a pulse energy of 1 μJ has a peak power of approximately 1 kW. If the pulse repetition frequency is 500 kHz, then the average power of the output beam  125  with 1-μJ pulses is approximately 0.5 W, in this example. 
     The light source  110  may include a laser diode, such as a Fabry-Perot laser diode, a quantum well laser, a distributed Bragg reflector (DBR) laser, a distributed feedback (DFB) laser, or a vertical-cavity surface-emitting laser (VCSEL). The laser diode operating in the light source  110  may be an aluminum-gallium-arsenide (AlGaAs) laser diode, an indium-gallium-arsenide (InGaAs) laser diode, or an indium-gallium-arsenide-phosphide (InGaAsP) laser diode, or any other suitable diode. In some implementations, the light source  110  includes a pulsed laser diode with a peak emission wavelength of approximately 1400-1600 nm. Further, the light source  110  may include a laser diode that is current-modulated to produce optical pulses. 
     In some implementation, the light source  110  includes a pulsed laser diode followed by one or more optical-amplification stages. For example, the light source  110  may be a fiber-laser module that includes a current-modulated laser diode with a peak wavelength of approximately 1550 nm, followed by a single-stage or a multi-stage erbium-doped fiber amplifier (EDFA). As another example, the light source  110  may include a continuous-wave (CW) or quasi-CW laser diode followed by an external optical modulator (e.g., an electro-optic modulator), and the output of the modulator may be fed into an optical amplifier. In yet other implementations, the light source  110  may include a pulsed solid-state laser or a pulsed fiber laser. 
     In some implementations, the output beam of light  125  emitted by the light source  110  is a collimated optical beam with any suitable beam divergence, such as a divergence of approximately 0.1 to 3.0 milliradian (mrad). Divergence of the output beam  125  may refer to an angular measure of an increase in beam size (e.g., a beam radius or beam diameter) as the output beam  125  travels away from the light source  110  or the lidar system  100 . The output beam  125  may have a substantially circular cross section with a beam divergence characterized by a single divergence value. For example, the output beam  125  with a circular cross section and a divergence of 1 mrad may have a beam diameter or spot size of approximately 10 cm at a distance of 100 m from the lidar system  100 . In some implementations, the output beam  125  may be an astigmatic beam or may have a substantially elliptical cross section and may be characterized by two divergence values. As an example, the output beam  125  may have a fast axis and a slow axis, where the fast-axis divergence is greater than the slow-axis divergence. As another example, the output beam  125  may be an astigmatic beam with a fast-axis divergence of 2 mrad and a slow-axis divergence of 0.5 mrad. 
     The output beam of light  125  emitted by light source  110  may be unpolarized or randomly polarized, may have no specific or fixed polarization (e.g., the polarization may vary with time), or may have a particular polarization (e.g., the output beam  125  may be linearly polarized, elliptically polarized, or circularly polarized). As an example, the light source  110  may produce linearly polarized light, and the lidar system  100  may include a quarter-wave plate that converts this linearly polarized light into circularly polarized light. The lidar system  100  may transmit the circularly polarized light as the output beam  125 , and receive the input beam  135 , which may be substantially or at least partially circularly polarized in the same manner as the output beam  125  (e.g., if the output beam  125  is right-hand circularly polarized, then the input beam  135  may also be right-hand circularly polarized). The input beam  135  may pass through the same quarter-wave plate (or a different quarter-wave plate), resulting in the input beam  135  being converted to linearly polarized light which is orthogonally polarized (e.g., polarized at a right angle) with respect to the linearly polarized light produced by light source  110 . As another example, the lidar system  100  may employ polarization-diversity detection where two polarization components are detected separately. The output beam  125  may be linearly polarized, and the lidar system  100  may split the input beam  135  into two polarization components (e.g., s-polarization and p-polarization) which are detected separately by two photodiodes (e.g., a balanced photoreceiver that includes two photodiodes). 
     With continued reference to  FIG. 1 , the output beam  125  and input beam  135  may be substantially coaxial. In other words, the output beam  125  and input beam  135  may at least partially overlap or share a common propagation axis, so that the input beam  135  and the output beam  125  travel along substantially the same optical path (albeit in opposite directions). As the lidar system  100  scans the output beam  125  across a field of regard, the input beam  135  may follow along with the output beam  125 , so that the coaxial relationship between the two beams is maintained. 
     The lidar system  100  also may include one or more optical components configured to condition, shape, filter, modify, steer, or direct the output beam  125  and/or the input beam  135 . For example, lidar system  100  may include one or more lenses, mirrors, filters (e.g., bandpass or interference filters), beam splitters, polarizers, polarizing beam splitters, wave plates (e.g., half-wave or quarter-wave plates), diffractive elements, or holographic elements. In some implementations, lidar system  100  includes a telescope, one or more lenses, or one or more mirrors to expand, focus, or collimate the output beam  125  to a desired beam diameter or divergence. As an example, the lidar system  100  may include one or more lenses to focus the input beam  135  onto an active region of the receiver  140 . As another example, the lidar system  100  may include one or more flat mirrors or curved mirrors (e.g., concave, convex, or parabolic mirrors) to steer or focus the output beam  125  or the input beam  135 . For example, the lidar system  100  may include an off-axis parabolic mirror to focus the input beam  135  onto an active region of receiver  140 . As illustrated in  FIG. 1 , the lidar system  100  may include the mirror  115 , which may be a metallic or dielectric mirror. The mirror  115  may be configured so that the light beam  125  passes through the mirror  115 . As an example, mirror  115  may include a hole, slot, or aperture through which the output light beam  125  passes. As another example, the mirror  115  may be configured so that at least 80% of the output beam  125  passes through the mirror  115  and at least 80% of the input beam  135  is reflected by the mirror  115 . In some implementations, the mirror  115  may provide for the output beam  125  and the input beam  135  to be substantially coaxial, so that the beams  125  and  135  travel along substantially the same optical path, in opposite directions. 
     Generally speaking, the scanner  120  steers the output beam  125  in one or more directions downrange. The scanner  120  may include one or more scanning mirrors and one or more actuators driving the mirrors to rotate, tilt, pivot, or move the mirrors in an angular manner about one or more axes, for example. For example, the first mirror of the scanner may scan the output beam  125  along a first direction, and the second mirror may scan the output beam  125  along a second direction that is substantially orthogonal to the first direction. Example implementations of the scanner  120  are discussed in more detail below with reference to  FIG. 2 . 
     The scanner  120  may be configured to scan the output beam  125  over a 5-degree angular range, 20-degree angular range, 30-degree angular range, 60-degree angular range, or any other suitable angular range. For example, a scanning mirror may be configured to periodically rotate over a 15-degree range, which results in the output beam  125  scanning across a 30-degree range (e.g., a Θ-degree rotation by a scanning mirror results in a 2Θ-degree angular scan of the output beam  125 ). A field of regard (FOR) of the lidar system  100  may refer to an area, region, or angular range over which the lidar system  100  may be configured to scan or capture distance information. When the lidar system  100  scans the output beam  125  within a 30-degree scanning range, the lidar system  100  may be referred to as having a 30-degree angular field of regard. As another example, a lidar system  100  with a scanning mirror that rotates over a 30-degree range may produce the output beam  125  that scans across a 60-degree range (e.g., a 60-degree FOR). In various implementations, the lidar system  100  may have a FOR of approximately 10°, 20°, 40°, 60°, 120°, or any other suitable FOR. The FOR also may be referred to as a scan region. 
     The scanner  120  may be configured to scan the output beam  125  horizontally and vertically, and the lidar system  100  may have a particular FOR along the horizontal direction and another particular FOR along the vertical direction. For example, the lidar system  100  may have a horizontal FOR of 10° to 120° C. and a vertical FOR of 2° to 45°. 
     The one or more scanning mirrors of the scanner  120  may be communicatively coupled to the controller  150  which may control the scanning mirror(s) so as to guide the output beam  125  in a desired direction downrange or along a desired scan pattern. In general, a scan pattern may refer to a pattern or path along which the output beam  125  is directed, and also may be referred to as an optical scan pattern, optical scan path, or scan path. As an example, the scanner  120  may include two scanning mirrors configured to scan the output beam  125  across a 60° horizontal FOR and a 20° vertical FOR. The two scanner mirrors may be controlled to follow a scan path that substantially covers the 60°×20° FOR. The lidar system  100  can use the scan path to generate a point cloud with pixels that substantially cover the 60°×20° FOR. The pixels may be approximately evenly distributed across the 60°×20° FOR. Alternately, the pixels may have a particular nonuniform distribution (e.g., the pixels may be distributed across all or a portion of the 60°×20° FOR, and the pixels may have a higher density in one or more particular regions of the 60°×20° FOR). 
     In operation, the light source  110  may emit pulses of light which the scanner  120  scans across a FOR of lidar system  100 . The target  130  may scatter one or more of the emitted pulses, and the receiver  140  may detect at least a portion of the pulses of light scattered by the target  130 . 
     The receiver  140  may be referred to as (or may include) a photoreceiver, optical receiver, optical sensor, detector, photodetector, or optical detector. The receiver  140  in some implementations receives or detects at least a portion of the input beam  135  and produces an electrical signal that corresponds to the input beam  135 . For example, if the input beam  135  includes an optical pulse, then the receiver  140  may produce an electrical current or voltage pulse that corresponds to the optical pulse detected by the receiver  140 . In an example implementation, the receiver  140  includes one or more avalanche photodiodes (APDs) or one or more single-photon avalanche diodes (SPADs). In another implementation, the receiver  140  includes one or more PN photodiodes (e.g., a photodiode structure formed by a p-type semiconductor and a n-type semiconductor) or one or more PIN photodiodes (e.g., a photodiode structure formed by an undoped intrinsic semiconductor region located between p-type and n-type regions). 
     The receiver  140  may have an active region or an avalanche-multiplication region that includes silicon, germanium, or InGaAs. The active region of receiver  140  may have any suitable size, such as for example, a diameter or width of approximately 50-500 μm. The receiver  140  may include circuitry that performs signal amplification, sampling, filtering, signal conditioning, analog-to-digital conversion, time-to-digital conversion, pulse detection, threshold detection, rising-edge detection, or falling-edge detection. For example, the receiver  140  may include a transimpedance amplifier that converts a received photocurrent (e.g., a current produced by an APD in response to a received optical signal) into a voltage signal. The receiver  140  may direct the voltage signal to pulse-detection circuitry that produces an analog or digital output signal  145  that corresponds to one or more characteristics (e.g., rising edge, falling edge, amplitude, or duration) of a received optical pulse. For example, the pulse-detection circuitry may perform a time-to-digital conversion to produce a digital output signal  145 . The receiver  140  may send the electrical output signal  145  to the controller  150  for processing or analysis, e.g., to determine a time-of-flight value corresponding to a received optical pulse. 
     The controller  150  may be electrically coupled or otherwise communicatively coupled to one or more of the light source  110 , the scanner  120 , and the receiver  140 . The controller  150  may receive electrical trigger pulses or edges from the light source  110 , where each pulse or edge corresponds to the emission of an optical pulse by the light source  110 . The controller  150  may provide instructions, a control signal, or a trigger signal to the light source  110  indicating when the light source  110  should produce optical pulses. For example, the controller  150  may send an electrical trigger signal that includes electrical pulses, where the light source  110  emits an optical pulse in response to each electrical pulse. Further, the controller  150  may cause the light source  110  to adjust one or more of the frequency, period, duration, pulse energy, peak power, average power, or wavelength of the optical pulses produced by light source  110 . 
     The controller  150  may determine a time-of-flight value for an optical pulse based on timing information associated with when the pulse was emitted by light source  110  and when a portion of the pulse (e.g., the input beam  135 ) was detected or received by the receiver  140 . The controller  150  may include circuitry that performs signal amplification, sampling, filtering, signal conditioning, analog-to-digital conversion, time-to-digital conversion, pulse detection, threshold detection, rising-edge detection, or falling-edge detection. 
     As indicated above, the lidar system  100  may be used to determine the distance to one or more downrange targets  130 . By scanning the lidar system  100  across a field of regard, the system can be used to map the distance to a number of points within the field of regard. Each of these depth-mapped points may be referred to as a pixel or a voxel. A collection of pixels captured in succession (which may be referred to as a depth map, a point cloud, or a frame) may be rendered as an image or may be analyzed to identify or detect objects or to determine a shape or distance of objects within the FOR. For example, a depth map may cover a field of regard that extends 60° horizontally and 15° vertically, and the depth map may include a frame of 100-2000 pixels in the horizontal direction by 4-400 pixels in the vertical direction. 
     The lidar system  100  may be configured to repeatedly capture or generate point clouds of a field of regard at any suitable frame rate between approximately 0.1 frames per second (FPS) and approximately 1,000 FPS. For example, the lidar system  100  may generate point clouds at a frame rate of approximately 0.1 FPS, 0.5 FPS, 1 FPS, 2 FPS, 5 FPS, 10 FPS, 20 FPS, 100 FPS, 500 FPS, or 1,000 FPS. In an example implementation, the lidar system  100  is configured to produce optical pulses at a rate of 5×10 5  pulses/second (e.g., the system may determine 500,000 pixel distances per second) and scan a frame of 1000×50 pixels (e.g., 50,000 pixels/frame), which corresponds to a point-cloud frame rate of 10 frames per second (e.g., 10 point clouds per second). The point-cloud frame rate may be substantially fixed or dynamically adjustable, depending on the implementation. For example, the lidar system  100  may capture one or more point clouds at a particular frame rate (e.g., 1 Hz) and then switch to capture one or more point clouds at a different frame rate (e.g., 10 Hz). In general, the lidar system can use a slower frame rate (e.g., 1 Hz) to capture one or more high-resolution point clouds, and use a faster frame rate (e.g., 10 Hz) to rapidly capture multiple lower-resolution point clouds. 
     The field of regard of the lidar system  100  can overlap, encompass, or enclose at least a portion of the target  130 , which may include all or part of an object that is moving or stationary relative to lidar system  100 . For example, the target  130  may include all or a portion of a person, vehicle, motorcycle, truck, train, bicycle, wheelchair, pedestrian, animal, road sign, traffic light, lane marking, road-surface marking, parking space, pylon, guard rail, traffic barrier, pothole, railroad crossing, obstacle in or near a road, curb, stopped vehicle on or beside a road, utility pole, house, building, trash can, mailbox, tree, any other suitable object, or any suitable combination of all or part of two or more objects. 
     Now referring to  FIG. 2 , a scanner  162  and a receiver  164  can operate in the lidar system of  FIG. 1  as the scanner  120  and the receiver  140 , respectively. More generally, the scanner  162  and the receiver  164  can operate in any suitable lidar system. 
     The scanner  162  may include any suitable number of mirrors driven by any suitable number of mechanical actuators. For example, the scanner  162  may include a galvanometer scanner, a resonant scanner, a piezoelectric actuator, a polygonal scanner, a rotating-prism scanner, a voice coil motor, a DC motor, a brushless DC motor, a stepper motor, or a microelectromechanical systems (MEMS) device, or any other suitable actuator or mechanism. 
     A galvanometer scanner (which also may be referred to as a galvanometer actuator) may include a galvanometer-based scanning motor with a magnet and coil. When an electrical current is supplied to the coil, a rotational force is applied to the magnet, which causes a mirror attached to the galvanometer scanner to rotate. The electrical current supplied to the coil may be controlled to dynamically change the position of the galvanometer mirror. A resonant scanner (which may be referred to as a resonant actuator) may include a spring-like mechanism driven by an actuator to produce a periodic oscillation at a substantially fixed frequency (e.g., 1 kHz). A MEMS-based scanning device may include a mirror with a diameter between approximately 1 and 10 mm, where the mirror is rotated using electromagnetic or electrostatic actuation. A voice coil motor (which may be referred to as a voice coil actuator) may include a magnet and coil. When an electrical current is supplied to the coil, a translational force is applied to the magnet, which causes a mirror attached to the magnet to move or rotate. 
     In an example implementation, the scanner  162  includes a single mirror configured to scan an output beam  170  along a single direction (e.g., the scanner  162  may be a one-dimensional scanner that scans along a horizontal or vertical direction). The mirror may be a flat scanning mirror attached to a scanner actuator or mechanism which scans the mirror over a particular angular range. The mirror may be driven by one actuator (e.g., a galvanometer) or two actuators configured to drive the mirror in a push-pull configuration. When two actuators drive the mirror in one direction in a push-pull configuration, the actuators may be located at opposite ends or sides of the mirror. The actuators may operate in a cooperative manner so that when one actuator pushes on the mirror, the other actuator pulls on the mirror, and vice versa. In another example implementation, two voice coil actuators arranged in a push-pull configuration drive a mirror along a horizontal or vertical direction. 
     In some implementations, the scanner  162  may include one mirror configured to be scanned along two axes, where two actuators arranged in a push-pull configuration provide motion along each axis. For example, two resonant actuators arranged in a horizontal push-pull configuration may drive the mirror along a horizontal direction, and another pair of resonant actuators arranged in a vertical push-pull configuration may drive mirror along a vertical direction. In another example implementation, two actuators scan the output beam  170  along two directions (e.g., horizontal and vertical), where each actuator provides rotational motion along a particular direction or about a particular axis. 
     The scanner  162  also may include one mirror driven by two actuators configured to scan the mirror along two substantially orthogonal directions. For example, a resonant actuator or a galvanometer actuator may drive one mirror along a substantially horizontal direction, and a galvanometer actuator may drive the mirror along a substantially vertical direction. As another example, two resonant actuators may drive a mirror along two substantially orthogonal directions. 
     In some implementations, the scanner  162  includes two mirrors, where one mirror scans the output beam  170  along a substantially horizontal direction and the other mirror scans the output beam  170  along a substantially vertical direction. In the example of  FIG. 2 , the scanner  162  includes two mirrors, a mirror  180 - 1  and a mirror  180 - 2 . The mirror  180 - 1  may scan the output beam  170  along a substantially horizontal direction, and the mirror  180 - 2  may scan the output beam  170  along a substantially vertical direction (or vice versa). Mirror  180 - 1  or mirror  180 - 2  may be a flat mirror, a curved mirror, or a polygon mirror with two or more reflective surfaces. 
     The scanner  162  in other implementations includes two galvanometer scanners driving respective mirrors. For example, the scanner  162  may include a galvanometer actuator that scans the mirror  180 - 1  along a first direction (e.g., vertical), and the scanner  162  may include another galvanometer actuator that scans the mirror  180 - 2  along a second direction (e.g., horizontal). In yet another implementation, the scanner  162  includes two mirrors, where a galvanometer actuator drives one mirror, and a resonant actuator drives the other mirror. For example, a galvanometer actuator may scan the mirror  180 - 1  along a first direction, and a resonant actuator may scan the mirror  180 - 2  along a second direction. The first and second scanning directions may be substantially orthogonal to one another, e.g., the first direction may be substantially vertical, and the second direction may be substantially horizontal. In yet another implementation, the scanner  162  includes two mirrors, where one mirror is a polygon mirror that is rotated in one direction (e.g., clockwise or counter-clockwise) by an electric motor (e.g., a brushless DC motor). For example, mirror  180 - 1  may be a polygon mirror that scans the output beam  170  along a substantially horizontal direction, and mirror  180 - 2  may scan the output beam  170  along a substantially vertical direction. A polygon mirror may have two or more reflective surfaces, and the polygon mirror may be continuously rotated in one direction so that the output beam  170  is reflected sequentially from each of the reflective surfaces. A polygon mirror may have a cross-sectional shape that corresponds to a polygon, where each side of the polygon has a reflective surface. For example, a polygon mirror with a square cross-sectional shape may have four reflective surfaces, and a polygon mirror with a pentagonal cross-sectional shape may have five reflective surfaces. 
     To direct the output beam  170  along a particular scan pattern, the scanner  162  may include two or more actuators driving a single mirror synchronously. For example, the two or more actuators can drive the mirror synchronously along two substantially orthogonal directions to make the output beam  170  follow a scan pattern with substantially straight lines. In some implementations, the scanner  162  may include two mirrors and actuators driving the two mirrors synchronously to generate a scan pattern that includes substantially straight lines. For example, a galvanometer actuator may drive the mirror  180 - 2  with a substantially linear back-and-forth motion (e.g., the galvanometer may be driven with a substantially sinusoidal or triangle-shaped waveform) that causes the output beam  170  to trace a substantially horizontal back-and-forth pattern, and another galvanometer actuator may scan the mirror  180 - 1  along a substantially vertical direction. The two galvanometers may be synchronized so that for every 64 horizontal traces, the output beam  170  makes a single trace along a vertical direction. Whether one or two mirrors are used, the substantially straight lines can be directed substantially horizontally, vertically, or along any other suitable direction. 
     The scanner  162  also may apply a dynamically adjusted deflection along a vertical direction (e.g., with a galvanometer actuator) as the output beam  170  is scanned along a substantially horizontal direction (e.g., with a galvanometer or resonant actuator) to achieve the straight lines. If a vertical deflection is not applied, the output beam  170  may trace out a curved path as it scans from side to side. In some implementations, the scanner  162  uses a vertical actuator to apply a dynamically adjusted vertical deflection as the output beam  170  is scanned horizontally as well as a discrete vertical offset between each horizontal scan (e.g., to step the output beam  170  to a subsequent row of a scan pattern). 
     With continued reference to  FIG. 2 , an overlap mirror  190  in this example implementation is configured to overlap the input beam  172  and output beam  170 , so that the beams  170  and  172  are substantially coaxial. In  FIG. 2 , the overlap mirror  190  includes a hole, slot, or aperture  192  through which the output beam  170  passes, and a reflecting surface  194  that reflects at least a portion of the input beam  172  toward the receiver  164 . The overlap mirror  190  may be oriented so that input beam  172  and output beam  170  are at least partially overlapped. 
     In some implementations, the overlap mirror  190  may not include a hole  192 . For example, the output beam  170  may be directed to pass by a side of mirror  190  rather than passing through an aperture  192 . The output beam  170  may pass alongside mirror  190  and may be oriented at a slight angle with respect to the orientation of the input beam  172 . As another example, the overlap mirror  190  may include a small reflective section configured to reflect the output beam  170 , and the rest of the overlap mirror  190  may have an AR coating configured to transmit the input beam  172 . 
     The input beam  172  may pass through a lens  196  which focuses the beam onto an active region  166  of the receiver  164 . The active region  166  may refer to an area over which receiver  164  may receive or detect input light. The active region may have any suitable size or diameter d, such as for example, a diameter of approximately 25 μm, 50 μm, 80 μm, 100 μm, 200 μm, 500 μm, 1 mm, 2 mm, or 5 mm. The overlap mirror  190  may have a reflecting surface  194  that is substantially flat or the reflecting surface  194  may be curved (e.g., the mirror  190  may be an off-axis parabolic mirror configured to focus the input beam  172  onto an active region of the receiver  140 ). 
     The aperture  192  may have any suitable size or diameter Φ 1 , and the input beam  172  may have any suitable size or diameter Φ 2 , where Φ 2  is greater than Φ 1 . For example, the aperture  192  may have a diameter Φ 1  of approximately 0.2 mm, 0.5 mm, 1 mm, 2 mm, 3 mm, 5 mm, or 10 mm, and the input beam  172  may have a diameter Φ 2  of approximately 2 mm, 5 mm, 10 mm, 15 mm, 20 mm, 30 mm, 40 mm, or 50 mm. In some implementations, the reflective surface  194  of the overlap mirror  190  may reflect 70% or more of input beam  172  toward the receiver  164 . For example, if the reflective surface  194  has a reflectivity R at an operating wavelength of the light source  160 , then the fraction of input beam  172  directed toward the receiver  164  may be expressed as R×[1−(Φ 1 /Φ 2 ) 2 ]. As a more specific example, if R is 95%, Φ 1  is 2 mm, and Φ 2  is 10 mm, then approximately 91% of the input beam  172  may be directed toward the receiver  164  by the reflective surface  194 . 
       FIG. 3  illustrates an example configuration in which several components of the lidar system  100  may operate to scan a 360-degree view of regard. Generally speaking, the field of view of a light source in this configuration follows a circular trajectory and accordingly defines a circular scan pattern on a two-dimensional plane. All points on the trajectory remain at the same elevation relative to the ground level, according to one implementation. In this case, separate beams may follow the circular trajectory with certain vertical offsets relative to each other. In another implementation, the points of the trajectory may define a spiral scan pattern in three-dimensional space. A single beam can be sufficient to trace out the spiral scan pattern but, if desired, multiple beams can be used. 
     In the example of  FIG. 3 , a rotating scan module  200  revolves around a central axis in one or both directions as indicated. An electric motor may drive the rotating scan module  200  around the central axis at a constant speed, for example. The rotating scan module  200  includes a scanner, a receiver, an overlap mirror, etc. The components of the rotating module  200  may be similar to the scanner  120 , the receiver  140 , and the overlap mirror  115 . In some implementations, the subsystem  200  also includes a light source and a controller. In other implementations, the light source and/or the controller are disposed apart from the rotating scan module  200  and/or exchange optical and electrical signals with the components of the rotating scan module  200  via corresponding links. 
     The rotating scan module  200  may include a housing  210  with a window  212 . Similar to the window  157  of  FIG. 1 , the window  212  may be made of glass, plastic, or any other suitable material. The window  212  allows outbound beams as well as return signals to pass through the housing  210 . The arc length defined by the window  212  can correspond to any suitable percentage of the circumference of the housing  210 . For example, the arc length can correspond to 5%, 20%, 30%, 60%, or possibly even 100% of the circumference. 
     Now referring to  FIG. 4 , a rotating scan module  220  is generally similar to the rotating scan module  200 . In this implementation, however, the components of the rotating scan module  220  are disposed on a platform  222  which rotates inside a stationary circular housing  230 . In this implementation, the circular housing  230  is substantially transparent to light at the lidar-system operating wavelength to pass inbound and outbound light signals. The circular housing  230  in a sense defines a circular window similar to the window  212 , and may be made of similar material. 
     Generating Pixels within a Field of Regard of the Lidar Systems 
       FIG. 5  illustrates an example scan pattern  240  which the lidar system  100  of  FIG. 1  can produce. The lidar system  100  may be configured to scan output optical beam  125  along one or more scan patterns  240 . In some implementations, the scan pattern  240  corresponds to a scan across any suitable field of regard (FOR) having any suitable horizontal FOR (FOR H ) and any suitable vertical FOR (FOR V ). For example, a certain scan pattern may have a field of regard represented by angular dimensions (e.g., FOR H ×FOR V ) 40°×30°, 90°×40°, or 60°×15°. As another example, a certain scan pattern may have a FOR H  greater than or equal to 10°, 25°, 30°, 40°, 60°, 90°, or 120°. As yet another example, a certain scan pattern may have a FOR V  greater than or equal to 2°, 5°, 10°, 15°, 20°, 30°, or 45°. In the example of  FIG. 5 , reference line  246  represents a center of the field of regard of scan pattern  240 . The reference line  246  may have any suitable orientation, such as, a horizontal angle of 0°(e.g., reference line  246  may be oriented straight ahead) and a vertical angle of 0°(e.g., reference line  246  may have an inclination of 0°), or the reference line  246  may have a nonzero horizontal angle or a nonzero inclination (e.g., a vertical angle of +10° or −10°). In  FIG. 5 , if the scan pattern  240  has a 60°×15° field of regard, then the scan pattern  240  covers a ±30° horizontal range with respect to reference line  246  and a ±7.5° vertical range with respect to reference line  246 . Additionally, the optical beam  125  in  FIG. 5  has an orientation of approximately −15° horizontal and +3° vertical with respect to reference line  246 . The beam  125  may be referred to as having an azimuth of −15° and an altitude of +3° relative to the reference line  246 . An azimuth (which may be referred to as an azimuth angle) may represent a horizontal angle with respect to the reference line  246 , and an altitude (which may be referred to as an altitude angle, elevation, or elevation angle) may represent a vertical angle with respect to the reference line  246 . 
     The scan pattern  240  may include multiple pixels  242 , and each pixel  242  may be associated with one or more laser pulses and one or more corresponding distance measurements. A cycle of scan pattern  240  may include a total of P x ×P y  pixels  242  (e.g., a two-dimensional distribution of P x  by P y  pixels). For example, the scan pattern  240  may include a distribution with dimensions of approximately 100-2,000 pixels  242  along a horizontal direction and approximately 4-400 pixels  242  along a vertical direction. As another example, the scan pattern  240  may include a distribution of 1,000 pixels  242  along the horizontal direction by 64 pixels  242  along the vertical direction (e.g., the frame size is 1000×64 pixels) for a total of 64,000 pixels per cycle of scan pattern  240 . The number of pixels  242  along a horizontal direction may be referred to as a horizontal resolution of the scan pattern  240 , and the number of pixels  242  along a vertical direction may be referred to as a vertical resolution of the scan pattern  240 . As an example, the scan pattern  240  may have a horizontal resolution of greater than or equal to 100 pixels  242  and a vertical resolution of greater than or equal to 4 pixels  242 . As another example, the scan pattern  240  may have a horizontal resolution of 100-2,000 pixels  242  and a vertical resolution of 4-400 pixels  242 . 
     Each pixel  242  may be associated with a distance (e.g., a distance to a portion of a target  130  from which the corresponding laser pulse was scattered) or one or more angular values. As an example, the pixel  242  may be associated with a distance value and two angular values (e.g., an azimuth and altitude) that represent the angular location of the pixel  242  with respect to the lidar system  100 . A distance to a portion of the target  130  may be determined based at least in part on a time-of-flight measurement for a corresponding pulse. An angular value (e.g., an azimuth or altitude) may correspond to an angle (e.g., relative to reference line  246 ) of the output beam  125  (e.g., when a corresponding pulse is emitted from lidar system  100 ) or an angle of the input beam  135  (e.g., when an input signal is received by lidar system  100 ). In some implementations, the lidar system  100  determines an angular value based at least in part on a position of a component of the scanner  120 . For example, an azimuth or altitude value associated with the pixel  242  may be determined from an angular position of one or more corresponding scanning mirrors of the scanner  120 . 
     In some implementations, the lidar system  100  concurrently directs multiple beams across the field of regard. In the example implementation of  FIG. 6 , the lidar system generates output beams  250 A,  250 B,  250 C, . . .  250 N etc., each of which follows a linear scan pattern  254 A,  254 B,  254 C, . . .  254 N. The number of parallel lines can be 2, 4, 12, 20, or any other suitable number. The lidar system  100  may angularly separate the beams  250 A,  250 B,  250 C, . . .  250 N, so that, for example, the separation between beams  250 A and  250 B at a certain distance may be 30 cm, and the separation between the same beams  250 A and  250 B at a longer distance may be 50 cm. 
     Similar to the scan pattern  240 , each of the linear scan patterns  254 A-N includes pixels associated with one or more laser pulses and distance measurements.  FIG. 6  illustrates example pixels  252 A,  252 B and  252 C along the scan patterns  254 A,  254 B and  254 C, respectively. The lidar system  100  in this example may generate the values for the pixels  252 A- 252 N at the same time, thus increasing the rate at which values for pixels are determined. 
     Depending on the implementation, the lidar system  100  may output the beams  250 A-N at the same wavelength or different wavelengths. The beam  250 A for example may have the wavelength of 1540 nm, the beam  250 B may have the wavelength of 1550 nm, the beam  250 C may have the wavelength of 1560 nm, etc. The number of different wavelengths the lidar system  100  uses need not match the number of beams. Thus, the lidar system  100  in the example implementation of  FIG. 6  may use M wavelengths with N beams, where  1 ≤M≤N. 
     Next,  FIG. 7  illustrates an example light-source field of view (FOV L ) and receiver field of view (FOV R ) for the lidar system  100 . In this disclosure, the terms receiver FOV and detector FOV (FOV D ) are used interchangeably. The light source  110  may emit pulses of light as the FOV L  and FOV R  are scanned by the scanner  120  across a field of regard (FOR). The light-source field of view may refer to an angular cone illuminated by the light source  110  at a particular instant of time or an angular cone that would be illuminated by the light source  110  at a particular instant of time if the light source  110  were to emit light at that instant of time. For example, when the light source  110  operates in a pulsed mode, the light source  110  may continuously change its orientation relative to the external world but actively illuminate corresponding regions only during the duty cycle. 
     Similarly, a receiver field of view may refer to an angular cone over which the receiver  140  may receive or detect light at a particular instant of time, and any light outside the receiver field of view may not be received or detected. For example, as the scanner  120  scans the light-source field of view across a field of regard, the lidar system  100  may send the pulse of light in the direction the FOV L  is pointing at the time the light source  110  emits the pulse. The pulse of light may scatter off the target  130 , and the receiver  140  may receive and detect a portion of the scattered light that is directed along or contained within the FOV R . 
     An instantaneous FOV may refer to an angular cone being illuminated by a pulse directed along the direction the light-source FOV is pointing at the instant the pulse of light is emitted. Thus, while the light-source FOV and the detector FOV are scanned together in a synchronous manner (e.g., the scanner  120  scans both the light-source FOV and the detector FOV across the field of regard along the same scan direction and at the same scan speed, maintaining the same relative position to each other), the instantaneous FOV remains “stationary,” and the detector FOV effectively moves relative to the instantaneous FOV. More particularly, when a pulse of light is emitted, the scanner  120  directs the pulse along the direction in which the light-source FOV currently is pointing. Each instantaneous FOV (IFOV) corresponds to a pixel. Thus, each time a pulse is emitted, the lidar system  100  produces or defines an IFOV (or pixel) that is fixed in place and corresponds to the light-source FOV at the time when the pulse is emitted. During operation of the scanner  120 , the detector FOV moves relative to the light-source IFOV but does not move relative to the light-source FOV. 
     In some implementations, the scanner  120  is configured to scan both a light-source field of view and a receiver field of view across a field of regard of the lidar system  100 . The lidar system  100  may emit and detect multiple pulses of light as the scanner  120  scans the FOV L  and FOV R  across the field of regard while tracing out the scan pattern  240 . The scanner  120  in some implementations scans the light-source field of view and the receiver field of view synchronously with respect to one another. In this case, as the scanner  120  scans FOV L  across a scan pattern  240 , the FOV R  follows substantially the same path at the same scanning speed. Additionally, the FOV L  and FOV R  may maintain the same relative position to one another as the scanner  120  scans FOV L  and FOV R  across the field of regard. For example, the FOV L  may be substantially overlapped with or centered inside the FOV R  (as illustrated in  FIG. 7 ), and the scanner  120  may maintain this relative positioning between FOV L  and FOV R  throughout a scan. As another example, the FOV R  may lag behind the FOV L  by a particular, fixed amount throughout a scan (e.g., the FOV R  may be offset from the FOV L  in a direction opposite the scan direction). As yet another example, during a time between the instant when a pulse is emitted and prior to the time when the pulse can return from a target located at the maximum distance R MAX , FOV R  may move relative to the FOV L  to define different amounts of overlap, as discussed in more detail below. 
     The FOV L  may have an angular size or extent Θ L  that is substantially the same as or that corresponds to the divergence of the output beam  125 , and the FOV R  may have an angular size or extent Θ R  that corresponds to an angle over which the receiver  140  may receive and detect light. The receiver field of view may be any suitable size relative to the light-source field of view. For example, the receiver field of view may be smaller than, substantially the same size as, or larger than the angular extent of the light-source field of view. In some implementations, the light-source field of view has an angular extent of less than or equal to 50 milliradians, and the receiver field of view has an angular extent of less than or equal to 50 milliradians. The FOV L  may have any suitable angular extent Θ L , such as for example, approximately 0.1 mrad, 0.2 mrad, 0.5 mrad, 1 mrad, 1.5 mrad, 2 mrad, 3 mrad, 5 mrad, 10 mrad, 20 mrad, 40 mrad, or 50 mrad. Similarly, the FOV R  may have any suitable angular extent Θ R , such as for example, approximately 0.1 mrad, 0.2 mrad, 0.5 mrad, 1 mrad, 1.5 mrad, 2 mrad, 3 mrad, 5 mrad, 10 mrad, 20 mrad, 40 mrad, or 50 mrad. The light-source field of view and the receiver field of view may have approximately equal angular extents. As an example, Θ L  and Θ R  may both be approximately equal to 1 mrad, 2 mrad, or 3 mrad. In some implementations, the receiver field of view is larger than the light-source field of view, or the light-source field of view is larger than the receiver field of view. For example, Θ L  may be approximately equal to 1.5 mrad, and Θ R  may be approximately equal to 3 mrad. As another example, Θ R  may be approximately L times larger than Θ L , where L is any suitable factor, such as for example, 1.1, 1.2, 1.5, 2, 3, 5, or 10. 
     A pixel  242  may represent or correspond to an instantaneous light-source FOV. As the output beam  125  propagates from the light source  110 , the diameter of the output beam  125  (as well as the size of the corresponding pixel  242 ) may increase according to the beam divergence Θ L . As an example, if the output beam  125  has a Θ L  of 2 mrad, then at a distance of 100 m from the lidar system  100 , the output beam  125  may have a size or diameter of approximately 20 cm, and a corresponding pixel  242  may also have a corresponding size or diameter of approximately 20 cm. At a distance of 200 m from the lidar system  100 , the output beam  125  and the corresponding pixel  242  may each have a diameter of approximately 40 cm. 
     A Lidar System Operating in a Vehicle 
     As indicated above, one or more lidar systems  100  may be integrated into a vehicle. In one example implementation, multiple lidar systems  100  may be integrated into a car to provide a complete 360-degree horizontal FOR around the car. As another example, 4-10 lidar systems  100 , each system having a 45-degree to 90-degree horizontal FOR, may be combined together to form a sensing system that provides a point cloud covering a 360-degree horizontal FOR. The lidar systems  100  may be oriented so that adjacent FORs have an amount of spatial or angular overlap to allow data from the multiple lidar systems  100  to be combined or stitched together to form a single or continuous 360-degree point cloud. As an example, the FOR of each lidar system  100  may have approximately 1-15 degrees of overlap with an adjacent FOR. In particular embodiments, a vehicle may refer to a mobile machine configured to transport people or cargo. For example, a vehicle may include, may take the form of, or may be referred to as a car, automobile, motor vehicle, truck, bus, van, trailer, off-road vehicle, farm vehicle, lawn mower, construction equipment, golf cart, motorhome, taxi, motorcycle, scooter, bicycle, skateboard, train, snowmobile, watercraft (e.g., a ship or boat), aircraft (e.g., a fixed-wing aircraft, helicopter, or dirigible), or spacecraft. In particular embodiments, a vehicle may include an internal combustion engine or an electric motor that provides propulsion for the vehicle. 
     In some implementations, one or more lidar systems  100  are included in a vehicle as part of an advanced driver assistance system (ADAS) to assist a driver of the vehicle in the driving process. For example, a lidar system  100  may be part of an ADAS that provides information or feedback to a driver (e.g., to alert the driver to potential problems or hazards) or that automatically takes control of part of a vehicle (e.g., a braking system or a steering system) to avoid collisions or accidents. The lidar system  100  may be part of a vehicle ADAS that provides adaptive cruise control, automated braking, automated parking, collision avoidance, alerts the driver to hazards or other vehicles, maintains the vehicle in the correct lane, or provides a warning if an object or another vehicle is in a blind spot. 
     In some cases, one or more lidar systems  100  are integrated into a vehicle as part of an autonomous-vehicle driving system. In an example implementation, the lidar system  100  provides information about the surrounding environment to a driving system of an autonomous vehicle. An autonomous-vehicle driving system may include one or more computing systems that receive information from the lidar system  100  about the surrounding environment, analyze the received information, and provide control signals to the vehicle&#39;s driving systems (e.g., steering wheel, accelerator, brake, or turn signal). For example, the lidar system  100  integrated into an autonomous vehicle may provide an autonomous-vehicle driving system with a point cloud every 0.1 seconds (e.g., the point cloud has a 10 Hz update rate, representing 10 frames per second). The autonomous-vehicle driving system may analyze the received point clouds to sense or identify targets  130  and their respective locations, distances, or speeds, and the autonomous-vehicle driving system may update control signals based on this information. As an example, if the lidar system  100  detects a vehicle ahead that is slowing down or stopping, the autonomous-vehicle driving system may send instructions to release the accelerator and apply the brakes. 
     An autonomous vehicle may be referred to as an autonomous car, driverless car, self-driving car, robotic car, or unmanned vehicle. An autonomous vehicle may be a vehicle configured to sense its environment and navigate or drive with little or no human input. For example, an autonomous vehicle may be configured to drive to any suitable location and control or perform all safety-critical functions (e.g., driving, steering, braking, parking) for the entire trip, with the driver not expected to control the vehicle at any time. As another example, an autonomous vehicle may allow a driver to safely turn their attention away from driving tasks in particular environments (e.g., on freeways), or an autonomous vehicle may provide control of a vehicle in all but a few environments, requiring little or no input or attention from the driver. 
     An autonomous vehicle may be configured to drive with a driver present in the vehicle, or an autonomous vehicle may be configured to operate the vehicle with no driver present. As an example, an autonomous vehicle may include a driver&#39;s seat with associated controls (e.g., steering wheel, accelerator pedal, and brake pedal), and the vehicle may be configured to drive with no one seated in the driver&#39;s seat or with little or no input from a person seated in the driver&#39;s seat. As another example, an autonomous vehicle may not include any driver&#39;s seat or associated driver&#39;s controls, and the vehicle may perform substantially all driving functions (e.g., driving, steering, braking, parking, and navigating) without human input. As another example, an autonomous vehicle may be configured to operate without a driver (e.g., the vehicle may be configured to transport human passengers or cargo without a driver present in the vehicle). As another example, an autonomous vehicle may be configured to operate without any human passengers (e.g., the vehicle may be configured for transportation of cargo without having any human passengers onboard the vehicle). 
     In some implementations, a light source of a lidar system is located remotely from some of the other components of the lidar system such as the scanner and the receiver. Moreover, a lidar system implemented in a vehicle may include fewer light sources than scanners and receivers. 
       FIG. 8  illustrates an example configuration in which a laser-sensor link  320  includes an optical link  330  and an electrical link  350  coupled between a laser  300  and a sensor  310 . The laser  300  may be configured to emit pulses of light and may be referred to as a laser system, laser head, or light source. The laser  300  may include, may be part of, may be similar to, or may be substantially the same as the light source  110  illustrated in  FIG. 1  and discussed above. Further, the scanner  302 , the receiver  304 , the controller  306 , and the mirror  308  may be similar to the scanner  120 , the receiver  140 , the controller  150 , and the mirror  115  discussed above. In the example of  FIG. 8 , the laser  300  is coupled to the remotely located sensor  310  by a laser-sensor link  320  (which may be referred to as a link). The sensor  310  may be referred to as a sensor head and may include the mirror  308 , the scanner  302 , the receiver  304 , and the controller  306 . In an example implementation, the laser  300  includes a pulsed laser diode (e.g., a pulsed DFB laser) followed by an optical amplifier, and light from the laser  300  is conveyed by an optical fiber of the laser-sensor link  320  of a suitable length to the scanner  120  in a remotely located sensor  310 . 
     The laser-sensor link  320  may include any suitable number of optical links  330  (e.g., 0, 1, 2, 3, 5, or 10) and any suitable number of electrical links  350  (e.g., 0, 1, 2, 3, 5, or 10). In the example configuration depicted in  FIG. 8 , the laser-sensor link  320  includes one optical link  330  from the laser  300  to an output collimator  340  and one electrical link  350  that connects the laser  300  to the controller  150 . The optical link  330  may include optical fiber (which may be referred to as fiber-optic cable or fiber) that conveys, carries, transports, or transmits light between the laser  300  and the sensor  310 . The optical fiber may be, for example, single-mode (SM) fiber, multi-mode (MM) fiber, large-mode-area (LMA) fiber, polarization-maintaining (PM) fiber, photonic-crystal or photonic-bandgap fiber, gain fiber (e.g., rare-earth-doped optical fiber for use in an optical amplifier), or any suitable combination thereof. The output collimator  340  receives optical pulses conveyed from the laser  300  by the optical link  330  and produces a free-space optical beam  312  that includes the optical pulses. The output collimator  340  directs the free-space optical beam  312  through the mirror  308  and to the scanner  302 . 
     The electrical link  350  may include electrical wire or cable (e.g., a coaxial cable or twisted-pair cable) that conveys or transmits electrical power and/or one or more electrical signals between the laser  300  and the sensor  310 . For example, the laser  300  may include a power supply or a power conditioner that provides electrical power to the laser  300 , and additionally, the power supply or power conditioner may provide power to one or more components of the sensor  310  (e.g., the scanner  304 , the receiver  304 , and/or the controller  306 ) via the one or more electrical links  350 . The electrical link  350  in some implementations may convey electrical signals that include data or information in analog or digital format. Further, the electrical link  350  may provide an interlock signal from the sensor  310  to the laser  300 . If the controller  306  detects a fault condition indicating a problem with the sensor  310  or the overall lidar system, the controller  306  may change a voltage on the interlock line (e.g., from 5 V to 0 V) indicating that the laser  300  should shut down, stop emitting light, or reduce the power or energy of emitted light. A fault condition may be triggered by a failure of the scanner  302 , a failure of the receiver  304 , or by a person or object coming within a threshold distance of the sensor  310  (e.g., within 0.1 m, 0.5 m, 1 m, 5 m, or any other suitable distance). 
     As discussed above, a lidar system can include one or more processors to determine a distance D to a target. In the implementation illustrated in  FIG. 8 , the controller  306  may be located in the laser  300  or in the sensor  310 , or parts of the controller  150  may be distributed between the laser  300  and the sensor  310 . In an example implementation, each sensor head  310  of a lidar system includes electronics (e.g., an electronic filter, transimpedance amplifier, threshold detector, or time-to-digital (TDC) converter) configured to receive or process a signal from the receiver  304  or from an APD or SPAD of the receiver  304 . Additionally, the laser  300  may include processing electronics configured to determine a time-of-flight value or a distance to the target based on a signal received from the sensor head  310  via the electrical link  350 . 
     Next,  FIG. 9  illustrates an example vehicle  354  with a lidar system  351  that includes a laser  352  with multiple sensor heads  360  coupled to the laser  352  via multiple laser-sensor links  370 . The laser  352  and the sensor heads  360  may be similar to the laser  300  and the sensor  310  discussed above, in some implementations. For example, each of the laser-sensor links  370  may include one or more optical links and/or one or more electrical links. The sensor heads  360  in  FIG. 9  are positioned or oriented to provide a greater than 30-degree view of an environment around the vehicle. More generally, a lidar system with multiple sensor heads may provide a horizontal field of regard around a vehicle of approximately 30°, 45°, 60°, 90°, 120°, 180°, 270°, or 360°. Each of the sensor heads may be attached to or incorporated into a bumper, fender, grill, side panel, spoiler, roof, headlight assembly, taillight assembly, rear-view mirror assembly, hood, trunk, window, or any other suitable part of the vehicle. 
     In the example of  FIG. 9 , four sensor heads  360  are positioned at or near the four corners of the vehicle (e.g., the sensor heads may be incorporated into a light assembly, side panel, bumper, or fender), and the laser  352  may be located within the vehicle (e.g., in or near the trunk). The four sensor heads  360  may each provide a 90° to 120° horizontal field of regard (FOR), and the four sensor heads  360  may be oriented so that together they provide a complete 360-degree view around the vehicle. As another example, the lidar system  351  may include six sensor heads  360  positioned on or around a vehicle, where each of the sensor heads  360  provides a 60° to 90° horizontal FOR. As another example, the lidar system  351  may include eight sensor heads  360 , and each of the sensor heads  360  may provide a 45° to 60° horizontal FOR. As yet another example, the lidar system  351  may include six sensor heads  360 , where each of the sensor heads  360  provides a 70° horizontal FOR with an overlap between adjacent FORs of approximately 10°. As another example, the lidar system  351  may include two sensor heads  360  which together provide a forward-facing horizontal FOR of greater than or equal to 300. 
     Data from each of the sensor heads  360  may be combined or stitched together to generate a point cloud that covers a greater than or equal to 30-degree horizontal view around a vehicle. For example, the laser  352  may include a controller or processor that receives data from each of the sensor heads  360  (e.g., via a corresponding electrical link  370 ) and processes the received data to construct a point cloud covering a 360-degree horizontal view around a vehicle or to determine distances to one or more targets. The point cloud or information from the point cloud may be provided to a vehicle controller  372  via a corresponding electrical, optical, or radio link  370 . In some implementations, the point cloud is generated by combining data from each of the multiple sensor heads  360  at a controller included within the laser  352  and provided to the vehicle controller  372 . In other implementations, each of the sensor heads  360  includes a controller or process that constructs a point cloud for a portion of the 360-degree horizontal view around the vehicle and provides the respective point cloud to the vehicle controller  372 . The vehicle controller  372  then combines or stitches together the points clouds from the respective sensor heads  360  to construct a combined point cloud covering a 360-degree horizontal view. Still further, the vehicle controller  372  in some implementations communicates with a remote server to process point cloud data. 
     In any event, the vehicle  354  may be an autonomous vehicle where the vehicle controller  372  provides control signals to various components  390  within the vehicle  354  to maneuver and otherwise control operation of the vehicle  354 . The components  390  are depicted in an expanded view in  FIG. 9  for ease of illustration only. The components  390  may include an accelerator  374 , brakes  376 , a vehicle engine  378 , a steering mechanism  380 , lights  382  such as brake lights, head lights, reverse lights, emergency lights, etc., a gear selector  384 , and/or other suitable components that effectuate and control movement of the vehicle  354 . The gear selector  384  may include the park, reverse, neutral, drive gears, etc. Each of the components  390  may include an interface via which the component receives commands from the vehicle controller  372  such as “increase speed,” “decrease speed,” “turn left 5 degrees,” “activate left turn signal,” etc. and, in some cases, provides feedback to the vehicle controller  372 . 
     In some implementations, the vehicle controller  372  receives point cloud data from the laser  352  or sensor heads  360  via the link  370  and analyzes the received point cloud data to sense or identify targets  130  and their respective locations, distances, speeds, shapes, sizes, type of target (e.g., vehicle, human, tree, animal), etc. The vehicle controller  372  then provides control signals via the link  370  to the components  390  to control operation of the vehicle based on the analyzed information. For example, the vehicle controller  372  may identify an intersection based on the point cloud data and determine that the intersection is the appropriate location at which to make a left turn. Accordingly, the vehicle controller  372  may provide control signals to the steering mechanism  380 , the accelerator  374 , and brakes  376  for making a proper left turn. In another example, the vehicle controller  372  may identify a traffic light based on the point cloud data and determine that the vehicle  354  needs to come to a stop. As a result, the vehicle controller  372  may provide control signals to release the accelerator  374  and apply the brakes  376 . 
     Example Receiver Implementation 
       FIG. 10  illustrates an example InGaAs avalanche photodiode (APD)  400 . Referring back to  FIG. 1 , the receiver  140  may include one or more APDs  400  configured to receive and detect light from input light such as the beam  135 . More generally, the APD  400  can operate in any suitable receiver of input light. The APD  400  may be configured to detect a portion of pulses of light which are scattered by a target located downrange from the lidar system in which the APD  400  operates. For example, the APD  400  may receive a portion of a pulse of light scattered by the target  130  depicted in  FIG. 1 , and generate an electrical-current signal corresponding to the received pulse of light. 
     The APD  400  may include doped or undoped layers of any suitable semiconductor material, such as for example, silicon, germanium, InGaAs, InGaAsP, or indium phosphide (InP). Additionally, the APD  400  may include an upper electrode  402  and a lower electrode  406  for coupling the ADP  400  to an electrical circuit. The APD  400  for example may be electrically coupled to a voltage source that supplies a reverse-bias voltage V to the APD  400 . Additionally, the APD  400  may be electrically coupled to a transimpedance amplifier which receives electrical current generated by the APD  400  and produces an output voltage signal that corresponds to the received current. The upper electrode  402  or lower electrode  406  may include any suitable electrically conductive material, such as for example a metal (e.g., gold, copper, silver, or aluminum), a transparent conductive oxide (e.g., indium tin oxide), a carbon-nanotube material, or polysilicon. In some implementations, the upper electrode  402  is partially transparent or has an opening to allow input light  410  to pass through to the active region of the APD  400 . In  FIG. 10 , the upper electrode  402  may have a ring shape that at least partially surrounds the active region of the APD  400 , where the active region refers to an area over which the APD  400  may receive and detect the input light  410 . The active region may have any suitable size or diameter d, such as for example, a diameter of approximately 25 μm, 50 μm, 80 μm, 100 μm, 200 μm, 500 μm, 1 mm, 2 mm, or 5 mm. 
     The APD  400  may include any suitable combination of any suitable semiconductor layers having any suitable doping (e.g., n-doped, p-doped, or intrinsic undoped material). In the example of  FIG. 10 , the InGaAs APD  400  includes a p-doped InP layer  420 , an InP avalanche layer  422 , an absorption layer  424  with n-doped InGaAs or InGaAsP, and an n-doped InP substrate layer  426 . Depending on the implementation, the APD  400  may include separate absorption and avalanche layers, or a single layer may act as both an absorption and avalanche region. The APD  400  may operate electrically as a PN diode or a PIN diode, and, during operation, the APD  400  may be reverse-biased with a positive voltage V applied to the lower electrode  406  with respect to the upper electrode  402 . The applied reverse-bias voltage V may have any suitable value, such as for example approximately 5 V, 10 V, 20 V, 30 V, 50 V, 75 V, 100 V, or 200 V. 
     In  FIG. 10 , photons of the input light  410  may be absorbed primarily in the absorption layer  424 , resulting in the generation of electron-hole pairs (which may be referred to as photo-generated carriers). For example, the absorption layer  424  may be configured to absorb photons corresponding to the operating wavelength of the lidar system  100  (e.g., any suitable wavelength between approximately 1400 nm and approximately 1600 nm). In the avalanche layer  422 , an avalanche-multiplication process occurs where carriers (e.g., electrons or holes) generated in the absorption layer  424  collide with the semiconductor lattice of the absorption layer  424 , and produce additional carriers through impact ionization. This avalanche process can repeat numerous times so that one photo-generated carrier may result in the generation of multiple carriers. As an example, a single photon absorbed in the absorption layer  424  may lead to the generation of approximately 10, 50, 100, 200, 500, 1000, 10,000, or any other suitable number of carriers through an avalanche-multiplication process. The carriers generated in an APD  400  may produce an electrical current that is coupled to an electrical circuit which may perform signal amplification, sampling, filtering, signal conditioning, analog-to-digital conversion, time-to-digital conversion, pulse detection, threshold detection, rising-edge detection, or falling-edge detection. 
     The number of carriers generated from a single photo-generated carrier may increase as the applied reverse bias V is increased. If the applied reverse bias V is increased above a particular value referred to as the APD breakdown voltage, then a single carrier can trigger a self-sustaining avalanche process (e.g., the output of the APD  400  is saturated regardless of the input light level). The APD  400  that is operated at or above a breakdown voltage may be referred to as a single-photon avalanche diode (SPAD) and may be referred to as operating in a Geiger mode or a photon-counting mode. The APD  400  that is operated below a breakdown voltage may be referred to as a linear APD, and the output current generated by the APD  400  may be sent to an amplifier circuit (e.g., a transimpedance amplifier). The receiver  140  (see  FIG. 1 ) may include an APD configured to operate as a SPAD and a quenching circuit configured to reduce a reverse-bias voltage applied to the SPAD when an avalanche event occurs in the SPAD. The APD  400  configured to operate as a SPAD may be coupled to an electronic quenching circuit that reduces the applied voltage V below the breakdown voltage when an avalanche-detection event occurs. Reducing the applied voltage may halt the avalanche process, and the applied reverse-bias voltage may then be re-set to await a subsequent avalanche event. Additionally, the APD  400  may be coupled to a circuit that generates an electrical output pulse or edge when an avalanche event occurs. 
     In some implementations, the APD  400  or the APD  400  along with transimpedance amplifier have a noise-equivalent power (NEP) that is less than or equal to 100 photons, 50 photons, 30 photons, 20 photons, or 10 photons. For example, the APD  400  may be operated as a SPAD and may have a NEP of less than or equal to 20 photons. As another example, the APD  400  may be coupled to a transimpedance amplifier that produces an output voltage signal with a NEP of less than or equal to 50 photons. The NEP of the APD  400  is a metric that quantifies the sensitivity of the APD  400  in terms of a minimum signal (or a minimum number of photons) that the APD  400  can detect. The NEP may correspond to an optical power (or to a number of photons) that results in a signal-to-noise ratio of 1, or the NEP may represent a threshold number of photons above which an optical signal may be detected. For example, if the APD  400  has a NEP of 20 photons, then the input beam  410  with 20 photons may be detected with a signal-to-noise ratio of approximately 1 (e.g., the APD  400  may receive 20 photons from the input beam  410  and generate an electrical signal representing the input beam  410  that has a signal-to-noise ratio of approximately 1). Similarly, the input beam  410  with 100 photons may be detected with a signal-to-noise ratio of approximately 5. In some implementations, the lidar system  100  with the APD  400  (or a combination of the APD  400  and transimpedance amplifier) having a NEP of less than or equal to 100 photons, 50 photons, 30 photons, 20 photons, or 10 photons offers improved detection sensitivity with respect to a conventional lidar system that uses a PN or PIN photodiode. For example, an InGaAs PIN photodiode used in a conventional lidar system may have a NEP of approximately 10 4  to 10 5  photons, and the noise level in a lidar system with an InGaAs PIN photodiode may be 10 3  to 10 4  times greater than the noise level in a lidar system  100  with the InGaAs APD detector  400 . 
     Referring back to  FIG. 1 , an optical filter may be located in front of the receiver  140  and configured to transmit light at one or more operating wavelengths of the light source  110  and attenuate light at surrounding wavelengths. For example, an optical filter may be a free-space spectral filter located in front of APD  400  of  FIG. 10 . This spectral filter may transmit light at the operating wavelength of the light source  110  (e.g., between approximately 1530 nm and 1560 nm) and attenuate light outside that wavelength range. As a more specific example, light with wavelengths of approximately 400-1530 nm or 1560-2000 nm may be attenuated by any suitable amount, such as for example, by at least 5 dB, 10 dB, 20 dB, 30 dB, or 40 dB. 
     Next,  FIG. 11  illustrates an APD  502  coupled to an example pulse-detection circuit  504 . The APD  502  can be similar to the APD  400  discussed above with reference to  FIG. 10 , or can be any other suitable detector. The pulse-detection circuit  504  can operate in the lidar system of  FIG. 1  as part of the receiver  140 . Further, the pulse-detection circuit  504  can operate in the receiver  164  of  FIG. 2 , the receiver  304  of  FIG. 8 , or any other suitable receiver. The pulse-detection circuit  504  alternatively can be implemented in the controller  150 , the controller  306 , or another suitable controller. In some implementations, parts of the pulse-detection circuit  504  can operate in a receiver and other parts of the pulse-detection circuit  504  can operate in a controller. For example, components  510  and  512  may be a part of the receiver  140 , and components  514  and  516  may be a part of the controller  150 . 
     The pulse-detection circuit  504  may include circuitry that receives a signal from a detector (e.g., an electrical current from the APD  502 ) and performs current-to-voltage conversion, signal amplification, sampling, filtering, signal conditioning, analog-to-digital conversion, time-to-digital conversion, pulse detection, threshold detection, rising-edge detection, or falling-edge detection. The pulse-detection circuit  504  may determine whether an optical pulse has been received by the APD  502  or may determine a time associated with receipt of an optical pulse by the APD  502 . Additionally, the pulse-detection circuit  504  may determine a duration of a received optical pulse. In an example implementation, the pulse-detection circuit  504  includes a transimpedance amplifier (TIA)  510 , a gain circuit  512 , a comparator  514 , and a time-to-digital converter (TDC)  516 . 
     The TIA  510  may be configured to receive an electrical-current signal from the APD  502  and produce a voltage signal that corresponds to the received electrical-current signal. For example, in response to a received optical pulse, the APD  502  may produce a current pulse corresponding to the optical pulse. The TIA  510  may receive the current pulse from the APD  502  and produce a voltage pulse that corresponds to the received current pulse. The TIA  510  may also act as an electronic filter. For example, the TIA  510  may be configured as a low-pass filter that removes or attenuates high-frequency electrical noise by attenuating signals above a particular frequency (e.g., above 1 MHz, 10 MHz, 20 MHz, 50 MHz, 100 MHz, 200 MHz, or any other suitable frequency). 
     The gain circuit  512  may be configured to amplify a voltage signal. As an example, the gain circuit  512  may include one or more voltage-amplification stages that amplify a voltage signal received from the TIA  510 . For example, the gain circuit  512  may receive a voltage pulse from the TIA  510 , and the gain circuit  512  may amplify the voltage pulse by any suitable amount, such as for example, by a gain of approximately 3 dB, 10 dB, 20 dB, 30 dB, 40 dB, or 50 dB. Additionally, the gain circuit  512  may also act as an electronic filter configured to remove or attenuate electrical noise. 
     The comparator  514  may be configured to receive a voltage signal from the TIA  510  or the gain circuit  512  and produce an electrical-edge signal (e.g., a rising edge or a falling edge) when the received voltage signal rises above or falls below a particular threshold voltage V T . As an example, when a received voltage rises above V T , the comparator  514  may produce a rising-edge digital-voltage signal (e.g., a signal that steps from approximately 0 V to approximately 2.5 V, 3.3 V, 5 V, or any other suitable digital-high level). As another example, when a received voltage falls below V T , the comparator  514  may produce a falling-edge digital-voltage signal (e.g., a signal that steps down from approximately 2.5 V, 3.3 V, 5 V, or any other suitable digital-high level to approximately 0 V). The voltage signal received by the comparator  514  may be received from the TIA  510  or the gain circuit  512  and may correspond to an electrical-current signal generated by the APD  502 . For example, the voltage signal received by the comparator  514  may include a voltage pulse that corresponds to an electrical-current pulse produced by the APD  502  in response to receiving an optical pulse. The voltage signal received by the comparator  514  may be an analog signal, and an electrical-edge signal produced by the comparator  514  may be a digital signal. 
     The time-to-digital converter (TDC)  516  may be configured to receive an electrical-edge signal from the comparator  514  and determine an interval of time between emission of a pulse of light by the light source and receipt of the electrical-edge signal. The output of the TDC  516  may be a numerical value that corresponds to the time interval determined by the TDC  516 . In some implementations, the TDC  516  has an internal counter or clock with any suitable period, such as for example, 5 ps, 10 ps, 15 ps, 20 ps, 30 ps, 50 ps, 100 ps, 0.5 ns, 1 ns, 2 ns, 5 ns, or 10 ns. The TDC  516  for example may have an internal counter or clock with a 20 ps period, and the TDC  516  may determine that an interval of time between emission and receipt of a pulse is equal to 25,000 time periods, which corresponds to a time interval of approximately 0.5 microseconds. Referring back to  FIG. 1 , the TDC  516  may send the numerical value “25000” to a processor or controller  150  of the lidar system  100 , which may include a processor configured to determine a distance from the lidar system  100  to the target  130  based at least in part on an interval of time determined by a TDC  516 . The processor may receive a numerical value (e.g., “25000”) from the TDC  516  and, based on the received value, the processor may determine the distance from the lidar system  100  to a target  130 . 
     Improving Receiver Operation Using Detector Arrays and/or FOV Sizing 
       FIG. 12  illustrates an example detector array  600  that can be implemented in the lidar system  100  or another suitable lidar system. The detector array  600  includes multiple detectors  602 A,  602 B, . . .  602 N, each of which also may be referred to herein as detector element or “detector site.” Each of the detector sites  602 A-N may be an APD, a SPAD, a PN photodiode, etc. Moreover, as discussed below, each of the detector sites  602 A-N in some cases may include a cluster of individual detectors (APDs, SPADs, etc.) to mitigate potential registration, tolerance, and capacitance issues. 
     The lidar system  100  may use multiple detector sites  602 A-N to scan multiple scan lines (or simply “lines”) in parallel using independent output beams. Referring back to  FIG. 6 , for example, a common signal source or separate signal sources can generate the output beams  250 A-N. The detector array  600  in this case may be configured to detect return pulses from the output beam  250 A using the detector site  602 A, pulses from the output beam  250 B using the detector site  602 B, etc. The lidar system  100  may emit light pulses associated with the different output beams  250 A-N at the same time and, for certain targets disposed in a particular manner relative to the lidar system  100 , the multiple detector sites  602 A-N may be illuminated with the corresponding return pulses substantially at the same time. 
     In other implementations, the detectors in the detector array  600  may be arranged horizontally rather than vertically to define different vertical scan lines. In general, the detector array  600  may include any suitable number N of detector sites  602 . The number of output beams M may be equal to Nor, if some of the beams are used to scan multiple lines, M may be less than N. 
     In some cases, the lidar system  100  performs a series of forward and reverse scans. As an example, a forward scan may include the detector FOR being scanned horizontally from left to right, and a reverse scan may include the detector being scanned from right to left, or vice versa. A reverse scan may be referred to as a back scan. As another example, a forward scan may include the detector FOR being scanned vertically (e.g., scanning upward or downward), and a reverse scan may include the detector FOR being scanned in the opposite direction. As yet another example, a forward scan may include the detector FOR begin scanned along any suitable direction (e.g., along a 45-degree angle), and a reverse scan may include the detector FOR being scanned along a substantially opposite direction. 
     The detector FOR may be scanned along a left-to-right direction during a forward scan, and the detector FOR may be scanned along a right-to-left direction during a reverse scan. In some cases, the forward and reverse scans may trace paths that are adjacent to or displaced with respect to one another. As an example, a reverse scan may follow a line in the field of regard that is displaced above, below, to the left of, or to the right of a previous forward scan. As another example, a reverse scan may scan a row in the field of regard that is displaced below a previous forward scan, and the next forward scan may be displaced below the reverse scan. The forward and reverse scans may continue in an alternating manner with each scan being displaced with respect to the previous scan until a complete field of regard has been covered. Scans may be displaced with respect to one another by any suitable angular amount, such as for example, by approximately 0.05°, 0.10, 0.2°, 0.5°, 1°, or 2°. 
     In some implementations, the lidar system  100  may be configured so that the detector FOV is larger than the light-source FOV, and the detector and light-source FOVs are substantially coincident or overlapped. The light source  110  may emit a pulse of light toward pixel #1 (e.g., when the pulse is emitted, the instantaneous light-source FOV may partially, substantially, or completely overlap pixel #1). The FOV of a detector may be larger than the light-source FOV, and when the pulse of light is emitted toward pixel #1, the detector FOV may contain and may be approximately centered on pixel #1. 
     As illustrated in  FIG. 13 , the detector FOV may not have any substantial initial offset with respect to the instantaneous light-source FOV, and as the pulse of light propagates to and from a target, the detector FOV scans to the right during a forward scan and to the left during a reverse scan. The size of the pixel (light-source FOV) and the detector FOV may be configured so that during a forward or reverse scan, the detector FOV may substantially contain the instantaneous light-source FOV and, accordingly pixel #1, at least until a round-trip time corresponding to the maximum range of the lidar system has elapsed. When the round-trip time corresponding to the maximum range R MAX  of the lidar system has elapsed, the detector FOV may have moved so that the instantaneous light-source FOV is located at or near the left or right edge of the detector FOV. For example, during a forward scan, after the round-trip time corresponding to the maximum range has elapsed, the left edge of the instantaneous light-source FOV may be substantially coincident with the left edge of the detector FOV. 
     After the round-trip time corresponding to the maximum range of the lidar system has elapsed, the detector FOV may have moved so that the instantaneous light-source FOV is fully outside the detector FOV. In some implementations, the detector FOV moves so that the instantaneous light-source FOV is only partially outside the FOV. In any case, the lidar system  100  causes the detector FOV to move sufficiently far relative to the instantaneous light-source FOV to ensure that, if a light pulse returns from a location beyond the maximum range R MAX  (if the target is highly cooperative, for example), the detector generates no signal or only a relatively weak signal, which the lidar system  100  can ignore. Otherwise, if the instantaneous light-source FOV is substantially within the detector FOV after the time it takes the light pulse to return from a distance larger than R MAX , the lidar system  100  may misinterpret the signal as the next pulse returning early (in the absence of other mechanisms that address the range ambiguity problem, such as pulse encoding). The range ambiguity problem is discussed in more detail below. 
     The lidar system  100  may not process pulses returning from targets that are too proximate, e.g., targets that are less than M meters away, in some implementations. To this end, the lidar system  100  may deactivate or reduce the gain provided by the receiver during the period of time from approximately when the light pulse is emitted until when the light pulse can return from a target located approximately M meters away. The lidar system  100  then may activate the receiver (e.g., restore or increase the gain provided by the receiver) after the pulse can return from targets located more than M meters away. The distance parameter M may have any suitable value, such as for example, 1 mm, 10 mm, 50 mm, 100 mm, 1 m, 2 m, 5 m, 10 m, 20 m, or 40 m. In some embodiments, the receiver may be deactivated or have its gain reduced by reducing or removing a reverse-bias voltage applied to the detector. As an example, the reverse-bias voltage applied to an APD may be reduced from approximately 50 V to approximately 20 V, and, after a particular period of time has elapsed, the reverse-bias voltage may be restored to 50 V. In some embodiments, the receiver may be deactivated or have its gain reduced by shutting off, deactivating, or reducing the gain of an electronic amplifier (e.g., reducing or removing a bias voltage or a power-supply voltage applied to the electronic amplifier). Referring to  FIGS. 1 and 11 , for example, the controller  150  can deactivate the TIA  510  or gain circuit  512  during the time period. Alternatively, the lidar system  100  may lower the gain of the TIA  510  or gain circuit  512  during this time period. However, as discussed below, when the lidar system  100  implements a unidirectional scan, the extent of the overlap between the light-source FOV and the detector FOV can be controlled so that scattered light returning from targets that are less than M meters away impinges on only a small portion (or no portion) of the active region of the detector. 
       FIG. 14  is a diagram of a detector array  620  which includes two detector sites  662 A,  662 B, which can be used in the lidar system  100  or another suitable lidar system. Similar to the detector array  600 , each of the detector sites  622 A and  662 B may include one or several APDs, a SPAD, etc. The two detector sites  662 A and  662 B may be offset from one another along a direction corresponding to the light-source scanning direction. The lidar system  100  may use the detector sites  662 A and  662 B with a same output beam. For convenience, detector sites below are referred to simply as detectors. 
       FIG. 15  illustrates forward and reverse scans based on the detector array of  FIG. 14 . The FOV of the light source  110  may be located between the FOVs of detectors  622 A and  662 B. The scanner (e.g., scanner  120  in  FIG. 1 , scanner  162  in  FIG. 2 , or scanner  302  in  FIG. 8 ) may be configured to scan the light-source FOV (as well as the FOVs of detectors  622 A and  662 B) in a forward-scanning direction and in a reverse-scanning direction across multiple pixels located downrange from the lidar system  100 . As an example, the scanner may scan the light-source FOV (and the detector FOVs) along the forward-scanning direction, and then the scanner may reverse direction and make a subsequent scan along the reverse-scanning direction. As discussed herein, forward and reverse scans may trace paths that are adjacent to or displaced with respect to one another. The forward and reverse scans may be performed alternately with each reverse scan displaced with respect to the previous forward scan, and each forward scan displaced with respect to the previous reverse scan. As an example, a forward scan may follow a substantially horizontal path, and for the subsequent reverse scan, the scanner may deflect the light-source FOV (as well as the FOVs of detectors  622 A and  622 B) vertically by some angle (e.g., 0.5°). 
     In  FIG. 15 , the forward scan traces across pixel #1 horizontally from left to right, and the reverse scan traces from right to left across pixel #2, which is located below pixel #1. In some implementations, the FOV of detector  622 A may be offset from the light-source field of view in a direction opposite the forward-scanning direction (which corresponds to the reverse-scanning direction), and the FOV of detector  622 B may be offset from the light-source FOV in the forward-scanning direction. In the forward scan illustrated in  FIG. 15 , the FOV of the detector  622 A lags behind the instantaneous light-source FOV (corresponding to pixel #1), and the FOV of the detector  622 B leads the instantaneous light-source FOV. In the reverse scan, the relative orientation of the detectors is interchanged so that the FOV of the detector  622 B lags behind the instantaneous light-source FOV (corresponding to pixel #2), and the FOV of detector  622 A leads the light-source FOV. During a forward scan, the lidar system  100  may use a signal from the detector  622 A to determine a distance to a target, and during a reverse scan, the lidar system  100  may use a signal from the detector  622 B to determine a distance to a target. In some implementations, a signal generated by the detector  622 B may be disregarded during a forward scan, and a signal generated by the detector  622 A may be disregarded during a reverse scan. The detector array  620  thus may include two detectors (e.g., a first detector and a second detector), where the first detector is used to detect scattered light during a forward scan, and the second detector is used to detect scattered light during a reverse scan. 
     In some implementations, during a forward scan, the light source  110  may emit a pulse of light, and the scanner (e.g., scanner  120  in  FIG. 1 , scanner  162  in  FIG. 2 , or scanner  302  in  FIG. 8 ) may direct the pulse of light toward pixel #1. When the pulse is emitted, the FOVs of the detectors  622 A and  622 B may each overlap less than or equal to 20% of pixel #1. The scanner may scan the FOVs of the detectors  622 A and  622 B along the forward-scanning direction (e.g., left to right in  FIG. 15 ), and the detector  622 A may detect a portion of the pulse of light which is scattered by a target located downrange from the lidar system  100 . As time progresses, the overlap of the FOV of the detector  622 B with pixel #1 may decrease until there is no overlap, and the overlap of the FOV of the detector  622 A with pixel #1 may increase until it reaches a maximum overlap (e.g., greater than or equal to 80% overlap). The maximum overlap between the FOV of the detector  622 A and pixel #1 may occur at a time that corresponds to the maximum range of the lidar system, and after that, the overlap between the FOV of the detector  622 A and pixel #1 may decrease as the forward scan continues. 
     During a reverse scan, the light source  110  may emit another pulse of light, and the scanner may direct the pulse of light toward pixel #2. When the pulse is emitted, the FOVs of the detectors  622 A and  622 B may each overlap less than or equal to 20% of pixel #2. The scanner may scan the FOVs of the detectors  622 A and  622 B along the reverse-scanning direction (e.g., right to left in  FIG. 15 ), and the detector  622 B may detect a portion of the pulse of light which is scattered by a target located downrange from the lidar system  100 . As time progresses, the overlap of the FOV of the detector  622 A with pixel #2 may decrease until there is no overlap, and the overlap of the FOV of the detector  622 B with pixel #2 may increase until it reaches a maximum overlap (e.g., greater than or equal to 80% overlap). The maximum overlap between the FOV of the detector  622 B and pixel #2 may occur at a time that corresponds to the maximum range of the lidar system, and after that, the overlap between the FOV of the detector  622 B and pixel #2 may decrease as the reverse scan continues. 
     In some cases, a lidar system may include one detector configured to detect scattered light during both forward and reverse scans. The lidar system  100  may include an optical element configured to direct scattered light to the detector during the forward scan and to direct scattered light to the detector during the reverse scan. As an example, the scanner (e.g., scanner  120  in  FIG. 1 , scanner  162  in  FIG. 2 , or scanner  302  in  FIG. 8 ) may be used to apply a first amount of fixed deflection or angular offset during a forward scan so that scattered light from an emitted pulse is directed to the detector. Similarly, the scanner may apply a second amount of deflection or angular offset during a reverse scan so that scattered light is directed to the second detector. As another example, the lidar system  100  may include an additional deflection mirror or a deflecting element (e.g., a wedged optic) that has two deflection states for directing scattered light to the detector during a forward or reverse scan. As another example, the lidar system  100  may include an optical element that provides two states for the orientation of the detector FOV. During a forward scan, the detector FOV may be oriented so that it lags the light-source FOV and detects scattered light from emitted pulses, and during a reverse scan, the detector FOV may be oriented so that it also lags the light-source FOV. 
     In some implementations, the lidar system  100  includes a splitter that splits each emitted pulse of light emitted from the light source  110  into two or more pulses of angularly separated light. The splitter may be a holographic optical element, a diffractive optical element, a polarizing beam splitter, a non-polarizing beam splitter, a beam splitter with a metallic or dielectric coating, etc. The splitter may be configured to split a pulse of light substantially equally into two pulses. More generally, the splitter may be configured to separate a pulse into any suitable number of pulses. The splitter may be located before or after the scanner  120 , for example. Depending on the implementation, the splitter may split the pulses along the scanning direction (which may be horizontal or vertical) or along the direction perpendicular to the scanning direction, for example. 
     In operation, the splitter may separate pulses by any suitable angle Θ, such as for example, 1 mrad, 2 mrad, 5 mrad, 10 mrad, 20 mrad, or 50 mrad. The scanner may scan pulses of light, which are emitted by the light source  110  and split by the splitter, along a scanning direction across pixels located downrange from the lidar system  100 . As an example, the splitter may split an emitted pulse into two pulses of angularly separated light (e.g., a first pulse and a second pulse). The detectors  622 A and  622 B in this implementation may be separated by a detector-separation distance along a direction corresponding to the scanning direction of the light pulses. The detector  622 A may be configured to detect scattered light from the first pulse of light, and the detector  622 B may be configured to detect scattered light from the second pulse of light. In some cases, the lidar system  100  may also include a processor configured to determine one or more distances to one or more targets based at least in part on a time of flight of the first pulse of light or a time of flight of the second pulse of light. 
     In an example scenario, the light source  110  emits a pulse of light at a time t 1 , and the splitter splits the pulse into two pulses (e.g., a first pulse and a second pulse). The scanner may scan a first light-source FOV associated with the first pulse and a second light-source FOV associated with the second pulse along the scanning direction and across the pixels located downrange from the lidar system  100 . The pixels may include pixel #1, pixel #2, pixel #3, pixel #4, and pixel #5 positioned in order along the scanning direction (e.g., the first or second light-source FOV may scan across the pixels and encounter the pixels in the following order: pixel #1, pixel #2, pixel #3, pixel #4, and pixel #5). In some cases, the scanner may direct the first pulse of light toward pixel #2 and the second pulse of light toward pixel #5. Additionally, the scanner may scan a FOV of the first detector and a FOV of the second detector along the scanning direction across the pixels. The first-detector FOV may be offset from the first light-source FOV in a direction opposite the scanning direction, where, at time t 1 , the first-detector FOV at least partially overlaps the first pixel, and the first instantaneous light-source FOV at least partially overlaps the second pixel. Similarly, the second detector FOV may be offset from the second instantaneous light-source FOV in a direction opposite the scanning direction, where, at time t 1 , the second detector FOV at least partially overlaps the fourth pixel, and the second instantaneous light-source FOV at least partially overlaps the fifth pixel. 
     With continued reference to  FIGS. 14 and 15 , the separation distance between the first and second pulses of light at the maximum range of the lidar system  100  corresponds to the separation distance between the detectors  622 A and  622 B. As an example, when the first and second pulses of light are incident on a target located at the maximum range of the lidar system  100 , the first and second pulses of light may be separated by a distance that corresponds to the detector-separation distance. When the first and second pulses of light are emitted, their fields of view may overlap pixels #2 and #5, respectively. When the first and second pulses of light return to the lidar system  100  after scattering from the target, the first-detector FOV may overlap pixel #2, and the second detector FOV may overlap pixel #5. In some implementations, the separation distance between the first and second pulses of light at the maximum range of the lidar system  100  may correspond to an odd number of pixels greater than or equal to three pixels. As an example, at the maximum range, the first and second pulses of light may be separated by a distance corresponding to three pixels so that when the first pulse is directed at pixel #2, the second pulse is directed at pixel #5. In some cases, the detector-separation distance may correspond to an odd number of pixels greater than or equal to three pixels. As an example, the detector-separation distance may correspond to three pixels so that when the first detector receives light from pixel #2, the second detector receives light from pixel #5. 
       FIG. 16  is a diagram of an example detector array  650  which can be used in the lidar system  100  or another suitable lidar system. The detector array  650  includes three detector sites  652 A,  652 B, and  652 C. The detector sites may be separated from one another by a detector-separation distance along a direction corresponding to the light-source scanning direction. 
       FIG. 17  illustrates forward and reverse scans based on the detector array in  FIG. 16 . During a forward scan, a splitter may split an emitted pulse into two pulses of angularly separated light (e.g., a first pulse and a second pulse which are directed to pixel #1 and pixel #2, respectively). When the pulse is emitted, the instantaneous light-source FOV associated with the first pulse (corresponding to pixel #1) may be located between the FOVs of detectors  652 A and  652 B, and the instantaneous light-source FOV associated with the second pulse (corresponding to pixel #2) may be located between the FOVs of the detectors  652 B and  652 C. The FOV of the detector  652 A may lag the instantaneous light-source FOV associated with the first pulse, and the detector  652 A may be configured to detect scattered light from the first pulse. Similarly, the FOV of the detector  652 B may lag the instantaneous light-source FOV associated with the second pulse, and the detector  652 B may be configured to detect scattered light from the second pulse. Additionally, during a forward scan, the signal from the detector  652 C may be ignored. In some implementations, there may be additional pixels (not illustrated in  FIG. 13 ) located between pixels #1 and #2 (and additional pixels located between pixels #3 and #4). 
     The scanner (e.g., scanner  120  in  FIG. 1 , scanner  162  in  FIG. 2 , or scanner  302  in  FIG. 8 ) may be configured to scan additional pulses of light, which are emitted by the light source  110  and split by the splitter, along a reverse-scanning direction corresponding to the direction opposite the forward-scanning direction. The light source  110  may emit an additional pulse of light while the scanner is scanning in the reverse-scanning direction. As discussed herein, scans of the reverse-scanning direction may be displaced with respect to the forward-scanning direction. In  FIG. 17 , the forward scan traces across pixels #1 and #2, and the reverse scan traces across pixels #3 and #4, which are located below pixels #1 and #2. The splitter may split the emitted pulse into a third pulse of light and a fourth pulse of light, which are angularly separated. The third pulse may be directed to pixel #3, and the fourth pulse may be directed to pixel #4. When the pulse is emitted, the instantaneous light-source FOV associated with the third pulse (corresponding to pixel #3) may be located between the FOVs of the detectors  652 B and  652 C, and the instantaneous light-source FOV associated with the second pulse (corresponding to pixel #4) may be located between the FOVs of detectors  652 A and  652 B. During a reverse scan, the FOV of the detector  652 C may lag the instantaneous light-source FOV associated with the third pulse, and the detector  652 C may be configured to detect scattered light from the third pulse. Similarly, the FOV of the detector  652 B may lag the instantaneous light-source FOV associated with the fourth pulse, and the detector  652 B may be configured to detect scattered light from the fourth pulse. Additionally, during a reverse scan, the signal from the detector  652 A may be ignored. 
     Now referring to  FIG. 18 , an example detector array  670 , which may be implemented in the lidar system  100  or another suitable lidar system, includes multiple detector sites in different rows as well as different columns. The arrangement of pixels on top of each other in vertical rows and side-by-side in horizontal rows may be used, for example, in the manner discussed above with reference to  FIGS. 12 and 14 , respectively. 
     The example detector array  670  includes six detector sites  672 A-F arranged in a 2×3 configuration. The detector array  670  may allow the lidar system  100  to simultaneously scan multiple rows in a field of regard. As an example, the detector  672 A and/or  672 B may scan a particular row (e.g., row #1), the detector  672 C and/or  672 D may scan another row (e.g., row #17), and the detector  672 E and/or  6762 F may scan a different row (e.g., row #33). On a subsequent scan across the field of regard, the detector  672 A and/or  672 B may scan row #2, the detector  672 C and/or  672 D may scan row #18, and the detector  672 E and/or  672 F may scan row #34. Further, the arrangement of two side-by-side detector sites  672 A/ 672 B,  672 C/ 672 D, etc. may be used to scan alternate pixels across a field of regard: the detector site  672 A may detect light from odd-numbered pixels, and the detector site  672 B may detect light from even-numbered pixels. 
     As discussed above, the lidar system  100  may be configured to detect targets within a range of R MAX  meters. The receiver  140  generally does not detect pulses reflected from targets located at more than R MAX  meters away, as these pulses are weak. The lidar system  100  accordingly may time pulse cycles so that by the time a pulse is emitted, the preceding pulse is no longer expected. However, the receiver  140  in some cases may detect a pulse from a highly reflective target located outside the R MAX -meter range. As a result, when the lidar system  100  emits pulse P followed by pulse P′, the detector sometimes detects the reflected pulse P and incorrectly interprets this reflection as a reflection of pulse P′. This situation is known as a range ambiguity problem. 
     In some implementations, the lidar system  100  can utilize a polygonal scanner or another suitable component to scan one or both dimensions along a single direction, rather than scanning forward and backward. Referring to  FIG. 19 , the lidar system  100  in one such implementation may use a detector with a larger FOV than the light-source FOV to also address the range ambiguity problem. More specifically, the light-source FOV may be offset relative to a detector FOV  682 , so that when a light pulse is emitted, the instantaneous light-source FOV  684 A associated with this pulse only slightly overlaps the detector FOV  682 . The lidar system advances the detector FOV  682  so that the detector FOV  682  travels over the IFOV  684 A (or, according to another perspective, the FOV  684 A travels across the detector IFOV  682 ). At the time corresponding to how long it takes for a pulse to reach, and return from, a target at the maximum distance of R MAX  meters, the IFOV  684 A is completely within the detector FOV  682 , according to one example implementation. 
     As further illustrated in  FIG. 19 , the IFOV  684 B associated with the subsequent light pulse does not overlap the detector FOV  682  at the same time as the detector FOV  682 , preventing range ambiguity errors. In other words, the subsequent pulse with the IFOV  684 B is emitted only after the IFOV  684 A leaves the detector FOV  682 . 
     To generate the initial offset of the instantaneous light-source FOV relative to the detector FOV, the light source  110  (see  FIG. 1 ) can be configured to direct the emitted pulses at a mirror in the scanner  120  along an optical path offset from the optical path of the returning pulse at an angle selected based on a distance the detector FOV travels relative to the instantaneous light-source FOV in the time it takes a light pulse travel to, and return from, a target located R MAX  meters away. Thus, the outbound and inbound optical paths may not be fully coaxial in this implementation. 
     For further clarity,  FIG. 20  illustrates an example method  690  for scanning a field of regard of a lidar system. The method  690  can be implemented as a set of instructions executable by the controller  150 , for example. The method  690  may be particularly advantageous when the lidar system implements bidirectional scanning. One example of scanner that implements bidirectional scanning using one or several galvanometer actuators is illustrated in  FIG. 2 . 
     The method  690  begins at block  692 , when a light pulse is generated for a certain position of the scanner. At block  694 , the detector FOV begins moving relative to the instantaneous light-source FOV. More specifically, when the pulse of light is emitted, the system causes the instantaneous light-source FOV to be approximately centered within the detector FOV (block  696 ). When a scattered pulse of light returns from a target at maximum operational distance of the lidar system, e.g., R MAX , the instantaneous light-source FOV is located near the edge of the detector FOV (block  698 ). The scattered light pulse is received using the detector at block  699 . The method returns to block  692 , where the next light pulse is emitted. 
     If the lidar system implements a unidirectional scan (see  FIGS. 3 and 4 , for example), the method instead may include steps or acts of causing the detector FOV to move relative to an instantaneous light source FOV, so that the amount of overlap between the detector FOV and the instantaneous light source FOV is different at different instances of time during a period after a pulse is emitted and before the pulse returns from a target located R MAX  meters away. 
     Spatially Separating Detector Array Elements in a Nonuniform Manner 
       FIG. 21  illustrates an example detector array  700  with nonuniform spatial separation between adjacent array elements, which can be implemented in the lidar system of  FIG. 1 . The detector array  700  may be generally similar to the detector  600  of  FIG. 12 , for example. Similar to the detector array  700 , detector sites  702 A,  702 B, etc. may include any suitable individual detector element or a cluster of detector elements. However, detector sites  702 B/ 702 C and  702 C/ 702 D in this example implementation are separated by distance d 1 , and detector sites  702 A/ 702 B and  702 D/ 702 E are separated by distance d 2 , and the distance d 2  is larger than the distance d 1 . The detector site  702 C may be disposed on the centerline  704 , which may correspond to the center of the field of regard. Thus, in the example of  FIG. 21 , spatial separation increases with the distance from the center of the field of regard. A lidar system that scans different lines using different output beams (see, e.g.,  FIG. 6 ), for an angular field of regard or a circular field of regard (see, e.g.,  FIGS. 3 and 4 ), may use the detector array  700  to scan line A using beam A and the detector site  702 A, line B using beam B and the detector site  702 B, etc. 
     A detector array  720  of  FIG. 22  similarly may have nonuniform spatial separation between array elements in different rows, with each row including more than one detector site. Similar to the examples discussed above, multiple detector sites in each row may be used to scan pixels in forward as well as reverse directions, scan pairs of odd/even pixels, etc. Detector sites  722 B/ 722 D,  722 A/ 722 C,  722 G/ 7221 ,  722 H/ 722 J in this example implementation are separated by distance d 2 , and detector sites  722 D/ 722 F,  722 C/ 722 E,  722 F/ 722 H,  722 E/ 722 G are separated by distance d 1 , and the distance d 2  is larger than the distance d 1 . The detector sites  722 E and  722 F may be disposed on the centerline  724 , which may correspond to the center of the field of regard. 
     The nonuniform linear separation between detector sites in the arrays  700  and  720  in some cases allows the lidar system to increase the field of regard or use fewer detectors to cover the same field of regard. In one example configuration, information density varies with the distance from the centerline  704  or  724 . Thus, referring to  FIG. 21 , pixels in the rows corresponding to the detector sites  702 B,  702 C, and  702 D correspond to targets or portions of a target that are closer together than pixels in the rows corresponding to the detector sites  702 A and  702 E. 
     For clarity, nonuniform information density which the detector arrays  700  and  720  may yield is schematically illustrated in  FIG. 23 . As depicted in this drawing, lines  752  representing information collected for different rows in a field of regard  750  are farther apart near the periphery as compared to the center. Similarly, if the detector arrays  700  and  720  are used with vertical scan lines as depicted in  FIG. 24 , lines  772  representing information collected for different columns in a field of regard  770  are farther apart near the periphery as compared to the center. 
     Alternatively, for a certain optical configuration, the light-source FOV varies with rows, so that pixels in the rows corresponding to the detector sites  702 B,  702 C, and  702 D correspond to a smaller light-source FOV, and pixels in the rows corresponding to the detector sites  702 A and  702 E correspond to a larger light-source fields of view. Accordingly, pixels corresponding to the detector sites  702 A and  702 E are larger than pixels corresponding to the  702 B,  702 C, and  702 D. To this end, the lidar system may include lenses or other elements to modify beam divergence. If desired, the controller  150  or another processing unit then may compensate for the differences in pixel size in different rows by executing appropriate geometrical transformations. 
     Using Clusters of Photodetectors as Detector Array Elements 
     Now referring to  FIG. 25 , a detector site  800  may be used in any of the detector arrays discussed above, or in those implementations where the receiver  140  includes a single detector to scan a field of regard in the manner illustrated in  FIG. 5 , for example. The detector site  800  includes a cluster of independently wired detectors  802 A-I. In general, a cluster can include any suitable number of detectors. For example, a cluster can include a 2×2, 3×3, etc. grouping of detectors. Each detector may be an APD, a SPAD, a PN photodiode, etc. The detectors  802 A-I need not be identical. Although  FIG. 25  depicts detectors with circular geometry, in general the detectors can have any suitable shape (e.g., square, rectangular, hexagonal). 
     In some implementations, the cluster defined by the detectors  802 A-I has a cumulative detector FOV slightly smaller than the area of the circle  804  into which the cluster is inscribed. The overall surface covered by the detectors  802 A-I may be only a little smaller than the area covered by the circle  804 . Although a single detector with the detector FOV of the circle  804  receives more photons than the cluster of the detectors  802 A-I, the capacitance of the detector site  800  may be significantly reduced relative to the single-detector implementation. As a result, the detector site  800  may generate less electrical noise than a single detector with the detector FOV equal to the circle  804 . 
     Further, although sparse detector arrays provide certain advantages as discussed above, there are certain challenges associated with manufacturing detector arrays. For example, elements of detector arrays generally require a separation in the order of millimeters, and these elements require high tolerance to each other as well to mechanical registration. It is therefore important to align detectors with high precision, and this alignment may be difficult to achieve in manufacturing or assembly. Referring back to  FIG. 16 , for example, the three detector sites  652 A,  652 B, and  652 C in some implementations may require highly accurate alignment to support the scan technique illustrated in  FIG. 17 . 
     Now referring to  FIG. 26 , each of several clusters  810 A,  810 B, and  810 C may define a cumulative detector FOV that is larger than the light-source FOV  820 , and each of the individual detectors in a cluster may have a FOV that is smaller than the light-source FOV  820 , so that the lidar system  100  may tolerate certain deviations in the position of the light-source FOV  820 . For clarity,  FIG. 26  depicts a centerline  822  which traverses the centers of the FOVs  820 A-C. The clusters  810 B and  810 C are positioned with certain displacements Δ1 and Δ2 relative to the cluster  810 A. Similar displacements may be expected with many manufacturing and assembly techniques for the detector array of  FIG. 16 , for example, and other detector arrays. Because the cumulative FOV of the clusters  810 A-C is larger than the light-source FOV  820 A-C, each cluster in  FIG. 26  contains the light-source FOV, despite displacement relative to the centerline  822 . 
     In one implementation in which the detectors  852 A- 8521  operate in linear mode, the lidar system  100  determines the parameters of the overlap between the light-source FOV and the cluster of detectors. Referring to  FIG. 25 , for example, the receiver  140  may be configured to separately control the gain for each of the detectors  852 A-I in a cluster  850 . At time t N , a light-source FOV  860  may not overlap the detector  852 A at all, completely overlap the detector  852 E, partially overlap the detector  852 F, etc. The lidar system  100  may conduct calibration at time t N  and expose the cluster  850  to a known amount of light uniformly distributed through the FOV  860 . The lidar system then may measure the amount of light from each of the detectors  852 A-I to determine the approximate extent to which the detector is contained within the light-source FOV  860 . Using this data, the lidar system  100  may set the appropriate gains via variable-gain amplifiers coupled to the individual detectors  852 A-I or by storing the appropriate values in the memory of the controller  150 , for example. Then, when the cluster  850  is exposed to a return pulse, the receiver  140  individually scales the voltage output by each individual detector to generate a weighed sum corresponding to the overall energy reading. As one alternative, the receiver  140  may simply identify at least one detector in the cluster  850  that is within the light-source FOV  860 . 
     As further illustrated in  FIG. 27 , the positioning of the light-source FOV  860  may shift relative to the cluster  850  during operation (e.g., due to mechanical movement of components with time or with temperature variation). The lidar system  100  accordingly may conduct a new calibration at time t M  and obtain new gain values. In some implementations, the lidar system  100  may conduct calibration opportunistically using targets with known reflective properties at known distances, for example. 
     Applying Different Gains to Detected Return Pulses 
     Next,  FIG. 28  illustrates an example detector site  900  which the lidar system  100  can use to apply a different gain to the signal generated by a return light pulse in view of the timing of the return pulse. The detector site  900  includes a high-gain detector  902 A and a high-gain detector  902 B for use with forward and reverse directions of a scan, respectively. The detectors  902 A and  902 B abut, or are disposed adjacent to, a low-gain detector  904  on the opposite sides of the low-gain detector  904 . When a light pulse is emitted, a pixel  906  is within the FOV of the low-gain detector  904 . Depending on the direction of the scan, the FOV of the high-gain detector  902 A or  902 B moves toward the pixel  906 . In this manner, the receiver  140  applies a lower gain to early return pulses, which may have relatively high energy, and applies a higher gain to pulses returning later. The relative differences in gain between the detectors  902 A/ 902 B and  904  may be due to the differences in physical and/or chemical properties of the detectors, sizes of the detectors or the FOVs, amplifiers coupled to the detectors, etc. 
     Referring to  FIG. 29 , a detector site  920  provides lower gain to signals generated in response to light pulses returning early by placing a lower-gain detector  924  ahead of a higher-gain detector  922  along the scan direction. In this example implementation, the lower-gain detector  924  partially overlaps the higher-gain detector  922 . This configuration allows for a more compact implementation that the configuration of  FIG. 26 . The FOV of the higher-gain detector  922  may be spatially offset from the initial position of a pixel  926  by the same amount regardless of whether the low-gain detector  924  also is used; however, the low-gain detector  924  in this implementation effectively shields the high-detector from early return pulses. The shielding of the higher-gain detector  922  may protect the circuitry of the higher-gain detector  922  and/or the associated amplifier from an excessively high current. 
       FIG. 30  illustrates another detector site  940  in which a low-gain detector  944  partially overlaps high-gain detector  942 A and  942 B on the two sides. The initial position of a pixel  948  in this configuration is within the FOV of the low-gain detector  944 . Depending on the direction of the scan, the FOV of the high-gain detector  942 A or  942 B advances toward the pixel  948 . This implementation is generally similar to the one discussed with reference to  FIG. 27 , but the detector site  940  may support bidirectional as well as unidirectional scans. 
     Although  FIGS. 29 and 30  depict circular detectors, these detectors in general may have any suitable shape (e.g., square, rectangular). Further, although the low-gain detectors in the examples of  FIGS. 29 and 30  are smaller than the high-gain detectors, in general the sizes of these detectors need not be different. 
     General Considerations 
     In some cases, a computing device may be used to implement various modules, circuits, systems, methods, or algorithm steps disclosed herein. As an example, all or part of a module, circuit, system, method, or algorithm disclosed herein may be implemented or performed by a general-purpose single- or multi-chip processor, a digital signal processor (DSP), an ASIC, a FPGA, any other suitable programmable-logic device, discrete gate or transistor logic, discrete hardware components, or any suitable combination thereof. A general-purpose processor may be a microprocessor, or, any conventional processor, controller, microcontroller, or state machine. A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. 
     In particular embodiments, one or more implementations of the subject matter described herein may be implemented as one or more computer programs (e.g., one or more modules of computer-program instructions encoded or stored on a computer-readable non-transitory storage medium). As an example, the steps of a method or algorithm disclosed herein may be implemented in a processor-executable software module which may reside on a computer-readable non-transitory storage medium. In particular embodiments, a computer-readable non-transitory storage medium may include any suitable storage medium that may be used to store or transfer computer software and that may be accessed by a computer system. Herein, a computer-readable non-transitory storage medium or media may include one or more semiconductor-based or other integrated circuits (ICs) (such, as for example, field-programmable gate arrays (FPGAs) or application-specific ICs (ASICs)), hard disk drives (HDDs), hybrid hard drives (HHDs), optical discs (e.g., compact discs (CDs), CD-ROM, digital versatile discs (DVDs), blue-ray discs, or laser discs), optical disc drives (ODDs), magneto-optical discs, magneto-optical drives, floppy diskettes, floppy disk drives (FDDs), magnetic tapes, flash memories, solid-state drives (SSDs), RAM, RAM-drives, ROM, SECURE DIGITAL cards or drives, any other suitable computer-readable non-transitory storage media, or any suitable combination of two or more of these, where appropriate. A computer-readable non-transitory storage medium may be volatile, non-volatile, or a combination of volatile and non-volatile, where appropriate. 
     In some cases, certain features described herein in the context of separate implementations may also be combined and implemented in a single implementation. Conversely, various features that are described in the context of a single implementation may also be implemented in multiple implementations separately or in any suitable sub-combination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination may in some cases be excised from the combination, and the claimed combination may be directed to a sub-combination or variation of a sub-combination. 
     While operations may be depicted in the drawings as occurring in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all operations be performed. Further, the drawings may schematically depict one more example processes or methods in the form of a flow diagram or a sequence diagram. However, other operations that are not depicted may be incorporated in the example processes or methods that are schematically illustrated. For example, one or more additional operations may be performed before, after, simultaneously with, or between any of the illustrated operations. Moreover, one or more operations depicted in a diagram may be repeated, where appropriate. Additionally, operations depicted in a diagram may be performed in any suitable order. Furthermore, although particular components, devices, or systems are described herein as carrying out particular operations, any suitable combination of any suitable components, devices, or systems may be used to carry out any suitable operation or combination of operations. In certain circumstances, multitasking or parallel processing operations may be performed. Moreover, the separation of various system components in the implementations described herein should not be understood as requiring such separation in all implementations, and it should be understood that the described program components and systems may be integrated together in a single software product or packaged into multiple software products. 
     Various implementations have been described in connection with the accompanying drawings. However, it should be understood that the figures may not necessarily be drawn to scale. As an example, distances or angles depicted in the figures are illustrative and may not necessarily bear an exact relationship to actual dimensions or layout of the devices illustrated. 
     The scope of this disclosure encompasses all changes, substitutions, variations, alterations, and modifications to the example embodiments described or illustrated herein that a person having ordinary skill in the art would comprehend. The scope of this disclosure is not limited to the example embodiments described or illustrated herein. Moreover, although this disclosure describes or illustrates respective embodiments herein as including particular components, elements, functions, operations, or steps, any of these embodiments may include any combination or permutation of any of the components, elements, functions, operations, or steps described or illustrated anywhere herein that a person having ordinary skill in the art would comprehend. 
     The term “or” as used herein is to be interpreted as an inclusive or meaning any one or any combination, unless expressly indicated otherwise or indicated otherwise by context. Therefore, herein, the expression “A or B” means “A, B, or both A and B.” As another example, herein, “A, B or C” means at least one of the following: A; B; C; A and B; A and C; B and C; A, B and C. An exception to this definition will occur if a combination of elements, devices, steps, or operations is in some way inherently mutually exclusive. 
     As used herein, words of approximation such as, without limitation, “approximately, “substantially,” or “about” refer to a condition that when so modified is understood to not necessarily be absolute or perfect but would be considered close enough to those of ordinary skill in the art to warrant designating the condition as being present. The extent to which the description may vary will depend on how great a change can be instituted and still have one of ordinary skill in the art recognize the modified feature as having the required characteristics or capabilities of the unmodified feature. In general, but subject to the preceding discussion, a numerical value herein that is modified by a word of approximation such as “approximately” may vary from the stated value by +0.5%, +1%, +2%, +3%, +4%, +5%, +10%, +12%, or +15%. 
     As used herein, the terms “first,” “second,” “third,” etc. may be used as labels for nouns that they precede, and these terms may not necessarily imply a particular ordering (e.g., a particular spatial, temporal, or logical ordering). As an example, a system may be described as determining a “first result” and a “second result,” and the terms “first” and “second” may not necessarily imply that the first result is determined before the second result. 
     As used herein, the terms “based on” and “based at least in part on” may be used to describe or present one or more factors that affect a determination, and these terms may not exclude additional factors that may affect a determination. A determination may be based solely on those factors which are presented or may be based at least in part on those factors. The phrase “determine A based on B” indicates that B is a factor that affects the determination of A. In some instances, other factors may also contribute to the determination of A. In other instances, A may be determined based solely on B.