The present invention relates to an apparatus for detecting events and a method thereof, and more particularly, to an apparatus for automatically detecting events from massive data and tagging the detected event information and a method thereof.
As sensor technology develops, the demand for a method of automatically detecting and tagging points of interest from continuously generated massive data is rapidly increasing. For example, a vehicle system having a plurality of sensors generates a large amount of sensing data related to vehicle operation. There is a demand for a method of efficiently detecting a specific driving situation (e.g., a situation where a vehicle suddenly brakes while turning right) by analyzing such large-capacity sensing data.
Therefore, the present invention has been made in view of the above problems, and it is one object of the present invention to provide an apparatus for automatically detecting events from massive data and tagging the detected event information and a method thereof.
It is another object of the present invention to provide rules capable of detecting various events.
However, the technical problems to be solved by the present invention is not limited to the above-mentioned problems, and other problems not mentioned herein can be clearly understood by those skilled in the art from the following description.
In accordance with one aspect of the present invention, provided is an apparatus for detecting events including a rule register for registering rules for event detection and a tag value assigned to the rules; and an event detector for obtaining monitoring data and a tag value assigned to the monitoring data, determining a rule related to the monitoring data among the pre-registered rules using the obtained tag value, and detecting an event in the monitoring data by applying the determined rule.
In embodiments, the monitoring data may be tagged with information about the detected event by the event detector.
In embodiments, the rule register may store the rule in a role storage and may register an identifier of the rule and a tag value assigned to the rule in a mapping table, and the event detector may search an identifier of the related rule using the tag value assigned to the monitoring data in the mapping table and may obtain the related rule using the identifier of the searched rule in the role storage.
In embodiments, the apparatus may further include a metadata register for registering metadata for interpreting the monitoring data and a tag value assigned to the metadata, wherein the event detector uses the obtained tag value to determine metadata related to the monitoring data among the pre-registered metadata, interprets the monitoring data using the determined metadata, and detects the event in the interpreted monitoring data.
In embodiments, in response to determining that a new rule has been registered, the event detector may determine data related to the new rule among pre-stored monitoring data by using a tag value assigned to the new rule and may detect an event in the determined data by applying the new rule.
In embodiments, the monitoring data may include values for one or more monitoring elements, the rule may include function and condition items, a function that performs a predetermined operation based on the values of one or more monitoring elements may be set in the function item, and a condition for an output value of the set function may be set in the condition item.
In accordance with another aspect of the present invention, provided is a method of detecting events, wherein the method is performed by a computing device and includes a step of registering rules for event detection and a tag value assigned to the rules; a step of obtaining monitoring data and a tag value assigned to the monitoring data; a step of determining a rule related to the monitoring data among the pre-registered rules using the obtained tag value; and a step of detecting an event in the monitoring data by applying the determined rule.
In accordance with yet another aspect of the present invention, provided is a computer program connected to a computing device and stored in a computer-readable recording medium to execute a step of registering rules for event detection and a tag value assigned to the rules; a step of obtaining monitoring data and a tag value assigned to the monitoring data; a step of determining a rule related to the monitoring data among the pre-registered rules using the obtained tag value; and a step of detecting an event in the monitoring data by applying the determined rule.
According to the above-described embodiments of the present invention, a common tag value can be assigned between monitoring data and a rule related thereto. Accordingly, when specific monitoring data is obtained, a rule associated with the specific monitoring data can be automatically determined using a tag value, and an event can be automatically detected from the specific monitoring data by applying the determined rule. That is, through a pre-assigned tag value, the process of determining an association rule and detecting an event can be fully automated, and thus the efficiency of monitoring data analysis can be greatly improved.
In addition, a common tag value can be assigned between monitoring data and metadata related thereto. Accordingly, when specific monitoring data is obtained, metadata associated with the specific monitoring data can be automatically determined using a tag value, and the specific monitoring data can be automatically interpreted (e.g., parsing, decoding) using the determined metadata. Also, an event detection process can be performed automatically. That is, through a pre-assigned tag value, determination of associated metadata, data decoding, and an event detection process can be fully automated, thereby greatly improving the efficiency of monitoring data analysis.
In addition, various types of rules can be provided. The number of detectable events can be increased through the provided rules, and various types of events can be defined.
Effects according to the technical idea of the present invention are not limited to the effects mentioned above, and other effects not mentioned will be clearly understood by those skilled in the art from the description below.
Hereinafter, the present invention will be described in detail by explaining exemplary embodiments of the invention with reference to the attached drawings. The invention may, however, be embodied in many different forms and should not be construed as being limited to the embodiments set forth herein; rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the concept of the invention to those skilled in the art. The present invention is defined only by the categories of the claims.
Here, when reference numerals are applied to constituents illustrated in each drawing, it should be noted that like reference numerals indicate like elements throughout the specification. In addition, in the following description of the present invention, a detailed description of known functions and configurations incorporated herein will be omitted when it may make the subject matter of the present invention unclear.
Unless defined otherwise, all terms (including technical and scientific terms) used herein have the same meaning as commonly understood by one of ordinary skill in the art. It will be further understood that terms, such as those defined in commonly used dictionaries, should be interpreted as having a meaning that is consistent with their meaning in the context of the relevant art and the present invention, and will not be interpreted in an idealized or overly formal sense unless expressly so defined herein. The terms used in the present specification are used to explain a specific exemplary embodiment and not to limit the present inventive concept. Thus, the expression of singularity in the present specification includes the expression of plurality unless clearly specified otherwise in context.
In describing the components of the embodiments of the present invention, terms such as first, second, A, B, (a), and (b) may be used. These terms are used to distinguish each component from other components, and the nature or order of the components is not limited by these terms. It should be understood that when an element (e.g., first) is referred to as being “connected to” or “coupled to” another element (e.g., second), the element may be directly connected or coupled to the other element or intervening element (e.g., a third element) may be present.
It will be further understood that the terms “comprise” and/or “comprising”, when used in this specification, specify the presence of stated components, steps, operations, and/or elements, but do not preclude the presence or addition of one or more other components, steps, operations, and/or elements thereof.
Hereinafter, various embodiments of the present invention will be described in detail with reference to the accompanying drawings.
As shown in
For example, the computing devices may include notebooks, desktops, laptops, etc., but the present invention is not limited thereto. In addition, the computing devices may include all types of devices equipped with a computing function. An example of a computing device is shown in
The storage 140 may store various information and/or data related to operation of the detection device 100. The storage 140 according to embodiments may include a data storage 141, a metadata storage 142, a role storage 143, and a mapping table 144.
The data storage 141 may store data (hereinafter referred to as “monitoring data”) related to a monitoring object. For example, the data storage 141 may store monitoring data and a data identifier corresponding thereto. For example, the monitoring data may be sensing data measured through various sensors provided in a monitoring object, but the present invention is not limited thereto. In addition, the monitoring object may be set in various ways, such as a vehicle system and a process facility, without particular limitation.
Monitoring data may be designed in various structures and/or formats. For example, as shown in
In this case, the monitoring elements refer to elements measured to monitor a monitoring object. For example, when the monitoring object is a vehicle system, the monitoring elements may include speed, position, heading angle, direction indicator status (e.g., blinking status), front and rear images, and the like. However, the present invention is not limited thereto.
For reference, the term “elements” may be used interchangeably with attributes, features, fields, and the like in the art.
Next, the metadata storage 142 may store metadata associated with monitoring data. For example, the metadata storage 142 may store metadata and a metadata identifier corresponding to the metadata. Metadata may include various information for interpreting monitoring data (e.g., decoding, parsing, etc.). For example, the metadata may include the format of monitoring data (e.g., format of sensing data, message format, etc.) and communication methods (e.g., method of encoding/decoding communication data, format of communication data frame, etc.). However, the present invention is not limited thereto.
Next, the role storage 143 may store rules for detecting events in monitoring data. For example, the role storage 143 may store rules and a rule identifier corresponding to the rules. Various examples of events and rules will be described later with reference to Tables 1 to 10.
Next, the mapping table 144 may store monitoring data, metadata, and association (mapping) relationships with rules. For example, each entry of the mapping table 144 has a format of a key and a value, and related monitoring data, metadata, and rule identifiers may be stored in a value field.
In embodiments, a common tag value may be assigned to monitoring data, metadata, and rules related to each other. In addition, the assigned tag value may be used as a key value of the mapping table 144. In this case, the event detector 130 may easily obtain related metadata and rules by inquiring the mapping table 144 with the tag value of the monitoring data.
Next, the metadata register 110 may perform a registration process for metadata. One example of such a registration process is shown in
As shown in
In step S20, the metadata register 110 may store the requested metadata (M) and metadata identifier (M-ID) in the metadata storage 142. In some cases, the metadata register 110 may also store a tag value (TagVal) assigned to the metadata (M) in the metadata storage 142.
In step S30, the metadata register 110 may register an identifier (M-ID) of the requested metadata (M) and the assigned tag value (TagVal) in the mapping table 144. For example, the metadata register 110 may register an identifier (M-ID) of the requested metadata in an entry of the mapping table 144 having the tag value (TagVal) as a key value. When the entry does not exist, the metadata register 110 may create an entry having the tag value (TagVal) as a key value, and may register an identifier (M-ID) of metadata in the created entry.
For reference,
Next, the rule register 120 may perform a registration process for rules. The registration process may be performed as shown in
Next, the event detector 130 may obtain monitoring data and perform an event detection process on the obtained monitoring data. For example, the event detector 130 may receive data in real time (continuously) from a monitoring object. Alternatively, the event detector 130 may obtain monitoring data from a predetermined storage.
More specifically, in response to receiving new monitoring data, the event detector 130 may perform an event detection process on the new monitoring data. Alternatively, in response to registration of a new rule, the event detector 130 may perform an event detection process using the registered new rule. These event detection processes will be described in detail later with reference to
In addition, the event detector 130 may tag information about a detected event to monitoring data. For example, the information about the event may include the name and identifier of the event and the name and identifier of the rule, but the present invention is not limited thereto. For example, as shown in
Monitoring data for which the event detection process has been performed may be stored in the data storage 141. For example, monitoring data in which an event is detected and tagged event information may be stored in the data storage 141. In addition, monitoring data for which an event is not detected may also be stored in the data storage 141. These operations may be performed by the event detector 130 or other modules.
In addition, at least a part of each component (e.g., 110) shown in
Hereinafter, detailed operation of an event detector 130 according to embodiments of the present invention will be further described with reference to
As shown in
In step S120, the event detector 130 may search metadata and rules associated with the new monitoring data from the mapping table 144 using the tag value (TagVal). As a result, the event detector 130 may obtain an identifier (M-ID) of metadata and an identifier (R-ID) of rules (rule set), which are associated with the new monitoring data.
In step S130, the event detector 130 may obtain metadata associated with the new monitoring data from the metadata storage 142 using the obtained metadata identifier (M-ID).
In step S140, the event detector 130 may obtain rules associated with the new monitoring data from the role storage 143 using the obtained rule identifier (R-ID).
For reference,
In step S150, the event detector 130 may detect an event from the new monitoring data. For example, the event detector 130 may interpret (e.g., parsing, decoding) the new monitoring data using related metadata, and may detect an event by applying a related rule to the interpreted monitoring data. When a condition specified in the rule is satisfied, the event detector 130 may determine that an event has occurred.
The types and forms of rules and examples of events will be described in detail later with reference to Tables 1 to 10.
In addition, although not shown in
As shown in
In step S220, the event detector 130 may search monitoring data and metadata associated with the new rule from the mapping table 144 using the tag value (TagVal). As a result, the event detector 130 may obtain an identifier (D-ID) of monitoring data and an identifier (M-ID) of metadata, which are associated with the new rule.
In step S230, the event detector 130 may obtain monitoring data related to the new rule (that is, to which the new rule is applied) from the data storage 141 using the obtained data identifier (D-ID).
In step S240, the event detector 130 may obtain metadata associated with the new rule from the metadata storage 142 using the obtained metadata identifier (M-ID).
For reference,
In step S250, the event detector 130 may detect an event from the obtained monitoring data. For example, the event detector 130 may interpret (e.g., parsing, decoding) the obtained monitoring data using related metadata, and may detect an event by applying a new rule to the interpreted monitoring data. When a condition specified in the new rule is satisfied, the event detector 130 may determine that an event has occurred.
In addition, although not shown in
So far, detailed operations of the event detector 130 according to embodiments of the present invention have been described with reference to
As shown in
As described above, the detection device 100 may obtain associated metadata and rules (e.g., R1) by using tag values assigned to monitoring data (e.g., D1, D2, D3), and may detect an event from monitoring data (e.g., D1) by applying the associated metadata and rules (e.g., R1). In addition, the detection device 100 may tag information (e.g., rule identifier R1) about the detected event to monitoring data (e.g., D1), and may store the monitoring data (e.g., D1) and the tagged event information (e.g., R1) in the data storage 141.
For example, when a first rule for detecting a right turn event and a second rule for detecting an emergency braking event are registered, and a common tag value is given to the monitoring data of the vehicle system 10, the first rule, and the second rule, the detection device 100 may detect an emergency braking event (situation) and a right turn event (situation) from monitoring data received from the vehicle system 10 and may tag event information. In addition, when an emergency braking event and a right turn event are simultaneously detected, the detection device 100 may recognize an emergency braking situation while performing a right turn. As the event detection and tagging process are repeated in the monitoring data of the vehicle system 10, the driving record of the vehicle system 10 may be efficiently analyzed.
So far, the configuration and operation of the detection device 100 according to embodiments of the present invention have been described with reference to
In addition, a common tag value may be assigned between monitoring data and metadata related thereto. Accordingly, when specific monitoring data is obtained, metadata associated with the specific monitoring data may be automatically determined using a tag value, and the specific monitoring data may be automatically decoded using the determined metadata. Also, an event detection process may be performed automatically. That is, through a pre-assigned tag value, determination of associated metadata, data decoding, and an event detection process may be fully automated, thereby greatly improving the efficiency of monitoring data analysis.
Hereinafter, a method of detecting events according to embodiments of the present invention will be described with reference to
Each step of the method to be described below may be implemented using one or more instructions executed by a processor of a computing device. For convenience of understanding, the method of the present invention will be described on the assumption that the method is performed by the detection device 100 having the configuration illustrated in
As shown in
In step S320, it may be determined whether new monitoring data is received. When new monitoring data is received, step S330 may be performed. In addition to the new monitoring data, a data identifier and a tag value assigned to data may also be received.
In step S330, related metadata and rules may be obtained using the tag value of monitoring data. For example, the detection device 100 may search the identifier of the related metadata and the identifier of the rules in the mapping table 144 using the tag value of the monitoring data, and may use the search result to obtain related metadata and rules in the metadata storage 142 and the role storage 143.
In step S340, an event may be detected using the related metadata and rules. For example, the detection device 100 may interpret new monitoring data using the related metadata, and may detect an event by applying related rules to the interpreted monitoring data.
In step S350, when an event is detected, new monitoring data may be tagged with information about the event. The new monitoring data and the tagged event information may be stored in the data storage 141.
For reference, step S310 may be performed by the metadata register 110 and the rule register 120, and steps S320 to S350 may be performed by the event detector 130.
In addition, according to embodiments of the present invention, even when a new rule is registered, the event detection process may be performed. For example, in response to registration of a new rule, the detection device 100 may obtain a new rule and related monitoring data from the data storage 141 and may detect an event by applying the new rule to the obtained monitoring data. For more detailed description of this embodiment, refer to the description of
So far, the method of detecting events according to embodiments of the present invention has been described with reference to
The first type of rule is the most basic rule and may be defined to include the items listed in Table 1 below. In addition, some items may be omitted or added when necessary. For example, the first type of rule may further include action items performed when a condition is satisfied, tagging condition items (e.g., items used when event occurrence conditions and tagging conditions are set separately), and items for setting information to be tagged.
As shown in Table 1, a function that performs predetermined operation based on the values of one or more monitoring elements may be set in the function item. Other items are described with reference to Table 1. For reference, the name of a rule may be used as the identifier of the rule, or a separate identifier may be assigned to each rule. In addition, when the condition of a rule is satisfied, monitoring data (e.g., timestamp of monitoring data) may be tagged with information about an event. For example, the timestamp of corresponding data may be tagged with the name of the first rule. Various events may be detected through the first type of rule. For example, a speed exceeding event (e.g., a situation in which a driving speed exceeds a specified value) may be detected through the first type of rule. As a more specific example, as shown in
Next, the second type of rule is a rule defined based on history. For example, the second type of rule may be defined to include the items listed in Table 2 below. In addition, some items may be omitted or added when necessary. Description of each item is shown in Table 2 below.
Various events may be detected through the second type of rule. For example, as shown in
Referring to Table 3, when the order item is set to “T (True)”, when the output value of the k-th function (k being a natural number greater than or equal to 1) satisfies the k-th condition and the output value of the (k+1)-th function satisfies the (k+1)-th condition, information about an event may be tagged. Conversely, when the order item is set to “F (False)”, when the output value of the k-th function satisfies the k-th condition and the output value of the x-th function satisfies the x-th condition regardless of order, information about an event may be tagged. Various events may be detected through the third type of rule. For example, as shown in
Various events may be detected through the fourth type of rule. For example, as shown in
Referring to Table 5, when at least one of three conditions (e.g., upper bound condition, lower bound condition, coefficient of determination condition) specified in the fifth type of rule is satisfied, information about an event may be tagged. Description of each item is shown in Table 5 below. Various events may be detected through the fifth type of rule. For example, through the fifth type of rule, an emergency braking event (e.g., a situation where the slope of driving speed is less than or equal to a lower bound) or a rapid acceleration event (e.g., a situation where the slope of driving speed is greater than or equal to an upper bound) may be detected. A more specific example is described with reference to
Referring to Table 6, when at least one of two conditions (e.g., upper bound condition, lower bound condition) specified in the sixth type of rule is satisfied, information about an event may be tagged. Description of each item is shown in Table 6 below. For reference, the lateral heading angle of a moving object may be calculated from GPS coordinate values. Various events may be detected through the sixth type of rule. For example, through the sixth type of rule, events such as left turn, right turn, and U-turn (e.g., when the lateral heading angle is greater than the upper bound) may be detected. As a more specific example, as shown in
Referring to Table 7, when at least one of two conditions (e.g., upper bound condition, lower bound condition) specified in the seventh type of rule is satisfied, information about an event may be tagged. Description of each item is shown in Table 7 below. For reference, the longitudinal heading angle of a moving object may be calculated from altitude values. Next, the eighth type of rule is a rule based on the number of occurrences of an event of interest, and may be defined to include the items listed in Table 8 below. In addition, some items may be omitted or added when necessary.
Referring to Table 8, when the count condition specified in the eighth type of rule is satisfied, information about an event may be tagged. Description of each item is shown in Table 8 below. Various events may be detected through the eighth type of rule. For example, through the eighth type of rule, an event in which emergency braking is repeated a certain number of times or more may be detected. As a more specific example, as shown in
Various events may be detected through the Ninth type of rule. For example, through the ninth type of rule, an event in which a speed is maintained within a specified range for a predetermined time may be detected. As a more specific example, as shown in
Referring to Table 10, when the condition of the tenth type of rule is satisfied (i.e., when a plurality of events of interest set within the maximum allowable delay occur), information about an event may be tagged. Description of each item is shown in Table 10 below. Various events may be detected through the tenth type of rule. For example, an event of emergency braking while turning right may be detected through the tenth type of rule. As a more specific example, as shown in
Hereinafter, an exemplary computing device 200 capable of implementing the detection device 100 according to embodiments of the present invention will be described with reference to
As shown in
The processors 210 may control overall operations of each component of the computing device 200. The processors 210 may include Central Processing Unit (CPU), Micro Processor Unit (MPU), Micro Controller Unit (MCU), Graphic Processing Unit (GPU), or any form of processor well known in the art of the present invention. In addition, the processors 210 may perform operations on at least one application or program for executing operations/methods according to embodiments of the present invention. The computing device 200 may include one or more processors.
Next, the memory 230 may store various data, commands, and/or information. The memory 230 may load one or more computer programs 291 from the storage 290 to execute operations/methods according to embodiments of the present invention. When the computer programs 291 are loaded, the module (e.g., 110) as illustrated in
Next, the bus 250 may provide a communication function between components of the computing device 200. The bus 250 may be implemented with various types of buses such as an address bus, a data bus, and a control bus.
Next, the communication interface 270 may support wired/wireless Internet communication of the computing device 200. In addition, the communication interface 270 may support various communication methods other than Internet communication. Thus, the communication interface 270 may include a communication module well known in the art of the present invention.
Next, the storage 290 may non-temporarily store one or more programs 291. The storage 290 may include Read Only Memory (ROM), Erasable Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), non-volatile memory such as flash memory, a hard disk, a removable disk, or any form of computer-readable recording medium well known in the art to which the present invention pertains.
Next, when the computer programs 291 are loaded into the memory 230, the computer programs 291 may include one or more instructions that cause the processors 210 to perform operations/methods according to embodiments of the present invention. That is, the processors 210 may perform operations/methods according to embodiments of the present invention by executing the instructions.
For example, the computer programs 291 may include instructions for performing an operation of registering rules for event detection and a tag value assigned to the rules, an operation of obtaining monitoring data and a tag value assigned to the monitoring data, an operation of determining a rule related to the monitoring data among pre-registered rules using the obtained tag value, and an operation of detecting events in monitoring data by applying the determined rule. In this case, the detection device 100 according to embodiments of the present invention may be implemented through the computing device 200.
So far, with reference to
The technical idea of the present invention described with reference to
In the above description, even when all components constituting an embodiment of the present invention are described as being combined or integrally operated, the technical idea of the present invention is not necessarily limited to the embodiment. That is, within the scope of the present invention, one or more of the components may be selectively operated in combination.
Although operations are shown in a specific order in the drawings, it should not be understood that the operations must be performed in the specific order or in a sequential order, or that all operations must be performed to obtain a desired result. In certain circumstances, multitasking and parallel processing may be advantageous. Furthermore, it should be understood that separation of the various components in the above-described embodiments is not necessarily required, and that the described program components and systems may generally be integrated into a single software product or packaged into multiple software products.
Embodiments of the present invention have been described with reference to the accompanying drawings. However, those skilled in the art will understand that the present invention can be easily changed or modified into other specified forms without change or modification of the technical spirit or essential characteristics of the present invention. Therefore, it should be understood that the aforementioned examples are only provided by way of example and not provided to limit the present invention. The scope of protection of the present invention should be defined by the following claims, and all technical ideas within the scope of protection should be construed as being included in the scope of the present invention.
Number | Date | Country | Kind |
---|---|---|---|
10-2021-0014565 | Feb 2021 | KR | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/KR2021/017131 | 11/22/2021 | WO |