System and method for compressing sensor data using clustering and shape matching in edge nodes of a distributed computing network
By using clustering and shape matching technology on the edge nodes of the distributed computing system, the unique patterns in the sensor data are identified, and matched with known signal templates, and the appropriate compression scheme is selected, the accuracy and efficiency of the compression and analysis of sensor data at the edge nodes is solved, and efficient data compression and analysis is achieved.
Patent Information
- Application Number
- CN201980052262.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2018-08-27
- Filing Date
- 2019-08-05
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2039-08-05
AI Technical Summary
At the edge nodes of distributed computing systems, the compression and analysis of sensor data faces the challenges of accuracy and efficiency, especially under limited computing resources and bandwidth conditions.
By using clustering and shape matching techniques on edge nodes, unique patterns in sensor data are identified and matched with known signal templates to select the appropriate compression scheme. This method uses dynamic time regularization (DTW) metrics and k-nearest neighbor algorithm to reduce data transmission and improve analysis accuracy.
It realizes efficient compression and analysis of sensor data at edge nodes, reduces data transmission volume, improves data accuracy and analysis efficiency, and is suitable for resource-constrained environments.
Smart Images

Figure CN112534427B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates generally to distributed computing systems, and more particularly to compressing sensor data at edge nodes using clustering and shape matching. Background Art
[0002] In many industries, there is a trend to communicatively connect together an increasing number of disparate, traditionally unconnected devices. Examples include home and building control systems, such as connected lighting systems, inventory tracking systems, the "Internet of Things," and / or other "smart" or "connected" systems. Typically, the edge nodes of these systems (e.g., luminaires in a connected lighting system) include sensors and communication modules that enable the entire system to react more effectively, more efficiently, and / or more automatically to dynamic changes in the relevant environment (e.g., home, office, warehouse, etc.). In order to make these systems feasible (e.g., economical), a typical characteristic of these systems is the limited availability of computing resources at the edge nodes (e.g., at the luminaires in a connected lighting system) and the low power bandwidth with which the nodes of the system are interconnected.
[0003] One approach to addressing the constraints imposed by the limited resources of connected systems includes compression techniques, where raw collected sensor data is compressed at the edge and then transmitted to a centralized or designated network infrastructure, such as a local server or cloud, for decompression and analysis. However, as data is increasingly compressed (e.g., in order to compress and transmit in a timely manner over the limited bandwidth and computing resources at the edge node), there is a corresponding decrease in the accuracy of the data after decompression.
[0004] Thus, there remains a need in the art for systems and methods that facilitate more timely, accurate, and efficient analysis of sensor data collected at resource-constrained edge nodes of a distributed computing system. Summary of the invention
[0005] The present disclosure is directed to systems and methods for compressing sensor data at edge nodes of distributed computing systems using clustering and shape matching. Various embodiments and implementations herein are directed to data compression and analysis methods in which unique patterns are identified in the collected sensor data that correspond to specific events observed by the sensors. For example, sensor-enabled edge nodes of distributed computing systems are often installed so that their sensors are oriented, located, positioned, or otherwise arranged to collect data about a specific geographic area or environment. Therefore, it is expected that sensors from any given edge node will frequently observe the same type of events, depending on where and / or how the corresponding edge node devices are installed. In other words, sensors located at any given location are expected or likely to generate a limited number of waveform shapes during normal use.
[0006] According to the methods and systems disclosed herein, it is proposed that each of the different events observed by any given sensor may correspond to, or may be associated with, a unique waveform or shape of the collected raw data signal. For example, a passive infrared (PIR) or other motion sensor - for example, in a connected lighting system - may observe a unique shape of simulated response based on the location of the sensor relative to typical movement patterns of people in a space (e.g., moving in more than one direction, sitting at a desk typing or working, interacting in a group meeting, jumping up and down, falling, etc.). Patterns of other non-motion-related events may be detected based on other temperature, humidity, thermopile sensors, etc., such as identifying surrounding weather conditions (e.g., raining, snowing, sunny, cloudy, etc.).
[0007] In this way, for each of the known unique waveforms or shapes, any newly collected raw data signal can be compared to a common template (or centroid) to determine (probabilistically guess or estimate) which event is occurring. In one embodiment, a dynamic time warping (DTW) metric can be utilized to determine a time-independent data signal that enables similar events to be clustered or classified regardless of the speed, timing, or duration of movement of the entity or phenomenon observed to generate the raw data signal. In one embodiment, the identified event or unique waveform is used to select a corresponding compression scheme. For example, there may be a correlation between a unique waveform or shape of a raw data signal and the ability to accurately compress and decompress the raw data signal relative to different compression schemes. In one embodiment, by sending errors only between the raw data signal and the centroid associated therewith, the amount of data generated by and / or transmitted on the distributed network is reduced.
[0008] All examples and features mentioned below can be combined in any technically possible way.
[0009] In general, in one aspect, a method for compressing sensor data at an edge node of a distributed computing network is provided. The method includes: training the edge node with knowledge of a plurality of known signal templates, each known signal template corresponding to one of a plurality of events observable by a sensor of the edge node; collecting a raw data signal by the sensor; classifying the raw data signal into one of the known signal templates based on a similarity between the raw data signal and the known signal template; selecting a compression scheme based on the classification of the raw data signal; and compressing the raw data signal according to the compression scheme.
[0010] According to one embodiment, compressing includes compressing only the difference between the raw data signal and the classified known signal template. In one embodiment, classifying includes determining which event is observed based on the classified known signal template, and compressing includes an indication of the event observed by the sensor. In one embodiment, classifying includes utilizing a k-nearest neighbor algorithm.
[0011] According to one embodiment, the classification includes dynamic time warping or any scale invariance measure. In one embodiment, the distributed computing network is a connected lighting system and the sensor is a passive infrared sensor. In one embodiment, the training includes: collecting a plurality of data signals and clustering the data signals with respect to a plurality of clusters; and creating a centroid for each cluster based on the data signals in the cluster, wherein the known signal template includes the centroid.
[0012] In general, in another aspect, a method of analyzing an analog response of a passive infrared (PIR) sensor at an edge node of a distributed network is provided. The method includes collecting an analog data signal as an analog portion of a response from a PIR sensor that detects movement relative to the sensor; processing the analog data signal with dynamic time warping to compare the analog data signal to a plurality of known signal templates, each known signal template including a data set describing a type of movement detected relative to the PIR sensor; identifying a matching known signal template of the known signal templates that is most similar to the analog data signal using a pattern recognition algorithm; determining a type of movement detected based on a matching known signal template of the known signal templates; and transmitting an indication of the type of movement, the indication of the type of movement being a compressed representation of the analog data signal.
[0013] In general, in another aspect, an edge node for a distributed computing network is provided. The edge node includes: a communication module configured to enable data communication with the distributed computing network; a sensor configured to collect a raw data signal based on an event observed by the sensor; a controller configured to compare the raw data signal with a plurality of known signal templates; identify a matching known signal template in the known signal templates that is most similar to the raw data signal; select a compression scheme based on a matching known signal template in the known signal templates; and compress the raw data signal according to the compression scheme.
[0014] According to one embodiment, the controller is further configured to compress only the difference between the raw data signal and a matching one of the known signal templates. In one embodiment, the controller is configured to compress the raw data signal by determining an observed event based on a matching one of the known signal templates and determining the event or an indication representing the event. In one embodiment, the controller includes a k-nearest neighbor algorithm installed therein, and wherein the controller is configured to compare the raw data signal to a plurality of known signal templates using the k-nearest neighbor algorithm.
[0015] According to one embodiment, the controller includes a dynamic time warping algorithm installed therein, and wherein the controller is configured to compare the raw data signal to a plurality of known signal templates using the dynamic time warping algorithm. In one embodiment, the distributed computing network is a connected lighting system, and the sensor is a passive infrared sensor coupled to the illuminator.
[0016] In general, in another aspect, a distributed computing network is provided that includes a plurality of edge nodes as disclosed herein that are communicatively connected together.
[0017] It should be understood that all combinations of the foregoing concepts and the additional concepts discussed in more detail below (assuming such concepts are not mutually inconsistent) are considered to be part of the inventive subject matter disclosed herein. In particular, all combinations of the claimed subject matter appearing at the end of this disclosure are considered to be part of the inventive subject matter disclosed herein. It should also be understood that terms explicitly adopted herein that may also appear in any disclosure incorporated by reference should be given the meaning most consistent with the specific concepts disclosed herein. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] In the drawings, like reference numerals generally refer to the same parts throughout the different views. Also, the drawings are not necessarily to scale, emphasis instead generally being placed upon illustrating the principles of the invention.
[0019] Figure 1 A distributed computing network with multiple edge nodes according to one embodiment disclosed herein is schematically illustrated.
[0020] Figure 2 is a diagram illustrating an example of two data signals collected by sensors of an edge node of a distributed computing network.
[0021] Figure 3 is a flow chart illustrating a method of using shape matching and clustering to improve the ability of edge nodes to compress data and perform activity recognition using minimal computing resources.
[0022] Figure 4 A method of classifying unknown data signals into clusters according to one example provided herein is illustrated.
[0023] Figure 5A A method of performing a training phase for an edge node according to one embodiment disclosed herein is illustrated.
[0024] Figure 5B A method for performing an operation phase for an edge node according to one embodiment disclosed herein is illustrated.
[0025] Figure 6 Representative illustration of data collection and manipulation for one experiment described herein.
[0026] Figure 7 The diagram shows Figure 6 Results of a k-nearest neighbor analysis performed on a representative dataset. DETAILED DESCRIPTION
[0027] The present disclosure describes various embodiments of data compression using edge nodes of a distributed computing network. More generally, applicants have recognized and appreciated that it would be beneficial for edge nodes to be configured to perform clustering and shape matching on collected data signals. A particular goal of utilizing certain embodiments of the present disclosure is to reduce the amount of data generated and transmitted by edge nodes of a distributed network and to enable resource-constrained edge node devices to perform local activity or event recognition.
[0028] In view of the foregoing, various embodiments and implementations are directed to data compression and analysis methods in which patterns are identified in collected sensor data, where these patterns correspond to specific events observed by the sensors. For example, sensor-enabled edge nodes of distributed computing systems are often installed so that their sensors are oriented, located, positioned, or otherwise arranged to collect data about a specific geographic area or environment. Therefore, it is expected that sensors from any given edge node will frequently observe the same types of events, which depends on where and / or how the corresponding edge node devices are installed. In other words, with respect to some scale invariance such as time (DTW), most activities that are expected or likely to be generated by sensors located at any given location have a limited or very limited number of waveform shapes during normal use.
[0029] According to the methods and systems disclosed herein, it is proposed that each of the different events observed by any given sensor may correspond to, or may be associated with, a unique waveform or shape of the collected raw data signal. For example, a passive infrared (PIR) or other motion sensor - for example, in a connected lighting system - may observe a unique shape of the simulated portion of the response from the PIR or other sensor based on the location of the sensor relative to the typical movement patterns of people in a space (e.g., moving in more than one direction, sitting at a desk typing or working, interacting in a group meeting, etc.). Patterns of other data types may also be used to identify events that are not related to movement, such as identifying surrounding weather conditions (e.g., raining, snowing, sunny, cloudy, etc.) based on temperature, humidity, etc.
[0030] In this way, for each of the known unique waveforms or shapes, any newly collected raw data signal can be compared to the common template (or centroid) to determine (probabilistically guess or estimate) which event is occurring. In one embodiment, a dynamic time warping (DTW) metric can be used for time invariance in the data shape, which enables similar events to be clustered or classified regardless of the speed, timing, or duration of movement of the entity or phenomenon observed to generate the raw data signal. Although time invariance is an example, other scale invariance methods can be considered, such as amplitude or a higher order combination of amplitude and time. In one embodiment, the identified event or unique waveform is used to select a corresponding compression scheme. For example, there may be a correlation between the unique waveform or shape of the raw data signal and the ability to accurately compress and decompress the raw data signal relative to different compression schemes. In one embodiment, by sending errors only between the raw data signal and the centroid associated therewith, the amount of data generated by and / or transmitted on the distributed network is reduced.
[0031] Reference Figure 1In one embodiment, a distributed computing network or system 10 having a plurality of edge nodes 12 is provided. In particular, Figure 1 The computing system 10 is illustrated as a connected lighting system, wherein the edge nodes 12 are provided as luminaires. However, it should be understood that any other connected or "intelligent" computing system may be utilized, such as, for example, a building control system for automating heating, cooling, ventilation, security, noise suppression, etc., or other computing systems such as inventory tracking systems, the Internet of Things, etc. At a minimum, each of the edge nodes 12 includes: a sensor 14 (or multiple sensors) configured to collect data related to one or more parameters about the surrounding environment; a controller 15 configured to control the operation of the respective edge node 12; and a communication interface or module 16 to enable data to be communicated between the edge nodes 12 and / or to communicate with other nodes or devices.
[0032] If desired, the system 10 may be arranged as a peer-to-peer network of edge nodes 12 and / or include one or more centralized nodes. The term "centralized node" as used herein is intended to refer broadly to any specified network or processing equipment. Examples include a gateway 18, a server 20 (e.g., a local network server), and a cloud computing implementation 22 (alternatively, "cloud 22"). Thus, centralized nodes typically provide additional computing resources for higher level processing requirements, control the operation of the system 10, enable certain features of the system 10, facilitate network traffic, and the like. It should be understood that the system 10 may include one or both of the server 20 and the cloud 22, which provide centralized computing resources for the system 10 separately and / or together. For example, as discussed in more detail herein, a central server 20 and / or cloud 22 may be included to decompress and / or analyze data collected by the sensor 14 and compressed at the edge node 12.
[0033] It should be understood that each of the edge nodes 12, the gateway 18, the server 20, and / or the cloud 22 may include appropriate hardware and software to embody and implement the structures, features, and functionality disclosed herein. For example, each of the gateway 18, the server 20, and the cloud 22 may include sensors, controllers, and communication modules similar to those described for the edge node 12 (e.g., but with more computing resources). Any such controller may be or include a processor, memory, algorithm, or other hardware or software component.
[0034] The processor (e.g., for controller 15) can take any suitable form, such as a microcontroller, multiple microcontrollers, circuits, a single processor, or multiple processors configured to execute software instructions. Similarly, the memory (e.g., for controller 15) can take any suitable (multiple) form, including volatile memory (such as random access memory (RAM)), or non-volatile memory (such as read-only memory (ROM), flash memory, hard disk drive (HDD), solid state drive (SSD)), or other data storage medium. The processor can use the memory to temporarily store data during its operation. Data and software (such as algorithms or software necessary for executing the method and providing the features and functionality discussed herein) and operating systems, firmware or other applications can be installed in the memory. The communication module (e.g., communication module 16) as referred to herein is arranged to enable communication between components of the system 10. The communication module may be or include any module, device or apparatus (e.g., transmitter, receiver, transceiver, antenna, etc.) capable of enabling transmission and / or reception of wired or wireless communication signals, utilizing technologies including but not limited to Wi-Fi (e.g., IEEE 802.11), Bluetooth, cellular, Ethernet, Zigbee, etc. As discussed herein, of particular note are relatively low power or resource constrained technologies such as Zigbee.
[0035] The sensor 14 may be configured to collect any desired or selected data parameter related to the local environment, such as motion detection (e.g., radiated infrared energy), temperature, humidity, ambient noise level, ambient light level, etc. In one embodiment, particularly where the system 10 is a connected lighting system, the sensor 14 may include a passive infrared (PIR) sensor. However, one of ordinary skill in the art will recognize other sensors that may be used as the sensor 14, such as thermopiles, cameras, microphones, etc. The system 10 may be arranged to utilize this data to automate or make more efficient certain features or functionality of its components, such as the edge node 12. For example, referring back to the embodiment where the system 10 is a connected lighting system, the sensor 14 may be a motion detection sensor that enables the system 10 to automatically turn on the lights when movement is detected and / or turn off the lights after a preset time period has elapsed in which no movement is detected. One of ordinary skill in the art will recognize other types of distributed computing systems and collected data that may be used to facilitate the operation of these other systems.
[0036] It should also be understood that the system 10 can be equipped with algorithms related to artificial intelligence, machine learning, artificial neural networks, etc., so that pre-decision-making can be analyzed and determined based on the collected data, such as context awareness, activity, event, or scene recognition, etc. In one example, one or more algorithms can be utilized (e.g., server 20 and / or cloud 22) to process the data collected by the sensor 14 to attempt to make a higher level of determination or probabilistic guess for the corresponding activity or scene based on the data. For example, the collected motion detection data can be analyzed to estimate the number of occupants in one or more specified areas. Although the motion detection data only indicates the detected motion, the pattern of the data can be analyzed, that is, the algorithm learns or is trained to, recognizes or associates to the pattern of the corresponding event (or the possibility of the corresponding event occurring), such as the total number of occupants. For example, a higher level of motion detected in a concentrated area can be interpreted as or associated with a larger estimated total number of occupants. It should be understood that this is just one example, and many other possibilities for making higher level determinations from the collected sensor data will be perceptible to those of ordinary skill in the art.
[0037] As noted above, it is expected that any given sensor may commonly or frequently observe only a limited or constrained number of different events, and each of these events may be described by or associated with a unique waveform. Figure 2 An example of two raw data signals 24 and 25 collected by sensor 14 is graphically represented, each forming its own unique shape. For example, raw data signals 24 and 25 may be analog portions of a response of a PIR sensor relating to two different motion events observed by the sensor. In this example, raw data signal 24 may correspond to a first event in which a person is moving in a first direction relative to sensor 14 (e.g., from left to right), while raw data signal 25 corresponds to a second event in which a person is moving in a second direction relative to sensor 14 (e.g., from right to left). One of ordinary skill in the art will recognize any number of other events that may be observed by motion detection or other sensors.
[0038] A unique shape may be defined and identified by any number of different features or characteristics. For example, with reference to time, raw data signal 24 includes a first major peak 26 extending in the positive Y-axis direction, while raw data signal 25 includes a first major peak 28 extending in the negative Y-axis direction. Other characteristics may include the size of the peaks, the relative width and / or spacing between peaks, the number of peaks, etc.
[0039] Figure 3A method 30 according to one embodiment is illustrated, wherein the edge node 12 is arranged as a luminaire or lamp, and it includes or is communicatively coupled to a sensor 14, such as a motion detection sensor. At step 32, the edge node 12 (e.g., via the controller 15) analyzes the raw data signal generated by the sensor 14, and detects or determines the shape of the raw data signal (e.g., as defined by one or more features or characteristics, such as the first main peaks 26 and 28 discussed above).
[0040] As part of the analysis of step 32, the shape of the raw data signal may be matched to one of a plurality of known templates based on a degree of similarity between the shape of the raw data signal and the known templates. For example, the raw data signal may be matched to any known template to which the shape of the data signal is most similar. If desired, step 32 may include performing dynamic time warping on the signal to normalize the raw data signal with respect to time (i.e., to make the raw data signal independent of time). As a non-limiting example, dynamic time warping may be utilized to enable shapes generated by people moving in a given direction to closely resemble or correlate with each other, regardless of the speed at which the people are moving.
[0041] For example, regarding DTW, consider two time series Q and C with the same length n, where Q = q1, q2, ..., q n And C = c1, c2, ..., c n . An n×n matrix whose (i, j)th element is q i and c j The Euclidean distance between them. A path through this matrix that minimizes the cumulative distance can be found. This path then determines the best alignment between the two time series. It should be noted that it is possible for a point in one time series to be mapped to multiple points in the other time series. For example, a path W can be created where W = w1, w2, ..., w K , and each element of W represents the distance between point i in Q and point j in C, that is, w k =(q i -c j ) 2 Minimization of the Euclidean distance can be achieved via dynamic programming in O(nm) time, where n and m are the lengths of the two sequences.
[0042] The method 30 may also include a step 34 at which the raw data signal is compressed relative to the identified template. For example, since the template is a known shape, the differences or errors between the raw data signal and the closest template can be determined. These differences will be smaller than the data size of the raw data signal itself. Thereafter, the errors can be compressed and the compressed errors transmitted to a centralized node for reconstruction and analysis. Advantageously, the body of the compressed errors and the closest template is sufficient to reconstruct the signal with high accuracy using fewer computing resources and bandwidth (as opposed to compressing and transmitting the entire raw data signal). It should be understood that the disclosed alternatives may be used in other embodiments. For example, in one embodiment, instead of compressing only the errors, the entire raw data signal is compressed and transmitted.
[0043] Instead of compressing some or all of the raw data signals, or in addition to compressing some or all of the raw data signals (e.g., as in step 34), step 36 may be included that involves performing activity cognition based on the collected data set. In other words, step 36 may include determining events observed by the sensor 14 based on the collected raw data signals. For example, if each known template or centroid is associated with a different event, then as a result of step 32, the edge node may determine which event is being observed based on which cluster the raw data signal is assigned to. In this example, only an indicator of the observed event may be transmitted to the centralized node for processing (e.g., without any other data).
[0044] As a non-limiting example, sensors such as PIR sensors, cameras, etc. can be positioned at one-way exits, and the direction of movement of people is evaluated according to the embodiments disclosed herein to determine whether each person is moving in the appropriate direction or in a prohibited direction. Instead of compressing and transmitting each collected data signal (or a portion thereof) for processing, only the determination of the direction of movement for each person can be transmitted. If this determination indicates that someone is moving in a prohibited direction, it can be used to trigger some actions, such as an alarm. Although only sending the determination of the event may be different from a traditional "data compression" scheme (e.g., there is no corresponding decompression), it will effectively reduce the amount of data that needs to be transmitted through the distributed network 10, and therefore should be considered as a data compression scheme for the purposes of this article (e.g., the original data signal is reduced to a single value representing the observed event).
[0045] refer to Figure 4, the implementation of shape matching and clustering (e.g., step 32) can be better understood, which illustrates in more detail one example of how a raw data signal may be classified. In this example, an unknown (unclassified) data signal 38 is received by a classifier 40 (e.g., as or by the controller 15). For example, in this example, the classifier 40 has knowledge of two known templates or centroids 42 and 44 (labeled "blue cluster" and "red cluster," respectively). For example, the known templates may be stored as an array, matrix, or vector of data pair values (e.g., each pair containing observed sensor values relative to time). It should be understood that the classifier 40 may be aware of any number of known templates (e.g., stored in a memory in communication with the controller 15) and provided with any other labels or descriptions.
[0046] exist Figure 4 In the illustrated example of , the unknown signal 38 most closely matches or is similar to the centroid 44, and therefore is assigned to the corresponding cluster (e.g., the "red cluster"). For example, the classifier 40 can utilize a pattern recognition algorithm such as k-nearest neighbor (k-NN) to identify which centroid the unknown signal 38 most closely matches. It should be understood that any other pattern recognition or other algorithm configured to compare and correlate the similarities of two data sets can be used. As described above, the difference or error between the unknown signal 38 and the matching centroid (in this case, the centroid 44) can be determined and compressed according to a desired compression scheme, and then transmitted (along with the body of the matching centroid) to a centralized node for reconstruction and analysis.
[0047] The systems and methods disclosed herein may include a training phase and an operation phase. For example, in the training phase, the edge nodes 12 each create or are provided with an understanding of the unique patterns (known templates) that each edge node's sensors 14 may create, given a unique location and observed data type (e.g., detected movement, temperature, humidity, ambient noise level, etc.).
[0048] Figure 5A The training phase according to one embodiment is illustrated, which can be implemented by method 50. At step 52, one or more edge nodes (e.g., edge node 12) collect raw data signals from their corresponding sensors (e.g., sensor 14) over a period of time. At step 54, clustering processing can be applied to the raw data signals, such as k-means clustering for k different values. Those of ordinary skill in the art will recognize other methods for clustering and / or identifying patterns in raw data signals, such as machine learning and / or unsupervised learning algorithms, or even manual review and selection. As described above, dynamic time warping can be used to normalize signals that are similar in shape with respect to time.
[0049] At step 56, the raw data signals are clustered into a selected or identified number ("k") of different shapes. If a k-means clustering algorithm is utilized, then the value of k that provides the best data clustering may be used in step 56 to represent the number of unique patterns typically experienced by the corresponding sensor. The values of the members of each cluster may be averaged to create a centroid for each unique pattern, which may be set as a template for the corresponding pattern. In addition to the centroid, the edge node may retain one or more other representative samples for each cluster.
[0050] When an edge node enters the operational phase after completing training (e.g., according to method 50), it therefore knows the unique shape that the collected raw data signal is most likely to take. With this knowledge, the edge node is able to classify new or unknown raw data signals that need to be compressed into one of the shapes identified in the training phase.
[0051] exist Figure 5B , a method 60 describing the operational stages according to one embodiment is depicted in . At step 62, a k-nearest neighbor algorithm (e.g., as discussed above) may be employed in this embodiment to analyze the unknown raw data signal (although other pattern recognition algorithms may alternatively be employed). At step 64, appropriate clusters of the unknown raw data signal are determined, for example, by voting according to k-NN. Once a cluster is identified, the centroid (e.g., as created in step 58 of training method 50) serves as an approximation of the compressed raw data signal. The difference (or error) between the unknown signal and the cluster centroid may be determined at step 66. The difference may be processed using any desired technique or method. For example, in method 60, thresholding may occur at step 68, and run-length encoding may occur at step 70.
[0052] An experiment was performed that required four subjects to walk through the field of view of a wall-mounted PIR sensor, and the results were Figure 6 More specifically, each walk generates a 2000-sample signal spanning two PIR pulses: the subject walks from left to right (“0”), and the subject walks from right back to left (“0”). The four subjects made a total of 66 walks. The resulting data was downsampled and cut in half for two classes (“0” and “1”).
[0053] The resulting dataset has 132 signals (each with a length of 500 samples) and a binary value indicating which of the two classes was identified ("0" or "1"). This data was subjected to DTW-based k-NN classification. The results for k different values are given in Figure 7 Given that Figure 7, it can be appreciated that the two classes of signals can be separated with high accuracy. Therefore, these two classes (left to right or "0", and right to left or "1") can be used as compressed clusters. In this way, any given unknown signal can be easily classified into these two classes and then compressed as described in the previous section.
[0054] Although several inventive embodiments have been described and illustrated herein, a person of ordinary skill in the art will readily conceive of a variety of other devices and / or structures for performing functions and / or obtaining results and / or one or more advantages described herein, and each of such variations and / or modifications is considered to be within the scope of the inventive embodiments described herein. More generally, it will be readily understood by those skilled in the art that all parameters, dimensions, materials, and configurations described herein are meant to be exemplary, and that actual parameters, dimensions, materials, and / or configurations will depend on one or more specific applications to which the teachings of the present invention are applied. Using only routine experiments, those skilled in the art will recognize or be able to ascertain many equivalents of the specific inventive embodiments described herein. Therefore, it should be understood that the foregoing embodiments are presented only by way of example, and within the scope of the appended claims and their equivalents, the inventive embodiments may be practiced in other ways than as specifically described and claimed. The inventive embodiments of the present disclosure are directed to each individual feature, system, article, material, kit, and / or method described herein. In addition, any combination of two or more such features, systems, articles, materials, kits and / or methods is included within the scope of the inventions of the present disclosure if such features, systems, articles, materials, kits and / or methods are not mutually inconsistent.
[0055] The phrase "and / or" as used herein in the specification and claims should be understood to mean "either or both" of the elements so combined, i.e., elements that exist in conjunction in some cases and separately in other cases. Multiple elements listed with "and / or" should be interpreted in the same manner, i.e., "one or more" of the elements so combined. In addition to the elements specifically identified by the "and / or" clause, other elements may optionally be present, whether related or unrelated to those specifically identified elements. As used herein in the specification and claims, "or" should be understood to have the same meaning as "and / or" as defined above.
[0056] It should also be understood that in any method claimed herein that includes more than one step or action, the order of the steps or actions of the method is not necessarily limited to the order in which the steps or actions of the method are described unless clearly indicated to the contrary.
Claims
1. A method for compressing sensor data at an edge node (12) of a distributed computing network (10), comprising: training the edge node with knowledge of a plurality of known signal templates (42, 44), each known signal template corresponding to one of a plurality of events that can be sensed by a sensor (14) of the edge node; collecting raw data signals (38) from the sensor; comparing the original data signal with the plurality of known signal templates based on a similarity between the original data signal and each of the plurality of known signal templates; classifying the original data signal as being associated with one of the plurality of known signal templates based on a highest similarity between the original data signal and the known signal template; selecting a compression scheme based on the classification of the raw data signal; as well as compressing the original data signal according to the compression scheme, The compression includes at least one of the following: compressing only the difference between the original data signal and the classified known signal template; The raw data signal is compressed by determining an indication of the event observed by the sensor, wherein the classification includes determining which event was observed based on the classified known signal template.
2. The method according to claim 1, wherein: The classification includes utilizing a k-nearest neighbor algorithm (62).
3. The method according to claim 1, wherein: The classification includes dynamic time warping or any scale invariance measure.
4. The method according to claim 1, wherein: The distributed computing network is a connected lighting system and the sensors are passive infrared sensors.
5. The method according to claim 1, wherein: The training includes collecting a plurality of data signals and clustering the data signals relative to a plurality of clusters, and creating a centroid for the cluster based on the data signals in each cluster, wherein the known signal template includes the centroid.
6. A method of analyzing a simulated response of a passive infrared (PIR) sensor (14) at an edge node (12) of a distributed network (10), comprising: collecting an analog data signal (38) as an analog portion of a response from the PIR sensor, the PIR sensor detecting movement relative to the sensor; processing the analog data signal using dynamic time warping to compare the analog data signal to each of a plurality of known signal templates (42, 44) based on a similarity between the analog data signal and each of the plurality of known signal templates (42, 44), each of the plurality of known signal templates comprising a data set describing a type of movement detected relative to the PIR sensor; using a pattern recognition algorithm to identify a matching known signal template from the plurality of known signal templates that is most similar to the analog data signal; determining a type of the detected movement based on the one of the known signal templates that matches; as well as An indication of the type of movement is transmitted, the indication of the type of movement being a compressed representation of the analog data signal.
7. An edge node (12) for a distributed computing network, comprising: a communication module (16) configured to enable data communication with the distributed computing network; A sensor (14) configured to collect raw data signals (38) based on events observed by the sensor; The controller (15) is configured to: comparing the original data signal with a plurality of known signal templates; Identifying a matching known signal template among the plurality of known signal templates that is most similar to the original data signal; selecting a compression scheme based on the one matching known signal template among the known signal templates; as well as compressing the original data signal according to the compression scheme, The controller is further configured to perform at least one of the following: compressing only the difference between the original data signal and the one matching known signal template among the known signal templates; The original data signal is compressed by determining an observed event based on the one of the known signal templates that matches, and determining the event or an indication representative of the event.
8. The edge node of claim 7, wherein the controller includes a k-nearest neighbor algorithm (62) installed therein, and wherein the controller is configured to compare the raw data signal with the plurality of known signal templates using the k-nearest neighbor algorithm.
9. An edge node according to claim 7, wherein the controller includes a dynamic time warping algorithm installed therein, and wherein the controller is configured to use the dynamic time warping algorithm to compare the original data signal with the multiple known signal templates.
10. The edge node of claim 7, wherein the distributed computing network is a connected lighting system and the sensor is a passive infrared sensor coupled to a luminaire.
11. A distributed computing network comprising a plurality of edge nodes according to claim 7 that are communicatively connected together.
Citation Information
Patent Citations
Method for compressing and storing GPS data based on route clustering
CN101894135A
Method and device for data compression
CN102708183A