Patent Description:
Some background information can be found in <NPL>, which relates to approximating the 3D geometry of an event stream with a parametric model to motion-compensate for the camera. Some additional background information can be found in<NPL>, which relates to an event-driven OF algorithm that uses time slices of accumulated dynamic vision sensor events which are adaptively rotated based on the input events and OF results. <CIT> & <CIT> show an event sensor with global flash detection.

Various examples will be described below by referring to the following figures.

Examples of global motion suppression in an event-driven camera are described herein. In some examples, the event-driven camera registers motion that does not pertain to a subject in the field of view of the camera. This motion is global in nature and may arise from the camera's own motion versus the subject's motion. This global motion can be due to panning, jitter, and other forms of camera motion. Reading and processing pixel data during global motion may be inefficient. Examples of global motion suppression in an event-driven camera are described herein.

<FIG> is an example block diagram of an event-driven camera <NUM> in which global motion suppression may be performed. The event-driven camera <NUM> may be a stand-alone device or may be integrated into another electronic device (e.g., desktop computers, laptop computers, tablet devices, smart phones, cellular phones, game consoles, server devices, cameras, and/or smart appliances, etc.). Examples of applications that may use an event-driven camera <NUM> include thermal imaging in a 3D printer, print quality evaluation, virtual reality, autonomous vehicle navigation, and robotics.

An emerging paradigm in computing is event-driven processing, which is an aspect within the larger umbrella of brain-inspired computing, also referred to as neuromorphic computing. Event-driven processing bears a similarity to spiking and spike propagation within a human brain. Because the processing is triggered by events, the energy expended by an event-driven camera <NUM> may be significantly less when compared with non-event-driven systems. For example, in a frame-based camera, an entire image frame is read out periodically, even when changes between image frames are minimal. For example, an entire image frame may be read out and the pixels within the image frame may be processed even when most of the pixels remain unchanged. In comparison, in an event-driven image sensor <NUM>, instead of periodically reading an image frame, individual pixels may be read upon detecting a change. In the context of image data, energy efficiency in cameras may be beneficial for continuous sensing at edge conditions and in cases where the cameras may be powered by a battery.

While an event-driven image sensor <NUM> may improve efficiency on the camera-capture side, a similar event-driven approach may be implemented for image processing. There are opportunities to vastly improve these systems in terms of computing efficiencies, by imitating biology and in particular, the human brain.

Event-driven cameras <NUM> offer several benefits over frame-based cameras. Event-driven cameras <NUM> are substantially more energy efficient, which results in orders of magnitude reduction in power consumption. The events being sparse results in storage, computing and bandwidth efficiencies. Additionally, event-driven cameras <NUM> enable a significant increase in dynamic range, which enables the detection of subtle image quality defects or face and/or object recognition that may be challenged by difficult illumination conditions including subject backlight. However, event-driven cameras <NUM> may encounter scenarios that compromise the energy storage, computing and bandwidth efficiencies as well as high dynamic range.

Event-driven cameras <NUM> work on the principle of capturing light when there is significant motion. In an event-driven camera <NUM>, a pixel <NUM> may report an event when the pixel <NUM> is triggered by motion. For instance, when a person passes through the field of view (FOV), those pixels <NUM> over which motion is registered may be read out for processing, whereas the background pixels <NUM> where there is no motion will not be processed.

An event-driven camera <NUM> may detect motion through a process of pixel integration. As light (e.g., photons) contacts a pixel <NUM>, the pixel <NUM> stores electrons in a pixel well. The amount of electrons stored in the pixel well is proportional to the amount of light sensed by the pixel <NUM>. As used herein, pixel integration is a measurement of an amount of light (e.g., photons) that is sensed by a pixel <NUM> over a period of time (e.g., exposure time). In other words, pixel integration is a measurement of the stored charge accumulated within the pixel <NUM> during a specified time interval. In some examples, a pixel <NUM> may output a pixel integration signal (referred to herein as a pixel integration output) that indicates the pixel integration value.

Pixels <NUM> that register motion will do so upon reaching an event threshold during pixel integration. When high-frequency motion is detected, a pixel <NUM> integrates rapidly until it hits an event threshold. This may be referred to as a pixel firing. When the pixel <NUM> fires, the pixel output may be read out as an event. In an example, the pixel <NUM> may output a pixel fire signal when pixel integration reaches the event threshold. In other words, the pixel fire signal may be asserted when the pixel well threshold (referred to as the event threshold) is reached.

These events may be processed within the event-driven image sensor <NUM> as well as by downstream processing (e.g., spiking neural networks (SNN)). For instance, the downstream processing may be used to identify the person who passed through the FOV. This is useful for applications such as pedestrian detection, object recognition, and a wide variety of other applications. Event-based processing may also be useful when the device that is powering the event-driven image sensor <NUM> has a small battery. Additionally, event-based processing may be useful when the observed subject matter experiences a wide dynamic range, which may be beyond the capabilities of a frame-based camera sensor to detect.

While event-driven cameras <NUM> are very useful, there are common scenarios when their features may not provide the described benefits. These scenarios may arise when the event-driven camera <NUM> registers motion that does not pertain to the subject. This motion is global in nature in that the motion arises from camera's own motion and not the motion of the subject. This global motion can be due to panning of the event-driven camera <NUM>, jitter (e.g., hand jitter), shaking, and other forms of camera motion.

When such a global motion happens, all the pixels <NUM> within the event-driven image sensor <NUM> register motion. All the pixels are then read out, processed and stored. However, in this case, the pixel readout, processing and storage are unwarranted. In other words, pixel readout, processing and storage during a global motion event provide no benefit in that the subject motion is not detected. When this happens, an event-driven camera <NUM> may become as inefficient as a frame-based camera.

Without suppressing global motion, the event-driven camera <NUM> may experience the following issues. There may be a sharp increase in power consumption. Since the power consumption in processing pixels <NUM> due to global motion is unnecessary, efficiency is impacted in an otherwise very efficient camera system. This unnecessary pixel processing also results in wasted power in other data paths, memory accesses and processing networks downstream of the event-driven image sensor <NUM>. Additionally, the wasteful pixel processing may result in adversely impacting storage efficiency, hurting compression efficiency that arises out of a sparsity of events. Furthermore, the pixels <NUM> have a maximum electron-well (referred to as pixel-well) capacity. By integrating unnecessarily, pixel wells saturate more easily, which impacts the benefits of high dynamic range.

In some approaches, post-processing may be performed to detect the global motion at a later stage to help with processing for event detection. However, with these approaches the above described issues will not be overcome. In fact, the post-processing will result in further power consumption.

Examples of an event-driven camera <NUM> are described herein that include circuitry within the event-driven image sensor <NUM> to detect and suppress global motion in the pixel array. This may relieve the downstream stages of the event-driven camera <NUM> from having to carry, store and process the extra pixel data associated with global motion. This approach may also prevent premature saturation of pixel wells whenever global motion occurs.

The event-driven image sensor <NUM> includes a plurality of pixels <NUM>. In an example, the pixels <NUM> are arranged in an array in which a number of pixels <NUM> form a row or pixels and a number of pixels <NUM> form a column of pixels.

It should be noted that an event-driven camera <NUM> may detect changes within the field of view of the event-driven image sensor <NUM>. A given pixel <NUM> outputs a pixel integration output signal and a pixel fire signal. The pixel integration output signal is an output signal that is asserted when the pixel <NUM> integrates. As used herein, the pixel integration output indicates an amount of light (e.g., photons) that is sensed by a pixel <NUM> over a period of time (e.g., exposure time). The pixel integration output is used to detect low-frequency global motion.

The pixel fire signal is a signal that is asserted when the pixel well reaches an event threshold. The pixel fire signal may be used to detect high-frequency events.

In some examples, a pixel <NUM> may also receive a pixel reset signal. The pixel reset signal may be tied to a pixel <NUM>, such that the pixel <NUM> gets reset whenever this reset signal is asserted. The pixel reset signal may cause the pixel <NUM> to discharge the pixel well, which results in the pixel integration output to reset.

The event-driven image sensor <NUM> includes global motion detection circuitry <NUM> to detect global motion of the event-driven camera <NUM> based on a plurality of pixels <NUM> of the event-driven image sensor <NUM> detecting events. In some examples, the global motion may include panning or jitter of the event-driven camera <NUM>.

Global motion may be detected when a predetermined percentage of pixels <NUM> detect an event. In some examples, global motion may be detected if some predetermined number or percentage of pixels <NUM> is active. For example, global motion may be detected when all of the pixels <NUM> are active. In another example, global motion may be detected when a predetermined percentage (e.g., less than <NUM>%) of pixels <NUM> are active.

In other examples, a predetermined subset of the pixels <NUM> may be used to detect and the global motion. For example, all edge pixels <NUM>, every other pixel <NUM>, every third pixel <NUM>, etc., may be used to detect global motion. In this example, other pixels <NUM> may not be connected to the global motion detection circuitry <NUM>.

The global motion detection circuitry <NUM> receives the pixel integration outputs from each of the plurality of pixels <NUM>. The global motion detection circuitry <NUM> detects when the pixel integration outputs for each of the plurality of pixels <NUM> reach an event indication value. This indicates that the pixels <NUM> have detected a low-frequency event (e.g., global motion). The event indication value is a certain value of a pixel integration output that indicates that sufficient change has occurred in the pixel well to represent a change in the event-driven image sensor <NUM> field of view.

It should be noted that the event indication value may be less than the event threshold used to assert a pixel fire signal. For example, the pixel integration output may be less than the event threshold that would trigger a pixel fire. However, the pixel integration output is used to detect low-frequency motion (e.g., global motion) that may otherwise not trigger a high-frequency event.

The global motion detection circuitry <NUM> may also include pixel integration delay components that delay when the pixel integration outputs reach the event indication value. For example, the pixel integration delay components may have a first time constant that is a large time constant to detect low-frequency global motion (e.g., panning). Because low-frequency global motion may be detectable over a longer period of time (as compared to a high-frequency event that would trigger an pixel fire signal), the large time constant of the pixel integration delay components may be used to delay when global motion is detected by the pixel <NUM>. This may ensure that global motion detection is not asserted prematurely.

In an example, the pixel integration delay component may be implemented as a capacitor coupled to the pixel integration output of a pixel <NUM>. An example of this approach is described in <FIG>.

The event-driven image sensor <NUM> also includes global motion suppression circuitry <NUM>. The global motion suppression circuitry <NUM> supresses global motion in response to detecting the global motion. Suppressing the global motion by the global motion suppression circuitry <NUM> includes generating a global activation signal that prevents storing and processing data contained in the plurality of pixels <NUM>. When all of the pixels <NUM> are triggered (e.g., the pixels <NUM> detect an event based on the pixel integration output), then the global motion suppression circuitry <NUM> may generate the global activation signal. When the global activation signal is output, this indicates that all pixels <NUM> have activated. For example, the global activation signal may be asserted when the event-driven camera <NUM> is experiencing global motion due to panning or jitter. The pixel values in this case may not be useful and thus could result in extra power consumption.

In some examples, the global activation signal may be used as a selector for pixel array read out and processing within the event-driven image sensor <NUM>. For example, when the global activation signal is asserted (e.g., ON), then global motion is detected and the pixel data is not read out and/or processed. This will suppress the unnecessary and wasteful readout and processing of pixel data. When the global activation signal is de-asserted (e.g., OFF), then global motion is not detected and the pixel data may be read out and/or processed.

In some examples, suppressing the global motion may include resetting the plurality of pixels <NUM> in response to detecting the global motion. For instance, upon generating the global activation signal, a pixel reset signal may be sent to each of the plurality of pixels <NUM>. When the global motion occurs, the pixels <NUM> may integrate unnecessarily. This global motion may cause the pixel wells to fill up sooner, and the pixels <NUM> to saturate faster. This scenario negatively impacts the dynamic range of the event-driven image sensor <NUM>.

To preserve dynamic range, the global activation signal may be used to assert the reset signal, which is fed back to all the pixels <NUM> in the event-driven image sensor <NUM>. The reset signal will cause the pixels <NUM> to empty the pixel wells. In some implementations a delay element may be included on the reset signal assertion to prevent race conditions between pixel integration and pixel reset. The reset signal provides a mechanism by which all the pixels <NUM> in the event-driven image sensor <NUM> can be reset whenever there is global motion. This may prevent premature saturation of the pixels <NUM>, which improves the dynamic range of the event-driven image sensor <NUM>.

The event-driven image sensor <NUM> may also include pixel fire detection circuitry. As described above, a high-frequency event may cause the pixel <NUM> to fire. A high-frequency event may be due to observable motion in the field of view of the event-driven image sensor <NUM>. In other words, a high-frequency event may be meaningful information for the event-driven camera <NUM> to detect. When a high-frequency event is detected, a pixel <NUM> integrates rapidly until it hits an event threshold. The pixel <NUM> may output a pixel fire signal when pixel integration reaches the event threshold. When the pixel <NUM> fires, this should be recorded. Any global motion suppression that is in progress may be interrupted.

The pixel fire detection circuitry may detect when a pixel fire signal of a given pixel <NUM> reaches the event threshold. The pixel fire detection circuitry may reset the pixel integration output of the given pixel <NUM>, which interrupts the global motion suppression. In other words, once one of the plurality of pixels <NUM> is no longer outputting a pixel integration output equal to or greater than the event indication value, the global motion suppression circuitry <NUM> may cease to assert the global activation signal. When the global activation signal is de-asserted (e.g., OFF), then global motion is not detected and the pixel data may be read out and/or processed.

In an example, the pixel fire detection circuitry may include a pixel fire delay component having a second time constant that is less than the first time constant of the pixel integration delay component. As described above, the pixel integration delay components may have a large time constant to avoid prematurely asserting global motion detection. However, to avoid missing a meaningful event, the pixel fire event may be detected quickly as compared to the global motion detection. In other words, high-frequency motion that triggers an event may be detected quickly to avoid missing the event. Therefore, the time constant for the pixel fire delay component may be very small when compared with the first time constant of the pixel integration delay component. In an example, the pixel fire delay component may be implemented as a capacitor coupled to the pixel fire signal of a pixel <NUM>. An example of this approach is described in <FIG>.

Some additional aspects of global motion suppression in an event-driven camera <NUM> are described herein. Examples of circuitry to detect and suppress global motion is described in connection with <FIG> and <FIG>. An example of a global pixel reset signal that is asserted in response to detecting global motion is described in connection with <FIG>.

<FIG> is an example flow diagram illustrating a method <NUM> for global motion suppression in an event-driven camera <NUM>. The event-driven camera <NUM> includes an event-driven image sensor <NUM> with a plurality of pixels <NUM>. The pixels <NUM> each provide a pixel integration output.

The event-driven image sensor <NUM> detects <NUM> global motion of the event driven camera <NUM> based on the plurality of the pixels <NUM> of the event-driven image sensor <NUM> detecting events. For example, the event-driven image sensor <NUM> includes global motion detection circuitry <NUM> to detect when the pixel integration outputs for a predetermined percentage of the plurality of pixels <NUM> reach an event indication value. In some implementations, the global motion detection circuitry <NUM> may detect <NUM> global motion when the pixel integration outputs for all pixels <NUM> reach an event indication value.

In some examples, the global motion detection circuitry <NUM> may also include pixel integration delay components having a first time constant for each of the plurality of pixels <NUM>. The first time constant for the pixel integration delay components may be a large time constant. The pixel integration delay components may delay when the pixel integration outputs reach the event indication value. This delay may enable the event-driven image sensor <NUM> to detect low-frequency global motion (e.g., panning and/or jitter).

The event-driven image sensor <NUM> suppresses the global motion in response to detecting the global motion. The event-driven image sensor <NUM> includes global motion suppression circuitry <NUM> to generate a global activation signal when the pixel integration outputs for each of the plurality of pixels <NUM> reach the event indication value. The global activation signal prevents storing and processing data contained in the plurality of pixels <NUM>. The global motion suppression circuitry <NUM> may also reset the plurality of pixels <NUM>. For example, upon detecting global motion, the global motion suppression circuitry <NUM> may send a reset signal to the plurality of pixels <NUM>.

<FIG> is an example of a four-pixel module <NUM> for global motion suppression in an event-driven camera. The four-pixel module <NUM> is an example of the global motion detection circuitry and global motion suppression circuitry described in connection with <FIG>.

In this example, four pixels 306a-d are assembled into an array to form a four-pixel module <NUM>. Each pixel <NUM> outputs a pixel integration output signal <NUM> that is asserted when the pixel <NUM> integrates. As described above, pixel integration is a measure of the amount of light sensed by the pixel <NUM> over a period of time. Therefore, the pixel integration may be a measurement of the stored charge accumulated within the pixel <NUM> during a specified time interval. The pixel integration output signals 312a-d may be referred to as a pixel activation signal. In some examples, the pixel integration output signals 312a-d may include a voltage corresponding to the pixel integration value, where the voltage increases as the pixel integration value increases.

The pixels 306a-d also output a pixel fire signal <NUM>. The pixel <NUM> may output a pixel fire signal when pixel integration reaches the event threshold. In other words, the pixel fire signal <NUM> may be asserted when the pixel well threshold (referred to as the event threshold) is reached.

The pixels 306a-d may receive a reset signal <NUM>. Upon receiving the reset signal <NUM>, the pixels 306a-d may reset. For example, the charge accumulated within the electron well may be discharged.

In this four-pixel module <NUM>, the pixel integration output signal <NUM> from each pixel <NUM> controls the gate input of a negative channel metal oxide (NMOS) transistor <NUM>. The four NMOS transistors 314a-d are connected in series to form a NAND (NOT-AND) gate. In other words, the global motion detection circuitry may include a NAND gate. The inputs of the NAND gate may be coupled to the pixel integration outputs 312a-d of the plurality of pixels 306a-d.

A positive channel metal oxide (PMOS) transistor 326a-d may be used to pull up the line (i.e., the four-pixel activation signal <NUM>) when the NMOS transistors 314a-d are not turned ON. Thus, the pixel integration output signal 312a-d may be coupled to the gates of the PMOS transistors 326a-d connected in parallel. In an example, the full circuitry may constitute a complementary MOS (CMOS) NAND gate.

An inverted output from this gate may be the four-pixel activation signal <NUM>. When the four-pixel activation signal <NUM> is asserted (e.g., ON), this indicates all inputs to the gates of the NMOS transistors 314a-d are ON. In other words, when the four-pixel activation signal <NUM> is asserted, each of the event-driven pixels 306a-d has been activated. If the four-pixel activation signal <NUM> is OFF, this implies a pixel(s) <NUM> has not sensed an event. The inverted output of the NAND gate is ON when all inputs to the NAND gate reach the event indication value. The global motion suppression circuitry generates the four-pixel activation signal <NUM> when the inverted output of the NAND gate is ON.

In an example, the NMOS transistors 314a-d are pull down transistors connected to the pixel integration output signal 312a-d of the four pixels 306a-d. The gates of the NMOS transistors 314a-d are controlled by capacitors 316a-d. The gate of a NMOS transistor <NUM> turns on when the voltage across the input capacitor <NUM> crosses the threshold voltage of the respective NMOS transistor <NUM>.

The capacitors 316a-d may be trickle charge capacitors with a large time constant. The capacitors 316a-d may be used to detect low-frequency global motion (e.g., panning). These capacitors 316a-d charge whenever their respective pixels 306a-d integrate. For example, the capacitors 316a-d may charge based on the voltage associated with the pixel integration output signal 312a-d.

In some examples, the output four-pixel activation signal <NUM> of the four-pixel array may traverse large distances, and hence may have higher parasitics. The PMOS transistors 326a-d may be P type pull up transistors that ensure the output state of the four-pixel activation signal <NUM> is held and is not susceptible to leakage through the parasitics.

A high-frequency event may cause a pixel <NUM> to fire. This happens when the pixel <NUM> integrates rapidly until it hits an event threshold. This is referred to as a pixel firing. When this pixel <NUM> fires, this may be meaningful and should be recorded. Any global motion suppression that is in progress may be interrupted. In an example, this may be accomplished by charging capacitors 320a-d that are coupled to the pixel fire signals 318a-d. When the voltage at the gate of the NMOS transistors 322a-d reaches the threshold value of the NMOS transistors 322a-d, the NMOS transistors 322a-d are turned ON. This results in a path to ground to discharge respective capacitors 316a-d on the pixel integration output 312a-d, removing any charge accumulation due to prior global motion events. The pixel fire event may be detected quickly, as compared to the global motion events. Therefore, the time constant for the pixel fire capacitors 320a-d may be very small when compared with the time constant for the pixel integration capacitors 316a-d.

When all four pixels 306a-d have detected a global motion (i.e., when all four NMOS transistors 314a-d are ON), this results in the <NUM>-pixel global motion detection logic to turn ON. In this case, an output signal capacitor <NUM> may be charged and the four-pixel activation signal <NUM> is asserted. In the case of a <NUM>-pixel module, this four-pixel activation signal <NUM> is an example of the global activation signal described in connection with <FIG>. The four-pixel activation signal <NUM> may also be referred to as a four-pixel activation output.

In some examples, the <NUM>-pixel module may also include a reset signal <NUM>. The value of the reset signal <NUM> may be stored in buffers 328a-b. The reset signal <NUM> may be coupled to a reset input of the pixels 306a-d. When the reset signal <NUM> is asserted (e.g., ON), the pixels 306a-d may be reset.

The reset signal <NUM> may also be coupled to the gate of the NMOS transistors 324a-d. When the voltage at the gate of the NMOS transistors 324a-d reaches the threshold value of the NMOS transistors 324a-d, the NMOS transistors 324a-d are turned ON. This results in a path to ground to discharge respective capacitors 316a-d on the pixel integration output 312a-d, removing any charge accumulation due to prior global motion events, which resets the global motion detection.

It should be noted that even though <FIG> shows a grouping of four pixels 306a-d, different group sizes may be chosen depending on design needs. For example, a pixel module may include <NUM> pixels, <NUM> pixels, <NUM> pixels, and so forth. This may be referred to as n-pixel grouping, where "n" is a variable number of pixels <NUM>.

<FIG> is an example of a <NUM>-pixel array module <NUM> for global motion suppression in an event-driven camera. As described above, n-pixel grouping may be used to build macro groups of pixels. In this example, <NUM> four-pixel array modules 411a-d are grouped together to form a <NUM>-pixel array module <NUM>. The four-pixel array modules 411a-d of <FIG> may be implemented as the four-pixel array modules 311a-d described in <FIG>. The functionality of the <NUM>-pixel array module <NUM> may be similar to the four-pixel array modules <NUM> as described in <FIG>.

In this example, each four-pixel array module <NUM> may include four pixels and circuitry to output a four-pixel activation signal <NUM>. In this example, the four-pixel array modules 411a-d are assembled into an array to form a <NUM>-pixel array. Each four-pixel array module <NUM> outputs a four-pixel activation signal <NUM> that is asserted when each of the pixels integrates.

In this example, the four-pixel activation signals 428a-d from each four-pixel array module <NUM> control the gate inputs of NMOS transistors 414a-d. The four NMOS transistors 414a-d are connected in series to form a NAND gate. PMOS transistors 426a-d may be used to pull up the line (i.e., the <NUM>-pixel activation signal <NUM>) when the NMOS transistors 414a-d are not turned ON. Thus, the four-pixel activation signals 428a-d may be coupled to the gates of the into the PMOS transistors 426a-d connected in parallel.

An inverted output from the gates of the PMOS transistors 426a-d may be the <NUM>-pixel activation signal <NUM>. When the <NUM>-pixel activation signal <NUM> is asserted (e.g., ON), this indicates all inputs to the gates of the NMOS transistors 414a-d are ON. In other words, when the <NUM>-pixel activation signal <NUM> is asserted, each of the <NUM> event-driven pixels within the <NUM>-pixel array module <NUM> has been activated. If the <NUM>-pixel activation signal <NUM> is OFF, this implies a pixel(s) has not sensed an event.

In an example, the NMOS transistors 414a-d are pull down transistors connected to the pixel integration output signal 412a-d of the four pixels 406a-d. The gates of the NMOS transistors 414a-d are controlled by capacitors 416a-d. The gate of a NMOS transistor <NUM> turns on when the voltage across the input capacitor <NUM> crosses the threshold voltage of the respective NMOS transistor <NUM>. The capacitors 416a-d may be trickle charge capacitors with a large time constant. The capacitors 416a-d may be used to detect low-frequency global motion (e.g., panning). These capacitors 416a-d charge whenever a four-pixel activation signal <NUM> is asserted.

When each of the four-pixel array modules 411a-d have detected a global motion (i.e., when all four NMOS transistors 414a-d are ON), this results in the <NUM>-pixel global motion detect logic to turn ON. In this case, an output signal capacitor <NUM> may be charged and the <NUM>-pixel activation signal <NUM> is asserted.

In some examples, the <NUM>-pixel array module <NUM> may be used to build a <NUM>-pixel array module. A <NUM>-pixel array module may be used to build a <NUM>-pixel array module, and so on. At each stage, when the N-pixel activation output is asserted, this implies that all pixels within the module have sensed an event.

The output of a pixel in an event-driven camera will fire upon activation. With the pixel array modules described herein, each module can detect when all pixels within the module are activated. With this hierarchical arrangement, the activation at every module is propagated to the larger module. Thus, an entire pixel array activation maybe detected. The signal that is asserted when the entire pixel array activates is the global activation signal.

<FIG> is an example illustrating a global activation signal <NUM> and a reset signal <NUM> for a pixel array <NUM>. The pixel array <NUM> may include a number of pixel array modules as described in connection with <FIG> and <FIG>. The pixel array <NUM> may output a global activation signal <NUM> when all of the pixels in the pixel array <NUM> detect an event.

In an example, the value of the global activation signal <NUM> may be stored in a buffer <NUM>. The global activation signal <NUM> may be provided to an AND gate <NUM>. An inverter <NUM> at an input of the AND gate <NUM> may invert the global activation signal <NUM>. The AND gate <NUM> may also receive a read/process signal <NUM>, which instructs an event-driven camera to read out and process pixel data.

When the global activation signal <NUM> is OFF (i.e., global motion is not detected), then the AND gate <NUM> outputs a read/process signal <NUM> that matches the state of the input read/process signal <NUM>. When the global activation signal <NUM> is ON (i.e., global motion is detected), then the AND gate <NUM> outputs the read/process signal <NUM> as OFF even if the input read/process signal <NUM> is ON.

The global activation signal <NUM> may be used to activate a reset signal <NUM>. In an example, the global activation signal <NUM> may be provided to a buffer <NUM> that stores the state of the global activation signal <NUM>. A reset signal <NUM> may be fed back to all the pixels in the pixel array <NUM>. The reset signal <NUM> may be asserted (e.g., ON) when the global activation signal <NUM> is asserted (e.g., ON). The reset signal <NUM> may cause the pixels to empty their pixel wells. This provides a mechanism by which all the pixels in the pixel array <NUM> can be reset whenever there is global motion. This may prevent premature saturation of the pixel wells, which may improve the dynamic range of the event-driven image sensor.

In some examples, a reset signal <NUM> may be provided by other sources. For example, the reset signal <NUM> may be asserted by other components of the event-driven image sensor or event-driven camera.

In some implementations a delay component <NUM> may be included on the reset signal assertion. The delay component <NUM> may delay when the reset signal <NUM> is asserted. In other words, the delay component <NUM> may delay when the reset signal <NUM> is sent to the pixel array <NUM>. This may prevent race conditions between pixel integration and pixel reset.

Claim 1:
A method (<NUM>), comprising:
detecting (<NUM>) global motion of an event-driven camera (<NUM>) based on a plurality of pixels (<NUM>) of an event-driven image sensor (<NUM>) detecting that pixel integration outputs for each of the plurality of pixels have reached an event indication value, wherein the event indication value is a value of the pixel integration output indicating that sufficient change has occurred in a pixel well of the pixel to represent a change in the event-driven image sensor field of view; and
in response to detecting the global motion:
generating (<NUM>), by event-driven image sensor circuitry (<NUM>), a global activation signal, and
in response to the global activation signal:
preventing storage and processing data contained in the plurality of pixels.