Patent Description:
Range and distance detection using light is known. These systems can be known as LIDAR (light detection and ranging) have many applications including consumer electronics, automotive, robotics, surveying and so on.

An example LIDAR system uses a light source, for example a vertical cavity surface emitting laser (VCSEL), to generate light pulses which are reflected from a surface and then detected at a receiver or detector, for example a photodiode or single photon avalanche diode (SPAD) array.

The time difference between the light being transmitted and received provides the distance or range value using the simple equation D=S*T, where T is the time difference, S the speed of light and D the distance from the transmitter to the reflecting object and back again.

A single photon avalanche diodes (SPAD) is a semiconductor devices capable of detecting light. A photon impinging on a detection region of a SPAD generates an electron and hole pair via the photoelectric effect. The SPAD is reverse-biased with a high voltage magnitude such that when the electron/hole carriers are generated, the electric field applied across the detection region causes the carriers to be accelerated to a relatively high velocity according to the strength and direction of the applied field. If the kinetic energy of the accelerated carriers is sufficient, additional carriers will be generated from the semiconductor lattice, which are in turn accelerated by the field, and may liberate further carriers in an exponentially increasing fashion. Thus, when a sufficiently high electric field is applied across the detection region, a single impinging photon may generate an avalanche of carriers, resulting in an output current 'pulse', where the current output is proportional to the number of photons detected.

The minimum voltage required to cause an avalanche of carriers, and thus allow the device to operate as a SPAD, is known as the breakdown voltage. If the voltage applied is too low, i.e. below the breakdown voltage, then the device does not produce any output. However if the voltage applied is too high, then it is possible that the electric field generated may be sufficient to cause a carrier avalanche even when there are no photons impinging on the SPAD, resulting in a false output current. This false output is known as a "dark current".

<CIT> teaches an optical distance measuring system which includes a multi-wavelength pulse light source configured to generate a plurality of light pulses of different wavelengths and repeat a cycle in which the light pulse is generated while sequentially changing the wavelength thereof; a scan device configured to scan the light pulses; a wavelength-selectable light receiver configured to receive reflection light of the plurality of light pulses of difference wavelengths from a target and generate a light receiving signal that corresponds to each of the plurality of different wavelengths; and a processor configured to detect time from the generation of each of the plurality of light pulses of different wavelengths in the multi-wavelength pulse light source to the generation of the light receiving signal of a corresponding wavelength which is generated in predetermined time and calculate a distance to the target in a scanning direction from the detected time.

According to first aspect there is provided an apparatus for controlling pixel scanning within a range detector, the apparatus comprising: at least one light source configured to provide a spatially controllable point light source; a detector comprising at least one light sensor configured to receive a reflected spatially controllable point light source; a controller configured to control the at least one light source, wherein the controller is configured to: control the at least one light source to generate a first series of light source pulses, associated with a first spatial direction; control the at least one light source to generate a second series of light source pulses associated with a second spatial direction, wherein the second series of light source pulses are started during the first series of light source pulses characterized in that the controller is configured to control the at least one light source to: start the second series of light source pulses a determined time period after the start of the first series of light source pulses, wherein the determined time period is shorter than a time period of the first series of light source pulses.

The first series of light pulses may be associated with a first row of light sensor elements and the second series of light pulses are associated with a second row of light sensor elements.

The first series of light pulses may be associated with a first row first light sensor element of the first row of light sensor elements and the second series of light pulses may be associated with a second row first light sensor element of the second row of light sensor elements.

The controller may be further configured to: control the at least one light source to generate a third series of light source pulses, associated with a third spatial direction, the third spatial direction may be associated with a third row of light sensor elements, wherein the third series of light source pulses may be substantially simultaneously operated with the first series of light source pulses.

The controller may be further configured to control the at least one light source to at least one of: spatially dither the at least one light source; and randomly select a spatial direction during at least one of the first and second series of light pulses.

The controller may be further configured to control the at least one light source to form at least one of: a z-raster pattern with the at least one light source; a snake-raster pattern with the at least one light source; a x-raster pattern with the at least one light source; a random or pseudo-random pattern with the at least one light source; and a skip-n raster pattern with the at least one light source.

According to a second aspect there is provided a method for controlling pixel scanning within a range detector, the method comprising: providing a spatially controllable point light source; controlling the spatially controllable point light source, wherein controlling the spatially controllable light source comprises: generating a first series of light source pulses, associated with a first spatial direction; generating a second series of light source pulses associated with a second spatial direction, wherein the second series of light source pulses are started during the first series of light source pulses characterized in that controlling the spatially controllable point light source comprises: starting the second series of light source pulses a determined time period after the start of the first series of light source pulses, wherein the determined time period is shorter than a time period of the first series of light source pulses.

The method may further comprise: receiving a reflected spatially controllable point light source at a detector comprising at least one light sensor, wherein the first series of light pulses may be received by a first row of elements of the light sensor and the second series of light pulses may be received by a second row of elements of the light sensor.

The first series of light pulses may be received by a first row first element of the light sensor and the second series of light pulses may be associated with a second row first element of the light sensor.

Controlling the spatially controllable light source may comprise further generating a third series of light source pulses, associated with a third spatial direction, wherein the third series of light source pulses may be substantially simultaneously operated with the first series of light source pulses, wherein the third series of light pulses may be received by a third row of elements of the light sensor.

Controlling the spatially controllable point light source may perform at least one of: spatially dithering the at least one light source; and randomly selecting a spatial direction during at least one of the first and second series of light pulses.

Controlling the spatially controllable point light source may comprise controlling the at least one light source to form at least one of: a z-raster pattern with the at least one light source; a snake-raster pattern with the at least one light source; a x-raster pattern with the at least one light source; a random or pseudo-random pattern with the at least one light source; and a skip n raster pattern with the at least one light source.

The concept as described in further detail according to some embodiments is the provision of an improved performance LIDAR system by defining a staggered dot or blade timing configuration controlling the transmitter and receiver. The concept as discussed in further detail involves at least partially overlapping detector timing ranges.

With respect to <FIG> an example range or distance measurement system suitable for implementing some embodiments is shown in further detail. The system <NUM> comprises a light source <NUM>. The light source may be considered to be a transmitter of the light used in the distance detection. The light source may be any suitable pulse (or wave) light source. For example in some embodiments the light source may be one or more vertical cavity surface emitting laser light sources. A vertical cavity surface emitting laser is suitable as it is able to produce well defined pulses of suitable short duration. The light source <NUM> may further comprise or be coupled to various optics configured to collimate and/or focus the light source to a specific region or area. Furthermore in some embodiments the light source comprises a mechanical or optical beam director configured to direct the light according to a defined pattern towards a target or surface <NUM>. The emitted light <NUM> may then be incident on the surface <NUM> and reflected light <NUM> be received at the detector <NUM>.

The system <NUM> may comprise a detector <NUM>, which may comprise or be coupled to various optics configured to focus the returning light to a specific photosensitive region or area within the detector. The detector may be considered to be a receiver of the light used in the distance detection. Furthermore in some embodiments the detector comprises or is associated with a mechanical or optical beam director (which in some embodiments is the same one as used by the light source <NUM>) configured to direct the returning light according towards a specific photosensitive region or area within the detector. In some embodiments the detector <NUM> comprises a photosensitive region, for example an array of single photon avalanche diodes configured to convert the received light into electronic signals suitable for outputting.

Furthermore the system may comprise a timing generator (or controller) <NUM>. In some embodiments the detector <NUM> and light source <NUM> may be controlled using a timing generator <NUM>. The timing generator <NUM> can be configured to generate various timing or control pulses to control the light source, for example to control when and where the light is to be transmitted. The timing generator <NUM> may further be configured to further control the detector, to activate some regions as being photosensitive or active and some other regions as being inactive.

Furthermore the system may comprise a distance measurement/distance mapping unit <NUM>. The distance measurement/mapping unit <NUM> can in some embodiments be configured to receive timing control information from the timing generator <NUM> and from the detector <NUM> (and in some embodiments the light source <NUM>) and determine the distance between the system <NUM> and the surface <NUM> based on the time taken for the light to travel from the light source <NUM> to the surface <NUM> and from the surface <NUM> to the detector <NUM>. The distance measurement/mapping unit <NUM> may for example be configured to generate a histogram of detected events (against time) and from the histogram determine a distance. In some embodiments the distance measurement/distance mapping unit <NUM> is configured to determine distances for more than one point or area and therefore determine a distance map.

In some embodiments the system <NUM> may further comprise a suitable application <NUM> configured to be interfaced with the timing generator <NUM> and distance measurement/distance mapping unit <NUM>. For example the application may be an automotive brake decision unit, automotive navigation unit, computer vision unit or otherwise. The application <NUM> may for example receive the distance map or distance values and perform a decision or determination to control further apparatus based on the distance information. In some further embodiments the application <NUM> may furthermore be configured to control the timing generator to change the distance measurement parameters.

In some embodiments the timing generator <NUM>, distance measurement/mapping <NUM> and application <NUM> may be implemented within a computer (running suitable software stored on at least one memory and on at least one processor), a mobile device, or alternatively a specific device utilizing, for example, FPGAs (field programmable gate arrays) or ASICs (application specific integrated circuits).

With respect to <FIG> example light source (transmitter) and detector (receiver) configurations are shown. A first example is a single-point or discrete diode configuration <NUM>. The single-point configuration based system <NUM> comprises a transmitter <NUM> (for example a VCSEL or similar controllable light source) which is typically targeted using a 2D scanning mirror or the rotational unit <NUM> and output via optical element <NUM>. The optical element <NUM> is further configured to receive the reflected light and focus it back via the 2D scanning mirror or the rotational unit <NUM> to a single point receiver <NUM>. This single point receiver <NUM> typically comprises at least one photosensitive region (for example a SPAD <NUM>) configured to detect the light and then generate suitable electronic pulses based on receiving the reflected light. By changing the direction of the 2D scanning mirror or rotational unit <NUM> an area can be scanned point by point.

A second example configuration is a line sensor/blade scan configuration <NUM>. The blade scan configuration <NUM> typically comprises a (linear) array of transmitting elements, for example an array of VCSELs or other controllable light source elements. The light from the transmitting elements are then passed to a 1D scanning mirror or rotational unit <NUM> which then outputs via a suitable optical element <NUM>. The optical element receives the reflected light and passes the reflected light via to the 1D mirror or rotational unit <NUM> to the receiver <NUM>. The receiver <NUM> typically comprises an array of SPAD elements (for example a linear array of SPAD elements) or a linear photosensitive array. In such a manner a 'blade' or line of light may be generated and then received generating an image line. These lines may then be stepped by changing the direction of the 1D scanning mirror or rotational unit <NUM> to scan an area <NUM> (line <NUM> by line). In some embodiments the blade scan configuration <NUM> may be implemented by series of offset linear arrays or transmitting elements and a static mirror.

A third type of operation is a flash configuration wherein the transmitter (which may comprise one or more light sources) generates a single flash which may be output via a suitable optical element (or in some situations an optical window) <NUM> and the received light received via a further optical element <NUM> (or the same optical element <NUM> as the transmission path) at an image sensor <NUM> comprising an array of sensitive areas <NUM>. The flash configuration thus is able to generate a single image <NUM> generated by a single exposure.

The differences between the configurations shown with respect to <FIG> are such the flash configuration although able to generate a fast frame rate but is limited in terms of accuracy because of safety light level limits and that the single point and line sensor configurations are limited in frame rate because of scanning but are able to use higher light levels and therefore produce more accurate image depth maps. Many applications, such as automotive navigation and automatic object detection, would benefit from a high frame rate and accurate depth map configuration as would be produced by embodiments as discussed hereafter.

One of the aspects which slow the frame rate of a single dot/single point configuration is the manner in which light source/pixels are individually activated. A typical time pattern for operating the pixels is shown in <FIG> for example shows timing graphs showing the activation of the laser pulse or transmitter <NUM> which generates light pulses <NUM>, <NUM>, <NUM> which are separated by an integration time period Tint <NUM>. The integration time defines the expected maximum range of the system, in other words the expected maximum time for a light pulse to travel the distance from the transmitter to the target and reflected from the target back to the receiver.

<FIG> furthermore shows timing graphs for a series of pixels <NUM>, <NUM>, <NUM> in which the photosensitive regions are sequentially activated for an integration time.

The first pixel <NUM> is therefore shown being activated for a TOF range time <NUM> following a laser pulse <NUM> and then deactivated or in a not-sensitive time <NUM> for a series of following integration time periods. Within the TOF range time period <NUM> the reflected light may be detected as indicated by the event detection arrows <NUM>. Furthermore during this period <NUM> pixel <NUM><NUM> and pixel <NUM><NUM> are not sensitive.

The second pixel <NUM> is shown being activated for a TOF range time <NUM> which immediately follows the second laser pulse <NUM> and also follows the end of the first pixel <NUM> TOF range time <NUM>. Within this TOF range time <NUM> is shown detected events <NUM>. The second pixel is shown being deactivated or in a not-sensitive time <NUM> which is the same period as the first pixel <NUM> TOF range time <NUM> and in the period after the TOF range time <NUM>.

The third pixel <NUM> is shown being activated for a TOF range time <NUM> which immediately follows the third laser pulse <NUM> and also follows the end of the first pixel <NUM> TOF range time <NUM> and the second pixel <NUM> TOF range time <NUM>. Within this TOF range time <NUM> is shown detected events <NUM>. The second pixel is shown being deactivated or in a not-sensitive time <NUM> which is the same period as the first pixel <NUM> TOF range time <NUM> and the second pixel <NUM> TOF range time <NUM>.

As shown therefore each pixel is activated sequentially and requires a separate Tint period <NUM> (typically in the order of <NUM>).

This is then shown replicated in the scanning timing diagram of <FIG> which shows the column and row activations where each column <NUM> (or pixel) is activated sequentially for a separate Tint or Tshot time, as shown in close up view <NUM> of the sequential activation of pixel <NUM><NUM> pixel <NUM><NUM> and pixel <NUM><NUM>, for a first Row, Row <NUM><NUM>. The same sequential column activation for succeeding rows, Row <NUM><NUM>, Row <NUM><NUM> to Row N is then shown.

Thus in such a system the frame period is limited by the Tshot or Tint time period.

The following examples therefore show embodiments wherein the frame period is not limited by the Tshot or Tint time period. The concept as discussed earlier is one in which the timing ranges for the pixels are configured to be at least partially overlapping. This may be implemented for example by the use of a staggered offset or staggered dot timing system wherein rather than activating pixels independently and sequentially the pixels are activated according to a staggered offset pattern per channel.

With respect to <FIG> an example staggered dot timing system is as used in some embodiments is shown in further detail. In this example the laser pulse timing <NUM> shows a sequence of pulses <NUM>, <NUM>, <NUM> where each successive pulse is associated with a pixel but is spaced according to a staggered offset period.

Thus the system shows a first laser pulse <NUM> associated with a first pixel, pixel <NUM>, a second laser pulse <NUM> associated with a second pixel, pixel <NUM>, a third laser pulse <NUM> associated with a third pixel, pixel <NUM> and so on to a Y'th laser pulse associated with a Y'th pixel. The system then repeats such that there is furthermore a further cycle first laser pulse <NUM> associated with the first pixel, pixel <NUM>, a further cycle second laser pulse <NUM> associated with the second pixel, pixel <NUM>, a further cycle third laser pulse <NUM> associated with the third pixel, pixel <NUM> and so on to a further cycle Y'th laser pulse associated with the Y'th pixel. This can be repeated for the desired number of ranging cycles.

The first pixel, pixel <NUM>, as shown by timing line <NUM>, may be configured such that it is active following the first laser pulse <NUM>. Within this active time any return events <NUM> associated with the first laser pulse <NUM> can be detected within the TOF range <NUM> which continues up to the further cycle first laser pulse <NUM> which starts a further TOF range period until a determined number of ranging cycles is completed.

Furthermore for the second pixel, pixel <NUM>, as shown by timing line <NUM>, may be configured such that it is active following the second laser pulse <NUM>. Within this active time any return events <NUM> associated with the second laser pulse <NUM> can be detected within the TOF range <NUM> which continues up to the further cycle second laser pulse <NUM> which starts a further TOF range period until a determined number of ranging cycles is completed. In some embodiments the second pixel is deactivated (shown by the cross hatched area <NUM>) until the second laser pulse occurs.

For the third pixel, pixel <NUM>, as shown by timing line <NUM>, may be configured such that it is active following the third laser pulse <NUM>. Within this active time any return events <NUM> associated with the third laser pulse <NUM> can be detected within the TOF range <NUM> which continues up to the further cycle third laser pulse <NUM> which starts a further TOF range period until a determined number of ranging cycles is completed. In some embodiments the third pixel is deactivated (shown by the cross hatched area <NUM>) until the third laser pulse occurs.

In implementing the timing of the laser (light source) pulses such embodiments may be able to implement an integration time (Tint) for Y pulses in the region of (Y-<NUM>)x(time of light range period) (which may be approximately <NUM>).

With respect to <FIG> is shown the row <NUM> and column <NUM> address timing aspects with respect to the staggered dot timing as shown in <FIG>. In this example, with respect to the first row <NUM>, there is shown a first sequence <NUM> of staggered pixel activation wherein each pixel is sampled for a number of times and then the histogram read out. For example as shown in <FIG> by the dashed box pixel <NUM> is sampled 604a, 604b, 604c, and then read out <NUM><NUM>. A stagger period after each pixel <NUM>, pixel <NUM> is sampled 606a, 606b, 606c, and then read out <NUM><NUM>. A further stagger period after which pixel <NUM> is sampled 608a, 608b, 608c, and then read out <NUM><NUM>.

Additionally as soon as the row <NUM> pixel <NUM> histogram is read out the next row, row <NUM><NUM> can be activated and pixel <NUM> may be sampled, row <NUM> pixel <NUM> can then be activated a stagger delay after this and so on.

In such a manner row <NUM><NUM> can be active while row <NUM><NUM> is active (as shown in <FIG> by the overlapping periods of <NUM> and <NUM>).

In some embodiments where there is no possibility of overlap between rows then rows can be run substantially simultaneously (with a stagger delay between them). For example in the example shown in <FIG> a paring of row <NUM><NUM> and row <NUM><NUM> are activated substantially simultaneously, where the row <NUM> pixel <NUM> is activated as shown by the sequence 706a, 706b followed after a stagger delay by a row <NUM> pixel <NUM> sequence 708a, 708b. This in turn may be followed, a stagger delay further after by row <NUM> pixel <NUM> sequence 710a, 710b followed after a stagger delay by row <NUM> pixel <NUM> sequence 712a, 712b.

As soon as the row <NUM> pixel <NUM> histogram is read out then in a manner similar to <FIG> then row <NUM><NUM> starts with pixel <NUM>, followed a stagger delay later by row <NUM><NUM> with pixel <NUM>.

In such a manner the frame rate can be further improved as also shown in <FIG> which shows a series of histograms timing outputs. A first timing line <NUM> is shown which starts <NUM> at the start of the pixel <NUM> row <NUM> histogram generation period <NUM>. At the end of the pixel <NUM> row <NUM> histogram generation (in other words after a defined number of ranging cycles using the pixel <NUM> from row <NUM>) then the pixel <NUM> row <NUM> histogram read <NUM> occurs. After this the pixel <NUM> row <NUM> histogram generation period <NUM> is started.

<FIG> furthermore shows a second timing line <NUM> which at the start <NUM> time is performing a pixel <NUM> row X (where X is the number of rows) histogram read <NUM> occurs. After this histogram read (the equivalent to a stagger delay) is the pixel <NUM> row <NUM> histogram generation period <NUM>. At the end of the pixel <NUM> row <NUM> histogram generation (in other words after a defined number of ranging cycles using the pixel <NUM> from row <NUM>) then the pixel <NUM> row <NUM> histogram read <NUM> occurs. After this the pixel <NUM> row <NUM> histogram generation period <NUM> is started.

This may be repeated for further histograms, so as shown in <FIG> there is a third timing line <NUM> which at the start <NUM> time is at the end of performing a pixel <NUM> row X histogram generation <NUM> and the pixel <NUM> row X histogram read <NUM> occurs. After this histogram read is the pixel <NUM> row <NUM> histogram generation period <NUM>. At the end of the pixel <NUM> row <NUM> histogram generation (in other words after a defined number of ranging cycles using the pixel <NUM> from row <NUM>) then the pixel <NUM> row <NUM> histogram read <NUM> occurs. After this the pixel <NUM> row <NUM> histogram generation period <NUM> is started.

A further histogram line <NUM> is shown which shows at the start <NUM> time is at the a pixel. row X histogram generation <NUM> and the pixel. row X histogram read <NUM> occurs. After this histogram read is the pixel. row <NUM> histogram generation period <NUM>. At the end of the pixel. row <NUM> histogram generation (in other words after a defined number of ranging cycles using the pixel. from row <NUM>) then the pixel. row <NUM> histogram read <NUM> occurs. After this the pixel. row <NUM> histogram generation period <NUM> is started.

A final histogram line <NUM> is shown which starts <NUM> at the start of the pixel Y row X histogram generation period <NUM>. At the end of the pixel Y row X histogram generation (in other words after a defined number of ranging cycles using the pixel Y from row X) then the pixel Y row X histogram read <NUM> occurs. After this the pixel Y row <NUM> histogram generation period <NUM> is started.

With respect to <FIG> the advantages of using the stagger delay approach as described herein is shown. The upper part <NUM> of <FIG> shows a situation wherein each pixel is activated one after another. Thus a histogram associated with pixel <NUM> is generated <NUM> using a number (in this example situation <NUM>) of samples before moving to pixel <NUM><NUM> and moving on until the last pixel, pixel N, <NUM>. After all of the pixels are used then the frame is completed as shown by the frame time <NUM>.

The middle part <NUM> of <FIG> shows a situation wherein a stagger delay is used between activating each pixel and that for the same frame time a signal to noise ratio can be improved as more samples can be used for each pixel. Thus the sampling of the histogram associated with pixel <NUM> is started <NUM> using a number (in this example situation <NUM>) of samples. A stagger delay period after pixel <NUM> is started then pixel <NUM><NUM> is started and so on until the last pixel, pixel N, <NUM> is started. After all of the pixels are finished then the frame is completed as shown by the frame time <NUM>.

The lower part <NUM> of <FIG> shows a situation wherein a stagger delay is used between activating each pixel and that for the same number of samples as shown in the upper part <NUM> the pixels may be sampled using a shorter frame time <NUM>.

Thus the sampling of the histogram associated with pixel <NUM> is started <NUM> using a number (in this example situation <NUM>) of samples. A stagger delay period after pixel <NUM> is started then pixel <NUM><NUM> is started and so on until the last pixel, pixel N, <NUM> is started. After all of the pixels are finished then the frame is completed as shown by the frame time <NUM> where the frame time <NUM> is shorter than the frame time <NUM>.

In some embodiments a spatial dithering/randomisation may be employed to switch from pixel to pixel in order in order to allow a higher power per point and longer integration per receive pixel as spatial dithering/randomisation moves the light out of the eye field of view.

Some patterns associated with moving from pixel to pixel using the stagger delay operation is shown furthermore with example and with respect to <FIG>. The upper part of <FIG> shows a first example raster pattern for operating a pixel-by-pixel scan. This is a conventional single dot raster pattern where the first row, row <NUM>, <NUM> is scanned from one side to the other, a scan line return <NUM> is implemented before a second row, row <NUM><NUM>, is scanned, a further scan line return <NUM> is implemented a third row, row <NUM><NUM>, is scanned and so on. This may be applied to the stagger delay operations described herein wherein each pixel scan starts a stagger delay after each other.

The lower part of <FIG> shows a second example raster pattern for operating a pixel-by-pixel scan. This is a snake single dot raster pattern where the first row, row <NUM>, <NUM> is scanned from one side to the other, a scan line jump <NUM> is implemented before the second row, row <NUM><NUM>, is scanned in the opposite direction to the first row. After a further scan line jump <NUM> is implemented a third row, row <NUM><NUM>, is scanned in the opposite direction to the second row (and the same direction as the first row and the pattern repeats. This also may be applied to the stagger delay operations described herein wherein each pixel scan starts a stagger delay after each other.

<FIG> shows a third example which is a modified raster pattern for operating a pixel-by-pixel scan using a stagger delay in a manner described herein. In this scan pattern the first row, row <NUM>, <NUM> is scanned from one side to the other and the looped back Y times <NUM>. After the Y'th loop is completed, a scan line return <NUM> is implemented before a second row, row <NUM><NUM>, is scanned in the same direction as row <NUM>.

Row <NUM><NUM> is looped Y times <NUM> and after the Y'th loop is completed, a scan line return <NUM> is implemented before a third row, row <NUM><NUM>, is scanned in the same direction as row <NUM>.

Row <NUM><NUM> is looped Y times <NUM> and after the Y'th loop is completed, a scan line return <NUM> is implemented for the next row scan and so on.

The patterns shown in <FIG> and <FIG> have equal spatial-temporal sampling per pixel.

<FIG> shows two further patterns. The upper part of <FIG> shows a fourth example which is a modified snake raster pattern for operating a pixel-by-pixel scan using a stagger delay in a manner described herein. In this scan pattern the first row, row <NUM>, <NUM> is first scanned from one side to the other <NUM> and then scanned from the other side back to the start <NUM>. After this the cycle is looped Y times <NUM>. After the Y'th loop is completed, a scan line return <NUM> is implemented.

This cycle is repeated for a second row, row <NUM><NUM>, is scanned in the same manner as row <NUM> (in other words in a first direction and then back again and then repeated for Y times <NUM> before then implementing a scan line return <NUM>).

This is again repeated for a third row, row <NUM><NUM>, and further rows.

The lower part of <FIG> shows a fifth example which is a modified X raster pattern for operating a pixel-by-pixel scan using a stagger delay in a manner described herein. In this scan pattern pairs of rows are grouped and the scan is organised such that the first row, row <NUM>, <NUM> pixel <NUM> is first scanned, then the second row, row <NUM>, <NUM> second pixel is scanned, and a spatial X pattern followed to the end of the scan line ending at the row <NUM> end pixel and then started again from the row <NUM> end pixel back to row <NUM> first pixel. This may then be looped 2Y times <NUM>.

After the last loop has been completed then the next pair of rows is scanned in the same manner.

This raster pattern attempts to increase the spatial distance between neighbouring pixels.

In some embodiments the pattern may be formed from groups of more than two rows.

The pattern shown in <FIG> shows a sixth example which is a skip pattern. In this scan pattern the first row, row <NUM>, <NUM> is first scanned from one side to the other <NUM> wherein in the scan a skip is performed missing a pixel for each skip. At reaching the end the row is then scanned from the other side back to the start performing a similar skip pattern. When this reaches the beginning of the row this the cycle is looped Y times <NUM>. After the Y'th loop is completed, a scan line return <NUM> is implemented.

This cycle is repeated for a second row, row <NUM><NUM>, is scanned in the same manner as row <NUM> (and then repeated for Y times <NUM> before then implementing a scan line return <NUM>).

This approach similarly increases the spatial distance between neighbouring pixels.

Although a skip <NUM> pattern is shown other skip patterns may be implemented.

The above examples show various spatial patterns, however any suitable spatial pattern can be implemented where the spatial pattern may be deterministic, pseudo-random or random.

The apparatus and method described above may be implemented in any device or apparatus which utilises single photon avalanche detectors. For example, the apparatus and method described above may be implemented in a LIDAR system. It should be understood that this non-limiting implementation is only exemplary, and the apparatus and method may be implemented in any manner of other light-detecting applications.

It should be appreciated that the above described arrangements may be implemented at least partially by an integrated circuit, a chip set, one or more dies packaged together or in different packages, discrete circuitry or any combination of these options.

Various embodiments with different variations have been described here above. It should be noted that those skilled in the art may combine various elements of these various embodiments and variations.

Claim 1:
An apparatus (<NUM>) for controlling pixel scanning within a range detector, the apparatus comprising:
at least one pulse light source (<NUM>) configured to provide a spatially controllable point light source;
a detector (<NUM>) comprising at least one light sensor configured to receive a reflected spatially controllable point light source;
a controller (<NUM>) configured to control the at least one light source (<NUM>), wherein the controller is configured to control the at least one pulse light source (<NUM>) to:
generate a first series of light source pulses (<NUM>, <NUM>) associated with a pixel of a first row and a first column;
generate a second series of light source pulses (<NUM>, <NUM>) associated with a pixel of a second row and a first column, wherein the second series of light source pulses (<NUM>, <NUM>) are started during the first series of light source pulses (<NUM>, <NUM>);
start the second series of light source pulses (<NUM>, <NUM>) an offset period after the start of the first series of light source pulses (<NUM>, <NUM>), wherein the offset time period is shorter than an integration time period of the first series of light source pulses (<NUM>, <NUM>).