Adaptive multipoint scene change recognition system
Patent Information
- Application Number
- PCT/US2025/018216
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-03-04
- Filing Date
- 2025-03-03
- Publication Date
- 2025-10-02
AI Technical Summary
Existing multipoint photoelectric sensors struggle with accurately detecting small changes in a field of view, especially when detection is partially obscured, and are prone to noise and slow response times.
The multipoint scene change recognition system (MSCRS) uses a multipoint sensor to generate pixel measurements, applies a reference teaching engine to establish a reference measurement, and a change detection engine to calculate per-pixel changes, normalized using a normalization model, to generate an aggregated change metric, which is then compared to sensitivity thresholds to detect scene changes.
The MSCRS enhances object detection accuracy by reducing noise and increasing response speed, even in partially obscured conditions, by effectively distinguishing between valid and invalid pixel measurements and filtering background noise.
Smart Images

Figure US2025018216_02102025_PF_FP_ABST
Abstract
Description
ADAPTIVE MULTIPOINT SCENE CHANGE RECOGNITION SYSTEMTECHNICAL FIELD
[0001] Various embodiments relate generally to sensors and object detection systems.BACKGROUND
[0002] Photoelectric sensors are widely used in various industries for detecting the presence, absence, or distance of objects by utilizing a beam of light. These sensors operate based on the principle of detecting changes in light intensity caused by the presence or absence of an object in the sensor's field of view. They find applications in automation, robotics, manufacturing, and many other fields due to their reliability and versatility.
[0003] There are several types of photoelectric sensors designed to suit different application requirements. One common classification includes through-beam, retroreflective, and diffuse reflective sensors. Through-beam sensors consist of a transmitter and receiver placed opposite each other, with the object interrupting the beam causing detection. Retroreflective sensors use a reflector to bounce light back to the sensor, while diffuse reflective sensors detect light reflected directly off the object.
[0004] Another important type is the multipoint photoelectric sensor, which offers enhanced functionality by allowing multiple detection points along a single sensing axis. These sensors are particularly useful in applications where precise positioning or detection of multiple objects is required within a specified area. By offering multiple detection points, multipoint photoelectric sensors provide greater flexibility and accuracy in detecting objects in complex environments.SUMMARY
[0005] Apparatus and associated methods relate to automatic detection of changes in a field of view (FOV) of a multi-pixel measurement. In an illustrative example, a multipoint scene change recognition system (MSCRS) may receive a multi-pixel signal (MPS). The MPS, for example, may include a signal of N dimensions each measuring a different aspect within the FOV. If the signal of a pixel is valid, a difference between each of the N dimensions of the signals and a reference measurement is determined for each pixel of the MPS. For example, the reference measurement may be dynamically determined using a teach operation. For example, the differences in each dimension may be aggregated, for each pixel, based on a normalization scheme to generate an aggregated change metric. For example, a global change metric is generated based on the aggregated change metric of each pixel. Various embodiments may advantageously detect small changes within the FOV.|0006| Various embodiments may achieve one or more advantages. For example, some embodiments may advantageously enhance object detection in application when detection is partially obscured. Some embodiments may, for example, reduce noise in the global change metric. For example, some embodiments may generate faster measurement changes while still registering a change to the reference measurement. Some embodiments, for example, may advantageously control how much point validity change may contribute to generate the global change metric.
[0007] The details of various embodiments are set forth in the accompanying drawings and the description below. Other features and advantages will be apparent from the description and drawings, and from the claims.BRIEF DESCRIPTION OF THE DRAWINGS
[0008] FIG. 1 depicts an exemplary multipoint scene change recognition system (MSCRS) employed in an illustrative use-case scenario.|0009| FIG. 2 is a block diagram depicting an exemplary scene change detection system (SCDS).
[0010] FIG. 3A depicts a concept map showing an exemplary scene change output generation process.
[0011] FIG. 3B is a flowchart illustrating an exemplary operation flow of the MSCRS.
[0012] FIG. 3C and FIG. 3D depict exemplary sensor output of multiple pixels having unstable pixels.
[0013] FIG. 3E depicts an exemplary normalization scheme applied to a change in a pixel measurement having a distance component and an amplitude component.
[0014] FIG. 4 is a flowchart illustrating an exemplary reference teaching method.
[0015] FIG. 5 is a flowchart illustrating an exemplary scene change detection method.
[0016] FIG. 6 is a flowchart illustrating an exemplary pixel change metric generation method.
[0017] FIG. 7 depicts an exemplary scene change represented in a point cloud.
[0018] Like reference symbols in the various drawings indicate like elements.DETAILED DESCRIPTION OF ILLUSTRATIVE EMBODIMENTS
[0019] FIG. 1 depicts an exemplary multipoint scene change recognition system (MSCRS 100) employed in an illustrative use-case scenario. In this example, the MSCRS 100 is operably connected to a multipoint sensor 105. As shown, the multipoint sensor 105 may be configured to receive measurement signals from a field of view (FOV 1 10). For example, the multipoint sensor 105 may include a multipoint (e.g., 2x2, 8x8, 100x100, 1000x1000 points) photoelectric sensor. For example, the multipoint sensor 105 may emit multiple beams of light to detect objects at different points within the FOV 110. In some examples, the multipoint sensor 105 may include a multi -pixel imager (e.g., capturing one or more images with a single field of light). For example,the multipoint sensor 105 may be used in industrial automation (e.g., for detecting objects on conveyor belts, in packaging lines, in material handling applications). For example, the multipoint sensor 105 may include a three dimensional (3D) time-of-fight (TOF) sensor. For example, the multipoint sensor 105 may include a 3D stereo sensor. In some implementations, the multipoint sensor 105 may include a radar. For example, the multipoint sensor 105 may include a synthetic aperture radar (SAR). For example, the multipoint sensor 105 may include a phased-array radar sensor. For example, the multipoint sensor 105 may include a thermal sensor array.
[0020] Various embodiments may advantageously detect small changes received at any multipoint industrial sensor. For example, the MSCRS 100 may advantageously enhance object detection in application when detection is partially obscured. For example, the MSCRS 100 may advantageously enhance object detection by background removal.
[0021] As an illustrative example, there are a number of objects 115 within the FOV 110. For example, the number of objects 115 may be placed in a bin against a background 120. In some implementations, the multipoint sensor 105 may detect a scene change based on a movement of the number of objects 115 against the background 120. In some examples, the background 120 may include a surface of a conveyor belt, or a floor (e.g., where the number of objects 115 are placed). In some examples, the background 120 may also include the number of objects 115 that may fully or partially block the FOV 110.
[0022] As shown, the multipoint sensor 105 may generate a sensor output 125. The sensor output 125, in this example, includes pixel measurement 140. For example, the pixel measurement 140 may be collected from each point of the multipoint sensor 105. For example, if the multipoint sensor 105 includes M pixel, the sensor output 125 may include M pixel measurement 140, one or each of the pixels. As shown, the pixel measurement 140 includes an amplitude measurement 145 and a distance measurement 150. In some implementations, the pixel measurement 140 may include N different aspects of measurement at a pixel of the multipoint sensor 105. For example, the pixel measurement 140 may include measurement of a distance and an amplitude received from each of the points 135 in the FOV 110.. The sensor output 125 may also include an object list of the number of objects 115 tracked within the FOV 110.
[0023] In this example, the MSCRS 100 includes a reference teaching engine (RTE 155), a change detection engine (CDE 160), and a non-volatile memory (NVM 175). The NVM 175 includes a reference measurement 170 and a normalization model 185. For example, the RTE 155 may generate a reference measurement 170 corresponding to a measurement of the background 120. The RTE 155 and the CDE 160, for example, may be run by one or more processors. In some examples, the one or more processors may be operably coupled to the NVM 175. The CDE 160, for example, may detect a change in the background 120 by processing the pixel measurement 140and the reference measurement 170. As shown, the CDE 160 generates a per pixel change (PPC 165) as a function of the sensor output 125, the reference measurement 170, and the normalization model 185.
[0024] For example, the PPC 165 may be a moving target within the number of objects 115. For example, the PPC 165 may also include a fixed and not moving object. For example, the PPC 165 may include a loss of data in the FOV 110. In some examples, the PPC 165 may include a change in the background (e.g., a color change, a configuration change, an orientation change of the background 120).
[0025] In some implementations, the CDE 160 may compare, for each pixel, the pixel measurement 140 and the reference measurement. In this example, the CDE 160 may generate an N-dimensional per pixel comparison diagram (PPCD 190). In the PPCD 190, the CDE 160 may compare the pixel measurement 140 to the reference measurement 170. As shown in FIG. 1, the PPCD 190 includes an amplitude dimension and a distance dimension. In some examples, other dimensions may be added to the PPCD 190.
[0026] In this example, the CDE 160 compares the reference measurement of this pixel and the pixel measurement 140 to generate a difference 196. For example, the difference 196 may be an N-dimensional vector. For example, each component of the vector may be expressed in a different unit (e.g., change in amplitude in %, change in distance in millimeters). The CDE 160, for example, may apply the normalization model 185 to the PPCD 190 to generate an aggregated change metric 197 of the pixel measurement 140. In some implementations, the normalization model 185 may include a change category model configured to determine whether the pixel measurement 140 may be registered as a change in the PPC 165. For example, different types of change determined from the pixel measurement 140 may be aggregated based on the change category model. For example, the change category model may include selecting, for example, in a distance category, a distance change of near-only, far-only, both, or neither (e.g., ignore the change in the distance category).
[0027] As shown, various metrics in discrete categories (e.g., distance and amplitude) may be used to generate the difference 196. In various implementations, the aggregation engine 195 may normalize amplitude and distance to generate the aggregate change metric. In some implementations, the normalization model 185 may include a normalization model to determine the aggregated change metric 197 based on the difference 196 at each dimension. For example, the aggregation engine 195 may include a set of normalization vectors to normalize the PPC 165 at each pixel (e.g., the set of normalization vectors may be different or the same for each pixel). For example, the normalization vectors may generate a unitary metric combining changes in each dimension (e.g., distance, amplitude, frequency, frequency modulated, velocity, angle of arrival). For example, the normalization vectors may combine the PPC 165 using a linear function (e.g.,using an absolute value summation function, using a weighting scheme, a sum-squared-error (SSE) function).
[0028] As an illustrative example, distance and amplitude may not have a same unit or scale. In some embodiments, the normalization model 185 may normalize the various metrics into percentage changes. For example, a percentage change in the distance and amplitude may be aggregated using a (e.g., linear, nonlinear) scaling or mapping function. For example, a linear mapping may generate a global metric having 50% of the amplitude maps to 2x hysteresis in distance. In some implementations, the normalization model 185 may include a normalization scheme to convert all changes into percentages (equivalent to % change in amplitude / intensity). For example, the normalization model 185 may include a discrete (logic) model may define 1 hysteresis in a pixel to be converted as 25% change of amplitude. For example, the normalization model 185 may determine, after changes at all dimensions are computed, the aggregated change metric 197 based on a combination function.
[0029] For example, the normalization model 185 may define that a change may be in lx hysteresis in distance is equivalent to a 50% change in amplitude. For example, the CDE 160, using the normalization model 185 may determine how a simultaneous change in both the distance and the amplitude may be aggregated to generate the aggregated change metric 197. For example, the normalization model 185 may define a combination of the simultaneous change based on a largest change amongst the distance dimension and the amplitude dimension (e.g., 50% if changes in both the amplitude and the distance are equal to 50% change in amplitude equivalent). For example, the CDE 160 may use an analog model (e.g., an ellipse model). For example, the analog model may determine a change based on a vector distance of changes in various vector components (e.g., %change = sqrt((amplitude’ s %change)A2 + (distance’s %change)A2). In various implementations, the aggregation engine 195 may also combine frequency output and frequency modulated output (e.g., velocity, angle of arrival information).
[0030] In various implementations, the aggregated change metric 197 may be compared to a predetermined sensitivity threshold. In this example, a high sensitivity threshold 198 A and a medium sensitivity threshold 198B are depicted. For example, with the high sensitivity threshold 198A, the MSCRS 100 may generate a scene change event indicating that a scene change is detected in the FOV 110. For example, at a medium sensitivity threshold 198B, the MSCRS 100 may determine no change in the FOV 110. For example, a change is marked in the PPC 165 when the aggregated change metric 197 above the predetermined sensitivity threshold.
[0031] In some implementations, the high sensitivity threshold 198A and / or the medium sensitivity threshold 198B may be a set of fixed thresholds. For example, the high sensitivity threshold 198A and / or the medium sensitivity threshold 198B may include dynamic determinedthresholds. In some implementations, the high sensitivity threshold 198A and / or the medium sensitivity threshold 198B may be varying for each of the pixel measurement 140 of the multipoint sensor 105. In some implementations, the high sensitivity threshold 198A and / or the medium sensitivity threshold 198B may be the same for each pixel measurement 140 of the multipoint sensor 105. Various embodiments may advantageously reduce noise in the global change metric.
[0032] As shown, the MSCRS 100 also includes an aggregation engine 195. In some implementations, after each pixel is processed, the aggregation engine 195 may combine the PPC 165 of each pixel to generate a total scene change metric 199. In some implementations, the aggregation engine 195 may aggregate changes in each pixel to generate the total scene change metric 199. For example, the aggregation engine 195 may compute total scene change metric 199 based on a number valid pixel received from the multipoint sensor 105 and number of the PPC 165 that is marked as changed.
[0033] In some examples, an accuracy of the CDE 160 may depend on an accuracy of the reference measurement 170. In various implementations, the reference measurement 170 may change gradually over time due to a change in environmental conditions (e.g., temperature, humidity). For example, the reference measurement 170 may change gradually due to normal wear (e.g., dirt buildup, slow changes in position of the background). In this example, the RTE 155 is configured to update the reference measurement 170 of the gradual changes without generating the PPC 165 corresponding to the sensor output 125. Various embodiments may advantageously generate faster measurement changes while still registering a change to the reference measurement 170.
[0034] In some implementations, the RTE 155 may perform a teach-in operation to update the reference measurement 170. For example, the teach-in operation may filter invalid pixel measurement 140 before updating the reference measurement 170 in the NVM 175. In some implementations, the RTE 155 may identify which of the pixel measurement 140 is valid during the teach-in operation. In some implementations, the RTE 155 may select only stable points of the sensor output 125. For example, the RTE 155 may determine a stability of the pixel measurement 140 based on signal strength. For example, the RTE 155 may determine that a signal with strength outside of a predetermined boundary (e.g., with a too low signal strength or a too high of signal strength) may be unstable.
[0035] In some embodiments, the RTE 155 may determine that a point adjacent to other invalid points may also be invalid or show very different measurements (in either distance or amplitude). As an illustrative example with respect to 3D TOF pixels, a pixel next to an invalid pixel may itself oscillate between valid or invalid states, due to either minor spatial movement, or the pixel may only be partially on and partially off the target. In a similar example, if a pixel is on an edge of two different targets at two different distances, the pixel may oscillate between either distance, an inbetween distance, or an invalid state. Various embodiments may validate each point of data from the multipoint sensor 105 against adjacent points determining stability in the teach-in process.
[0036] In this example, the RTE 155 includes multiple scene images 180. For example, the multiple scene images 180 may be obtained at different times from the multipoint sensor 105. For example, the RTE 155 may generate data points (e.g., the pixel measurement 140 from each of the multiple scene images 180).
[0037] During the teach-in operation, for example, the RTE 155 may use the multiple scene images 180 to improve a signal to noise ratio of a teach result. For example, the RTE 155 may generate more statistically accurate reference measurements. The multiple scene images 180, in some implementations, may be pre-processed before the teach-in operation. For example, the multiple scene images 180 may be pre-processed with spatial filtering. For example, the RTE 155 may pre-process the multiple scene images 180 to improve signal to noise ratio of the multiple scene images 180. For example, the RTE 155 may pre-process the multiple scene images 180 to smooth over edges pixels and / or remove edge pixels. For example, the RTE 155 may pre-process the multiple scene images 180 to generate more stable points from the multiple scene images 180 for the teach-in operation.
[0038] In some implementations, the RTE 155 may limit a field of points used for the teach-in operation based on a region-of-interest (ROI) culling. For example, the RTE 155 may remove discrete points from the ROI. For example, the RTE 155 may apply a data mask and / or enable cartesian volumes in the ROI.
[0039] For example, the RTE 155 may be configured to learn a background noise level of the MSCRS 10. In some implementations, the MSCRS 100 may adjust the Normalization model 185 based on a hysteresis amount of the background noise to generate the Normalization model 185.
[0040] FIG. 2 is a block diagram depicting an exemplary scene change detection system (SCDS). In this example, the multipoint sensor 105 includes 4 pixels 205 A-D configured to receive signals from the FOV 110 and, the MSCRS 100 further includes a pixel measurement validation engine (PMVE 210). For example, the PMVE 210 may validate pixel measurements received from each of the pixels 205 A-D. As shown, the RTE 155 and the CDE 160 may receive validation results from the PMVE 210.
[0041] In some implementations, the CDE 160 may generate the PPC 165 based on validity, distance, amplitude, and count of point changes of one of the pixels 205A-D. As shown, the multipoint sensor 105 generates four output signals 220 to the MSCRS 100. For example, each of the four output signals 220 may correspond to response signals received at one of the pixels 205 A- D. The multipoint sensor 105, as shown in FIG. 2, includes a controller. For example, the controller 225 may receive signals from each of the pixels 205 A-D and generate the pixel measurement 140.For example, the pixel measurement 140 may include different aspects of measurement (DAOM 230). For example, the DAOM 230 may include an amplitude within a FOV of a corresponding one of the pixels 205A-D. For example, the DAOM 230 may include a distance measurement of an object from a corresponding one of the pixels 205A-D. For example, the DAOM 230 may include a velocity measurement based on a frequency modulated response of an object within the FOV of a corresponding one of the pixels 205A-D. For example, each of the DAOM 230 may include a same or different measurement units.
[0042] In this example, the pixel 205A may be invalid during the teach-in operation. In some examples, the pixel 205A may become valid during the measurement operation. For example, a detection of the pixel 205A as valid may indicate a presence of a new target. For example, some pixels that were valid (e.g., the pixels 205B-D) during the teach-in operation may become invalid during the measurement operation. For example, if any of the pixels 205B-D become invalid, it may indicate a blockage of the background and / or less of a background object. As another example, when the pixels 205A-D vary between valid and invalid during the teach-in and the measurement operations, the pixels 205 A-D may be unstable.
[0043] In some implementations, a user may control (e.g., independently) a sensitivity of each of the pixels 205A-D. As shown, the MSCRS 100 is connected to a user input 215. A user may, based on a current reference measurement and a current map of valid pixels of the multipoint sensor 105, select a combination of the normalization model 185 to adjust a sensitivity of each of the pixels 205A-D. In some implementations, the MSCRS 100 may communicate detection results and parameters stored in the NVM 175 through a communication protocol (e.g., IO-LINK, MODBUS, other discrete output communication network). In some implementations, the MSCRS 100 may be configured to generate a graphical user interface (GUI) for displaying and adjusting various parameters of the MSCRS 100. Various embodiments may advantageously control how much point validity change may contribute to generate the total scene change metric 199.
[0044] In some implementations, the normalization model 185 may be adjusted based on the background scene. In this example, each of the objects 115 may be updated to the reference measurement 170. For example, based on the reference measurement, the RTE 155 may update the normalization model 185. As shown, each of the pixels 205 A-D may include a sub-FOV (e.g., a sub-FOV 235 for the pixel 205D, and a sub-FOV 240 for the pixel 205C). For example, a shortest distance from the pixel 205D and the background 120 and a shortest distance from the pixel 205C and the background 120 may vary (as shown as DI and D2). In some implementations, the normalization model 185 applied to the pixel measurement 140 of the pixel 205C and the pixel 205D may be different to accommodate such differences. For example, a greater change inamplitude in the sub-FOV 235 may be required to equal to a same amount of hysteresis unit at the sub-FOV 240.
[0045] FIG. 3A depicts a concept map showing an exemplary scene change output generation process 300. For example, the output generation process 300 may be performed by the CDE 160. The process 300 includes first a pixel change detection stage 305. For example, the CDE 160 may perform the pixel change detection stage 305 after receiving the sensor output 125 from the multipoint sensor 105. As shown, in the pixel change detection stage 305, the CDE 160 may use one or more neighboring pixels, a distance change (e.g., far, closer), and an amplitude change (e.g., brighter, darker) to generate a per dimension change result. Various methods of comparing and registering a change in each dimension of the pixel measurement 140 and the reference measurement 170 are described with reference to FIG. 1.
[0046] Next, the output generation process 300 includes a normalization stage 310. For example, the CDE 160 may, using a normalization scheme defined by the normalization model 185, determine normalized changes based on changes in each dimension in pixel change detection stage 305. For example, a normalization scheme may determine an equivalent percentage change at each dimension of the pixel measurement 140. Various methods of aggregating changes in the pixel measurement 140 are described with reference to FIGS. 1-2.
[0047] After the normalization stage 310, the output generation process 300 includes a combination stage 315. In this example, the combination stage 315 may generate a digital output or a measurement (e.g., the aggregated change metric 197). For example, the digital output (DO) may be a signal indicating whether a change at a pixel. For example, the measurement in this stage may include a percentage of change detected by combining changes in each dimension. For example, the combination stage 315 may determine a peak change percentage (e.g., or magnitude in other units) among all of the dimensions. For example, the combination stage 315 may determine a combined total change among all dimensions. For example, the combination stage 315 may determine a combined peak changes of the PPC.
[0048] FIG. 3B is a flowchart illustrating an exemplary operation flow 320 of the MSCRS. For example, the MSCRS 100 may perform the exemplary operation flow 320 using the distance measurement 150, the CDE 160 and the aggregation engine 195. In this example, predefined scene change parameters may be determined to be configured in step 325. For example, the scene change parameters may include parameters of the normalization model 185. During a normal operation (Run), a teach request may be triggered in step 330. If a teach request is not triggered, in step 335, one or more multipoint measurement is collected. For example, the MSCRS 100 may collect the sensor output 125. In step 340, scene change parameters are computed by comparing a current scene to a reference scene. In step 345, the computed scene change parameters are assigned tosensor outputs (e.g., for each measurement category, to each pixel), and the exemplary operation flow 320 returns to normal operation.
[0049] If teach request is triggered, in step 350, one or more multipoint measurement is collected. Next, a teach scene operation is performed in step 355. For example, the RTE 155 may be activated to perform a teach-in operation. After the teach scene operation is completed, in step 360, a reference scene is saved.
[0050] FIG. 3C and FIG. 3D depict exemplary sensor output of multiple pixels having unstable pixels. As shown in FIG. 3C, a first pixel measurement matrix 365A and a second pixel measurement matrix 365B includes pixel measurements of a sensor output (e.g., the sensor output 125) during a teach-in operation. In this example, a pixel 370A and a pixel 370B are on edge of distances. For example, the pixel 370A oscillates between 170mm and 880mm. The RTE 155, for example, may mark the pixel 370A and the pixel 370B unstable pixels. For example, the pixel 370A and the pixel 370B may be excluded from the teach-in operation.
[0051] As shown in FIG. 3D, a third pixel measurement matrix 375 A and a fourth pixel measurement matrix 375B includes pixel measurements of a sensor output (e.g., the sensor output 125). Some pixels in the third pixel measurement matrix 375A and the fourth pixel measurement matrix 375B may be invalid (as shown as blank entry without measurements). In this example, circled measurements oscillate between having valid distance readings and no-measurement. For example, these circled measurements may be designated as unstable pixels. For example, they may be excluded from the teach-in operation.
[0052] FIG. 3E depicts an exemplary normalization scheme 380 applied to a change in a pixel measurement having a distance component and an amplitude component. For example, change in distance can be normalized to change in amplitude by defining their combined change relative to a normalization vector. In this example, the exemplary normalization scheme 380 includes a taught point 385. An amplitude vector 390A and a distance vector 390B shows an example uniform change in the two different metrics. For example, a change in the amplitude vector 390A for a magnitude 395A may be equivalent to a change in the distance vector 390B for a magnitude 395B.
[0053] FIG. 4 is a flowchart illustrating an exemplary reference teaching method 400. For example, the RTE 155 may perform the method 400. In this example, the exemplary reference teaching method 400 begins in step 405 when a plurality of reference scenes, each including response signals (e.g., the pixel measurement 140) from a multipoint sensor, are received. For example, the RTE 155 may receive the multiple scene images 180 from the multipoint sensor 105. For example, each of the multiple scene images 180 may be received at different times.
[0054] In a decision point 410, it is determined whether region of interest (ROI) culling is to be performed. For example, a teach-in operation may include ROI culling to improve signal to noisewithin the R01. If RO1 culling is to be performed, in step 415, a signal indicating the RO1 among pixels of the multipoint sensor is received. If ROI culling is not needed, or after step 415, a validity status and a stability status for each pixel of the multipoint sensor is determined based on the reference scene in step 420. For example, the RTE 155 may determine the stability and the validity of each of the pixels 205 A-D. In step 425, a reference measurement is generated by saving the response signals, and the validity statuses and the stability statuses of the pixels of the multipoint sensor. Next the reference measurement is saved to a NVM in step 430, and the method 400 ends.
[0055] FIG. 5 is a flowchart illustrating an exemplary scene change detection method 500. For example, the method 500 may be performed by the CDE 160 and the aggregation engine 195 to generate the total scene change metric. In this example, the method 500 begins when a sensor output containing measurement from M pixels is received in step 505. For example, the CDE 160 may receive the sensor output 125 containing the pixel measurement 140. In step 510, a pixel comparison result is generated indicating whether a pixel is valid, stable, and / or a change metric of the pixel for each pixel of the M pixels in step 510. For example, the MSCRS 100 may generate the metric 199 for each of the pixels of the multipoint sensor 105.
[0056] In a decision point 515, it is determined whether a number of valid pixels is higher than a predetermined threshold. For example, the predetermined threshold may indicate a 90% of pixel to be valid. If the number of valid pixels is less than the predetermined threshold, the method 500 ends. If the number of valid pixels is higher than the predetermined threshold, in step 520, a total scene change metric is generated based on a number of stable points and / or the change metric of the M pixel, and the method 500 ends. For example, the total scene change metric may be transmitted to a control device (e.g., via analog, digital, wired, wireless connections).
[0057] FIG. 6 is a flowchart illustrating an exemplary pixel change metric generation method 600. For example, the CDE 160 and the aggregation engine 195 may perform the method 600. In this example, the method begins in step 605 when a pixel measurement having N dimensions for a pixel of a multipoint sensor is received. For example, the pixel measurement 140 of one of the pixels (e.g., one of the pixels 205A-D) of the multipoint sensor 105 may be received.
[0058] lin a decision point 610, it is determined whether the pixel measurement is valid. If the pixel measurement is not valid, in step 615, the pixel is saved as invalid and the method 600 ends. If the pixel measurement is valid, a reference measurement, a normalization scheme, and a change threshold of a pixel are retrieved from a non-volatile memory in step 620. For example, the CDE 160 may retrieve the reference measurement 170, the normalization model 185, and a change threshold (e.g., the high sensitivity threshold 198A, the medium sensitivity threshold 198B) from the NVM 175.|0059| In step 625, a difference between each of the N dimensions of the pixel measurement and the reference measurement is determined. For example, the difference 196 may be generated. Next, an aggregated metric based on a normalization scheme is generated in step 630. For example, the normalization model 185 may indicate a mapping of different dimensions into a unitary metric. For example, the normalization model 185 may include a combination function to combine different metrics in unitary units into the aggregated change metric 197.
[0060] In step 635, a change metric of the pixel is generated based on a comparison between the aggregated change metric and the change threshold. For example, the total scene change metric may be generated based on a difference between the aggregated change metric 197 and a selected threshold (e.g., the high sensitivity threshold 198A and / or the medium sensitivity threshold 198B).
[0061] FIG. 7 depicts an exemplary scene change represented in a original point cloud 700 and a changed point cloud 701. In this example, the changed point cloud 701 include an actual area of change (AAOC 705) and a background noise area 710. For example, the AAOC 705 may be advantageous to be registered as a change and trigger an output. The background noise area 710, for example, may be generated by normal changes in measurement off a container wall. In some implementations, the MSCRS 100 may advantagously filter the background noise area 710 by normalizing different types of change and aggregating the PPC 165 across a scene.
[0062] Although various embodiments have been described with reference to the figures, other embodiments are possible. For example, the MSCRS 100 may be used in a jam detection system. For example, the MSCRS 100 may detect non-moving objects in a conveyor belt system. In some embodiments, the MSCRS 100 may be to identify an object within a FOV (e.g., to identify location for cleaning of, for example, an object stuck on a transportation chute. In some implementations, the MSCRS 100 may be used in a working platform for, for example, packing up bins with items. For example, the MSCRS 100 may detect that a shelf is not empty, or an item is on a wrong shelf.
[0063] Although an exemplary system has been described with reference to FIG. 1, other implementations may be deployed in other industrial, scientific, medical, commercial, and / or residential applications. For example, the multipoint sensor 105 may include multipoint temperature sensors configured to measure temperature at multiple points within a given area. For example, the MSCRS 100 may be used in industrial processes where temperature variations need to be monitored at different locations (e.g., in a Heating, Ventilation, and Air Conditioning (HVAC) systems, a chemical processing, and food manufacturing).
[0064] For example, the multipoint sensor 105 may include multipoint level sensors configured to monitor the level of liquids or solids at multiple points within a container or tank. For example, the MSCRS 100 may be used in wastewater management, agriculture, and / or chemical processing to prevent overflows or shortages.|0065 | For example, the multipoint sensor 105 may include multipoint gas sensors configured to detect the presence of gases at multiple locations within a specified area (e.g. , for indoor air quality management to detect and measure the concentration of gases including, for example, carbon monoxide, methane, and hydrogen sulfide).
[0066] In various embodiments, some bypass circuits implementations may be controlled in response to signals from analog or digital components, which may be discrete, integrated, or a combination of each. Some embodiments may include programmed, programmable devices, or some combination thereof (e.g., PLAs, PLDs, ASICs, microcontroller, microprocessor), and may include one or more data stores (e.g., cell, register, block, page) that provide single or multi-level digital data storage capability, and which may be volatile, non-volatile, or some combination thereof. Some control functions may be implemented in hardware, software, firmware, or a combination of any of them.
[0067] Computer program products may contain a set of instructions that, when executed by a processor device, cause the processor to perform prescribed functions. These functions may be performed in conjunction with controlled devices in operable communication with the processor. Computer program products, which may include software, may be stored in a data store tangibly embedded on a storage medium, such as an electronic, magnetic, or rotating storage device, and may be fixed or removable (e.g., hard disk, floppy disk, thumb drive, CD, DVD).
[0068] Although an example of a system, which may be portable, has been described with reference to the above figures, other implementations may be deployed in other processing applications, such as desktop and networked environments.
[0069] Temporary auxiliary energy inputs may be received, for example, from chargeable or single use batteries, which may enable use in portable or remote applications. Some embodiments may operate with other DC voltage sources, such as a 9V (nominal) battery, for example. Alternating current (AC) inputs, which may be provided, for example from a 50 / 60 Hz power port, or from a portable electric generator, may be received via a rectifier and appropriate scaling. Provision for AC (e.g., sine wave, square wave, triangular wave) inputs may include a line frequency transformer to provide voltage step-up, voltage step-down, and / or isolation.
[0070] Although particular features of an architecture have been described, other features may be incorporated to improve performance. For example, caching (e.g., LI, L2, . . .) techniques may be used. Random access memory may be included, for example, to provide scratch pad memory and or to load executable code or parameter information stored for use during runtime operations. Other hardware and software may be provided to perform operations, such as network or other communications using one or more protocols, wireless (e.g., infrared) communications, stored operational energy and power supplies (e.g., batteries), switching and / or linear power supplycircuits, software maintenance (e.g., self-test, upgrades), and the like. One or more communication interfaces may be provided in support of data storage and related operations.
[0071] Some systems may be implemented as a computer system that can be used with various implementations. For example, various implementations may include digital circuitry, analog circuitry, computer hardware, firmware, software, or combinations thereof. Apparatus can be implemented in a computer program product tangibly embodied in an information carrier, e.g., in a machine-readable storage device, for execution by a programmable processor; and methods can be performed by a programmable processor executing a program of instructions to perform functions of various embodiments by operating on input data and generating an output. Various embodiments can be implemented advantageously in one or more computer programs that are executable on a programmable system including at least one programmable processor coupled to receive data and instructions from, and to transmit data and instructions to, a data storage system, at least one input device, and / or at least one output device. A computer program is a set of instructions that can be used, directly or indirectly, in a computer to perform a certain activity or bring about a certain result. A computer program can be written in any form of programming language, including compiled or interpreted languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a computing environment.
[0072] Suitable processors for the execution of a program of instructions include, by way of example, both general and special purpose microprocessors, which may include a single processor or one of multiple processors of any kind of computer. Generally, a processor will receive instructions and data from a read-only memory or a random-access memory or both. The essential elements of a computer are a processor for executing instructions and one or more memories for storing instructions and data. Generally, a computer will also include, or be operatively coupled to communicate with, one or more mass storage devices for storing data files; such devices include magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and optical disks. Storage devices suitable for tangibly embodying computer program instructions and data include all forms of non-volatile memory, including, by way of example, semiconductor memory devices, such as EPROM, EEPROM, and flash memory devices; magnetic disks, such as internal hard disks and removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, ASICs (applicationspecific integrated circuits).
[0073] In some implementations, each system may be programmed with the same or similar information and / or initialized with substantially identical information stored in volatile and / or nonvolatile memory. For example, one data interface may be configured to perform autoconfiguration, auto download, and / or auto update functions when coupled to an appropriate host device, such as a desktop computer or a server.
[0074] In some implementations, one or more user-interface features may be custom configured to perform specific functions. Various embodiments may be implemented in a computer system that includes a graphical user interface and / or an Internet browser. To provide for interaction with a user, some implementations may be implemented on a computer having a display device. The display device may, for example, include an LED (light-emitting diode) display. In some implementations, a display device may, for example, include a CRT (cathode ray tube). In some implementations, a display device may include, for example, an LCD (liquid crystal display). A display device (e.g., monitor) may, for example, be used for displaying information to the user. Some implementations may, for example, include a keyboard and / or pointing device (e.g., mouse, trackpad, trackball, joystick), such as by which the user can provide input to the computer.
[0075] In various implementations, the system may communicate using suitable communication methods, equipment, and techniques. For example, the system may communicate with compatible devices (e.g., devices capable of transferring data to and / or from the system) using point-to-point communication in which a message is transported directly from the source to the receiver over a dedicated physical link (e.g., fiber optic link, point-to-point wiring, daisy-chain). The components of the system may exchange information by any form or medium of analog or digital data communication, including packet-based messages on a communication network. Examples of communication networks include, e.g., a LAN (local area network), a WAN (wide area network), MAN (metropolitan area network), wireless and / or optical networks, the computers and networks forming the Internet, or some combination thereof. Other implementations may transport messages by broadcasting to all or substantially all devices that are coupled together by a communication network, for example, by using omni-directional radio frequency (RF) signals. Still other implementations may transport messages characterized by high directivity, such as RF signals transmitted using directional (i.e., narrow beam) antennas or infrared signals that may optionally be used with focusing optics. Still other implementations are possible using appropriate interfaces and protocols such as, by way of example and not intended to be limiting, USB 2.0, Firewire, ATA / IDE, RS-232, RS-422, RS-485, 802.11 a / b / g, Wi-Fi, Ethernet, IrDA, FDDI (fiber distributed data interface), token-ring networks, multiplexing techniques based on frequency, time, or code division, or some combination thereof. Some implementations may optionally incorporate features such as error checking and correction (ECC) for data integrity, or security measures, such as encryption (e.g., WEP) and password protection.
[0076] In various embodiments, the computer system may include Internet of Things (loT) devices. loT devices may include objects embedded with electronics, software, sensors, actuators,and network connectivity which enable these objects to collect and exchange data. loT devices may be in-use with wired or wireless devices by sending data through an interface to another device. loT devices may collect useful data and then autonomously flow the data between other devices.
[0077] Various examples of modules may be implemented using circuitry, including various electronic hardware. By way of example and not limitation, the hardware may include transistors, resistors, capacitors, switches, integrated circuits, other modules, or some combination thereof. In various examples, the modules may include analog logic, digital logic, discrete components, traces and / or memory circuits fabricated on a silicon substrate including various integrated circuits (e.g., FPGAs, ASICs), or some combination thereof. In some embodiments, the module(s) may involve execution of preprogrammed instructions, software executed by a processor, or some combination thereof. For example, various modules may involve both hardware and software.
[0078] In an illustrative aspect, a system may include a multipoint sensor may include M pixels. For example, each of the M pixels may be configured to measure response signals within a field of view (FOV), For example, the system may include a data store may include a program of instructions. For example, the system may include a processor operably coupled to the data store and the multipoint sensor. For example, when the processor executes the program of instructions, the processor causes operations to be performed to automatically detect changes in the FOV based on a multi-pixel measurement.
[0079] For example, the operations may include receive the response signals from the multipoint sensor. For example, the response signals may include a signal of N dimensions for each of the M pixels. For example, each of the N dimensions may be configured to measure a different aspect within the FOV.
[0080] For example, the operations may include perform per pixel change detection operations. For example, the per pixel change detection operations may include, for each i-th pixel, where i = (1 , 2, 3, . .. , M- 1 , M). For example, if the response signals of the i-th pixel may be valid, set a status of the i-th pixel as valid. For example, the operations may include retrieve a reference measurement, a normalization scheme, and a change threshold of the i-th pixel from a non-volatile memory.
[0081] For example, the operations may include determine a difference between each of the N dimensions of the response signals of the i-th pixel and the reference measurement. For example, the operations may include generate an aggregated change metric based on the normalization scheme. For example, the operations may include generate a per pixel change metric of the i-th pixel based on a comparison between the aggregated change metric and the change threshold. Forexample, if a number of valid pixels among the M pixels may be above a first predetermined threshold, generate a global change metric based on the M per pixel changes.
[0082] For example, the reference measurement for each of the M pixels may be generated in a teach-in operation. For example, the teach-in operation may include receive a plurality of reference scenes, each may include the response signals from the M pixels, for each of the M pixels, determine a validity status and a stability status of a corresponding pixel. For example, a pixel may be determined to be unstable based on a signal strength boundary and a measurement stability at the pixel. For example, the teach-in operation may include generate the reference measurement by saving the response signals, and the validity statuses and the stability statuses of the M pixels to the non-volatile memory.
[0083] For example, the per pixel change detection operations further may include determine a stability of for each of the M pixels. For example, a pixel may be unstable if any of unstable conditions may be satisfied. For example, the unstable conditions may include the pixel may be determined to be unstable in the teach-in operation. For example, the unstable conditions may include the pixel changes from valid in the teach-in operation to invalid in the response signal. For example, the unstable conditions may include the pixel changes from invalid in the teach-in operation to valid in the response signals. For example, the global change metric may be generated only if a count of stable pixels may be above a second predetermined threshold.
[0084] For example, the normalization scheme may include a mapping configured to map changes in each of the N dimensions into N unitary metric, and a combination function configured to combine the N unitary metric into the aggregated change metric.
[0085] For example, the combination function may include selecting a maximum of the N unitary metric as the aggregated change metric.
[0086] For example, the change threshold and the aggregated change metric may include a percentage change of the response signals from the reference measurement of the i-th pixel.
[0087] In an illustrative aspect, a computer-implemented method performed by at least one processor to automatically detect changes in the FOV based on a multi-pixel measurement, the method may include receive response signals of M pixels. For example, the response signals may include a signal of N dimensions for each of the M pixels. For example, each of the N dimensions may be configured to measure a different aspect within a field of view.
[0088] For example, the method may include perform per pixel change detection operations. For example, the per pixel change detection operations may include, for each i-th pixel, where i = (1, 2, 3, . . ., M-l , M), if the response signals of the i-th pixel may be valid, set a status of the i-th pixel as valid. For example, the method may include retrieve a reference measurement, a normalization scheme, and a change threshold of the i-th pixel from a non-volatile memory. For example, themethod may include determine a difference between each of the N dimensions of the response signals of the i-th pixel and the reference measurement;
[0089] For example, the method may include generate an aggregated change metric based on the normalization scheme. For example, the method may include generate a per pixel change metric of the i-th pixel based on a comparison between the aggregated change metric and the change threshold. For example, if a number of valid pixels among the M pixels may be above a first predetermined threshold, generate a global change metric based on the M per pixel changes.
[0090] For example, the reference measurement for each of the M pixels may be generated in a teach-in operation. For example, the teach-in operation may include receive a plurality of reference scenes, each may include the response signals from the M pixels.
[0091] For example, the teach-in operation may include, for each of the M pixels, determine a validity status and a stability status of a corresponding pixel. For example, a pixel may be determined to be unstable based on a signal strength boundary and a measurement stability at the pixel. For example, the teach-in operation may include generate the reference measurement by saving the response signals, and the validity statuses and the stability statuses of the M pixels to the non-volatile memory.
[0092] For example, the per pixel change detection operations further may include determine a stability of for each of the M pixels. For example, a pixel may be unstable if any of unstable conditions may be satisfied. For example, the unstable conditions may include the pixel may be determined to be unstable in the teach-in operation. For example, the unstable conditions may include the pixel changes from valid in the teach-in operation to invalid in the response signal. For example, the unstable conditions may include the pixel changes from invalid in the teach-in operation to valid in the response signals. For example, the global change metric may be generated only if a count of stable pixels may be above a second predetermined threshold.
[0093] For example, the teach-in operation further may include identifies region of interests within the FOV, such that signal-to-noise ratio may be enhanced.
[0094] For example, the normalization scheme may include a mapping configured to map changes in each of the N dimensions into N unitary metric, and a combination function configured to combine the N unitary metric into the aggregated change metric.
[0095] For example, the combination function may include selecting a maximum of the N unitary metric as the aggregated change metric.
[0096] For example, the change threshold and the aggregated change metric may include a percentage change of the response signals from the reference measurement of the i-th pixel.
[0097] In an illustrative aspect, a computer program product may include a program of instructions tangibly embodied on a non-transitory computer readable medium. For example, when theinstructions are executed on a processor, the processor causes scene change detection operations to be performed to automatically detect changes in the FOV based on a multi-pixel measurement. For example, the operations may include receive response signals of M pixels. For example, the response signals may include a signal of N dimensions for each of the M pixels. For example, each of the N dimensions may be configured to measure a different aspect within a field of view.
[0098] For example, the operations may include perform per pixel change detection operations. For example, the per pixel change detection operations may include, for each i-th pixel, where i = (1, 2, 3, ..., M-l, M), if the response signals of the i-th pixel may be valid, set a status of the i-th pixel as valid. For example, the operations may include retrieve a reference measurement, a normalization scheme, and a change threshold of the i-th pixel from a non-volatile memory. For example, the operations may include determine a difference between each of the N dimensions of the response signals of the i-th pixel and the reference measurement.
[0099] For example, the operations may include generate an aggregated change metric based on the normalization scheme. For example, the operations may include generate a per pixel change metric of the i-th pixel based on a comparison between the aggregated change metric and the change threshold. For example, if a number of valid pixels among the M pixels may be above a first predetermined threshold, generate a global change metric based on the M per pixel change metric.
[0100] For example, the reference measurement for each of the M pixels may be generated in a teach-in operation. For example, the teach-in operation may include receive a plurality of reference scenes, each may include the response signals from the M pixels. For example, the teach-in operation may include, for each of the M pixels, determine a validity status and a stability status of a corresponding pixel. For example, a pixel may be determined to be unstable based on a signal strength boundary and a measurement stability at the pixel. For example, the teach-in operation may include generate the reference measurement by saving the response signals, and the validity statuses and the stability statuses of the M pixels to the non-volatile memory.
[0101] For example, the per pixel change detection operations further may include determine a stability of for each of the M pixels. For example, a pixel may be unstable if any of unstable conditions may be satisfied. For example, the unstable conditions may include the pixel may be determined to be unstable in the teach-in operation. For example, the unstable conditions may include the pixel changes from valid in the teach-in operation to invalid in the response signal. For example, the unstable conditions may include the pixel changes from invalid in the teach-in operation to valid in the response signals. For example, the global change metric may be generated only if a count of stable pixels may be above a second predetermined threshold.101021 For example, the teach-in operation further may include identifies region of interests within the FOV, such that signal-to-noise ratio may be enhanced. For example, the normalization scheme may include a mapping configured to map changes in each of the N dimensions into N unitary metric, and a combination function configured to combine the N unitary metric into the aggregated change metric.
[0103] For example, the combination function may include selecting a maximum of the N unitary metric as the aggregated change metric. For example, the change threshold and the aggregated change metric may include a percentage change of the response signals from the reference measurement of the i-th pixel.
[0104] A number of implementations have been described. Nevertheless, it will be understood that various modifications may be made. For example, advantageous results may be achieved if the steps of the disclosed techniques were performed in a different sequence, or if components of the disclosed systems were combined in a different manner, or if the components were supplemented with other components. Accordingly, other implementations are contemplated.
Claims
CLAIMSWhat is claimed is:
1. A system comprising: a multipoint sensor (105) comprises M pixels, wherein each of the M pixels is configured to measure response signals within a field of view (FOV) (110); a data store comprising a program of instructions; and, a processor operably coupled to the data store and the multipoint sensor (105) such that, when the processor executes the program of instructions, the processor causes operations to be performed to automatically detect changes in the FOV (110) based on a multi-pixel measurement, the operations comprising: receive the response signals from the multipoint sensor (105), wherein the response signals comprise a signal of N dimensions for each of the M pixels, wherein each of the N dimensions is configured to measure a different aspect within the FOV (110); perform per pixel change detection operations, wherein the per pixel change detection operations comprise, for each i-th pixel, where i = (1, 2, 3, . .., M-l, M): if the response signals of the i-th pixel is valid, set a status of the i-th pixel as valid; retrieve a reference measurement (170), a normalization scheme, and a change threshold of the i-th pixel from a non-volatile memory; determine a difference between each of the N dimensions of the response signals of the i-th pixel and the reference measurement; generate an aggregated change metric (197) based on the normalization scheme; and, generate a per pixel change metric of the i-th pixel based on a comparison between the aggregated change metric (197) and the change threshold; and,if a number of valid pixels among the M pixels is above a first predetermined threshold, generate a global change metric based on the M per pixel changes.
2. The system of claim 1, wherein the reference measurement for each of the M pixels is generated in a teach-in operation, wherein the teach-in operation comprises: receive a plurality of reference scenes, each comprising the response signals from the M pixels; for each of the M pixels, determine a validity status and a stability status of a corresponding pixel, wherein a pixel is determined to be unstable based on a signal strength boundary and a measurement stability at the pixel; and, generate the reference measurement (170) by saving the response signals, and the validity statuses and the stability statuses of the M pixels to the non-volatile memory.
3. The system of claim 2, wherein the per pixel change detection operations further comprise determine a stability of for each of the M pixels, wherein a pixel is unstable if any of unstable conditions is satisfied, wherein the unstable conditions comprise: the pixel is determined to be unstable in the teach-in operation; the pixel changes from valid in the teach-in operation to invalid in the response signal; and, the pixel changes from invalid in the teach-in operation to valid in the response signals, wherein the global change metric is generated only if a count of stable pixels is above a second predetermined threshold.
4. The system of claim 1 , wherein the normalization scheme comprises a mapping configured to map changes in each of the N dimensions into N unitary metric, and a combination function configured to combine the N unitary metric into the aggregated change metric.
5. The system of claim 4, wherein the combination function comprises selecting a maximum of the N unitary metric as the aggregated change metric.
6. The system of claim 1, wherein the change threshold and the aggregated change metric (197) comprises a percentage change of the response signals from the reference measurement (170) of the i-th pixel.
7. A computer-implemented method performed by at least one processor to automatically detect changes in a FOV (110) based on a multi-pixel measurement, the method comprising: receive response signals of M pixels, wherein the response signals comprise a signal of N dimensions for each of the M pixels, wherein each of the N dimensions is configured to measure a different aspect within a field of view; perform per pixel change detection operations, wherein the per pixel change detection operations comprise, for each i-th pixel, where i = (1, 2, 3, M-l, M): if the response signals of the i-th pixel is valid, set a status of the i-th pixel as valid; retrieve a reference measurement (170), a normalization scheme, and a change threshold of the i-th pixel from a non-volatile memory; determine a difference between each of the N dimensions of the response signals of the i-th pixel and the reference measurement (170); generate an aggregated change metric (197) based on the normalization scheme; and, generate a per pixel change metric of the i-th pixel based on a comparison between the aggregated change metric (197) and the change threshold; and, if a number of valid pixels among the M pixels is above a first predetermined threshold, generate a global change metric based on the M per pixel changes.
8. The computer-implemented method of claim 7, wherein the reference measurement (170) for each of the M pixels is generated in a teach-in operation, wherein the teach-in operation comprises: receive a plurality of reference scenes, each comprising the response signals from the M pixels; for each of the M pixels, determine a validity status and a stability status of a corresponding pixel, wherein a pixel is determined to be unstable based on a signal strength boundary and a measurement stability at the pixel; and, generate the reference measurement (170) by saving the response signals, and the validity statuses and the stability statuses of the M pixels to the non-volatile memory.
9. The computer-implemented method of claim 8, wherein the per pixel change detection operations further comprise determine a stability of for each of the M pixels, wherein a pixel is unstable if any of unstable conditions is satisfied, wherein the unstable conditions comprise: the pixel is determined to be unstable in the teach-in operation; the pixel changes from valid in the teach-in operation to invalid in the response signal; and, the pixel changes from invalid in the teach-in operation to valid in the response signals, wherein the global change metric is generated only if a count of stable pixels is above a second predetermined threshold.
10. The computer- implemented method of claim 8, wherein the teach-in operation further comprises identifies region of interests within the FOV (110), such that signal-to-noise ratio is enhanced.
11. The computer-implemented method of claim 7, wherein the normalization scheme comprises a mapping configured to map changes in each of the N dimensions into N unitary metric, and a combination function configured to combine the N unitary metric into the aggregated change metric.
12. The computer-implemented method of claim 11 , wherein the combination function comprises selecting a maximum of the N unitary metric as the aggregated change metric.
13. The computer-implemented method of claim 7, wherein the change threshold and the aggregated change metric (197) comprises a percentage change of the response signals from the reference measurement (170) of the i-th pixel.
14. A computer program product comprising a program of instructions tangibly embodied on a non-transitory computer readable medium wherein, when the instructions are executed on a processor, the processor causes scene change detection operations to be performed to automatically detect changes in a FOV (110) based on a multi-pixel measurement, the operations comprising: receive response signals of M pixels, wherein the response signals comprise a signal of N dimensions for each of the M pixels, wherein each of the N dimensions is configured to measure a different aspect within a field of view; perform per pixel change detection operations, wherein the per pixel change detection operations comprise, for each i-th pixel, where i = (1, 2, 3, ..., M-l, M): if the response signals of the i-th pixel is valid, set a status of the i-th pixel as valid; retrieve a reference measurement (170), a normalization scheme, and a change threshold of the i-th pixel from a non-volatile memory; determine a difference between each of the N dimensions of the response signals of the i-th pixel and the reference measurement (170); and, generate an aggregated change metric (197) based on the normalization scheme; and, generate a per pixel change metric of the i-th pixel based on a comparison between the aggregated change metric (197) and the change threshold; and, if a number of valid pixels among the M pixels is above a first predetermined threshold, generate a global change metric based on the M per pixel change metric.
15. The computer program product of claim 14, wherein the reference measurement (170) for each of the M pixels is generated in a teach-in operation, wherein the teach-in operation comprises: receive a plurality of reference scenes, each comprising the response signals from the M pixels; for each of the M pixels, determine a validity status and a stability status of a corresponding pixel, wherein a pixel is determined to be unstable based on a signal strength boundary and a measurement stability at the pixel; and, generate the reference measurement (170) by saving the response signals, and the validity statuses and the stability statuses of the M pixels to the non-volatile memory.
16. The computer program product of claim 15, wherein the per pixel change detection operations further comprise determine a stability of for each of the M pixels, wherein a pixel is unstable if any of unstable conditions is satisfied, wherein the unstable conditions comprise: the pixel is determined to be unstable in the teach-in operation; the pixel changes from valid in the teach-in operation to invalid in the response signal; and, the pixel changes from invalid in the teach-in operation to valid in the response signals, wherein the global change metric is generated only if a count of stable pixels is above a second predetermined threshold.
17. The computer program product of claim 15, wherein the teach-in operation further comprises identifies region of interests within the FOV (110), such that signal-to-noise ratio is enhanced.
18. The computer program product of claim 14, wherein the normalization scheme comprises a mapping configured to map changes in each of the N dimensions into N unitary metric, and a combination function configured to combine the N unitary metric into the aggregated change metric.
19. The computer program product of claim 18, wherein the combination function comprises selecting a maximum of the N unitary metric as the aggregated change metric.
0. The computer program product of claim 14, wherein the change threshold and the aggregated change metric (197) comprises a percentage change of the response signals from the reference measurement (170) of the i-th pixel.