FIELDThe present invention relates generally to security systems and home automation systems. More particularly, the present invention relates to systems and methods for training devices in a security system or a home automation system to recognize preprogrammed or user customized sound patterns.
BACKGROUNDKnown security systems and home automation systems can recognize ambient sound patterns that match preprogrammed sound patterns identified during manufacture or installation of devices in the security systems or the home automation systems. However, such known security systems and home automation systems cannot be trained to recognize user customized sound patterns that differ from the preprogrammed sound patterns. Additionally, the accuracy of audio classification models programmed during the manufacture or the installation of known security systems and home automation systems can be inaccurate because such known systems do not account for the variability of noise characteristics of deployed environments.
In view of the above, there is a need and an opportunity for improved systems and methods.
BRIEF DESCRIPTION OF THE DRAWINGSFIG. 1 is a block diagram of a system in accordance with disclosed embodiments;
FIG. 2 is a block diagram of a control panel in accordance with disclosed embodiments; and
FIG. 3 is a flow diagram of a method in accordance with disclosed embodiments.
DETAILED DESCRIPTIONWhile this invention is susceptible of an embodiment in many different forms, specific embodiments thereof will be described herein in detail with the understanding that the present disclosure is to be considered as an exemplification of the principles of the invention. It is not intended to limit the invention to the specific illustrated embodiments.
Embodiments disclosed herein can include systems and methods for training devices in a security system or a home automation system to recognize sound patterns. For example, such security systems or home automation systems can include a control panel or other similar device that can operate in a learning mode, during which the control panel can learn the sound patterns, and in an active mode, during which the control panel can identify the sound patterns and be trained for identifying the sound patterns at future times.
When the control panel is operating in the learning mode, the control panel can receive initial ambient audio from a region in which the devices in the security system or the home automation system are deployed. Then, the control panel can save the initial ambient audio as an audio pattern in a memory device of the control panel. In some embodiments, the initial ambient audio can include customized audio relevant to a user of the security system or the home automation system that is different than preprogrammed or preconfigured audio saved in the memory device during manufacture or installation of the control panel. For example, in some embodiments, the initial ambient audio can include live audio of the user's dog barking or the user's baby crying. Additionally, or alternatively, in some embodiments, the initial ambient audio can include, but is not limited to audio of a drill being used, a siren wailing, a phone ringing, a vacuum running, the user coughing, a door being operated, water running, knocking on a door, a microwave running, an electric shaver running, teeth brushing, a blender running, a dishwasher running, a doorbell ringing, a toilet flushing, a hairdryer running, the user laughing, the user snoring, the user typing, the user hammering, a car honking, a vehicle running, a saw being used, a cat meowing, an alarm clock activating, and kitchen items being used.
In some embodiments, the control panel can receive user input with the initial ambient audio that describes the initial ambient audio. In these embodiments, the control panel can use such a description of the initial ambient audio to identify user actions or non-actions that are consistent with a presence of the initial ambient audio in the region and/or user actions or non-actions that are inconsistent with the presence of the initial ambient audio in the region. Additionally or alternatively, in some embodiments, the control panel can receive user input with the initial ambient audio that directly identifies the user actions or non-actions that are consistent with the presence of the initial ambient audio in the region and/or the user actions or non-actions that are inconsistent with the presence of the initial ambient audio in the region.
In any embodiment, after operating in the learning mode, the control panel can transition to the active mode, and when operating in the active mode, the control panel can receive subsequent ambient audio from the region. Then, the control panel can use an audio classification model (e.g. audio processing rules) to make an initial determination as to whether the subsequent ambient audio matches or is otherwise consistent with the audio pattern, such as whether the subsequent ambient audio matches or is otherwise consistent with the user's dog barking or the user's baby crying.
In some embodiments, after initially determining whether the subsequent ambient audio matches or is otherwise consistent with the audio pattern, the control panel can determine whether the initial determination is correct. For example, in some embodiments, the control panel can identify and evaluate implicit and/or explicit feedback to determine whether the initial determination is correct.
In some embodiments, when the control panel determines that the initial determination is correct, the control panel can initiate one or more actions, such as activating a camera for monitoring the region or activating an alarm in the region, or can transmit one or more signals to initiate the same. In some embodiments, a type of the one or more other actions initiated by the control panel can be dependent on a severity and a nature of a type of event associated with the audio pattern.
However, in some embodiments, when the control panel determines that the initial determination is incorrect, the control panel can modify or update the audio classification model for accuracy in detecting future consistency with the audio pattern. For example, when the control panel initially determines that the subsequent ambient audio matches or is otherwise consistent with the audio pattern, but subsequently determines that the initial determination is incorrect, that is, the initial determination was a false positive, the control panel can modify or update the audio classification model for the accuracy in detecting the future consistency with the audio pattern so that the audio classification model as modified or updated would identify the subsequent ambient audio as being inconsistent with the audio pattern. Similarly, in some embodiments, when the control panel initially determines that the subsequent ambient audio fails to match or is otherwise inconsistent with the audio pattern, but subsequently determines that the initial determination is incorrect, that is, the initial determination was a false negative, the control panel can modify or update the audio classification model for the accuracy in detecting the future consistency with the audio pattern so that the audio classification model as modified or updated would identify the subsequent ambient audio as being consistent with the audio pattern at future times.
In some embodiments, a format and a composition of the audio pattern can be dependent on a type of the audio classification model being used to make the initial determination as to whether the subsequent ambient audio matches or is otherwise consistent with the audio pattern. For example, in some embodiments, the audio classification model can include one or more type of a supervised machine learning model, such as a Gauss Naïve Bayes classifier, a support vector machine classifier, and a Fischer's linear discriminant analysis.
When the Gauss Naïve Bayes classifier type model is used to make the initial determination as to whether the subsequent ambient audio matches or is otherwise consistent with the audio pattern, the audio pattern can include a derived mean and variance of audio features of the initial ambient audio. For example, the audio features can include descriptive statistics of a window of audio data, a functional approximation of the window of audio data, or any characterization of the window of audio data, and in some embodiments, a size of the window of audio data can be dependent on a length of the initial ambient audio and can be, for example, 1 sec, 10 sec, or 1 min. During the active mode, a probability the audio features of the subsequent ambient audio belonging within a normal distribution of the derived mean and variance of the audio features of the initial ambient audio can be calculated. When the probability is larger than a preset threshold, for example, 75%, the subsequent ambient audio can be identified as matching or being otherwise consistent with the audio pattern.
However, when the support vector machine classifier type model is used to make the initial determination as to whether the subsequent ambient audio matches or is otherwise consistent with the audio pattern, the audio pattern can include a hyperplane/kernel that can differentiate the audio features of the initial ambient audio into a unique event as compared with the audio features of background noise and other custom or preconfigured events. During the active mode, the audio features of the subsequent ambient audio can be evaluated with the hyperplane/kernel in an attempt to assign the audio features of the subsequent ambient audio to the unique event. When the audio features of the subsequent ambient audio can be assigned to the unique event, the subsequent ambient audio can be identified as matching or being otherwise consistent with the audio pattern.
However, when the Fischer's linear discriminant analysis model is used to make the initial determination as to whether the subsequent ambient audio matches or is otherwise consistent with the audio pattern, the audio pattern can include a linear hyperplane that that can differentiate the audio features of the initial ambient audio into a unique event as compared with the audio features of background noise and other custom or preconfigured events. For example, the linear hyperplane can compresses clusters of the audio features of the initial ambient audio that correspond to the unique event and locate those clusters far apart from the clusters of the audio features of the background noise and other custom or preconfigured events to enable best possible discrimination among all events. During the active mode, the audio features of the subsequent ambient audio can be projected on to the liner hyperplane in an attempt to assign the audio features of the subsequent ambient audio to the unique event. When the audio features of the subsequent ambient audio can be assigned to the unique event, the subsequent ambient audio can be identified as matching or being otherwise consistent with the audio pattern.
As disclosed and described herein, the control panel can use the explicit feedback to determine whether the initial determination is correct. For example, in some embodiments, when the control panel initially determines that the subsequent ambient audio matches or is otherwise consistent with the audio pattern, the control panel can transmit a notification message indicative of the initial determination to a notification device.
Then, responsive to the notification message, the control panel can receive the explicit feedback from the user directly or via the notification device, and the explicit feedback can explicitly confirm or deny that the subsequent ambient audio matches or is otherwise consistent with the audio pattern. For example, the explicit feedback can include user input confirming or denying that the user's dog is barking or the user's baby is crying. In some embodiments, when the explicit feedback denies that the subsequent ambient audio matches or is otherwise consistent with the audio pattern, that is, identifies a false positive, the control panel can determine that the initial determination is incorrect and can modify or update the audio classification model as described herein.
Similarly, when the control panel initially determines that the subsequent ambient audio fails to match or is otherwise inconsistent with the audio pattern, but receives the explicit feedback denying that the subsequent ambient audio fails to match or is otherwise inconsistent with the audio pattern, that is, identifies a false negative, the control panel can determine that the initial determination is incorrect and can modify or update the audio classification model as described herein. In this regard, the control panel can receive the explicit feedback even without transmitting the notification message to the notification device.
As further disclosed and described herein, the control panel can use the implicit feedback to determine whether the initial determination is correct. For example, the implicit feedback can include detecting an occurrence or non-occurrence of one or more of the user actions or non-actions that would be expected when the user's dog is barking or the user's baby is crying, such as opening a door to or movement towards a room in which the dog or the baby is located.
In some embodiments, when the control panel initially determines that the subsequent ambient audio matches or is otherwise consistent with the audio pattern, but subsequently detects one or more of the user actions or non-actions that are inconsistent with the presence of the initial ambient audio in the region, that is, identifies a false positive, the control panel can determine that the initial determination is incorrect and can modify or update the audio classification model as described herein. Similarly, when the control panel initially determines that the subsequent ambient audio fails to match or is otherwise inconsistent with the audio pattern, but subsequently detects one or more of the user actions or non-actions that are consistent with the presence of the initial ambient audio in the region, that is, identifies a false negative, the control panel can determine that the initial determination is incorrect and can modify or update the audio classification model as described herein.
FIG. 1 is a block diagram of asystem20 in accordance with disclosed embodiments. As seen inFIG. 1, thesystem20 can include acontrol panel22, anotification device24, and a plurality of connecteddevices26, such as sensors, microphones, cameras, and the like, deployed in a region R. As further seen inFIG. 1, thenotification device24 and the plurality of connecteddevices26 can communicate with thecontrol panel22 via known wired and/or wireless mediums.
FIG. 2 is a block diagram of thecontrol panel22 in accordance with disclosed embodiments. As seen inFIG. 2, thecontrol panel22 can include aprogrammable processor28, amemory device30, amicrophone32, and acommunication interface34.
FIG. 3 is a flow diagram of amethod100 in accordance with disclosed embodiments. As seen inFIG. 3, themethod100 can include theprogrammable processor28 receiving initial ambient audio from the region R via themicrophone32 while in a learning mode, as in102, and saving the initial ambient audio as an audio pattern in thememory device30, as in104. Then, themethod100 can include theprogrammable processor28 transitioning to an active mode and receiving subsequent ambient audio from the region R via themicrophone32 while in the active mode, as in106.
Responsive to receiving the subsequent ambient audio as in106, themethod100 can include theprogrammable processor28 using audio classification model stored in thememory device30 to make an initial determination as to whether the subsequent ambient audio matches or is otherwise consistent with the audio pattern, as in108, identifying implicit and/or explicit feedback, and determining whether the implicit and/or explicit feedback indicates whether the initial determination made as in108 is correct, as in110. In some embodiments, theprogrammable processor28 can receive the explicit feedback from thecommunication interface34, and thecommunication interface34 can receive the explicit feedback directly from a user or from thenotification device24 receiving the explicit feedback directly from the user. Additionally or alternatively, in some embodiments, theprogrammable processor28 can receive the implicit feedback from thecommunication interface34, and thecommunication interface34 can receive the implicit feedback from one or more of the plurality ofconnected devices26. For example, the implicit feedback can include information about the region R or activity therein detected by the one or more of the plurality ofconnected devices26.
When theprogrammable processor28 determines that initial determination made as in108 is correct as in110, themethod100 can include theprogrammable processor28 taking no action, as in112. However, when theprogrammable processor28 determines that the initial determination made as in108 is incorrect as in110, themethod100 can include theprogrammable processor28 modifying or updating the audio classification model for accuracy in detecting future consistency with the audio pattern, as in114.
Although a few embodiments have been described in detail above, other modifications are possible. For example, the logic flows described above do not require the particular order described or sequential order to achieve desirable results. Other steps may be provided, steps may be eliminated from the described flows, and other components may be added to or removed from the described systems. Other embodiments may be within the scope of the invention.
From the foregoing, it will be observed that numerous variations and modifications may be effected without departing from the spirit and scope of the invention. It is to be understood that no limitation with respect to the specific system or method described herein is intended or should be inferred. It is, of course, intended to cover all such modifications as fall within the spirit and scope of the invention.