Silicon photomultiplier based lidar

By addressing saturation issues in SiPM-based LiDAR systems through time and saturation monitoring, the dynamic range is enhanced, enabling accurate signal strength and reflectance measurements.

KR1020260117836APending Publication Date: 2026-07-29MOTIONAL AD LLC
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
KR · KR
Patent Type
Applications
Current Assignee / Owner
MOTIONAL AD LLC
Filing Date
2022-05-13
Publication Date
2026-07-29

AI Technical Summary

Technical Problem

SiPM-based LiDAR systems face limitations in dynamic range due to saturation issues, which affect the accuracy of return signal strength and object reflectance measurements.

Method used

The technology enhances the dynamic range of SiPM-based LiDAR systems by minimizing the impact of long SPAD recharge times and monitoring saturation time, allowing for accurate determination of signal strength even when the sensor is saturated.

Benefits of technology

This approach enables high dynamic range sensor outputs that provide precise return signal strength and object reflectance information without increasing the number of microcells, improving the accuracy of LiDAR systems.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure P1020267023533_ABST
    Figure P1020267023533_ABST
Patent Text Reader

Abstract

Methods, systems, and computer program products for LiDAR having an increased dynamic range are provided. The method comprises the steps of filtering output pulses of a SiPM device into a substantially symmetric pulse shape and capturing timing information and intensity information of the filtered output pulses for at least one predetermined intensity level. The method comprises the step of monitoring the saturation of the SiPM device—in response to the saturation of the SiPM device, the width of the saturation stabilizer of each output pulse is determined. The method also comprises the step of extrapolating additional timing information and additional intensity information of each output pulse using the captured timing information, the captured intensity information, and the determined width of the saturation stabilizer.
Need to check novelty before this filing date? Find Prior Art

Description

Technology Field

[0001] Cross-reference regarding related applications

[0002] This application claims priority to U.S. provisional application No. 63 / 188,788 filed on May 14, 2021, the entire contents of which are incorporated herein by reference. Background Technology

[0003] LiDAR (Laser Detection and Ranging) is used to capture information from signals emitted by an emitter, reflected by an object, and detected by a detector. This information is used to determine features associated with an object, such as the object's range and velocity. In pulsed time-of-flight (TOF) LiDAR systems, the signals emitted by the transmitter consist of a series of laser pulses. In continuous wave (CW) LiDAR systems, the signals emitted by the transmitter are sine waves with known wavelengths. Brief explanation of the drawing

[0004] FIG. 1 is an exemplary environment in which a vehicle including one or more components of an autonomous driving system can be implemented. Figure 2 is a diagram of one or more systems of a vehicle including an autonomous driving system. FIG. 3 is a diagram of the components of one or more devices and / or one or more systems of FIG. 1 and FIG. 2. Figure 4 is a diagram of specific components of an autonomous driving system. Figure 5 illustrates an example of a LiDAR system. Figure 6 illustrates a LiDAR system in operation. Figure 7 illustrates the operation of the LiDAR system in more detail. Figure 8 is a diagram of a silicon photomultiplier tube (SiPM) device. Figure 9 is a graph of the single-photon-electron response of the SiPM device at various outputs. Figure 10 is a diagram illustrating output pulses. Figure 11 is an example of pulses with an increased dynamic range. Figure 12 is a process flow diagram of a process for extending the dynamic range of a SiPM device. Specific details for implementing the invention

[0005] In the following description, numerous specific details are presented for illustrative purposes to provide a complete understanding of the present disclosure. However, it will be apparent that the embodiments described by the present disclosure can be practiced without these specific details. In some cases, well-known structures and devices are illustrated in block diagram form to avoid unnecessarily obscuring aspects of the present disclosure.

[0006] Specific arrangements or sequences of schematic elements, such as those representing systems, devices, modules, instruction blocks, data elements, etc., are illustrated in the drawings for convenience of explanation. However, a person skilled in the art will understand that specific order or arrangements of schematic elements in the drawings are not intended to imply that a specific processing order or sequence of processes, or a separation of processes, is required unless explicitly stated otherwise. Furthermore, the inclusion of schematic elements in the drawings is not intended to imply that such elements are required in all embodiments, or that features represented by such elements in some embodiments may not be included in or combined with other elements, unless explicitly stated otherwise.

[0007] Furthermore, where connecting elements such as solid or dashed lines or arrows are used in the drawings to illustrate connections, relationships, or associations between or between two or more different schematic elements, the absence of any such connecting elements is not intended to imply that such connections, relationships, or associations may not exist. In other words, to avoid obscuring the present disclosure, some connections, relationships, or associations between elements are not illustrated in the drawings. Additionally, for convenience of illustration, a single connecting element may be used to represent multiple connections, relationships, or associations between elements. For example, where a connecting element represents the communication of signals, data, or instructions (e.g., "software instructions"), a person skilled in the art will understand that such an element may represent one or more signal paths (e.g., buses) that may be necessary to perform the communication.

[0008] Terms such as first, second, third, etc. are used to describe various elements, but these elements should not be limited by these terms. Terms such as first, second, third, etc. are used solely to distinguish one element from another. For example, without departing from the scope of the described embodiments, the first contact may be referred to as the second contact, and similarly, the second contact may be referred to as the first contact. Both the first contact and the second contact are contacts, but they are not identical contacts.

[0009] The terms used in the description of the various described embodiments in this specification are included only to describe specific embodiments and are not intended to be limiting. As used in the description of the various described embodiments and the appended claims, singular forms (“one,” “some,” and “it”) are intended to include plural forms and may be used interchangeably with “one or more” or “at least one” unless the context otherwise clearly indicates. It will also be understood that the term “and / or,” as used in this specification, refers to and encompasses all possible combinations of one or more of the associated listed items. It will further be understood that the terms “includes,” “including,” “comprises,” and / or “comprising,” when used in this description, specify the presence of the mentioned features, integers, steps, actions, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, actions, elements, components, and / or groups thereof.

[0010] As used herein, the terms “communication” and “to communicate” refer to at least one of the reception, receipt, transmission, delivery, provision, etc. of information (or, for example, information expressed by data, signals, messages, instructions, commands, etc.). One unit (e.g., device, system, component of a device or system, combinations thereof, etc.) communicating with another unit means that one unit can receive information directly or indirectly from another unit and / or transmit information to the other unit (e.g., transmit). This may refer to a direct or indirect connection that is essentially wired and / or wireless. Additionally, two units may be communicating with each other even if the transmitted information may be modified, processed, relayed and / or routed between the first unit and the second unit. For example, the first unit may be communicating with the second unit even if the first unit passively receives information and does not actively transmit information to the second unit. As another example, if at least one intermediate unit (e.g., a third unit located between the first unit and the second unit) processes information received from the first unit and transmits the processed information to the second unit, the first unit may be communicating with the second unit. In some embodiments, the message may refer to a network packet containing data (e.g., a data packet, etc.).

[0011] As used herein, the term “in case” is optionally interpreted, depending on the context, to mean “when,” “at,” “in response to a decision,” “in response to a detection,” etc. Similarly, phrases such as “when it is decided” or “when [the mentioned condition or event] is detected” are optionally interpreted, depending on the context, to mean “when it is decided,” “in response to a decision,” “when [the mentioned condition or event] is detected,” “in response to a detection,” etc. Additionally, as used herein, terms such as “has, have,” and “having” are intended to be open-ended terms. Furthermore, the phrase “based on” is intended to mean “at least partially based on,” unless otherwise explicitly stated.

[0012] Examples of the embodiments illustrated in the accompanying drawings will now be described in detail. In the following detailed description, numerous specific details are provided to provide a complete understanding of the various described embodiments. However, it will be apparent to those skilled in the art that the various described embodiments can be practiced without these specific details. In other cases, well-known methods, procedures, components, circuits, and networks have not been described in detail to avoid unnecessarily obscuring aspects of the embodiments.

[0013] General Overview

[0014] In some aspects and / or embodiments, the systems, methods, and computer program products described herein include or implement silicon photomultiplier tube (SiPM)-based LiDAR. Generally, a SiPM-based time-of-flight (ToF) LiDAR includes one or more SiPM devices (pixels) that capture a return signal from the environment (e.g., reflection, optical photon). A SiPM device according to the present technology can be operated to detect captured information in a saturated state. The return signal is filtered, and timing information and intensity information are extracted from the filtered output pulse. In response to the filtered output pulse reaching a saturation plateau, intensity information corresponding to the saturation plateau is extrapolated from the shape of the filtered output pulse (e.g., plateau width, rising edge slope).

[0015] Thanks to the implementation of the systems, methods, and computer program products described herein, technologies for SiPM-based TOF LiDAR enable high dynamic range (DR) sensor outputs that provide accurate return signal strength and object reflectance information. SiPMs typically become saturated. The technology enables determining strength when the sensor is saturated. Traditionally, the dynamic range of a SiPM is limited by the number of microcells within each SiPM pixel—which essentially limits strength and reflectance accuracy. The technology increases the dynamic range of the SiPM without the need to increase the number of microcells by minimizing the impact of long SPAD recharge times and monitoring the saturation time.

[0016] Now, referring to FIG. 1, an exemplary environment (100) is illustrated in which vehicles, including as well as vehicles not including an autonomous driving system, are operated. As illustrated, the environment (100) includes vehicles (102a to 102n), objects (104a to 104n), routes (106a to 106n), zones (108), vehicle-to-infrastructure (V2I) devices (110), networks (112), remote autonomous vehicle (AV) systems (114), fleet management systems (116), and V2I systems (118). Vehicles (102a to 102n), vehicle-to-infrastructure (V2I) devices (110), networks (112), autonomous vehicle (AV) systems (114), fleet management systems (116), and V2I systems (118) are interconnected via wired connections, wireless connections, or a combination of wired and wireless connections (e.g., establishing connections for communication, etc.). In some embodiments, objects (104a to 104n) are interconnected with at least one of the vehicles (102a to 102n), vehicle-to-infrastructure (V2I) devices (110), networks (112), autonomous vehicle (AV) systems (114), fleet management systems (116), and V2I systems (118) via wired connections, wireless connections, or a combination of wired and wireless connections.

[0017] Vehicles (102a through 102n) (individually referred to as vehicles (102) and collectively referred to as vehicles (102)) comprise at least one device configured to transport goods and / or people. In some embodiments, vehicles (102) are configured to communicate with a V2I device (110), a remote AV system (114), a fleet management system (116), and / or a V2I system (118) via a network (112). In some embodiments, vehicles (102) include automobiles, buses, trucks, trains, etc. In some embodiments, vehicles (102) are identical or similar to the vehicles (200) described herein (see FIG. 2). In some embodiments, one vehicle (200) of a set of vehicles (200) is associated with an autonomous fleet manager. In some embodiments, the vehicles (102) travel along their respective routes (106a to 106n) as described herein (individually referred to as route (106) and collectively referred to as routes (106)). In some embodiments, one or more vehicles (102) include an autonomous driving system (e.g., an autonomous driving system identical or similar to the autonomous driving system (202)).

[0018] The objects (104a to 104n) (individually referred to as objects (104) and collectively referred to as objects (104)) include, for example, at least one vehicle, at least one pedestrian, at least one cyclist, at least one structure (e.g., a building, a sign, a fire hydrant, etc.). Each object (104) is stationary (e.g., located in a fixed position for a period of time) or moving (e.g., having speed and associated with at least one trajectory). In some embodiments, the objects (104) are associated with corresponding locations within the zone (108).

[0019] Each of the routes (106a through 106n) (individually referred to as route (106) and collectively referred to as route (106)) is associated with a sequence of actions (also referred to as a trajectory) that connects states—along which the AV can travel—(e.g., defines the sequence of actions). Each route (106) starts at an initial state (e.g., a state corresponding to a first spatiotemporal position, velocity, etc.) and ends at a final target state (e.g., a state corresponding to a second spatiotemporal position different from the first spatiotemporal position) or a target area (e.g., a subspace of the allowable states (e.g., terminal states). In some embodiments, the first state includes a location where individuals or individuals must be picked up by the AV, and the second state or area includes a location or locations where individuals or individuals picked up by the AV must be dropped off. In some embodiments, the routes (106) include a plurality of acceptable state sequences (e.g., a plurality of spatiotemporal position sequences), and the plurality of state sequences are associated with a plurality of trajectories (e.g., define a plurality of trajectories). In one example, the routes (106) include only higher-level actions or inaccurate state positions, such as a series of connected roads determining the direction of turn at a road intersection. Additionally or alternatively, the routes (106) may include more accurate actions or states, such as, for example, accurate positions within specific target lanes or lane zones and target speeds at said positions.In one example, the routes (106) include multiple exact state sequences following at least one upper-level action sequence having a limited lookahead horizon to reach intermediate goals, wherein a combination of consecutive repetitions of the limited horizon state sequences is accumulated to correspond to multiple trajectories, and these multiple trajectories collectively form an upper-level route that terminates in a final goal state or region.

[0020] Area (108) includes a physical area (e.g., a geographical area) through which vehicles (102) can travel. In one example, area (108) includes at least one state (e.g., a country, a province, an individual state of a plurality of states included in a country), at least one part of a state, at least one city, at least one part of a city, etc. In some embodiments, area (108) includes at least one named thoroughfare (referred to herein as “road”), such as a highway, an interstate highway, a park road, a city street, etc. Additionally or alternatively, in some examples, area (108) includes at least one unnamed road, such as a driveway, a section of a parking lot, a section of an open space and / or undeveloped site, an unpaved path, etc. In some embodiments, the road includes at least one lane (e.g., a part of the road that can be crossed by vehicles (102)). In one example, the road includes at least one lane associated with at least one lane marking (e.g., identified based on at least one lane marking).

[0021] A vehicle-to-infrastructure (V2I) device (110) (sometimes referred to as a vehicle-to-infrastructure (V2X) device) comprises at least one device configured to communicate with vehicles (102) and / or a V2I infrastructure system (118). In some embodiments, the V2I device (110) is configured to communicate with vehicles (102), a remote AV system (114), a fleet management system (116), and / or a V2I system (118) via a network (112). In some embodiments, the V2I device (110) includes a radio frequency identification (RFID) device, signage, a camera (e.g., a two-dimensional (2D) and / or three-dimensional (3D) camera), a lane marker, a street light, a parking meter, etc. In some embodiments, the V2I device (110) is configured to communicate directly with vehicles (102). Additionally or alternatively, in some embodiments, the V2I device (110) is configured to communicate with vehicles (102), a remote AV system (114), and / or a fleet management system (116) via a V2I system (118). In some embodiments, the V2I device (110) is configured to communicate with the V2I system (118) via a network (112).

[0022] The network (112) includes one or more wired and / or wireless networks. In one example, the network (112) includes a cellular network (e.g., LTE (long term evolution) network, 3G (third generation) network, 4G (fourth generation) network, 5G (fifth generation) network, CDMA (code division multiple access) network, etc.), PLMN (public land mobile network), LAN (local area network), WAN (wide area network), MAN (metropolitan area network), telephone network (e.g., PSTN (public switched telephone network)), private network, ad-hoc network, intranet, internet, fiber-optic-based network, cloud computing network, etc., and a combination of some or all of these networks.

[0023] The remote AV system (114) includes at least one device configured to communicate with vehicles (102), a V2I device (110), the network (112), the remote AV system (114), a fleet management system (116), and / or a V2I system (118) via a network (112). In one example, the remote AV system (114) includes a server, a group of servers, and / or other similar devices. In some embodiments, the remote AV system (114) is co-located with the fleet management system (116). In some embodiments, the remote AV system (114) is involved in the installation of some or all of the vehicle's components, including an autonomous driving system, an autonomous vehicle compute, and software implemented by the autonomous vehicle compute. In some embodiments, the remote AV system (114) maintains (e.g., updates and / or replacements) such components and / or software throughout the vehicle's lifespan.

[0024] The fleet management system (116) includes at least one device configured to communicate with vehicles (102), a V2I device (110), a remote AV system (114), and / or a V2I infrastructure system (118). In one example, the fleet management system (116) includes a server, a group of servers, and / or other similar devices. In some embodiments, the fleet management system (116) is associated with a ridesharing company (e.g., an organization controlling the operation of a number of vehicles (e.g., vehicles including autonomous driving systems and / or vehicles not including autonomous driving systems)).

[0025] In some embodiments, the V2I system (118) includes at least one device configured to communicate with vehicles (102), a V2I device (110), a remote AV system (114), and / or a fleet management system (116) via a network (112). In some examples, the V2I system (118) is configured to communicate with the V2I device (110) via a different connection from the network (112). In some embodiments, the V2I system (118) includes a server, a group of servers, and / or other similar devices. In some embodiments, the V2I system (118) is associated with a municipality or a private organization (e.g., a private organization maintaining the V2I device (110), etc.).

[0026] The number and arrangement of elements exemplified in FIG. 1 are provided as examples. There may be additional elements, fewer elements, different elements, and / or differently arranged elements than those exemplified in FIG. 1. Additionally or alternatively, at least one element of the environment (100) may perform one or more functions described as being performed by at least one different element of FIG. 1. Additionally or alternatively, at least one set of elements of the environment (100) may perform one or more functions described as being performed by at least one set of different elements of the environment (100).

[0027] Now, referring to FIG. 2, the vehicle (200) includes an autonomous driving system (202), a powertrain control system (204), a steering control system (206), and a brake system (208). In some embodiments, the vehicle (200) is identical or similar to the vehicle (102) (see FIG. 1). In some embodiments, the vehicle (102) has autonomous driving capabilities (e.g., fully autonomous vehicle (e.g., a vehicle that does not rely on human intervention), highly autonomous vehicle (e.g., a vehicle that does not rely on human intervention in certain situations), etc., without limitation, and implements at least one function, feature, device, etc. that enables the vehicle (200) to be operated partially or fully without human intervention). For a detailed description of fully autonomous vehicles and highly autonomous vehicles, reference may be made to SAE International's standard J3016: Taxonomy and Definitions for Terms Related to On-Road Motor Vehicle Automated Driving Systems, the entirety of which is included by reference. In some embodiments, the vehicle (200) is associated with an autonomous driving fleet manager and / or a ride-sharing company.

[0028] The autonomous driving system (202) includes a sensor suite comprising one or more devices such as cameras (202a), LiDAR sensors (202b), radar sensors (202c), and microphones (202d). In some embodiments, the autonomous driving system (202) may include more or fewer devices and / or different devices (e.g., ultrasonic sensors, inertial sensors, GPS receivers (discussed below), mileage sensors that generate data associated with an indication of the distance traveled by the vehicle (200), etc.). In some embodiments, the autonomous driving system (202) uses one or more devices included in the autonomous driving system (202) to generate data associated with the environment (100) described herein. Data generated by one or more devices of the autonomous driving system (202) may be used by one or more systems described herein to observe the environment (e.g., environment (100)) where the vehicle (200) is located. In some embodiments, the autonomous driving system (202) includes a communication device (202e), an autonomous driving vehicle compute (202f), and a drive-by-wire (DBW) system (202h).

[0029] The cameras (202a) include at least one device configured to communicate with a communication device (202e), an autonomous vehicle compute (202f), and / or a safety controller (202g) via a bus (e.g., a bus identical or similar to the bus (302) of FIG. 3). The cameras (202a) include at least one camera (e.g., a digital camera using a light sensor such as a charge-coupled device (CCD), a thermal camera, an infrared (IR) camera, an event camera, etc.) for capturing images including physical objects (e.g., a car, a bus, a curb, people, etc.). In some embodiments, the camera (202a) generates camera data as an output. In some examples, the camera (202a) generates camera data including image data associated with the image. In this example, the image data may specify at least one parameter corresponding to the image (e.g., image characteristics such as exposure, brightness, etc., image timestamp, etc.). In such examples, the images may be in a format (e.g., RAW, JPEG, PNG, etc.). In some embodiments, the camera (202a) includes a plurality of independent cameras configured on the vehicle (e.g., located on the vehicle) to capture images for stereopsis (stereo vision). In some examples, the camera (202a) includes a plurality of cameras, which generate image data and transmit the image data to an autonomous vehicle compute (202f) and / or a fleet management system (e.g., a fleet management system identical or similar to the fleet management system (116) of FIG. 1). In such examples, the autonomous vehicle compute (202f) determines the depth to one or more objects within the field of view of at least two of the plurality of cameras based on image data from at least two cameras.In some embodiments, the cameras (202a) are configured to capture images of objects within a certain distance (e.g., up to 100 meters, up to 1 kilometer, etc.) from the cameras (202a). Accordingly, the cameras (202a) include features such as sensors and lenses that are optimized to recognize objects at one or more distances from the cameras (202a).

[0030] In one embodiment, the camera (202a) includes at least one camera configured to capture one or more images associated with one or more traffic lights, street signs, and / or other physical objects that provide visual driving information. In some embodiments, the camera (202a) generates traffic light data associated with one or more images. In some examples, the camera (202a) generates TLD data associated with one or more images that include a format (e.g., RAW, JPEG, PNG, etc.). In some embodiments, the camera (202a) that generates TLD data differs from other systems described herein that include cameras in that the camera (202a) may include one or more cameras having a wide field of view (e.g., a wide-angle lens, a fisheye lens, a lens having a field of view of approximately 120 degrees or more, etc.) to generate images of as many physical objects as possible.

[0031] The LiDAR (Laser Detection and Ranging) sensors (202b) include at least one device configured to communicate with a communication device (202e), an autonomous vehicle compute (202f), and / or a safety controller (202g) via a bus (e.g., a bus identical or similar to the bus (302) of FIG. 3). The LiDAR sensors (202b) may be SiPM-based LiDARs. The LiDAR sensors (202b) include a system configured to transmit light from a light emitter (e.g., a laser transmitter). The light emitted by the LiDAR sensors (202b) includes light outside the visible spectrum (e.g., infrared light, etc.). In some embodiments, during operation, the light emitted by the LiDAR sensors (202b) encounters a physical object (e.g., a vehicle) and is reflected back to the LiDAR sensors (202b). In some embodiments, light emitted by the LiDAR sensors (202b) does not penetrate the physical objects that the light encounters. The LiDAR sensors (202b) also include at least one light detector that detects the light after the light emitted from the light emitter encounters the physical object. In some embodiments, at least one data processing system associated with the LiDAR sensors (202b) generates an image (e.g., point cloud, combined point cloud, etc.) representing the objects included in the field of view of the LiDAR sensors (202b). In some examples, at least one data processing system associated with the LiDAR sensors (202b) generates an image representing the boundaries of the physical objects, the surfaces of the physical objects (e.g., topology of the surfaces), etc. In such examples, the image is used to determine the boundaries of the physical objects within the field of view of the LiDAR sensors (202b).

[0032] The radar (Radar, Radio Detection and Ranging) sensors (202c) include at least one device configured to communicate with a communication device (202e), an autonomous vehicle computer (202f), and / or a safety controller (202g) via a bus (e.g., a bus identical or similar to the bus (302) of FIG. 3). The radar sensors (202c) include a system configured to transmit radio waves (pulsed or continuous). The radio waves transmitted by the radar sensors (202c) include radio waves within a predetermined spectrum. In some embodiments, during operation, the radio waves transmitted by the radar sensors (202c) encounter a physical object and are reflected back to the radar sensors (202c). In some embodiments, the radio waves transmitted by the radar sensors (202c) are not reflected by some objects. In some embodiments, at least one data processing system associated with the radar sensors (202c) generates signals representing objects included in the field of view of the radar sensors (202c). For example, at least one data processing system associated with the radar sensors (202c) generates an image representing the boundaries of physical objects, surfaces of physical objects (e.g., topology of surfaces), etc. In some examples, the image is used to determine the boundaries of physical objects within the field of view of the radar sensors (202c).

[0033] The microphones (202d) include at least one device configured to communicate with a communication device (202e), an autonomous vehicle computer (202f), and / or a safety controller (202g) via a bus (e.g., a bus identical or similar to the bus (302) of FIG. 3). The microphones (202d) include one or more microphones (e.g., array microphones, external microphones, etc.) that capture audio signals and generate data associated with the audio signals (e.g., representing the audio signals). In some examples, the microphones (202d) include transducer devices and / or similar devices. In some embodiments, one or more systems described herein may receive data generated by the microphones (202d) and determine the location (e.g., distance, etc.) of an object relative to the vehicle (200) based on the audio signals associated with this data.

[0034] The communication device (202e) includes at least one device configured to communicate with cameras (202a), LiDAR sensors (202b), radar sensors (202c), microphones (202d), an autonomous vehicle compute (202f), a safety controller (202g), and / or a DBW system (202h). For example, the communication device (202e) may include a device identical or similar to the communication interface (314) of FIG. 3. In some embodiments, the communication device (202e) includes a vehicle-to-vehicle (V2V) communication device (e.g., a device that enables wireless communication of data between vehicles).

[0035] The autonomous vehicle compute (202f) includes at least one device configured to communicate with cameras (202a), LiDAR sensors (202b), radar sensors (202c), microphones (202d), a communication device (202e), a safety controller (202g), and / or a DBW system (202h). In some examples, the autonomous vehicle compute (202f) includes devices such as a client device, a mobile device (e.g., a cellular phone, a tablet, etc.), a server (e.g., a computing device including one or more central processing units, graphics processing units, etc.). In some embodiments, the autonomous vehicle compute (202f) is identical or similar to the autonomous vehicle compute (400) described herein. Additionally or alternatively, in some embodiments, the autonomous vehicle compute (202f) is configured to communicate with an autonomous vehicle system (e.g., an autonomous vehicle system identical or similar to the remote AV system (114) of FIG. 1), a fleet management system (e.g., a fleet management system identical or similar to the fleet management system (116) of FIG. 1), a V2I device (e.g., a V2I device identical or similar to the V2I device (110) of FIG. 1), and / or a V2I system (e.g., a V2I system identical or similar to the V2I system (118) of FIG. 1).

[0036] The safety controller (202g) includes at least one device configured to communicate with cameras (202a), LiDAR sensors (202b), radar sensors (202c), microphones (202d), a communication device (202e), an autonomous vehicle computer (202f), and / or a DBW system (202h). In some examples, the safety controller (202g) includes one or more controllers (electric controllers, electromechanical controllers, etc.) configured to generate and / or transmit control signals for operating one or more devices of the vehicle (200) (e.g., a powertrain control system (204), a steering control system (206), a brake system (208), etc.). In some embodiments, the safety controller (202g) is configured to generate control signals that take precedence over (e.g., override) the control signals generated and / or transmitted by the autonomous vehicle computer (202f).

[0037] The DBW system (202h) includes at least one device configured to communicate with a communication device (202e) and / or an autonomous vehicle computer (202f). In some examples, the DBW system (202h) includes one or more controllers (e.g., electric controllers, electromechanical controllers, etc.) configured to generate and / or transmit control signals to operate one or more devices of the vehicle (200) (e.g., powertrain control system (204), steering control system (206), brake system (208), etc.). Additionally or alternatively, one or more controllers of the DBW system (202h) are configured to generate and / or transmit control signals to operate at least one different device of the vehicle (200) (e.g., turn signals, headlights, door locks, window wipers, etc.).

[0038] The powertrain control system (204) includes at least one device configured to communicate with the DBW system (202h). In some examples, the powertrain control system (204) includes at least one controller, actuator, etc. In some embodiments, the powertrain control system (204) receives control signals from the DBW system (202h), and the powertrain control system (204) causes the vehicle (200) to start moving forward, stop moving forward, start moving backward, stop moving backward, accelerate in one direction, decelerate in one direction, perform a left turn, perform a right turn, etc. In one example, the powertrain control system (204) causes at least one wheel of the vehicle (200) to rotate or not rotate by increasing, keeping the energy (e.g., fuel, electricity, etc.) provided to the vehicle's motor the same, or decreasing it.

[0039] The steering control system (206) includes at least one device configured to rotate one or more wheels of the vehicle (200). In some examples, the steering control system (206) includes at least one controller, actuator, etc. In some embodiments, the steering control system (206) causes two front wheels and / or two rear wheels of the vehicle (200) to rotate to the left or right so that the vehicle (200) turns to the left or right.

[0040] The brake system (208) includes at least one device configured to actuate one or more brakes to cause the vehicle (200) to reduce speed and / or remain at a stop. In some examples, the brake system (208) includes at least one controller and / or actuator configured to close one or more calipers associated with one or more wheels of the vehicle (200) on the corresponding rotor of the vehicle (200). Additionally or alternatively, in some examples, the brake system (208) includes an automatic emergency braking (AEB) system, a regenerative braking system, etc.

[0041] In some embodiments, the vehicle (200) includes at least one platform sensor (not explicitly exemplified) that measures or infers attributes of the state or condition of the vehicle (200). In some embodiments, the vehicle (200) includes platform sensors such as a global positioning system (GPS) receiver, an inertial measurement unit (IMU), a wheel speed sensor, a wheel brake pressure sensor, a wheel torque sensor, an engine torque sensor, a steering angle sensor, etc.

[0042] Now, referring to FIG. 3, a schematic diagram of a device (300) is illustrated. As illustrated, the device (300) includes a processor (304), memory (306), a storage component (308), an input interface (310), an output interface (312), a communication interface (314), and a bus (302). In some embodiments, the device (300) corresponds to at least one device of the vehicles (102) (e.g., at least one device of the system of the vehicles (102)) and / or one or more devices of the network (112) (e.g., one or more devices of the system of the network (112)). In some embodiments, one or more devices of the vehicles (102) (e.g., one or more devices of the system of the vehicles (102)) and / or one or more devices of the network (112) (e.g., one or more devices of the system of the network (112)) include at least one device (300) and / or at least one component of the device (300). As illustrated in FIG. 3, the device (300) includes a bus (302), a processor (304), a memory (306), a storage component (308), an input interface (310), an output interface (312), and a communication interface (314).

[0043] The bus (302) includes a component that enables communication between components of the device (300). In some embodiments, the processor (304) is implemented in hardware, software, or a combination of hardware and software. In some examples, the processor (304) includes a processor (e.g., a central processing unit (CPU), a graphics processing unit (GPU), an acceleration processing unit (APU), etc.), a microphone, a digital signal processor (DSP), and / or any processing component (e.g., a field programmable gate array (FPGA), an application-specific integrated circuit (ASIC), etc.) that can be programmed to perform at least one function. The memory (306) includes random access memory (RAM), read-only memory (ROM), and / or other types of dynamic and / or static storage devices (e.g., flash memory, magnetic memory, optical memory, etc.) that store data and / or instructions for use by the processor (304).

[0044] The storage component (308) stores data and / or software related to the operation and use of the device (300). In some examples, the storage component (308) includes a hard disk (e.g., magnetic disk, optical disk, magneto-optical disk, solid-state disk, etc.), a CD (compact disc), a DVD (digital versatile disc), a floppy disk, a cartridge, a magnetic tape, a CD-ROM, RAM, PROM, EPROM, FLASH-EPROM, NV-RAM, and / or other types of computer-readable media, together with a corresponding drive.

[0045] The input interface (310) includes a component (e.g., a touchscreen display, keyboard, keypad, mouse, button, switch, microphone, camera, etc.) that enables the device (300) to receive information, for example, through user input. Additionally or alternatively, in some embodiments, the input interface (310) includes a sensor that detects information (e.g., a GPS (global positioning system) receiver, accelerometer, gyroscope, actuator, etc.). The output interface (312) includes a component (e.g., a display, speaker, one or more light-emitting diodes (LEDs), etc.) that provides output information from the device (300).

[0046] In some embodiments, the communication interface (314) includes a transceiver-like component (e.g., a transceiver, individual receivers and transmitters, etc.) that enables the device (300) to communicate with other devices via a wired connection, a wireless connection, or a combination of wired and wireless connections. In some embodiments, the communication interface (314) enables the device (300) to receive information from other devices and / or provide information to other devices. In some embodiments, the communication interface (314) includes an Ethernet interface, an optical interface, a coaxial interface, an infrared interface, an RF (radio frequency) interface, a USB (universal serial bus) interface, and a Wi-Fi interface. ® Includes interfaces, cellular network interfaces, etc.

[0047] In some embodiments, the device (300) performs one or more processes described herein. The device (300) performs these processes based on a processor (304) executing software instructions stored by a computer-readable medium, such as a memory (305) and / or a storage component (308). A computer-readable medium (e.g., a non-transient computer-readable medium) is defined herein as a non-transient memory device. A non-transient memory device includes a memory space located within a single physical storage device or a memory space distributed across a plurality of physical storage devices.

[0048] In some embodiments, software instructions are read into memory (306) and / or storage component (308) from another computer-readable medium or another device via a communication interface (314). When executed, the software instructions stored in memory (306) and / or storage component (308) cause the processor (304) to perform one or more processes described herein. Additionally or alternatively, hardwired circuits are used instead of or in conjunction with software instructions to perform one or more processes described herein. Accordingly, the embodiments described herein are not limited to any specific combination of hardware circuits and software unless otherwise explicitly stated.

[0049] The memory (306) and / or storage component (308) includes a data store or at least one data structure (e.g., a database, etc.). The device (300) may receive information from the data store or at least one data structure within the memory (306) or storage component (308), store information therein, transmit information to them, or retrieve information stored therein. In some examples, the information includes network data, input data, output data, or any combination thereof.

[0050] In some embodiments, the device (300) is configured to execute software instructions stored in memory (306) and / or in the memory of another device (e.g., another device identical or similar to the device (300)). As used herein, the term “module” refers to at least one instruction stored in memory (306) and / or in the memory of another device that causes the device (300) (e.g., at least one component of the device (300)) to perform one or more processes described herein when executed by the processor (304) and / or by the processor of another device (e.g., another device identical or similar to the device (300)). In some embodiments, the module is implemented in software, firmware, hardware, etc.

[0051] The number and arrangement of components illustrated in FIG. 3 are provided as examples. In some embodiments, the device (300) may include additional components, fewer components, different components, or differently arranged components than those illustrated in FIG. 3. Additionally or alternatively, a set of components of the device (300) (e.g., one or more components) may perform one or more functions described as being performed by other components or other sets of components of the device (300).

[0052] Now, referring to FIG. 4, an exemplary block diagram of an autonomous vehicle compute (400) (sometimes referred to as the “AV stack”) is illustrated. As illustrated, the autonomous vehicle compute (400) includes a perception system (402) (sometimes referred to as the perception module), a planning system (404) (sometimes referred to as the planning module), a localization system (406) (sometimes referred to as the localization module), a control system (408) (sometimes referred to as the control module), and a database (410). In some embodiments, the perception system (402), the planning system (404), the localization system (406), the control system (408), and the database (410) are included in and / or implemented in the autonomous driving system of the vehicle (e.g., the autonomous vehicle compute (202f) of the vehicle (200)). Additionally or alternatively, in some embodiments, the perception system (402), planning system (404), localization system (406), control system (408), and database (410) are included in one or more standalone systems (e.g., one or more systems identical or similar to the autonomous vehicle compute (400), etc.). In some embodiments, the perception system (402), planning system (404), localization system (406), control system (408), and database (410) are included in one or more standalone systems located in the vehicle and / or at least one remote system as described herein. In some embodiments, any and / or all of the systems included in the autonomous vehicle compute (400) are implemented in software (e.g., software instructions stored in memory), computer hardware (e.g., microprocessors, microcontrollers, application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), etc.), or a combination of computer software and computer hardware.It will also be understood that in some embodiments, the autonomous vehicle computer (400) is configured to communicate with a remote system (e.g., an autonomous vehicle system identical or similar to the remote AV system (114), a fleet management system identical or similar to the fleet management system (116), a V2I system identical or similar to the V2I system (118), etc.).

[0053] In some embodiments, the perception system (402) receives data associated with at least one physical object in the environment (e.g., data used by the perception system (402) to detect at least one physical object) and classifies at least one physical object. In some embodiments, the perception system (402) receives image data captured by at least one camera (e.g., cameras (202a)), and the image is associated with one or more physical objects within the field of view of at least one camera (e.g., indicated therein). In such examples, the perception system (402) classifies at least one physical object based on one or more groupings of physical objects (e.g., bicycles, vehicles, traffic signs, pedestrians, etc.). In some embodiments, based on the classification of physical objects by the perception system (402), the perception system (402) transmits data associated with the classification of physical objects to the planning system (404).

[0054] In some embodiments, the planning system (404) receives data associated with a destination and generates data associated with at least one route (e.g., routes (106)) along which a vehicle (e.g., vehicles (102)) can travel toward the destination. In some embodiments, the planning system (404) receives data from the perception system (402) periodically or continuously (e.g., data associated with the classification of physical objects as described above), and the planning system (404) updates at least one trajectory or generates at least one different trajectory based on the data generated by the perception system (402). In some embodiments, the planning system (404) receives data associated with the updated location of the vehicle (e.g., vehicles (102)) from the localization system (406), and the planning system (404) updates at least one trajectory or generates at least one different trajectory based on the data generated by the localization system (406).

[0055] In some embodiments, the localization system (406) receives data associated with (e.g., indicating therein) a location of a vehicle (e.g., vehicles (102)) in a zone. In some embodiments, the localization system (406) receives LiDAR data associated with at least one point cloud generated by at least one LiDAR sensor (e.g., LiDAR sensors (202b)). In certain embodiments, the localization system (406) receives data associated with at least one point cloud from a plurality of LiDAR sensors, and the localization system (406) generates a combined point cloud based on each of the point clouds. In these embodiments, the localization system (406) compares at least one point cloud or the combined point cloud with a two-dimensional (2D) and / or three-dimensional (3D) map of the corresponding zone stored in a database (410). Based on the localization system (406) comparing at least one point cloud or a combined point cloud with a map, the localization system (406) then determines the location of the vehicle in the area. In some embodiments, the map includes a combined point cloud of the area generated prior to the vehicle's operation. In some embodiments, the map includes, without limitation, a high-precision map of road geometric properties, a map describing road network connectivity properties, a map describing road physical properties (e.g., traffic speed, traffic volume, number of vehicle traffic lanes and cyclist traffic lanes, lane width, lane traffic directions, or types and locations of lane markers, or combinations thereof), and a map describing the spatial locations of road features such as crosswalks, traffic signs, or various types of other driving signals. In some embodiments, the map is generated in real time based on data received by a perception system.

[0056] In another example, the localization system (406) receives GNSS (Global Navigation Satellite System) data generated by a GPS (global positioning system) receiver. In some examples, the localization system (406) receives GNSS data associated with the position of a vehicle in a corresponding area, and the localization system (406) determines the latitude and longitude of the vehicle in that area. In such examples, the localization system (406) determines the position of the vehicle in that area based on the latitude and longitude of the vehicle. In some embodiments, the localization system (406) generates data associated with the position of the vehicle. In some examples, the localization system (406) generates data associated with the position of the vehicle based on the determination of the position of the vehicle by the localization system (406). In such examples, the data associated with the position of the vehicle includes data associated with one or more semantic attributes corresponding to the position of the vehicle.

[0057] In some embodiments, the control system (408) receives data associated with at least one trajectory from the planning system (404), and the control system (408) controls the operation of the vehicle. In some examples, the control system (408) receives data associated with at least one trajectory from the planning system (404), and the control system (408) controls the operation of the vehicle by generating and transmitting control signals that cause the powertrain control system (e.g., DBW system (202h), powertrain control system (204), etc.), the steering control system (e.g., steering control system (206)), and / or the brake system (e.g., brake system (208)) to operate. In an example where the trajectory includes a left turn, the control system (408) transmits a control signal that causes the steering control system (206) to adjust the steering angle of the vehicle (200) so that the vehicle (200) turns left. Additionally or alternatively, the control system (408) generates and transmits control signals that cause other devices of the vehicle (200) (e.g., headlights, turn signals, door locks, window wipers, etc.) to change their states.

[0058] In some embodiments, the cognitive system (402), the planning system (404), the localization system (406), and / or the control system (408) implement at least one machine learning model (e.g., at least one multilayer perceptron (MLP), at least one convolutional neural network (CNN), at least one recurrent neural network (RNN), at least one autoencoder, at least one transformer, etc.). In some examples, the cognitive system (402), the planning system (404), the localization system (406), and / or the control system (408) implement at least one machine learning model alone or in combination with one or more of the systems mentioned above. In some examples, the cognitive system (402), planning system (404), localization system (406), and / or control system (408) implement at least one machine learning model as part of a pipeline (e.g., a pipeline for identifying one or more objects located in an environment).

[0059] The database (410) stores data that is transmitted to and received from and / or updated by the perception system (402), planning system (404), localization system (406) and / or control system (408). In some examples, the database (410) includes a storage component (e.g., a storage component identical or similar to the storage component (308) of FIG. 3) that stores data and / or software related to operation and uses at least one system of the autonomous vehicle compute (400). In some embodiments, the database (410) stores data associated with a 2D and / or 3D map of at least one area. In some examples, the database (410) stores data associated with a 2D and / or 3D map of a part of a city, a part of a number of cities, a number of cities, a county, a state, a state (e.g., a country). In such an example, a vehicle (e.g., a vehicle identical or similar to vehicles (102) and / or a vehicle (200)) can be driven along one or more drivable areas (e.g., a single-lane road, a multi-lane road, a main road, a back road, an off-road trail, etc.) and at least one LiDAR sensor (e.g., a LiDAR sensor identical or similar to LiDAR sensors (202b)) can be made to generate data associated with an image representing objects included in the field of view of at least one LiDAR sensor.

[0060] In some embodiments, the database (410) may be implemented across multiple devices. In some examples, the database (410) includes a vehicle (e.g., a vehicle identical or similar to vehicles (102) and / or vehicle (200)), an autonomous vehicle system (e.g., an autonomous vehicle system identical or similar to the remote AV system (114)), a fleet management system (e.g., a fleet management system identical or similar to the fleet management system (116) of FIG. 1), a V2I system (e.g., a V2I system identical or similar to the V2I system (118) of FIG. 1), etc.

[0061] FIG. 5 illustrates an example of a LiDAR system (502). The LiDAR system (502) emits light (504a to 504c) from one or more light emitters (506) (e.g., laser transmitters). The light emitted by the LiDAR system is typically not in the visible spectrum; for example, infrared light is often used. A portion of the emitted light (504b) encounters a physical object (508) (e.g., a vehicle) and is reflected back to the LiDAR system (502). The LiDAR system (502) also has one or more light detectors (510) (e.g., photodiodes, PIN photodiodes, APDs, and SiPMs) that detect the reflected light. In one embodiment, one or more data processing systems associated with the LiDAR system generate an image (512) representing the field of view (514) of the LiDAR system. The image (512) contains information indicating the boundaries (516) and reflectance of a physical object (508). In this way, the image (512) is used to determine the boundaries (516) of one or more physical objects in the vicinity of AV.

[0062] FIG. 6 illustrates a LiDAR system (502) in operation. In the example of FIG. 6, a vehicle (102) receives both a camera system output in the form of an image (602) and a LiDAR system output in the form of LiDAR data points (604). During use, the data processing systems of the vehicle (102) compare the image (602) with the data points (604). Specifically, a physical object (606) identified in the image (602) is identified among the data points (604). In this way, the vehicle (102) recognizes the boundaries of the physical object based on the contours and density of the data points (604).

[0063] FIG. 7 illustrates the operation of the LiDAR system (502) in more detail. As described above, the vehicle (102) detects the boundaries and reflectances of physical objects based on the characteristics of the data points detected by the LiDAR system (502). As illustrated in FIG. 7, a flat object, such as the ground (702), will reflect light (704a to 704d) emitted from the LiDAR system (502) in a consistent manner. As the vehicle (102) travels over the ground (702), the LiDAR system (502) will continue to detect light reflected by the next valid ground point (706) if there is nothing obstructing the road. However, if the object (708) obstructs the road, light (704e and 704f) emitted by the LiDAR system (502) will be reflected from the points (710a and 710b) in a manner that does not correspond to the expected consistent manner. From this information, the vehicle (102) can determine that the object (708) exists.

[0064] Automotive Time-of-Flight (ToF) LiDAR systems use laser signals to determine the speed and distance of stationary and moving objects (e.g., other vehicles, pedestrians, obstacles). The LiDAR system performs these measurements by comparing an emitted transmitted signal with a reflected return signal. In some embodiments, a silicon photomultiplier tube (SiPM) is used as a photodetector (receiver) to detect the reflected return signal. In one embodiment, the SiPM-based LiDAR is a pulsed LiDAR system having modified pulse (peak power) widths of individual pulses that output at least one output pulse. For example, the LiDAR emits a train of pulses, and the widths of the individual pulses are modified (e.g., a first pulse: 25 W and 1 ns and a second pulse: 5 W and 5 ns). In some embodiments, a bandpass filter (e.g., 500 MHz to 5 GHz) is applied to the SiPM output (e.g., anode output, or individual SPAD (single-photon avalanche diode) output). In some embodiments, the width of the saturation stabilizer of the output pulse is monitored by a readout circuit (e.g., 1 to 5 GHz ADC or 10 to 100 ps resolution TDC).

[0065] FIG. 8 is a diagram of a silicon photomultiplier tube (SiPM) device (800) having a plurality of microcells (802aa to 802an) (individually referred to as microcells (802) and collectively referred to as microcells (802)). In some embodiments, the device (800) is implemented (e.g., completely, partially, etc.) in a vehicle identical or similar to the vehicles (102) described with reference to FIG. 1. In some embodiments, the device (800) is implemented (e.g., completely, partially, etc.) as a LiDAR sensor identical or similar to the LiDAR sensors (202b) described with reference to FIG. 2. In some embodiments, the device (800) is implemented (e.g., completely, partially, etc.) in a LiDAR system identical or similar to the LiDAR system (502) described with reference to FIG. 5 through 7. In some embodiments, the device (800) captures information to be processed by an autonomous vehicle compute, such as the autonomous vehicle compute (400) described with reference to FIG. 4 (e.g., perception system (402), planning system (404), localization system (406), control system (408), and database (410)).

[0066] In some embodiments, the SiPM device (800) is a pixelated photodetector that detects, time-measures, and quantifies a low-light signal down to the single-photon level. The SiPM device (800) comprises a plurality of microcells (802) in an array that share a common output cathode (806). In the example of FIG. 8, each device (800) comprises a first anode (804) and a cathode (806). Each microcell (802) is a series combination of a single photon avalanche photodiode (SPAD) and a quenching resistor. The SPAD detects a single photon and provides a trigger pulse of a short duration that can be counted. A photodiode operating in Geiger mode achieves high gain using a breakdown mechanism and is referred to as a SPAD. SPADs are also used to acquire the arrival times of incident photons due to the high rate of avalanche formation and the low timing jitter of the SPAD. The SPAD is biased much higher than its reverse-bias breakdown voltage and has a structure that enables operation without damage or excessive noise.

[0067] In the example of FIG. 8, the microcells (802) are connected in parallel and share a common output or anode (804). Accordingly, the resulting SiPM device has an anode (804) and a cathode (806). The microcells (802) can detect a single photon and provide a current pulse of short duration. In the examples, the anode (804) outputs a current pulse synchronized with the time of the photon's arrival. Each microcell (802) detects the photon independently. When a photon is detected by a microcell, an electron-hole pair is generated. When a sufficiently high electric field is generated within the depletion region, the charge carriers (electrons or holes) generated therein will be accelerated to transfer sufficient kinetic energy to generate a secondary electron-hole pair (impact ionization). Macroscopic (avalanche) currents pass through the microcells until the microcells are quenched by passive quenching (e.g., a quenching resistor) or an active circuit. The sum of the currents from each fired microcell is combined to form a pseudo-analog output (a temporal superposition of current pulses from the fired microcells) used to calculate the magnitude of the photon flux. Quenching stops the avalanche of the current by lowering the reverse voltage applied to the SiPM to a value below its breakdown voltage. The SiPM is then recharged to the bias voltage and made available for detecting subsequent photons. For example, the intensity of the captured reflection is output by the anode (804), where multiple output pulses from the microcells are accumulated within a predefined time period.

[0068] In one embodiment, the SiPM may be a variant comprising a second anode (808), which is a third terminal, in addition to the anode (804) and cathode (806). The third terminal may be referred to as a fast output and is connected to individual microcells having a passive or active readout circuit (e.g., a capacitor) in response to the detection of a single photon. Accordingly, the fast output is capacitively coupled to each microcell (802). As with the anode-cathode output, the fast output at the second anode (808) is formed from the sum of all microcells. In some embodiments, the fast output or anode (808) has a lower output capacitance compared to the output capacitance of the anode (804). In some embodiments, the second anode (808) is used to perform fast timing measurements, including timing information captured as described below.

[0069] In the embodiments, the anode (804) generates an output pulse (e.g., current) in response to photons detected in the microcells (802) and captures reflections of various light levels, such as low light level signals (e.g., less than 100 photons) and high light level signals (e.g., substantially greater than 100 photons). As the microcells are progressively triggered during the optical power detection process (e.g., an optical power width of typically 1 to 10 nanoseconds), saturation occurs at high flux. As the number of photons increases, the current output by the anode (804) begins to saturate. At high light levels, all microcells are activated simultaneously, and saturation of the microcells (802) interferes with reliable output from the anode (804). In the embodiments, timing information and intensity information associated with the output pulse are used to extrapolate accurate output values ​​when the SiPM device saturates. In examples, the extrapolated output includes a portion of the output pulse that is not detected or is lost during the saturation of the device (800). In some embodiments, the extrapolated information corresponds to the time when the saturation stabilizer occurs.

[0070] For convenience of explanation, microcells are exemplified as having the same size and arranged in a rectangular pattern. However, microcells according to the present technology may have any size and shape. For example, depending on the implementation, the size of the microcells varies from 1 µm to 100 µm, and the number of microcells per device ranges from hundreds to tens of thousands. In examples, the SiPM pixel (800) is a series combination of a single SPAD and a quenching resistor or quenching circuit. Typically, a low return light signal is reflected from a distant object, while a high return signal is reflected from a near-range object. The SPADs (microcells) are connected in parallel, and each microcell detects photons independently. In examples, the reflections observed by the SiPM microcells are summed to generate an output signal.

[0071] In examples, the read circuit (820) includes an external circuit that calculates the optical power of the output signal associated with the captured information (e.g., peak, area, and shape of the analog signal) and the arrival time (e.g., measuring the time of the rising edge of the SiPM output). For example, the external circuit calculates the optical power of the reflected light by measuring the analog signal. In one embodiment, the external circuit counts the number of activated microcells (e.g., active SiPM pixels). In one embodiment, the external circuit obtains the arrival time of the photon by measuring the start time of the pulse output by the pixels. The dynamic range of the SiPM device is based on the number of microcells—which essentially limits the intensity / reflectance accuracy. In examples, a LIDAR system (e.g., the LiDAR system (502) of FIG. 5) can use a monochromatic laser pulse and measure both the intensity and the time delay of the reflected laser pulse (e.g., the return signal). From intensity and time delay, the LIDAR system can subsequently generate a LIDAR image comprising an array of LIDAR data points (e.g., LIDAR data points (604)), each data point comprising the range (distance from the LIDAR system) and reflectance of an object detected in the field around the system. In embodiments, the LiDAR image is a point cloud.

[0072] The block diagram of FIG. 8 is not intended to indicate that the device (800) must include all the components illustrated in FIG. 8. Rather, the device (800) may include a smaller number or additional components not illustrated in FIG. 8 (e.g., additional microcells, anodes, cathodes, microcells of different shapes, etc.). The device (800) may include any number of additional components not illustrated, depending on the specific implementation details. Furthermore, parts of the other described functions of the device may be implemented in part or wholly in hardware and / or in a processor. For example, control or function may be implemented in an application-specific integrated circuit, in logic implemented in a processor, in logic implemented in a special graphics processing unit, or in any other device.

[0073] FIG. 9 is a graph (900) of the single-photon-electron response of a SiPM device at various outputs. In some embodiments, the SiPM device used to generate the single-photon-electron response at various outputs is the SiPM device (800) described with reference to FIG. 8. As illustrated in the example of FIG. 9, time is plotted on the x-axis (902) and amplitude is plotted on the y-axis (904). The response of the SiPM device (e.g., the SiPM device (800) of FIG. 8) is captured at three outputs. The high-speed output (906) shows the response of individual microcells having a passive or active readout circuit (e.g., a capacitor) to the detection of a single photon. In the examples, the high-speed output is obtained from the second anode (808) described in relation to FIG. 8. The standard output (908) shows the response of individual microcells to the detection of a single photon. In the examples, the standard output (908) is obtained from the anode (804) described in relation to FIG. 8.

[0074] In FIG. 9, the standard output (910) having a shape shows a response shaped using a filter. In some embodiments, the SiPM device detects reflections and outputs an output pulse that is filtered by a filter (e.g., a high-pass or band-pass filter). Filtering narrows the shape of the output pulse. Traditionally, the falling edge of a SiPM output pulse is 10 to 20 times longer than the rising edge. Without filtering, the falling edge of the output pulse dominates the output pulse, and thus information associated with the SiPM is not available during saturation. In examples, applying a band-pass filter to the output pulses makes the output substantially symmetric, and the saturation of the SiPM can be resolved. In a substantially symmetric pulse, the falling edge is less than 10 to 20 times longer than the rising edge.

[0075] This technology increases the dynamic range of a SiPM device without requiring an increase in the number of microcells. For example, the SiPM device detects multiple photons (return optical power) that trigger the microcells. In some embodiments, the optical power is proportional to the SiPM output current. SiPM readings are used to determine various properties associated with the objects that caused the reflections. For example, the position information of the object is determined by the triggering times of the microcells (e.g., the rising edge of the SiPM output pulse). The reflectance information of the object is determined by the shape of the SiPM output pulse.

[0076] In some embodiments, the SiPM device generates a photocurrent proportional to the number of microcells activated by incident photons. This photocurrent enables the measurement of optical power received by the SiPM. In one embodiment, the photocurrent flows from the cathode to the anode through the SiPM device, and either the cathode or anode terminals may be used as an output. In one embodiment, a fast path output with a high-pass filter may be derived from individual microcells (e.g., SPADs). The output amplitude is proportional to the number of activated microcells and thus can provide information about the number of detected photons.

[0077] FIG. 10 is a diagram illustrating pulses (1010 and 1020). In some embodiments, the pulses (1010 and 1020) are obtained (e.g., entirely, partially, etc.) from the device (800) described in relation to FIG. 8 (e.g., the output signal is processed directly on the chip). In some embodiments, the pulses (1010 and 1020) are obtained from the read circuit (820) of FIG. 8. In the example of FIG. 10, a pulse (1010) is generated using a time-to-digital converter to capture timing information associated with the captured signal. A pulse (1020) is generated using an analog-to-digital converter to capture timing information associated with the captured signal.

[0078] In some embodiments, when a high photon flux is received in a SiPM device, the output becomes saturated due to a limited number of available microcells. For example, if the number of detected photons is close to or greater than the number of microcells in the SiPM device, the output of the SiPM device becomes saturated, and the SiPM does not accurately output the incoming photon intensity. Accordingly, in some embodiments, the saturation of the SiPM device is monitored to enable accurate measurement of intensity. In examples, the width of the saturation stabilizer is determined in response to saturation. The width of the saturation stabilizer provides information that increases the dynamic range of the SiPM. In examples, the width of the saturation stabilizer refers to the time length during which the output pulse experiences saturation. Saturation is determined by a saturation monitor.

[0079] In some embodiments, at high flux, a narrow saturation steady-state of the output pulse is observed as almost all (e.g., typically hundreds) microcells are triggered over a short time period (e.g., less than 1 nanosecond). In some embodiments, at higher flux, a broad saturation steady-state of the output pulse is observed as most microcells within the SiPM device are triggered during optical power detection (e.g., an optical power width of typically 1 to 10 nanoseconds). The width of the saturation steady-state is observed, and the time length during which the SiPM device saturates is determined. The SiPM saturation time length is used to compensate for the sensor's nonlinear output.

[0080] In the TDC-based approach exemplified by pulse (1010), one or more predetermined intensity levels are set as thresholds. When a high photon flux is received by the SiPM device, one or more TDCs measure the width of the saturation stabilizer of the output pulse. In the example of FIG. 10, levels (1012, 1014, and 1016) are used to determine timing information and intensity information associated with the output pulse (1010). The timing information and intensity information are used to extrapolate the output pulse information during saturation of the SiPM device. Similarly, in the ADC-based approach exemplified by pulse (1020), a high-speed and high-bandwidth ADC is implemented. In examples, a high-speed (e.g., 1 to 5 GHz) ADC digitizes the output signal from the SiPM device. In some embodiments, predetermined intensity levels are set as thresholds, and the SiPM device saturation width is monitored by the high-speed ADC.

[0081] In the example of FIG. 10, the pulses (1010 and 1020) (e.g., SiPM readings) exhibit a fast rising edge with a relatively slower falling edge. In some embodiments, the rise time of the output pulse is determined by the rise time of avalanche formation and the variation in the transit times of signals arriving from different points than the microcells of the SiPM device (e.g., the microcells (802) of the SiPM device (800) described in relation to FIG. 8). The recovery time of the microcells or the decay time of the pulse is determined by the SiPM microcell recharge time constant.

[0082] FIG. 11 is an example of pulses having an increased dynamic range. In some embodiments, the pulses (1106 and 1108) are obtained (e.g., entirely, partially, etc.) from the device (800) described in relation to FIG. 8 (e.g., the output signal is processed directly on the chip). In some embodiments, the pulses (1106 and 1108) are obtained from the read circuit (820) of FIG. 8. In the example of FIG. 11, the width of the output pulses (1106 and 1108) changes in response to a modified pulse emitted by an emitter. For example, the LiDAR emits a pulse train and the widths of the individual pulses are modified (e.g., a first pulse: 25 W and 1 ns and a second pulse: 5 W and 5 ns).

[0083] In the example of FIG. 11, time is displayed on the horizontal axis (1102), and microvolts are displayed on the vertical axis (1104). In some embodiments, the present technology captures waveform characteristics of response features of two different types of readout pulses, such as the TDC pulse (1010) and ADC pulse (1020) described in relation to FIG. 10. Response features (e.g., predetermined intensity levels) are thresholds applied to output pulses to identify and extend the dynamic range of the sensor. In some embodiments, the pulses are filtered before applying thresholds to the output pulses. For example, a filter is applied to wide and asymmetric pulses to obtain narrower and more symmetric pulses.

[0084] For convenience of explanation, predetermined intensity levels are described in relation to TDC-based readings. However, predetermined intensity levels may be set using other reading types (e.g., ADC). Additionally, for convenience of explanation, the present technology is described using three intensity levels. However, the present technology is not limited to three levels. In some embodiments, additional levels increase the accuracy of the extrapolated dynamic range.

[0085] In the example of FIG. 11, three intensity levels are illustrated. The intensity levels include a detection level (1110). At the detection level (1110), the smallest number of photons are captured. At the detection level (1110), the intensity is at level 0. At the detection level (1112), the number of captured photons is greater than at the detection level (1110) and less than at the saturation level (1114). In the examples, there are any number of detection levels corresponding to predetermined intensity levels that are greater than at the detection level (1110) and less than at the saturation level (1114). At the saturation level (1114), the number of photons causes saturation of the SiPM device. Traditionally, when the device is saturated, information from the output pulse is unreliable. In some embodiments, any number of predetermined intensity levels may be used, and the intensity levels are not limited to equal intervals within the range of intensity levels. In the examples, the intensity levels are spaced according to other predetermined intervals, such as a log scale.

[0086] Intensity levels allow threshold values ​​to be defined at which timing information can be obtained. When a pulse crosses these threshold values ​​(at both the rising and falling edges), this provides information used for extrapolation. For example, a TDC captures information at each level, such as when a pulse crosses a predetermined intensity level at a specific time. In some embodiments, multiple TDCs are used to obtain timing and intensity information at multiple predetermined levels.

[0087] In some embodiments, a detection event occurs when the rising or falling edge of an output pulse reaches a predetermined level. An event occurring at a predetermined intensity level makes it possible to determine the time and range associated with the pulse. The pulse also has additional information, such as the intensity of the return signal. The present technique enables the calculation of range and intensity information returned when the sensor is saturated using extrapolation.

[0088] Extrapolation is performed by fitting lines to the rising and falling edges of the output pulse. The extrapolated pulse is based on the integrated pulse energy. The extrapolated calculation of the output pulse data results in an increase in dynamic range (1160) beyond the limits of the physical hardware. In some embodiments, the increase in dynamic range is calculated by determining the area of ​​a polygon (e.g., a trapezoid) formed by intersecting the lines fitted to the rising and falling edges of the output pulse. The TDC effectively samples locations along the output pulse filtered according to predetermined intensity levels. Traditionally, when a SiPM device is saturated, information regarding photon fluxes exceeding the device's dynamic range is unknown. In the example of FIG. 11, the points are samples using the TDC at points along the output pulse, indicated by squares and triangles. In one embodiment, the dynamic range is extended through signal processing.

[0089] In the example of FIG. 11, the output pulse (1106) is the output of a high-speed anode, such as the high-speed anode (808) of FIG. 8. The output pulse (1106) has an amplitude that crosses the detection level (1110) and the detection level (1112). However, the output pulse (1106) reaches a peak below the saturation level (1114). As a result, timing and intensity information are captured at two levels along the rising and falling edges of the output pulse (1106). Points along the rising edge of the pulse are exemplified by triangles; points along the falling edge are exemplified by squares. Along the rising edge of the output pulse (1106), timing and intensity information are obtained as the edge of the pulse crosses the detection level (1110) at point (1120A) and the edge of the pulse crosses the detection level (1112) at point (1120B). Similarly, along the falling edge of the output pulse (1106), timing information and intensity information are obtained as the edge of the pulse intersects the detection level (1112) at point (1122A) and the edge of the pulse (1106) intersects the detection level (1110) at point (1122B). In the case of saturation (e.g., low flux saturation below the physical saturation point), extrapolation is used to determine the complete output pulse that would have been captured had there been no physical limits of the SiPM device (e.g., too few microcells, damaged microcells) by using the timing and intensity information captured at the points (1120A, 1120B, 1122A and 1122B). As illustrated, line (1124) is fitted through the points (1120A and 1120B) along the rising edge of the output pulse (1106). Likewise, line (1126) is fitted through points (1122A and 1122B) along the falling edge of the output pulse (1106). The extrapolation of the output pulse extends to the intersection of line (1124) and line (1126) at point (1128), exemplified by the black dot.In the case of saturation of the SiPM device, extrapolating the output pulse (1106) using points (1120A, 1120B, 1122A, and 1122B) results in a peak at point (1128). As illustrated in FIG. 11, the region (1130) below the intersecting lines (1124 and 1126) is slightly off from the output pulse (1106), resulting in the error exemplified within the dashed regions (1132 and 1134). In some embodiments, this error is due to the asymmetric pulse shape of the pulse (1106) and the use of two points for edge-by-edge interpolation.

[0090] The output pulse (1108) has an amplitude that crosses the detection level (1110), the detection level (1112), and the saturation level (1114). As a result, timing and intensity information is captured at three levels. Along the rising edge of the output pulse (1108), the edge of the pulse crosses the detection level (1110) at point (1140A), the edge of the pulse crosses the detection level (1112) at point (1140B), and the edge of the pulse crosses the saturation level (1114) at point (1140C), thereby obtaining timing and intensity information. Similarly, along the falling edge of the output pulse (1108), timing and intensity information is obtained as the edge of the pulse crosses the saturation level (1114) at point (1142A), the edge of the pulse crosses the detection level (1112) at point (1142B), and the edge of the pulse crosses the detection level (1110) at point (1142C). In the case of physical saturation (e.g., high flux saturation beyond the physical saturation point), extrapolation is used to determine the complete output pulse that would have been captured had there been no physical limit of the SiPM device, using the timing and intensity information captured at points (1140A, 1140B, 1140C, 1142A, 1142B, and 1142B). As illustrated, line (1144) is fitted through points (1140A, 1140B, and 1140C) along the rising edge of the output pulse (1106). Likewise, line (1146) is fitted through points (1142A, 1142B, and 1142C) along the falling edge of the output pulse (1108). This line is fitted through the most linear portion of each edge. In the case of saturation of the SiPM device, extrapolating the output pulse (1108) using points (1140A, 1140B, 1140C, 1142A, 1142B, and 1142C) results in a peak at point (1146) at the intersection of lines (1144 and 1146).As illustrated in FIG. 11, the region (1150) below the intersecting lines (1144 and 1146) largely corresponds to the region below the output pulse (1108). As illustrated, the more intensity level thresholds used, the higher the accuracy of the extrapolation. Extrapolation using three points is more accurate than extrapolation using two points.

[0091] FIG. 12 is a process flow diagram of a process for extending the dynamic range of a SiPM device. In some embodiments, the process (1200) is implemented (e.g., completely, partially, etc.) using a system identical or similar to the remote AV system (114), fleet management system (116), and / or V2I system (118) described with reference to FIG. 1. In some embodiments, the process (1200) is implemented (e.g., completely, partially, etc.) using an AV system identical or similar to the autonomous driving system (202) described with reference to FIG. 2. In some embodiments, the process (1200) is implemented (e.g., completely, partially, etc.) using a device identical or similar to the device (300) described with reference to FIG. 3. In some embodiments, the process (1200) is implemented (e.g., completely, partially, etc.) using a system identical or similar to the autonomous vehicle compute (400) described with reference to FIG. 4. In some embodiments, the process (1200) is implemented using any of the previously described systems that cooperate with each other.

[0092] In block (1202), the output pulse is filtered. In some embodiments, filtering the output of the microcells produces a substantially symmetric pulse shape. In examples, the filter is a high-pass filter or a band-pass filter. In block (1204), timing and intensity information of the filtered output pulse is captured for at least one predetermined intensity level. At each point where the filtered output pulse reaches at least one predetermined intensity level, timing information and intensity information associated with the output pulse are obtained. Simultaneously, in block (1206), the saturation of the SiPM device is monitored. In examples, the read circuit monitors the SiPM device for saturation during the operation of the SiPM device. In some embodiments, the read circuit determines the width of the saturation stabilizer of the SiPM device. In block (1208), additional intensity information of the output pulse is extrapolated based on the timing and intensity information and the width of the saturation stabilizer. In some embodiments, the TDC determines the pulse shape and timing information used for saturation correction when the SiPM sensor is saturated.

[0093] According to some non-limiting embodiments or examples, a method is provided, the method comprising: filtering output pulses of a SiPM device into substantially symmetric pulse shapes using at least one processor; capturing timing information and intensity information of the filtered output pulses for at least one predetermined intensity level using at least one processor; monitoring the saturation of the SiPM device using at least one processor—in which the width of a saturation stabilizer of each output pulse is determined in response to the saturation of the SiPM device—and extrapolating additional timing and intensity information of each output pulse using the captured timing information, intensity information, and the width of the saturation stabilizer using at least one processor.

[0094] According to some non-limiting embodiments or examples, a system is provided, the system comprises at least one processor and at least one non-transient storage medium storing instructions, the instructions which, when executed by the at least one processor, cause the at least one processor to: filter output pulses of a SiPM device into a substantially symmetric pulse shape; capture timing information and intensity information of the filtered output pulses for at least one predetermined intensity level; monitor the saturation of the SiPM device—in response to the saturation of the SiPM device, the width of the saturation stabilizer of each output pulse is determined—and extrapolate additional timing and intensity information of each output pulse using the captured timing information, intensity information, and the width of the saturation stabilizer.

[0095] According to some non-limiting embodiments or examples, at least one non-transient computer-readable medium is provided comprising one or more instructions, wherein the one or more instructions, when executed by at least one processor, cause the at least one processor to: filter output pulses of a SiPM device into a substantially symmetric pulse shape; capture timing information and intensity information of the filtered output pulses for at least one predetermined intensity level; monitor the saturation of the SiPM device—in response to the saturation of the SiPM device, the width of the saturation stabilizer of each output pulse is determined—and extrapolate additional timing and intensity information of each output pulse using the captured timing information, intensity information, and the width of the saturation stabilizer.

[0096] Additional non-limiting aspects or embodiments are presented in the following numbered provisions:

[0097] Clause 1: A method for increasing the dynamic range of a silicon photomultiplier tube (SiPM), comprising: filtering output pulses of a SiPM device into substantially symmetric pulse shapes using at least one processor; capturing timing information and intensity information of the filtered output pulses for at least one predetermined intensity level using at least one processor; monitoring the saturation of the SiPM device using at least one processor—in which the width of a saturation stabilizer of each output pulse is determined in response to the saturation of the SiPM device—; and extrapolating additional timing information and additional intensity information of each output pulse using the captured timing information, the captured intensity information, and the determined width of the saturation stabilizer using at least one processor.

[0098] Clause 2: The method of Clause 1, wherein the step of filtering the output pulses comprises applying a high-pass filter, a CR shaper, a band-pass filter, or any combination thereof to the output pulses.

[0099] Clause 3: In either Clause 1 or Clause 2, the method wherein at least one predetermined intensity level is a saturation level at which the SiPM device is saturated.

[0100] Clause 4: A method in which, in any one of Clauses 1 to 3, a read circuit outside the SiPM device monitors the saturation of the SiPM device.

[0101] Clause 5: In any one of Clauses 1 to 4, the step of monitoring the saturation of the SiPM device comprises monitoring the output pulses using a comparator and a Time-to-Digital Converter (TDC), an Analog-to-Digital Converter (ADC), or any combination thereof.

[0102] Clause 6: In any one of Clauses 1 through 5, the width of the output pulses changes in response to modified pulses emitted by the emitter.

[0103] Clause 7: A method in which, in any one of Clauses 1 to 6, the intensity information obtained from the filtered output pulse is used to correct timing information.

[0104] Clause 8: A system comprising at least one processor and at least one non-transient storage medium storing instructions, wherein the instructions, when executed by the at least one processor, cause the at least one processor to: filter output pulses of a SiPM device into a substantially symmetric pulse shape; capture timing information and intensity information of the filtered output pulses for at least one predetermined intensity level; monitor the saturation of the SiPM device—in response to the saturation of the SiPM device, the width of a saturation stabilizer of each output pulse is determined—; and extrapolate additional timing information and additional intensity information of each output pulse using the captured timing information, the captured intensity information, and the determined width of the saturation stabilizer.

[0105] Clause 9: The system of Clause 8, wherein filtering the output pulses comprises applying a high-pass filter, a CR shaper, a band-pass filter, or any combination thereof to the output pulses.

[0106] Clause 10: In either Clause 8 or Clause 9, the system, wherein at least one predetermined intensity level is a saturation level at which the SiPM device becomes saturated.

[0107] Clause 11: A system in which, in any one of Clauses 8 through 10, a read circuit outside the SiPM device monitors the saturation of the SiPM device.

[0108] Clause 12: A system in which, in any one of Clauses 8 through 11, monitoring the saturation of the SiPM device comprises monitoring the output pulses using a comparator and a Time-to-Digital Converter (TDC), an Analog-to-Digital Converter (ADC), or any combination thereof.

[0109] Clause 13: In any one of Clauses 8 through 12, the width of the output pulses changes in response to modified pulses emitted by the emitter.

[0110] Clause 14: A system in which, in any one of Clauses 8 through 13, the intensity information obtained from the filtered output pulse is used to correct timing information.

[0111] Clause 15: at least one non-transient storage medium storing instructions, wherein the instructions, when executed by at least one processor, cause the at least one processor to: filter output pulses of a SiPM device into a substantially symmetric pulse shape; capture timing information and intensity information of the filtered output pulses for at least one predetermined intensity level; monitor the saturation of the SiPM device—in response to the saturation of the SiPM device, the width of a saturation stabilizer of each output pulse is determined—; and extrapolate additional timing information and additional intensity information of each output pulse using the captured timing information, the captured intensity information, and the determined width of the saturation stabilizer.

[0112] Clause 16: At least one non-transient storage medium, wherein the output pulses filtering in Clause 15 comprises applying a high-pass filter, a CR shaper, a band-pass filter, or any combination thereof to the output pulses.

[0113] Clause 17: In either Clause 15 or Clause 16, at least one non-transient storage medium, wherein the at least one predetermined intensity level is a saturation level at which the SiPM device becomes saturated.

[0114] Clause 18: In any one of Clauses 15 to 17, at least one non-transient storage medium in which a read circuit outside the SiPM device monitors the saturation of the SiPM device.

[0115] Clause 19: At least one non-transient storage medium, wherein, in any one of Clauses 15 to 18, monitoring the saturation of the SiPM device comprises monitoring the output pulses using a comparator and a Time-to-Digital Converter (TDC), an Analog-to-Digital Converter (ADC), or any combination thereof.

[0116] Clause 20: At least one non-transient storage medium, wherein, in any one of Clauses 15 to 19, the width of the output pulses changes in response to modified pulses emitted by an emitter.

[0117] In the foregoing description, aspects and embodiments of the present disclosure have been described with reference to a number of specific details that may vary by implementation. Accordingly, the description and drawings should be conceived as illustrative rather than restrictive. The sole exclusive indicator of the scope of the invention, and what the applicants intend to define as the scope of the invention, is the literal equivalent of the series of claims appearing in a particular form in this application, including any subsequent amendments. Any definitions expressly provided in this specification for terms included in such claims determine the meaning of such terms used in the claims. Additionally, when the term “further comprising” is used in the foregoing description and in the claims below, what follows this phrase may be an additional step or entity, or a substep / sub-entity of the previously mentioned step or entity.

Claims

Claim 1 A method for increasing the dynamic range of a silicon photomultiplier tube (SiPM), comprising: filtering output pulses of a SiPM device into substantially symmetric pulse shapes using at least one processor; capturing timing information and intensity information of the filtered output pulses for at least one predetermined intensity level using at least one processor; monitoring the saturation of the SiPM device using at least one processor—in which the width of a saturation plateau of each output pulse is determined in response to the saturation of the SiPM device—; and extrapolating additional timing information and additional intensity information of each output pulse using the captured timing information, the captured intensity information, and the determined width of the saturation plateau using at least one processor. Claim 2 A method according to claim 1, wherein the step of filtering the output pulses comprises applying a high-pass filter, a CR shaper, a band-pass filter, or any combination thereof to the output pulses. Claim 3 A method according to claim 1 or 2, wherein the at least one predetermined intensity level is a saturation level at which the SiPM device is saturated. Claim 4 A method according to any one of claims 1 to 3, wherein a reading circuit outside the SiPM device monitors the saturation of the SiPM device. Claim 5 A method according to any one of claims 1 to 4, wherein the step of monitoring the saturation of the SiPM device comprises monitoring the output pulses using a comparator and a TDC (Time-to-Digital Converter), an ADC (analog-to-digital converter), or any combination thereof. Claim 6 A method according to any one of claims 1 to 5, wherein the width of the output pulses changes in response to modified pulses emitted by an emitter. Claim 7 A method according to any one of claims 1 to 6, wherein the intensity information obtained from the filtered output pulse is used to correct timing information. Claim 8 A system comprising at least one processor and at least one non-transient storage medium storing instructions, wherein the instructions, when executed by the at least one processor, cause the at least one processor: Filtering the output pulses of the SiPM device into substantially symmetric pulse shapes; Capturing timing information and intensity information of the filtered output pulses for at least one predetermined intensity level; The saturation of the above SiPM device is monitored—and the width of the saturation stabilizer of each output pulse is determined in response to the saturation of the above SiPM device—; A system for extrapolating additional timing information and additional intensity information of each output pulse using the above-determined captured timing information, the above-determined captured intensity information, and the width of the above-determined saturation stabilizer. Claim 9 A system according to claim 8, wherein filtering the output pulses comprises applying a high-pass filter, a CR shaper, a band-pass filter, or any combination thereof to the output pulses. Claim 10 A system according to claim 8 or 9, wherein the at least one predetermined intensity level is a saturation level at which the SiPM device becomes saturated. Claim 11 A system according to any one of claims 8 to 10, wherein a read circuit outside the SiPM device monitors the saturation of the SiPM device. Claim 12 A system according to any one of claims 8 to 11, wherein monitoring the saturation of the SiPM device comprises monitoring the output pulses using a comparator and a TDC (Time-to-Digital Converter), an ADC (analog-to-digital converter), or any combination thereof. Claim 13 A system according to any one of claims 8 to 12, wherein the width of the output pulses changes in response to modified pulses emitted by an emitter. Claim 14 A system according to any one of claims 8 to 13, wherein the intensity information obtained from the filtered output pulse is used to correct timing information. Claim 15 As at least one non-transient storage medium storing instructions, said instructions, when executed by at least one processor, cause said at least one processor: Filtering the output pulses of the SiPM device into substantially symmetric pulse shapes; Capturing timing information and intensity information of the filtered output pulses for at least one predetermined intensity level; The saturation of the above SiPM device is monitored—and the width of the saturation stabilizer of each output pulse is determined in response to the saturation of the above SiPM device—; At least one non-transient storage medium that extrapolates additional timing information and additional intensity information of each output pulse using the captured timing information, the captured intensity information, and the width of the determined saturation stabilizer. Claim 16 In claim 8, at least one non-transient storage medium, wherein filtering the output pulses comprises applying a high-pass filter, a CR shaper, a band-pass filter, or any combination thereof to the output pulses. Claim 17 In claim 15 or 16, at least one non-transient storage medium, wherein the at least one predetermined intensity level is a saturation level at which the SiPM device becomes saturated. Claim 18 In any one of claims 15 to 17, at least one non-transient storage medium in which a read circuit outside the SiPM device monitors the saturation of the SiPM device. Claim 19 At least one non-transient storage medium according to any one of claims 15 to 18, wherein monitoring the saturation of the SiPM device comprises monitoring the output pulses using a comparator and a TDC (Time-to-Digital Converter), an ADC (analog-to-digital converter), or any combination thereof. Claim 20 In any one of claims 15 to 19, at least one non-transient storage medium in which the width of the output pulses changes in response to modified pulses emitted by an emitter.