Systems and methods for intra-shot dynamic adjustment of LIDAR detector gain

Systems, methods, and computer-readable media are disclosed for a systems and methods for intra-shot dynamic LIDAR detector gain. One example method my include emitting, by an optical ranging system at a first time, a first light pulse. The example method may also include increasing, after the first time, a sensitivity of a photodetector of the optical ranging system from a first sensitivity at the first time to a second sensitivity at a second time. The example method may also include decreasing the sensitivity of the photodetector of the optical ranging system from the second sensitivity at third time to the first sensitivity at a fourth time, wherein the fourth time is after the photodetector receives return light based on the first light pulse. The example method may also include emitting, by the optical ranging system at the fourth time, a second light pulse.

BACKGROUND

In a conventional LIDAR system, the return power (for example, power of light reflected back towards the LIDAR system from an object in the environment) may vary considerably depending on range, reflectivity, angle of incidence, surface features, and other factors. In order to accurately image a wide variety of surfaces as found in uncontrolled environments (for example, outdoors) it may be desirable to construct a LIDAR system that can detect objects in of as wide of a reflectivity range as possible at as far a distance as possible without saturating the detector or rendering it insensitive to low-reflectivity surfaces. This may be difficult when attempting to range an object of very low intensity at a very short distance, as it may be difficult to differentiate a low-intensity return from an object in the environment from internal reflections from the LIDAR system itself. Conventional solutions to this problem may include using high-cost high dynamic range receivers, placing a minimum range limit that is often meters away from the sensor, rendering a not-inconsiderable swathe of sensing area blind to all returns, and using high-complexity signal processing to differentiate between internal reflections and returns from surfaces external to the sensor, which may increase the processing requirements and may still be prone to uncertainty.

DETAILED DESCRIPTION

Overview

This disclosure relates to, among other things, systems and methods for intra-shot dynamic adjustment of LIDAR detector gain. In some embodiments, the systems and methods described herein may more particularly relate to dynamically adjusting the gain of a photodetector in an optical ranging system in order to vary the sensitivity of the photodetector to return light based on the amount of time that has passed since a corresponding light pulse was emitted from the optical ranging system (and based on the distance that the emitted light pulse has traveled from the optical ranging system). In some instances, the optical ranging system may be a LIDAR system (for simplicity, reference may be made hereinafter to a LIDAR system, but other optical ranging systems could be similarly applicable). In some instances, the photodetector may be an Avalanche Photodiode (APD), and may more specifically be an APD that operates in Geiger Mode (however, other types of photodetectors may also be used). This dynamic gain adjustment may be performed in order to detect objects of as wide of a reflectivity range as possible at as far a distance as possible without saturating the receiver or rendering it insensitive to low-reflectivity surfaces. Using such a dynamic gain to detect objects of as wide of a reflectivity range as possible may allow the LIDAR system to more accurately image a wide variety of surfaces as found in uncontrolled environments (for example, outdoors). One example of a conventional practice for addressing the aforementioned may involve changing the gain of the photodetector on a per-shot basis (for example, per light pulse emitted from the emitter device). This, however, may result in some percentage of return light being be outside the useful representation range of the detector, with “low gain” shots (for example, light pulses that are accompanied by a lower bias voltage being applied to the detector to result in a lower gain of the photodetector) potentially resulting in the photodetector unable to see return light from non-reflective objects in the environment, and “high gain” shots (for example, light pulses that are accompanied by a higher bias voltage being applied to the detector to result in a higher gain of the photodetector) saturating the photodetector. A photodetector being unable to “see” a non-reflective object may be indicative of the fact that non-reflective objects may reflect little to none of the emitted light back to the LIDAR system. As a result of this, little to no photons will reach the photodetector. Any photons that are able to reach the photodetector may be indistinguishable from mere environmental noise (for example stray photons that are detected by the photodetector that do not originate from the LIDAR system), and thus the non-reflective object may be effectively invisible to the photodetector during the low gain shots. Another conventional practice builds on this previous conventional practice by producing a high-dynamic-range detector by combining “high” and “low” gain shots and interspersing them throughout a LIDAR sweep. This, however, may result in many shots that contain limited or no information. Another alternative conventional solution to this may involve using a detector with native high dynamic range, but this conventional solution may entail great cost and complexity, as the noise floor of the detector may need to be extremely low for the photodetector to be useful.

Given these downfalls to some of the conventional approaches to addressing the phenomenon that return light power varies depending on range, the systems and methods described herein may provide solutions to dynamically adjust the detector sensitivity as emitted light from the LIDAR system travels further from the LIDAR system. These adjustments may be performed based on a user-defined function. In some embodiments, the gain of the photodetector may be dynamically adjusted by adjusting the bias voltage applied to the photodetector (the gain of the photodetector may be a function of the bias voltage applied to the photodetector). The dynamic application of the bias voltage may be performed using a number of different methods. One example may include using a high-speed digital to analog converter (DAC) to produce a continuous gain waveform. A second example may include an analog multiplexor with two or more voltage selections for a discrete level gain waveform. These two examples should not be taken as limiting, and any number of additional methods for dynamically changing the applied bias voltage may also be used.

In some embodiments, the dynamic adjustment of the photodetector gain (for example via the applied bias voltage) may begin with setting the bias voltage at or below a threshold value for a time frame in between emitting a light pulse from the emitting device (for example laser diode) and the light pulse exiting the interior of the LIDAR system and entering the environment. Setting the bias voltage of the photodetector to be at or below this threshold value may result in the photodetector operating in a linear mode (for example with a linear gain). This may be in contrast to operation of a photodetector in Geiger Mode, for example, which may involve the photodetector operating at a much higher gain (for example on the order of 105or 106). For example, the bias voltage may be reduced to 20V or lower. A linear-mode photodiode may respond to incident light by allowing an amount of current proportional to an intensity of the incident light intensity to flow as determined by a gain function. A photodiode in Geiger mode may instead avalanche with incident light and continue to pass current until quenched (that is, until it's applied bias voltage is lowered to below the photodiode's breakdown voltage). Operation of the photodetector in linear mode may result in the photodetector being insufficiently sensitive to achieve long-range detection using eye-safe photonic sources (for example sources that may be used in autonomous vehicle systems, such as the emitting device102, emitter402, and/or any other emitting device, emitter, and the like described herein). This may be because it may take many photons to achieve a signal that is higher than the noise floor of the system when the photodiode is operating in linear mode, whereas a Geiger-mode photodiode may be set to avalanche upon the incident of a single photon, and the amplitude of its response may be independent of the number of photons that have struck it. This operation of the photodetector in linear mode during this particular time frame may serve to prevent return photons that may have been reflected internally to the LIDAR system back towards the photodetector from being recognized as signals indicative of returns from objects in the environment. As described above, such returns may be difficult to distinguish from returns that originate from low-reflective objects close to the LIDAR system. Thus, these internal reflections may result in undesirable information for the LIDAR system.

In some embodiments, subsequent to the emitted light exiting the LIDAR system, the gain of the photodetector may be increased to allow the photodetector to detect when the emitted light reflects from objects in the environment and back towards the LIDAR system. In some instances, the gain of the receiver may be increased based on a user-defined function (example functions may be depicted inFIGS.1B-1C). The function may define what the bias voltage of the photodetector should be set to at any given time in the timeframe between the emitted light entering the environment and traversing towards the maximum detecting range of the photodetector. For example, the bias voltage applied to the photodetector may be dynamically adjusted over time instead of simply being increased to a maximum value immediately following the emitted light entering the environment. As a first example, the bias voltage may be steadily increased as the time since the emitted light exited the LIDAR system also increases (up until a time at which any return light received by the photodetector may originate from a maximum detection range of the LIDAR system, and the bias voltage detector may be brought to or below the threshold again as described above). As a second example, the bias voltage may be increased to a maximum value at a time at which return light received by the photodetector may originate before the maximum range, and then may be decreased. That is, the bias voltage may be increased to a maximum value corresponding to a time at which return light from the environment may originate from a particular region of interest in the environment. For example, it may be desirable to ensure that the detector is more sensitive to particular regions in the environment of the LIDAR system for a number of reasons. As a few non-limiting examples, there may be a known object of interest in the region or it may not be known if objects are in the region, but it may be desired to determine if objects do exist. As a third example, the gain may be altered based on external factors. For example, one external factor may include the ambient light of the LIDAR system (for example the gain may be minimized when the ambient light is greater during a bright day). Additional examples may include weak returns from dust or rain in the air, or secondary returns from windows, or extreme temperatures causing spontaneous avalanches of the photodetector. The above examples are not intended to be limiting, and the gain of the photodetector may be dynamically adjusted based on any other form of user-defined function as well.

In some embodiments, in addition to reducing the bias voltage of the photodetector to or below the threshold value while the emitted light is traversing the interior of the LIDAR system, the bias voltage may also be reduced to or below the threshold value at a second time. This second time may include a time at which return light from the environment may correspond to light that is returning from a maximum detecting range of the photodetector. That is, if the maximum detecting range of the photodetector is known, it may be possible to determine when light reflecting from that maximum distance may return to the LIDAR system and be detected by a photodetector (for example, given that the speed of light is known). The maximum range of the photodetector, for example, may be a factor of the rate at which the emitting device is emitting subsequent light pulses, but also may depend on other factors as well. An example of a maximum range may be 320 meters, but any other maximum range may also be possible. The purpose of also effectively blinding the photodetector at the maximum detecting range of the LIDAR system may be to prevent range aliasing. Range aliasing may be a phenomenon where light returns beyond the maximum range are detected as if they were within the range of the LIDAR system (for example, the light may be incorrectly identified as return light from a subsequent light pulse emitted from the LIDAR system). This may lead to inaccurate range information regarding objects in the environment of the LIDAR system. Thus, for each emitted beam of light it may be desirable to ensure that the detector may only be detecting return light within the maximum range window of the LIDAR system. In some instances, the bias voltage of the photodetector may also be reduced to or below the threshold value at other times not described herein. For example, operation of a photodiode in linear mode may be useful in situations when a photodiode in avalanche mode is spontaneously avalanching at too great a rate to be useful, and the signal power of the return is high enough to warrant linear mode. For example, this may be the case in a scenario where a clean data with a single scan of the environment at close range may be required.

In some embodiments, the above-mentioned function may be user-defined and may either be fixed or may change with successive shots (a “shot” may refer to a pulse of light emitted by the LIDAR system). A fixed function may involve the same function being used for each successive light pulse that is emitted from the LIDAR system (for example each successive shot). That is, the gain may increase and or decrease in the same manner at the same times with each successive light pulse. However, in some embodiments, the function may also be varied among some or all of the successive shots. For example, a first function may be used for a first shot, and a second function that is different than the first function may be used for a second shot. The use of different functions, for example, may be a useful way to increase dynamic range of the LIDAR system. That is, one shot may pick up bright objects in the environment, and the second may be used to identify dim objects in the environment. The sensitive shot can hide high-reflective objects in the responses of the dim objects, since the photodiode may not have recovered in time to respond to the highly reflective objects. By sweeping a single scan through various gains, as many returns as possible may be gathered, not just the strongest or the closest or the ones far enough apart that the photodiode has time to recover.

In some embodiments, the systems and methods described herein may be implemented as an open-loop system. That is, the detector gain function may be fixed as described above and the dynamic gain adjustment of the photodetector may be iteratively performed in the same manner upon every laser firing of the LIDAR system. In some embodiments, however, the systems and methods described herein may also be implemented as a closed-loop system. That is, the detector gain function may be altered based on information received back from the environment, such as timing information with respect to the timing of return light reflected from objects in the environment. As one example, the gain of the detector may be altered to peak at a particular time where it is determined from previous returns that an objects may exist in the environment. This alteration in the gain function may be performed so that more information can be obtained about this identified object, rather than maximizing the gain where it may have been determined previously that objects are not present. However, the gain may be altered in any number of other manners based on any other number of criteria as well. For example, monitoring the response of the system in real-time may make it possible to adjust the gain in the middle of a shot based on a determined noise floor level (ambient light). This may also be used as a form of active quenching, rapidly drawing down the applied bias voltage after an avalanche and reconstituting it in order to increase the response rate of the photodiode.

With reference to the figures,FIG.1Aincludes a schematic diagram of an example process100for an exemplary LIDAR system101that may employ dynamic photodetector gain adjustments as described above. With reference to the elements depicted in the process100, the LIDAR system101may include at least one or more emitting devices102, one or more detector devices103, one or more circuits104, and/or one or more controllers105. The LIDAR system101may also optionally include one or more emitter-side optical elements113(for example, which may be the same as optical element(s)404as described with respect toFIG.4) and/or one or more receiver-side optical elements114(for example, which may be the same as optical element(s)408as described with respect toFIG.4). Additionally, external to the LIDAR system101may be an environment108that may include one or more objects (for example object107aand/or object107b). Hereinafter, reference may be made to elements such as “emitting device,” “detector device,” “circuit,” “controller,” and/or “object,” however such references may similarly apply to multiple of such elements as well.

In some embodiments, an emitting device102may be a laser diode for emitting a light pulse (for example, the emitter402as described below with reference toFIG.4). A detector device103may be a photodetector (for example, the detector406as described below with reference toFIG.4), such as an Avalanche Photodiode (APD), or more specifically an APD that may operate in Geiger Mode (however any other type of photodetector may be used as well). It should be noted that the terms “photodetector” and “detector device” may be used interchangeably herein. A circuit104may be circuitry connected to the detector device103that may be used to dynamically alter the gain of the detector device103by applying varying bias voltages to the detector device103. The gain of the detector device103may be based on the bias voltage that is applied to the detector device103. The circuit104may be described in more detail inFIGS.2A-2Cbelow. The controller105may be a computing system (for example, the computing portion413described below with respect toFIG.4) that may be used to control any of the operations described with respect to process100. For example, the controller105may be a part of a closed-loop system in which the gain set by the circuit104may be adjusted based on return light from the environment108. However, in some instances the LIDAR system101may be an open-loop system and the circuit104may alternatively adjust the gain of the photodetector103based on a fixed, user-defined function, and the circuit104may function without the use of the controller105. Finally, an object107aand/or107bmay be any object that may be found in the environment108of the LIDAR system101(for example, object107amay be a vehicle and object107bmay be a pedestrian, but any other number or type of objects may be present in the environment108as well).

In some embodiments, the steps of the process100may proceed as follows. The process100may begin with an emitting device102emitting a light pulse106. The light pulse106may not immediately exit the LIDAR system101and enter the environment108, but may instead traverse the interior of the LIDAR system101, which may be shown as distance d1in the figure. That is, the light pulse106may travel distance d1from the emitting device102to an interface109between the interior portion of the LIDAR system101and the environment108. As described above, while light is traversing the interior of the LIDAR system101, it may be possible for some of the light pulse106to internally reflect. That is, the light pulse106may reflect from elements internal to the LIDAR system101and/or at the interface109back towards the detector device103. To mitigate or prevent the photodetector103from registering such internal reflections, the detector device103may be effectively blinded for a period during which any portion of the light pulse106might be traversing up to the distance d1and then back to the detector device103As described above, it may be undesirable for the detector device103to register these internal reflections because they may be difficult to distinguish from return reflections originating from low-reflectivity objects that are in the environment108(external to the LIDAR system) in close proximity to the LIDAR system101. Blinding the detector device103may include lowering a bias voltage of the detector device103to be at or below a lower threshold voltage value. For example, the lower threshold voltage value may be 20V, but any other voltage may similarly be applicable. Lowering the bias voltage of the detector device103to at or below this lower threshold voltage value may place the detector device103in a linear mode of operation in which the gain of the detector device103is linear. A linear-mode photodiode may respond to incident light by allowing an amount of current proportional to an intensity of the incident light intensity to flow, as determined a gain function. A photodiode in Geiger mode may instead avalanche with incident light and continue to pass current until quenched (that is, until it's applied bias voltage is lowered to below the photodiode's breakdown voltage). Operation of the detector device103in linear mode may result in the detector device103being insufficiently sensitive to achieve long-range detection using eye-safe photonic sources (for example sources that may be used in autonomous vehicle systems, such as the emitting device102, emitter402, and/or any other emitting device, emitter, and the like described herein). This may be because it may take many photons to achieve a signal that is higher than the noise floor of the system when the photodiode is operating in linear mode, whereas a Geiger-mode photodiode can be set to avalanche upon the incident of a single photon, and the amplitude of its response may be independent of the number of photons that have struck it.

In some embodiments, subsequent to the light pulse106reaching the interface109of the interior portion of the LIDAR system101and entering into the environment108(for example, corresponding to a time after which any return light reflected internal with the LIDAR system101would be received by the photodetector103), the bias voltage applied to the detector device103may again be increased above the lower threshold voltage value. This may correspondingly increase the gain of the detector device103such that the detector device103may be capable of detecting an amount of return photons from the environment108that is distinguishable from merely environmental noise. For example, the bias voltage may be increased above the 20V threshold. Additionally, as the light pulse106traverses through the environment108, the gain of the photodetector103may be increased or decreased (through a corresponding increase or decrease in the bias voltage applied to the detector device103) over time based on a user-defined function. As one non-limiting example, a user-defined function may look similar to the function152depicted inFIG.1B.

InFIG.1B, the x-axis may represent time, and the y-axis may represent a bias voltage that may be applied by the circuit104to the photodetector103at the corresponding times on the x-axis (for example T2, ΔT3, T4, ΔT5and T6). The gain of the detector device103may be based on the bias voltage, so the portions of the function where the applied bias voltage is increasing may correspond to an increase in the gain of the detector device103. The function152may include a lower threshold value156(for example which may be the same as the lower threshold voltage value) and an upper threshold value159, which may be a maximum bias voltage applied to the photodetector103. As depicted inFIG.1B, the function152may begin at time T1when the light pulse106is emitted from the emitting device102. As shown in the function152, the bias voltage applied to the photodetector103may be at or below the lower threshold value156until time T2. Time T2may correspond to a time at (or after) which light that has reached the interface109of the LIDAR system101would be received at the photodetector103(for example, reflected from the interface109back to the photodetector103). Subsequent to this time, T2, the bias voltage applied to the photodetector103may start to increase as shown by the increase in the function152. The function152may continue to increase over the time period ΔT3(which may represent a portion of a time period during which return light received at the photodetector103may originate from the light pulse106traversing the environment108) towards the upper threshold value159. The example function152may eventually peak at the upper threshold value159at time T4, which may correspond to a time that corresponds to the photodetector103receiving return light that may originate from the light pulse106reflecting from an object of interest in the environment108. For example, as depicted inFIG.1A, the object of interest may be the vehicle107c. In some instances, the function152may have been intentionally defined by a user to include a peak at this time so that the gain of the photodetector103may be highest when it is likely that the light pulse106will be received by the photodetector103subsequent to reflecting from the object of interest107cin the environment108. For example, such a peak may be chosen so that the photodetector103is most sensitive to return light from the particular region of interest designated by a user or the LIDAR system101. This may allow the LIDAR system101to capture the most amount of information from this region of interest relative to other areas of the environment108. Subsequent to this peak of the function152, the bias voltage may be depicted as decreasing over a period of time, ΔT5. The period of time ΔT5may include return light pulses being received at the photodetector103that may originate from the light pulse106traversing the environment108beyond the object of interest107c. Ultimately, the light pulse106may reach the maximum range of the photodetector. As described above, the bias voltage of the photodetector103may again be dropped to at or below the lower threshold value156at a time T6(which may correspond to a time at which any return light received by the photodetector106may originate from a light pulse106reflecting from an object at the maximum range of the photodetector103. in order to avoid range aliasing. This process100may then be repeated iteratively using either the same function152(for example in an open loop system), or a varying function (for example in a closed-loop system). Furthermore, it should be noted that whileFIG.1Bprovides an example of a user-defined function152that may be used to adjust the gain of the photodetector103, any other type of function could similarly be used to increase and/or decrease the gain of the photodetector103at varying levels and at varying times. For example, the function may steadily increase until the maximum detection range of the detector device103, at which point the bias voltage may be dropped to below the lower threshold bias voltage. Another example user-defined function175is shown inFIG.1C, which depicts a square wave user-defined function175that transitions between the lower threshold and upper threshold instantaneously at various times. Again, this user-defined function175depicted inFIG.1Cis merely another exemplification of a user-defined function, and any other type of user-defined function may be applicable as well.

Illustrative Control Circuitry

FIGS.2A-2Cdepict exemplary circuits that may be used to adjust a bias voltage applied to a photodetector (for example, photodetector103described with respect toFIG.1A, as well as any other photodetector or detecting device as described herein). That is, the exemplary circuits may be used to perform the gain adjustments described herein (for example, at least with respect toFIGS.1A and1B).FIG.2Amay depict a first example circuit200. The first example circuit200may include at least a controller202, a digital to analog converter (DAC)204, a buffer210, and/or a photodetector212. In some embodiments, the controller200may be the same as controller105described with respect toFIG.1Aand/or computing portion413described with respect toFIG.4. The controller202be used to generate an output signal used to control the bias voltage of the photodetector212. For example, the controller202may store information about a user-defined function (for example, the user defined function described with respect toFIG.1B, as well as any other user-defined function described herein) that may be used to control the bias voltage applied to the photodetector212. The controller202may use this function to determine what signal to output that will result in the appropriate bias voltage being applied to the photodetector212based on an amount of time that has passed since a light pulse was emitted from an emitting device of the LIDAR system. The signal output may be a digital output signal and may be transmitted to the DAC204. The DAC204may receive the digital signal and may convert the digital output signal to an analog signal that may then be provided to the photodetector212to adjust the bias voltage of the photodetector212. Before reaching the photodetector212, the analog output signal of the DAC204may also pass through a buffer210. In some embodiments, the buffer210may be included because the first example circuit200may have to contend with the fact that the DAC204may not produce sufficient power to drive a load directly. The buffer210may thus take the voltage provided by the DAC204and output the same voltage with significantly higher current driving capabilities.

FIG.2Bmay depict a second example circuit250. Similar to the first example circuit200, the second example circuit250may also include a controller252, DAC254, and a photodiode260. However, the second example circuit250may differ from the first example circuit200in that it may also include a power amplifier (PA)256instead of a buffer210. This second example circuit250may be faster in its response and also may pass AC voltages instead of DC voltages. In the second example circuit250, the photodiode may be powered by a ‘nominal’ bias voltage (the nominal bias voltage may be a bias voltage that the photodiode260may primarily operate at as a baseline, for example), and the DAC254and PA256may provide ‘additive’ voltages to that nominal bias voltage in an AC sense via capacitive coupling258. Under normal circumstances, the bias voltage may be at nominal, but when the DAC254and PA256change their voltage rapidly, that rapid voltage change may cross the capacitive coupling258and drag the bias voltage seen by the photodiode260up or down momentarily. Some benefits of this may be that the DAC254and PA256may not have to swing enormous voltages, and instead may only have to swing the amount of voltage required to change the photodiode bias (or even just half of that based on the value of the nominal bias voltage). The amount of time the voltage is swung may be dictated by the frequency of the DAC254and/or PA256signal and the cutoff frequency of the capacitive coupling. However, the amount of time a changed voltage needs to be held may not be of particular concern because the second example circuit250may only need to hold charges based on emitted light traveling at the speed of light.

FIG.2Cmay depict a third example circuit275. As depicted inFIG.2C, the third example circuit275may use a multiplexor282to produce a discrete level gain waveform. The multiplexor282may be used in place of a DAC (for example DAC204and/or DAC254) Similar toFIGS.2A-2B, the third example circuit275may include a controller280for producing output signals. However, in the third example circuit275, the controller may send a signal to the multiplexor282through a selection input286. The signal provided to the selection input286may indicate to the multiplexor282, which one or more input lines284(for example input line284aand/or input line284band/or any other number of input lines) to choose to provide as an output287to the photodiode288.

Illustrative Methods

FIG.3is an example method300for intra-shot dynamic adjustment of LIDAR detector gain in accordance with one or more example embodiments of the disclosure.

At block302of the method300inFIG.3, the method may include emitting, by an optical ranging system at a first time, a first light pulse. The laser, for example, may be the same as the emitting device102described with respect toFIG.1A, or any other emitting and/or emitter device described herein.

Block304of the method300may include increasing, after the first time, a sensitivity of a photodetector of the optical ranging system from a first sensitivity at the first time to a second sensitivity at a second time. In some embodiments, the gain of the photodetector may be increased by increasing the bias voltage that is applied to the photodetector. Increasing this bias voltage may take the photodetector out of its linear mode of operation (operating with a linear gain), which may effectively “unblind” the photodetector and allow it to register returning light from the environment.

In some instances, the gain of the receiver may be increased based on a particular function (an example of a function may be depicted inFIGS.1B and1Cdescribed above). The function may define what the gain should be set to at any given time in the timeframe between the emitted light entering the environment and traversing towards the maximum detecting range of the photodetector. This function may be user-defined and may either be fixed or may change with successive shots. For example, the gain of the detector may be dynamically altered over time instead of simply being increased to a maximum value immediately following the emitted light entering the environment. As a first example, the gain may be steadily increased as the time since the emitted light exited the LIDAR system also increases (up until the time at which the emitted light may reach the maximum detection range of the LIDAR system, and the gain detector may be brought below the threshold again as described above). As a second example, the gain may be increased to a maximum value at a point before the maximum range, and then may be decreased. That is, the gain may be increased to a maximum value at a particular region of interest. For example, it may be desirable to ensure that the detector is more sensitive to particular regions in the environment of the LIDAR system for a number of reasons. As a few non-limiting examples, there may be a known object of interest in the region or it may not be known if objects are in the region, but it may be desired to determine if objects do exist. As a third example, the gain may be altered based on external factors. For example, one external factor may include the ambient light of the LIDAR system (for example the gain may be minimized when the ambient light is greater during a bright day). The above examples are not intended to be limiting, and the gain of the photodetector may be dynamically adjusted based on any other form of user-defined function as well.

Block306of the method300may include decreasing the sensitivity of the photodetector of the optical ranging system from the second sensitivity at third time to the first sensitivity at a fourth time, wherein the fourth time is after the photodetector receives return light based on the first light pulse. In some embodiments, as described above, the gain of the photodetector may be reduced by reducing a bias voltage that is applied to the photodetector. The gain may be based on the bias voltage that is applied to the photodetector, so decreasing the bias voltage may result in a corresponding reduction in the gain of the photodetector. Setting the gain of the photodetector to be below this threshold value may result in the photodetector operating with a linear gain. This may be in contrast to operation of a photodetector in Geiger Mode, for example, which may involve the photodetector operating at a much higher gain. For example, the bias voltage may be reduced to 20V or lower. Operation of the photodetector in linear mode may effectively result in the photodetector being effectively “blind” to any returning light. The effective blinding of the photodetector during this particular time frame may serve to prevent the detector from detecting any return photons that may have been reflected internally to the LIDAR system. As described above, such returns may be difficult to distinguish from returns that originate from low-reflective objects close to the LIDAR system. Thus, these internal reflections may result in undesirable information for the LIDAR system.

An example of a specific type of region of interest for which dynamic gain adjustment may be performed may be a region that includes fog or exhaust gas from another vehicle. Return light from the region may be a very bright return, which may provide an indication that the region includes the fog or exhaust gas. Subsequently to detecting this very bright return, the gain of the photodetector may be decreased through that bright region and increased again once beyond the region. This may allow the photodetector to have increased sensitivity to what is immediately behind the bright object (behind the fog and/or exhaust gas). For example, example at five meters from the photodetector, there may be a region including steam coming out of an exhaust pipe and at six meters, there may be a person standing (behind steam from the perspective of the LIDAR system. The steam from the exhaust causes a very bright return and the photodetector may become saturated and thus unable to detect the person at six meters. Based on this, the gain may be decreased for return light originating from five meters away (where the steam is), and ramped back up at 5.5 meters or some distance beyond where the steam exists at five meters away.

In some embodiments, the reduction in bias voltage that is applied to the photodetector may be performed using a number of different methods. One example method may include using a high-speed digital to analog converter (DAC) to produce a continuous gain waveform. A second example method may include an analog multiplexor with two or more voltage selections for a discrete level gain waveform. Examples of circuitry that may be used for each of these methods may be described above with reference toFIGS.2A-2C. Additionally, these two examples should not be taken as non-limiting, and any number of additional methods for dynamically changing the applied bias voltage may also be used.

Block306of the method300may include emitting, by the optical ranging system at the fourth time, a second light pulse. Thus, the sensitivity of the photodetector may be at the first sensitivity at the time the second light pulse is emitted. This may prevent the photodetector from detecting return light that is reflected from internal components of the LIDAR system, avalanching, and entering a recovery period when the emitted light exits the LIDAR system and enters the environment. This may prevent the photodetector from being effectively blind to short range reflections from objects in the environment, as the recovery period may last for up to tens of nanoseconds.

The operations described and depicted in the illustrative process flow ofFIG.3may be carried out or performed in any suitable order as desired in various example embodiments of the disclosure. Additionally, in certain example embodiments, at least a portion of the operations may be carried out in parallel. Furthermore, in certain example embodiments, less, more, or different operations than those depicted inFIG.3may be performed.

Example Lidar System

FIG.4illustrates an example LIDAR system400, in accordance with one or more embodiments of this disclosure. The LIDAR system400may be representative of any number of elements described herein, such as the LIDAR system100described with respect toFIG.1A, as well as any other LIDAR systems described herein. The LIDAR system400may include at least an emitter portion401, a detector portion405, and a computing portion413.

In some embodiments, the emitter portion401may include at least one or more emitter(s)402(for simplicity, reference may be made hereinafter to “an emitter,” but multiple emitters could be equally as applicable) and/or one or more optical element(s)404. An emitter402may be a device that is capable of emitting light into the environment. Once the light is in the environment, it may travel towards an object412. The light may then reflect from the object and return towards the LIDAR system400and be detected by the detector portion405of the LIDAR system400as may be described below. For example, the emitter402may be a laser diode as described above. The emitter402may be capable of emitting light in a continuous waveform or as a series of pulses. An optical element404may be an element that may be used to alter the light emitted from the emitter402before it enters the environment. For example, the optical element404may be a lens, a collimator, or a waveplate. In some instances, the lens may be used to focus the emitter light. The collimator may be used to collimate the emitted light. That is, the collimator may be used to reduce the divergence of the emitter light. The waveplate may be used to alter the polarization state of the emitted light. Any number or combination of different types of optical elements404, including optical elements not listed herein, may be used in the LIDAR system400.

In some embodiments, the detector portion405may include at least one or more detector(s)406(for simplicity, reference may be made hereinafter to “a detector,” but multiple detectors could be equally as applicable) and/or one or more optical elements408. The detector may be a device that is capable of detecting return light from the environment (for example light that has been emitted by the LIDAR system400and reflected by an object412). For example, the detectors may be photodiodes. The photodiodes may specifically include Avalanche Photodiodes (APDs), which in some instances may operate in Geiger Mode. However, any other type of photodetector may also be used. The functionality of the detector406in capturing return light from the environment may serve to allow the LIDAR system100to ascertain information about the object412in the environment. That is, the LIDAR system100may be able to determine information such as the distance of the object from the LIDAR system100and the shape and/or size of the object412, among other information. The optical element408may be an element that is used to alter the return light traveling towards the detector406. For example, the optical element408may be a lens, a waveplate, or filter such as a bandpass filter. In some instances, the lens may be used to focus return light on the detector406. The waveplate may be used to alter the polarization state of the return light. The filter may be used to only allow certain wavelengths of light to reach the detector (for example a wavelength of light emitted by the emitter402). Any number or combination of different types of optical elements408, including optical elements not listed herein, may be used in the LIDAR system400.

In some embodiments, the computing portion may include one or more processor(s)414and memory416. The processor414may execute instructions that are stored in one or more memory devices (referred to as memory416). The instructions can be, for instance, instructions for implementing functionality described as being carried out by one or more modules and systems disclosed above or instructions for implementing one or more of the methods disclosed above. The processor(s)414can be embodied in, for example, a CPU, multiple CPUs, a GPU, multiple GPUs, a TPU, multiple TPUs, a multi-core processor, a combination thereof, and the like. In some embodiments, the processor(s)414can be arranged in a single processing device. In other embodiments, the processor(s)414can be distributed across two or more processing devices (for example multiple CPUs; multiple GPUs; a combination thereof; or the like). A processor can be implemented as a combination of processing circuitry or computing processing units (such as CPUs, GPUs, or a combination of both). Therefore, for the sake of illustration, a processor can refer to a single-core processor; a single processor with software multithread execution capability; a multi-core processor; a multi-core processor with software multithread execution capability; a multi-core processor with hardware multithread technology; a parallel processing (or computing) platform; and parallel computing platforms with distributed shared memory. Additionally, or as another example, a processor can refer to an integrated circuit (IC), an ASIC, a digital signal processor (DSP), a FPGA, a PLC, a complex programmable logic device (CPLD), a discrete gate or transistor logic, discrete hardware components, or any combination thereof designed or otherwise configured (for example manufactured) to perform the functions described herein.

The processor(s)414can access the memory416by means of a communication architecture (for example a system bus). The communication architecture may be suitable for the particular arrangement (localized or distributed) and type of the processor(s)414. In some embodiments, the communication architecture406can include one or many bus architectures, such as a memory bus or a memory controller; a peripheral bus; an accelerated graphics port; a processor or local bus; a combination thereof; or the like. As an illustration, such architectures can include an Industry Standard Architecture (ISA) bus, a Micro Channel Architecture (MCA) bus, an Enhanced ISA (EISA) bus, a Video Electronics Standards Association (VESA) local bus, an Accelerated Graphics Port (AGP) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express bus, a Personal Computer Memory Card International Association (PCMCIA) bus, a Universal Serial Bus (USB), and or the like.

Memory components or memory devices disclosed herein can be embodied in either volatile memory or non-volatile memory or can include both volatile and non-volatile memory. In addition, the memory components or memory devices can be removable or non-removable, and/or internal or external to a computing device or component. Examples of various types of non-transitory storage media can include hard-disc drives, zip drives, CD-ROMs, digital versatile disks (DVDs) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, flash memory cards or other types of memory cards, cartridges, or any other non-transitory media suitable to retain the desired information and which can be accessed by a computing device.

Each computing device400also can include mass storage417that is accessible by the processor(s)414by means of the communication architecture406. The mass storage417can include machine-accessible instructions (for example computer-readable instructions and/or computer-executable instructions). In some embodiments, the machine-accessible instructions may be encoded in the mass storage417and can be arranged in components that can be built (for example linked and compiled) and retained in computer-executable form in the mass storage417or in one or more other machine-accessible non-transitory storage media included in the computing device400. Such components can embody, or can constitute, one or many of the various modules disclosed herein. Such modules are illustrated as detector gain adjustment module420.

The detector gain adjustment module420including computer-executable instructions, code, or the like that responsive to execution by one or more of the processor(s)414may perform functions including adjusting the gain of the detector406as described herein. For example, the gain adjustment module420may be used to provide a signal to change the bias voltage applied to the detector406as described herein. Additionally, the functions may include execution of any other methods and/or processes described herein.

What has been described herein in the present specification and annexed drawings includes examples of systems, devices, techniques, and computer program products that, individually and in combination, permit the automated provision of an update for a vehicle profile package. It is, of course, not possible to describe every conceivable combination of components and/or methods for purposes of describing the various elements of the disclosure, but it can be recognized that many further combinations and permutations of the disclosed elements are possible. Accordingly, it may be apparent that various modifications can be made to the disclosure without departing from the scope or spirit thereof. In addition, or as an alternative, other embodiments of the disclosure may be apparent from consideration of the specification and annexed drawings, and practice of the disclosure as presented herein. It is intended that the examples put forth in the specification and annexed drawings be considered, in all respects, as illustrative and not limiting. Although specific terms are employed herein, they are used in a generic and descriptive sense only and not for purposes of limitation.

As used in this application, the terms “environment,” “system,” “unit,” “module,” “architecture,” “interface,” “component,” and the like refer to a computer-related entity or an entity related to an operational apparatus with one or more defined functionalities. The terms “environment,” “system,” “module,” “component,” “architecture,” “interface,” and “unit,” can be utilized interchangeably and can be generically referred to functional elements. Such entities may be either hardware, a combination of hardware and software, software, or software in execution. As an example, a module can be embodied in a process running on a processor, a processor, an object, an executable portion of software, a thread of execution, a program, and/or a computing device. As another example, both a software application executing on a computing device and the computing device can embody a module. As yet another example, one or more modules may reside within a process and/or thread of execution. A module may be localized on one computing device or distributed between two or more computing devices. As is disclosed herein, a module can execute from various computer-readable non-transitory storage media having various data structures stored thereon. Modules can communicate via local and/or remote processes in accordance, for example, with a signal (either analogic or digital) having one or more data packets (for example data from one component interacting with another component in a local system, distributed system, and/or across a network such as a wide area network with other systems via the signal).

As yet another example, a module can be embodied in or can include an apparatus with a defined functionality provided by mechanical parts operated by electric or electronic circuitry that is controlled by a software application or firmware application executed by a processor. Such a processor can be internal or external to the apparatus and can execute at least part of the software or firmware application. Still in another example, a module can be embodied in or can include an apparatus that provides defined functionality through electronic components without mechanical parts. The electronic components can include a processor to execute software or firmware that permits or otherwise facilitates, at least in part, the functionality of the electronic components.

In some embodiments, modules can communicate via local and/or remote processes in accordance, for example, with a signal (either analog or digital) having one or more data packets (for example data from one component interacting with another component in a local system, distributed system, and/or across a network such as a wide area network with other systems via the signal). In addition, or in other embodiments, modules can communicate or otherwise be coupled via thermal, mechanical, electrical, and/or electromechanical coupling mechanisms (such as conduits, connectors, combinations thereof, or the like). An interface can include input/output (I/O) components as well as associated processors, applications, and/or other programming components.

Further, in the present specification and annexed drawings, terms such as “store,” “storage,” “data store,” “data storage,” “memory,” “repository,” and substantially any other information storage component relevant to the operation and functionality of a component of the disclosure, refer to memory components, entities embodied in one or several memory devices, or components forming a memory device. It is noted that the memory components or memory devices described herein embody or include non-transitory computer storage media that can be readable or otherwise accessible by a computing device. Such media can be implemented in any methods or technology for storage of information, such as machine-accessible instructions (for example computer-readable instructions), information structures, program modules, or other information objects.