This application generally relates to security systems, specifically security systems which use cameras and other sensors to monitor activity.
Cameras are widely used to monitor premises for security reasons. However, camera footage captured by a camera but not viewed by a user cannot be used by the user to prevent harmful activities. As an example, a homeowner cannot practically constantly monitor their security camera feeds to identify and prevent package theft.
The accompanying drawings constitute a part of this specification, illustrate various embodiments, and, together with the specification, explain the subject matter of the disclosure.
Reference will now be made to the embodiments illustrated in the drawings, and specific language will be used here to describe the same. It will nevertheless be understood that no limitation of the scope of the disclosure is thereby intended. Alterations and further modifications of the features illustrated here, and additional applications of the principles as illustrated here, which would occur to a person skilled in the relevant art and having possession of this disclosure, are to be considered within the scope of the disclosure.
Disclosed herein are systems and methods for identifying and detecting package theft. Various sensors may be used as input for a machine-learning model which identifies an object in an area. In an example, a camera provides video for the machine-learning model to identify a packages on a porch and items in a yard. The machine-learning model may identify movement of the object by a person, such as a package thief. The machine-learning model may, based on the identified movement of the object by the person, execute a deterrence action. In an example, the machine-learning model causes the camera to emit light and/or sound to deter a person from stealing a package. Other deterrent actions may also be taken.
The environment 100 may include a first camera 110a and a second camera 110b, referred to herein collectively as cameras 110. The cameras 110 may be attached to the building 130. The cameras 110 may communicate with each other over a local network 105. The cameras 110 may communicate with a server 120 over a network 102. The server 120 may be local, remote, or distributed relative to the cameras 110 and/or the environment 100. The local network 105 and/or the network 102, in some implementations, may each include a digital communication network that transmits digital communications. The local network 105 and/or the network 102 may each include a wireless network, such as a wireless cellular network, a local wireless network, such as a Wi-Fi network, a Bluetooth® network, a near-field communication (“NFC”) network, an ad hoc network, and/or the like. The local network 105 and/or the network 102 may each include a wide area network (“WAN”), a storage area network (“SAN”), a local area network (“LAN”) (e.g., a home network), an optical fiber network, the internet, or other digital communication network. The local network 105 and/or the network 102 may each include two or more networks. The network 102 may include one or more servers, routers, switches, and/or other networking equipment. The local network 105 and/or the network 102 may also include one or more computer readable storage media, such as a hard disk drive, an optical drive, non-volatile memory, RAM, or the like.
The local network 105 and/or the network 102 may be a cellular network, such as a mobile telephone network. The local network 105 and/or the network 102 may employ a Wi-Fi network based on any one of the Institute of Electrical and Electronics Engineers (“IEEE”) 802.11 standards. The local network 105 and/or the network 102 may employ Bluetooth® connectivity and may include one or more Bluetooth connections. The local network 105 and/or the network 102 may employ Radio Frequency Identification (“RFID”) communications, including RFID standards established by the International Organization for Standardization (“ISO”), the International Electrotechnical Commission (“IEC”), the American Society for Testing and Materials® (ASTM®), the DASH7® Alliance, and/or EPCGlobal™.
In some implementations, the local network 105 and/or the network 102 may employ ZigBee® connectivity based on the IEEE 802 standard and may include one or more ZigBee connections. The local network 105 and/or the network 102 may include a ZigBee® bridge. In some implementations, the local network 105 and/or the network 102 employs Z-Wave® connectivity as designed by Sigma Designs® and may include one or more Z-Wave connections. The local network 105 and/or the network 102 may employ an ANT® and/or ANT+® connectivity as defined by Dynastream® Innovations Inc. of Cochrane, Canada and may include one or more ANT connections and/or ANT+ connections.
The first camera 110a may include an image sensor 115a, a processor 111a, a memory 112a, a radar sensor 114a, a speaker 116a, and a microphone 118a. The memory 112a may include computer-readable, non-transitory instructions which, when executed by the processor 111a, cause the processor 111a to perform methods and operations discussed herein. The processor 111a may include one or more processors. The second camera 110b may include an image sensor 115b, a processor 111b, a memory 112b, a radar sensor 114b, a speaker 116b, and a microphone 118b. The memory 112b may include computer-readable, non-transitory instructions which, when executed by the processor 111b, cause the processor to perform methods and operations discussed herein. The processor 111a may include one or more processors.
The memory 112a may include an AI model 113a. The AI model 113a may be applied to or otherwise process data from the camera 110a, the radar sensor 114a, and/or the microphone 118a to detect and/or identify one or more objects (e.g., people, animals, vehicles, shipping packages or other deliveries, or the like), one or more events (e.g., arrivals, departures, weather conditions, crimes, property damage, or the like), and/or other conditions. For example, the cameras 110 may determine a likelihood that an object 170, such as a package, vehicle, person, or animal, is within an area (e.g., a geographic area, a property, a room, a field of view of the first camera 110a, a field of view of the second camera 110b, a field of view of another sensor, or the like) based on data from the first camera 110a, the second camera 110b, and/or other sensors.
The memory 112b of the second camera 110b may include an AI model 113b. The AI model 113b may be similar to the AI model 113a. In some implementations, the AI model 113a and the AI model 113b have the same parameters. In some implementations, the AI model 113a and the AI model 113b are trained together using data from the cameras 110. In some implementations, the AI model 113a and the AI model 113b are initially the same, but are independently trained by the first camera 110a and the second camera 110b, respectively. For example, the first camera 110a may be focused on a porch and the second camera 110b may be focused on a driveway, causing data collected by the first camera 110a and the second camera 110b to be different, leading to different training inputs for the first AI model 113a and the second AI model 113b. In some implementations, the AI models 113 are trained using data from the server 120. In an example, the AI models 113 are trained using data collected from a plurality of cameras associated with a plurality of buildings. The cameras 110 may share data with the server 120 for training the AI models 113 and/or a plurality of other AI models. The AI models 113 may be trained using both data from the server 120 and data from their respective cameras. The AI 113 models may be trained by applying the AI models 113 on the training data. The AI models 113 may be machine-learning models including neural networks, state-vector machines (SVMs), recurrent neural networks, and other types of machine-learning models.
The cameras 110, in some implementations, may determine a likelihood that the object 170 (e.g., a package) is within an area (e.g., a portion of a site or of the environment 100) based at least in part on audio data from microphones 118, using sound analytics and/or the AI models 113. In some implementations, the cameras 110 may determine a likelihood that the object 170 is within an area based at least in part on image data using image processing, image detection, and/or the AI models 113. The cameras 110 may determine a likelihood that an object is within an area based at least in part on depth data from the radar sensors 114, a direct or indirect time of flight sensor, an infrared sensor, a structured light sensor, or other sensor. For example, the cameras 110 may determine a location for an object, a speed of an object, a proximity of an object to another object and/or location, an interaction of an object (e.g., touching and/or approaching another object or location, touching a car/automobile or other vehicle, touching or opening a mailbox, leaving a package, leaving a car door open, leaving a car running, touching a package, picking up a package, or the like), and/or another determination based at least in part on depth data from the radar sensors 114.
In some embodiments, the area may be defined as a complete field of view of the corresponding camera 110. In other embodiments, the area may be pre-defined as a subsection of the field of view of the corresponding camera 110. The pre-definition of the area may be set as a default. In some embodiments, the area may be selected and/or set. For example, a user may define the area within the field of view of the camera. The user may define the area by dragging boundaries or points within a visual representation of the field of view of the cameras 110, or other sensors. In another embodiments, the user may select areas by clicking, tapping, or otherwise selecting the area generally resulting in an intelligent analysis and selection of the area. In some embodiments, the user may select from one or more pre-determined areas suggested to the user. The user may select and apply or modify a pre-determined area.
In other embodiments, the area may be determined without input from a user. For example, the AI model 113 may analyze the field of view of one or more of the cameras 110 and identify one or more portions of the field of view to designate as one or more areas to monitor. In some embodiments, the AI model 113 may identify the area based on data gathered over time, by an analysis of the field of view of the one or more cameras 110 and/or based on training data corresponding to environments having correlated aspects or characteristics for setting the area.
In some embodiments, the cameras 110 may provide overlapping fields of view. In some example, one or more areas may be defined within an overlapping portion of the fields of view of the cameras 110. One or more other areas may be defined which correspond to a field of view of one of the cameras 110 and not a field of view of another of the cameras 110. In some embodiments, the cameras 110 may generate a composite view of an area corresponding to two or more of the cameras 110. The area may be defined using a field of view of one of the cameras 110 and transposed to at least one other of the cameras 110 containing at least a portion of the defined area.
The environment 100 may include a user interface 119. The user interface 119 may be part of a device, such as a mobile phone, a tablet, a laptop, wall panel, or other device. The user interface 119 may connect to the cameras 110 via the network 102 or the local network 105. The user interface 119 may allow a user to access sensor data of the cameras 110. In an example, the user interface 119 may allow the user to view a field of view of the image sensors 115 and hear audio data from the microphones 118. In an example, the user interface may allow the user to view a representation, such as a point cloud, of radar data from the radar sensors 114.
The user interface 119 may allow a user to provide input to the cameras 110. In an example, the user interface 119 may allow a user to speak or otherwise provide sounds using the speakers 116. One or more sounds may be selected from one or more stored sounds (e.g., stored on memory 112, the server 120, or at another resource or asset. In some embodiments, the user may speak and have the spoken sound communicated directly to one or more speakers 116 associated with one or more of the cameras 110 or separate from the one or more cameras 110.
In some implementations, the cameras 110 may receive additional data from one or more additional sensors, such as a door sensor 135 of the door 132, an electronic lock 133 of the door 132, a doorbell camera 134, and/or a window sensor 139 of the window 136. The door sensor 135, the electronic lock 133, the doorbell camera 134 and/or the window sensor 139 may be connected to the local network 105 and/or the network 102. The cameras 110 may receive the additional data from the door sensor 135, the electronic lock 133, the doorbell camera 134 and/or the window sensor 139 from the server 120.
In some implementations, the cameras 110 may determine separate and/or independent likelihoods that an object is within an area based on data from different sensors (e.g., processing data separately, using separate machine-learning and/or other artificial intelligence, using separate metrics, or the like). The cameras 110 may combine data, likelihoods, determinations, or the like from multiple sensors such as image sensors 115, the radar sensors 114, and/or the microphones 118 into a single determination of whether an object is within an area (e.g., in order to perform an action relative to the object 170 within the area). For example, the cameras 110 and/or each of the cameras 110 may use a voting algorithm or implement a weighting protocol to determine that the object 170 is present within an area in response to a majority of sensors of the cameras and/or of each of the cameras determining that the object 170 is present within the area. In some implementations, the cameras 110 may determine that the object 170 is present within an area in response to one, some, or all sensors determining that the object 170 is present within the area (e.g., a more conservative and/or less aggressive determination than a voting algorithm). For example, an object may be confirmed if more sensors agree than disagree or if two of more sensors agree. In some implementations, the cameras 110 may determine that the object 170 is present within an area in response to at least one sensor determining that the object 170 is present within the area (e.g., a less conservative and/or more aggressive determination than a voting algorithm).
In some implementations, the cameras 110 may include gyroscopes and/or accelerometers to determine an orientation of the cameras 110. The cameras 110 may take into account their orientation and combine their orientation with other data. In an example, a camera may determine that it is pointed straight down, adjusting its interpretation of image data and radar data accordingly. In this way, an accuracy of the determinations made by the cameras 110 and their AI models 113 may be improved, as views of objects and persons may be different from different angles.
The cameras 110, in some implementations, may combine confidence metrics indicating likelihoods that the object 170 is within an area from multiple sensors of the cameras 110 and/or additional sensors (e.g., averaging confidence metrics, selecting a median confidence metric, or the like) in order to determine whether the combination indicates a presence of the object 170 within the area. In some embodiments, the cameras 110 are configured to correlate and/or analyze data from multiple sensors together. For example, the cameras 110 may detect a person or other object in a specific area and/or field of view of the image sensors 115 and may confirm a presence of the person or other object using data from additional sensors of the cameras 110 such as the radar sensors 114 and/or the microphones 118, confirming a sound made by the person or other object, a distance and/or speed of the person or other object, or the like. The cameras 110, in some implementations, may detect the object 170 with one sensor and identify and/or confirm an identity of the object 170 using a different sensor. In an example, the cameras detect the object 170 using the image sensor 115a of the first camera 110a and verifies the object 170 using the radar sensor 114b of the second camera 110b. In this manner, in some implementations, the cameras 110 may detect and/or identify the object 170 more accurately using multiple sensors than may be possible using data from a single sensor.
The cameras 110, in some implementations, in response to determining that a combination of data and/or determinations from the multiple sensors indicates a presence of the object 170 within an area, may perform initiate, or otherwise coordinate one or more actions relative to the object 170 within the area. For example, the cameras 110 may perform an action including emitting one or more sounds from the speakers 116, turning on a light, turning off a light, directing a lighting element toward the object 170, opening or closing the garage door 162, turning a sprinkler on or off, turning a television or other smart device or appliance on or off, activating a smart vacuum cleaner, activating a smart lawnmower, and/or performing another action based on a detected object, based on a determined identity of a detected object, or the like. In an example, the cameras 110 may actuate an interior light 137 of the building 130 and/or an exterior light 138 of the building 130. The interior light 137 and/or the exterior light 138 may be connected to the local network 105 and/or the network 102.
In some embodiments, the cameras 110 may perform initiate, or otherwise coordinate an action selected to deter a detected person (e.g., to deter the person from the area and/or property, to deter the person from damaging property and/or committing a crime, or the like), to deter an animal, or the like. For example, based on a setting and/or mode, in response to failing to identify an identity of a person (e.g., an unknown person, an identity failing to match a profile of an occupant or known user in a library, based on facial recognition, based on bio-identification, or the like), and/or in response to determining a person is engaged in suspicious behavior and/or has performed a suspicious action, or the like, the cameras 110 may perform, initiate, or otherwise coordinate an action to deter the detected person. In some implementations, the cameras 110 may determine that a combination of data and/or determinations from multiple sensors indicates that the detected human is, has, intends to, and/or may otherwise perform one or more suspicious acts, from a set of predefined suspicious acts or the like, such as crawling on the ground, creeping, running away, picking up a package, touching an automobile and/or other vehicle, opening a door of an automobile and/or other vehicle, looking into a window of an automobile and/or other vehicle, opening a mailbox, opening a door, opening a window, throwing an object, or the like.
In some implementations, the cameras 110 may monitor one or more objects based on a combination of data and/or determinations from the multiple sensors. For example, in some embodiments, the cameras 110 may detect and/or determine that a detected human has picked up the object 170 (e.g., a package, a bicycle, a mobile phone or other electronic device, or the like) and is walking or otherwise moving away from the home or other building 101. In a further embodiment, the cameras 110 may monitor a vehicle, such as an automobile, a boat, a bicycle, a motorcycle, an offroad and/or utility vehicle, a recreational vehicle, or the like. The cameras 110, in various embodiments, may determine if a vehicle has been left running, if a door has been left open, when a vehicle arrives and/or leaves, or the like.
The environment 100 may include one or more regions of interest, which each may be a given area within the environment. A region of interest may include the entire environment 100, an entire site within the environment, or an area within the environment. A region of interest may be within a single site or multiple sites. A region of interest may be inside of another region of interest. In an example, a property-scale region of interest which encompasses an entire property within the environment 100 may include multiple additional regions of interest within the property.
The environment 100 may include a first region of interest 140 and/or a second region of interest 150. The first region of interest 140 and the second region of interest 150 may be determined by the AI models 113, fields of view of the image sensors 115 of the cameras 110, fields of view of the radar sensors 114, and/or user input received via the user interface 119. In an example, the first region of interest 140 includes a garden or other landscaping of the building 130 and the second region of interest 150 includes a driveway of the building 130. In some implementations, the first region of interest 140 may be determined by user input received via the user interface 119 indicating that the garden should be a region of interest and the AI models 113 determining where in the fields of view of the sensors of the cameras 110 the garden is located. In some implementations, the first region of interest 140 may be determined by user input selecting, within the fields of view of the sensors of the cameras 110 on the user interface 119, where the garden is located. Similarly, the second region of interest 150 may be determined by user input indicating, on the user interface 119, that the driveway should be a region of interest and the AI models 113 determining where in the fields of view of the sensors of the cameras 110 the driveway is located. In some implementations, the second region of interest 150 may be determined by user input selecting, on the user interface 119, within the fields of view of the sensors of the cameras 110, where the driveway is located.
In response to determining that a combination of data and/or determinations from the multiple sensors indicates that a detected human is, has, intends to, and/or may otherwise perform one or more suspicious acts, is unknown/unrecognized, has entered a restricted area/zone such as the first region of interest 140 or the second region of interest 150, the cameras 110 may expedite a deter action, reduce a waiting/monitoring period after detecting the human and before performing a deter action, or the like. In response to determining that a combination of data and/or determinations from the multiple sensors indicates that a detected human is continuing and/or persisting performance of one or more suspicious acts, the cameras 110 may escalate one or more deter actions, perform one or more additional deter actions (e.g., a more serious deter action), or the like. For example, the cameras 110 may play an escalated and/or more serious sound such as a siren, yelling, or the like; may turn on a spotlight, strobe light, or the like; and/or may perform, initiate, or otherwise coordinate another escalated and/or more serious action. In some embodiments, the cameras 110 may enter a different state (e.g., an armed mode, a security mode, an away mode, or the like) in response to detecting a human in a predefined restricted area/zone or other region of interest, or the like (e.g., passing through a gate and/or door, entering an area/zone previously identified by an authorized user as restricted, entering an area/zone not frequently entered such as a flowerbed, shed or other storage area, or the like).
In a further embodiment, the cameras 110 may perform, initiate, or otherwise coordinate, a welcoming action and/or another predefined action in response to recognizing a known human (e.g., an identity matching a profile of an occupant or known user in a library, based on facial recognition, based on bio-identification, or the like) such as executing a configurable scene for a user, activating lighting, playing music, opening or closing a window covering, turning a fan on or off, locking or unlocking a door 132, lighting a fireplace, powering an electrical outlet, turning on or play a predefined channel or video or music on a television or other device, starting or stopping a kitchen appliance, starting or stopping a sprinkler system, opening or closing a garage door 103, adjusting a temperature or other function of a thermostat or furnace or air conditioning unit, or the like. In response to detecting a presence of a known human, one or more safe behaviors and/or conditions, or the like, in some embodiments, the cameras 110 may extend, increase, pause, toll, and/or otherwise adjust a waiting/monitoring period after detecting a human, before performing a deter action, or the like.
In some implementations, the cameras 110 may receive a notification from a user's smart phone that the user is within a predefined proximity or distance from the home, e.g., on their way home from work. Accordingly, the cameras 110 may activate a predefined or learned comfort setting for the home, including setting a thermostat at a certain temperature, turning on certain lights inside the home, turning on certain lights on the exterior of the home, turning on the television, turning a water heater on, and/or the like.
The cameras 110, in some implementations, may be configured to detect one or more health events based on data from one or more sensors. For example, the cameras 110 may use data from the radar sensors 114 to determine a heartrate, a breathing pattern, or the like and/or to detect a sudden loss of a heartbeat, breathing, or other change in a life sign. The cameras 110 may detect that a human has fallen and/or that another accident has occurred.
In some embodiments, the cameras 110 are configured to play and/or otherwise emit one or more sounds in response to detecting the presence of a human within an area. For example, the cameras 110 may play one or more sounds selected to deter a detected person from an area around a property/building 101, and/or object. The cameras 110, in some implementations, may vary sounds over time, dynamically layer and/or overlap sounds, and/or generate unique sounds, to preserve a deterrent effect of the sounds over time and/or to avoid, limit, or even prevent those being deterred from becoming accustomed to the same sounds used over and over.
The cameras 110, in some implementations, stores and/or has access to a library comprising a plurality of different sounds and/or a set of dynamically generated sounds so that the controller 106 may vary the different sounds over time, not using the same sound often. In some embodiments, varying and/or layering sounds allows a deter sound to be more realistic and/or less predictable. One or more of the sounds may be selected to give a perception of human presence in the building 101, a perception of a human talking over an electronic speaker device, or the like which may be effective at preventing crime and/or property damage.
For example, a library and/or other set of sounds may include audio recordings and/or dynamically generated sounds of one or more, male and/or female voices saying different phrases, such as for example, a female saying “hello?”, a female and male together saying “can we help you?”, a male with a gruff voice saying, “get off my property” and then a female saying “what's going on?”, a female with a country accent saying “hello there”, a dog barking, a teenager saying “don't you know you're on camera?”, and/or a man shouting “hey!” or “hey you!”, or the like.
In some implementations, the cameras 110 may dynamically generate one or more sounds (e.g., using machine-learning and/or other artificial intelligence, or the like) with one or more attributes that vary from a previously played sound. For example, the cameras 110 may generate sounds with different verbal tones, verbal emotions, verbal emphases, verbal pitches, verbal cadences, verbal accents, or the like so that the sounds are said in different ways, even if they include some or all of the same words. In some embodiments, the cameras 110 and/or a remote computer 125 may train machine-learning on reactions of previously detected humans in other areas to different sounds and/or sound combinations (e.g., improving sound selection and/or generation over time).
The cameras 110 may combine and/or layer these sounds (e.g., primary sounds), with one or more secondary, tertiary, and/or other background sounds, which may comprise background noises selected to give an appearance that a primary sound is a person speaking in real time, or the like. For example, a secondary, tertiary, and/or other background sound may include sounds of a kitchen, of tools being used, of someone working in a garage, of children playing, of a television being on, of music playing, of a dog barking, or the like. The cameras 110, in some embodiments, may be configured to combine and/or layer one or more tertiary sounds with primary and/or secondary sounds for more variety, or the like. For example, a first sound (e.g., a primary sound) may comprise a verbal language message and a second sound (e.g., a secondary and/or tertiary sound) may comprise a background noise for the verbal language message (e.g., selected to provide a real-time temporal impression for the verbal language message of the first sound, or the like).
In this manner, in various embodiments, the cameras 110 may intelligently track which sounds and/or combinations of sounds have been played, and in response to detecting the presence of a human, may select a first sound to play that is different than a previously played sound, may select a second sound to play that is different than the first sound, and may play the first and second sounds at least partially simultaneously and/or overlapping. For example, the cameras 110 may play a primary sound layered and/or overlapping with one or more secondary, tertiary, and/or background sounds, varying the sounds and/or the combination from one or more previously played sounds and/or combinations, or the like.
The cameras 110, in some embodiments, may select and/or customize an action based at least partially on one or more characteristics of a detected object. For example, the cameras 110 may determine one or more characteristics of the object 170 based on audio data, image data, depth data, and/or other data from a sensor. For example, the cameras 110 may determine a characteristic such as a type or color of an article of clothing being worn by a person, a physical characteristic of a person, an item being held by a person, or the like. The cameras 110 may customize an action based on a determined characteristic, such as by including a description of the characteristic in an emitted sound (e.g., “hey you in the blue coat!”, “you with the umbrella!”, or another description), or the like.
The cameras 110, in some implementations, may escalate and/or otherwise adjust an action over time and/or may perform a subsequent action in response to determining (e.g., based on data and/or determinations from one or more sensors, from the multiple sensors, or the like) that the object 170 (e.g., a human, an animal, vehicle, drone, etc.) remains in an area after performing a first action (e.g., after expiration of a timer, or the like). For example, the cameras 110 may increase a volume of a sound, emit a louder and/or more aggressive sound (e.g., a siren, a warning message, an angry or yelling voice, or the like), increase a brightness of a light, introduce a strobe pattern to a light, and/or otherwise escalate an action and/or subsequent action. In some implementations, the cameras 110 may perform a subsequent action (e.g., an escalated and/or adjusted action) relative to the object 170 in response to determining that movement of the object 170 satisfies a movement threshold based on subsequent depth data from the radar sensors 114 (e.g., subsequent depth data indicating the object 170 is moving and/or has moved at least a movement threshold amount closer to the radar sensors 114, closer to the building 130, closer to another identified and/or predefined object, or the like).
In some implementations, the cameras 110 and/or the server 120, may include image processing capabilities and/or radar data processing capabilities for analyzing images, videos, and/or radar data that are captured with the cameras 110. The image/radar processing capabilities may include object detection, facial recognition, gait detection, and/or the like. For example, the controller 106 may analyze or process images and/or radar data to determine that a package is being delivered at the front door/porch. In other examples, the cameras 110 may analyze or process images and/or radar data to detect a child walking within a proximity of a pool, to detect a person within a proximity of a vehicle, to detect a mail delivery person, to detect animals, and/or the like. In some implementations, the cameras 110 may utilize the AI models 113 for processing and analyzing image and/or radar data. For example, the AI models 113 may be trained using training data that may include one or more images of the object to be identified, validation data to validate the operation of the AI models 113, key performance indicators (KPI) or other test/evaluation data to assess the capability of the AI models 113 to identify an object in the field of view of one or more of the cameras 110.
In some implementations, the cameras 110 are connected to various IoT devices. As used herein, an IoT device may be a device that includes computing hardware to connect to a data network and to communicate with other devices to exchange information. In such an embodiment, the cameras 110 may be configured to connect to, control (e.g., send instructions or commands), and/or share information with different IoT devices. Examples of IoT devices may include home appliances (e.g. stoves, dishwashers, washing machines, dryers, refrigerators, microwaves, ovens, coffee makers), vacuums, garage door openers, thermostats, HVAC systems, irrigation/sprinkler controller, television, set-top boxes, grills/barbeques, humidifiers, air purifiers, sound systems, phone systems, smart cars, cameras, projectors, and/or the like. In some implementations, the cameras 110 may poll, request, receive, or the like information from the IoT devices (e.g., status information, health information, power information, and/or the like) and present the information on a display and/or via a mobile application.
The IoT devices may include a smart home device 131. The smart home device 131 may be connected to the IoT devices. The smart home device 131 may receive information from the IoT devices, configure the IoT devices, and/or control the IoT devices. In some implementations, the smart home device 131 provides the cameras 110 with a connection to the IoT devices. In some implementations, the cameras 110 provide the smart home device 131 with a connection to the IoT devices. The smart home device 131 may be an AMAZON ALEXA device, an AMAZON ECHO, A GOOGLE NEST device, a GOOGLE HOME device, or other smart home hub or device. In some implementations, the smart home device 131 may receive commands, such as voice commands, and relay the commands to the cameras 110. In some implementations, the cameras 110 may cause the smart home device 131 to emit sound and/or light, speak words, or otherwise notify a user of one or more conditions via the user interface 119.
In some implementations, the IoT devices include various lighting components including the interior light 137, the exterior light 138, the smart home device 131, other smart light fixtures or bulbs, smart switches, and/or smart outlets. For example, the cameras 110 may be communicatively connected to the interior light 137 and/or the exterior light 138 to turn them on/off, change their settings (e.g., set timers, adjust brightness/dimmer settings, and/or adjust color settings).
In some implementations, the IoT devices include one or more speakers within the building. The speakers may be stand-alone devices such as speakers that are part of a sound system, e.g., a home theatre system, a doorbell chime, a Bluetooth speaker, and/or the like. In some implementations, the one or more speakers may be integrated with other devices such as televisions, lighting components, camera devices (e.g., security cameras that are configured to generate an audible noise or alert), and/or the like. In some implementations, the speakers may be integrated in the smart home device 131.
A moveable object located within an area is identified 210. In some embodiments, image processing may be utilized to detect or otherwise identify 210 an object within a field of view of a camera 110 or image data captured therefrom. In some embodiments, a machine-learning model may be trained and utilized to detect or otherwise identify 210 the moveable object. The machine-learning model may be trained by applying the machine-learning model on historical data including image data of various objects. In an example, a package may be identified, using a machine-learning model executed on a camera, on a porch of a house. Identifying the moveable object may include tracking movement of the object into the area. In an example, a package may be identified, using a machine-learning model executed on a camera, by identifying the package as it is delivered and placed on a porch of a house. The moveable object may be identified as moveable based on the movement of the object into the area. In an example, a package may be identified as a moveable object based on the package being carried into the area by a delivery person. The package may be identified as moveable based on detection of the package within a predetermined time period. In an example, a camera may determine, using a machine-learning model, that the package was moved onto the porch based on a first image of a porch without the package and a second image of the porch with the package. Identifying the moveable object may include determining an object category of the object.
A type and/or identity of the object may be determined. In an example, a camera, using a machine-learning model, may identify an object as a package based on one or more characteristics of the object matching package characteristic. In an example, the machine-learning model may classify the object as a package. In an example, a camera, using a machine-learning model, may identify a unique identifier of a package, such as a barcode. The camera may associate the unique identifier with tracking information of the package and send a notification to a user of delivery of the package. In this way, the camera can monitor, and report to the user, a status of the package as well as contents of the package. In an example, the camera may generate a notification to the user that a package has been delivered which includes perishable items. In an example, the camera may generate a notification to the user that a package has been delivered which includes valuable items that the user would not want to leave on the porch.
A person is identified 220. In some embodiments, image processing may be utilized to detect or otherwise identify 220 the person within a field of view of a camera 110 or image data captured therefrom. In some embodiments, a machine-learning model may be trained and utilized to detect or otherwise identify 220 the person. The machine-learning model may be trained by applying the machine-learning model on historical data including image data of various persons in various clothing. In some implementations, identifying 220 the person may include detecting a presence of a person. Identifying 220 the person may include determining one or more characteristics of the person. Determining the one or more characteristics of the person may include determining clothing, height, girth, weight, hair color, gait, category, profession, identity, and/or other characteristics. In an example, a camera executing a machine-learning model may determine that a person is wearing black pants and a black shirt. In an example, a camera executing a machine-learning model may determine that a person is a mail carrier or a delivery driver. In an example, a camera executing a machine-learning model may determine that a person is a male teenager. In an example, a camera executing a machine-learning model may determine a person's identity using facial recognition and/or other characteristics. Determining the one or more characteristics of the person may include determining one or more actions of the person. In an example, a camera executing a machine-learning model may determine that a person is attempting to hide from the camera. In an example, a camera executing a machine-learning model may determine that a person has passed by a house multiple times. In an example, a camera executing a machine-learning model may determine that a person is looking in the windows of a house.
In some implementations, the moveable object may be identified 210 before the person is identified 220. In some implementations, the person is identified 220 before the moveable object is identified 210. In some implementations, the moveable object may be identified 210 in response to the person being identified 220. In some implementations, the moveable object may be identified 210 in response to the one or more characteristics of the person being identified 220. In an example, a camera executing a machine-learning model may, in response to determining that a person is a threat, identify a package on a porch which might be stolen.
Movement of the object by a person is identified 230. In some embodiments, image processing may be utilized to detect or otherwise identify 230 movement of the object by a person within a field of view of a camera 110 or image data captured therefrom. In some embodiments, a machine-learning model may be trained and utilized to detect or otherwise identify 230 the movement of the object by a person. The machine-learning model may be trained by applying the machine-learning model on historical data including image data of persons interacting with objects. In some implementations, the person is the person identified 220. The movement of the object by the person may include the person picking up the object, placing the object in a bag or pocket, kicking the object, or otherwise causing the object to change position. Identifying the movement of the object by the person may include determining that the person has entered the area. Identifying the movement of the object by the person may include determining that the person has entered the area, determining that the object has moved, and inferring that the person moved the object. Identifying the movement of the object by the person may include determining a safe region for the object. Identifying the movement of the object may include determining that the object has been moved from the safe region. In an example, the safe region is a bounding box, a region of a field of view of a camera, or a portion of a porch. Identifying the movement of the object by the person may include determining a direction of the movement. In an example, a camera determines whether a package has been moved towards or away from a house, an entry to the house, or the like. In this way, the camera can determine an appropriate response. In an example, if a delivery driver delivers a new package and adjusts a location of a package already on the porch, the camera may identify the movement of the package as innocuous. In an example, if a neighbor knocks on a door of a house and picks up a package to hand to the homeowner, the camera may identify the movement of the package as innocuous. In an example, if a person picks up a package and walks away from the house, the camera may identify the movement of the package as a theft or otherwise harmful.
The movement of the object may be measured relative to a fixed structure, such as a building or house. The movement of the object may be measured relative to a portion of the building or house, such as a front porch or door. The movement of the object may include a position and velocity of the object. In an example, a camera executing a machine-learning model may determine a position and velocity of a package to identify a theft of the package. In an example, a camera executing a machine-learning model may determine a position and velocity of a bicycle to determine whether the bicycle is being put away or stolen. If the velocity of the bicycle is away from a house or garage, the camera may determine that the bicycle is being stolen. If the velocity of the bicycle is toward the house or garage, the camera may determine that the bicycle is being put away.
In response to the movement of the object by the person, a deterrence action may be executed 240 using the machine-learning model. The deterrence action may include one or more actions to deter theft of the object. In an example, a camera executing a machine-learning model may execute the deterrence action based on a determination that the movement of the object by the person is a theft or otherwise harmful. The deterrence action may include actions performed by a variety of devices, such as components of the system 100. In an example, the deterrence action may include turning a porch light on, turning a porch light off, emitting light and/or sounds from a doorbell, emitting light and/or sounds from a camera, turning on sprinklers, turning on or off interior lights, playing a sound on interior speakers, or other actions. Executing the deterrence action may include determining that the direction of the movement is away from a building associated with the area. In an example, a camera executing a machine-learning model may determine that movement of a by the person is a theft based on the package being moved away from a house.
The deterrence action may be tailored based on the movement of the package. The deterrence action may include multiple actions and/or a series of actions. The multiple actions may be part of a series of escalating actions to deter theft. In an example, an initial grabbing of a package may elicit a deterrence action of an automated voice asking the person what they are doing. In an example, taking a package off of a porch may elicit a deterrence action of an automated voice telling the person to stop and/or turning on sprinklers. In an example, the person dropping a package after an initial deterrence action may elicit a deterrence action of an automated voice telling the person that next time, the police will be contacted, or telling the person that they will be remembered.
Executing the deterrence action may include emitting one or more audiovisual signals. Executing the deterrence action may include generating, by the computer executing the machine-learning model, the one or more audiovisual signals. The one or more audiovisual signals may include various sounds, automated voices, lights, light patterns, and other audiovisual elements. In an example, the audiovisual signals may include a whistle, recorded phrases, flashing light patterns, and/or a siren.
Executing the deterrence action may include determining an event. In an example, a camera executing a machine-learning model may determine that a package or other object is being stolen, is being delivered, is being moved, or is stationary as a person is on a property. The camera may determine an event in order to select a corresponding deterrence action. In an example, if a mail delivery person passes by a bicycle in a yard of a house to deliver mail, no deterrence action is executed. In an example, if a person moves a package in a manner that does not indicate theft, no deterrence action is taken. In an example, if a person takes actions, such as moving the object, indicative of theft, the camera executes the deterrence action.
Executing the deterrence action may include determining one or more characteristics of the person. Determining one or more characteristics of the person may include determining clothing, height, girth, weight, hair color, gait, category, profession, identity, and other characteristics. In an example, a camera executing a machine-learning model may determine that a person is wearing jeans and a red t-shirt. In an example, a camera executing a machine-learning model may determine that a person is a delivery person. In an example, a camera executing a machine-learning model may determine that a person is a child. In an example, a camera executing a machine-learning model may determine a person's identity using facial recognition and/or other characteristics. The deterrence action may be tailored according to the one or more characteristics of the person. In an example, a deterrence action may be muted or suppressed based on a neighbor or delivery person moving the object. In an example, a deterrence action may be escalated based on a stranger or suspicious person approaching the object. The deterrence action may be based on the one or more characteristics of the person. In an example, an automated voice may reference the one or more characteristics of the person such as their clothing. In an example, an automated voice may say “I see you in the yellow shirt.”
The machine-learning model may include multiple machine-learning models. The machine-learning model may include multiple machine-learning models, each of which perform different tasks or functions. In an example, the machine-learning model may include a first machine-learning model which identifies objects, a second machine-learning model which identifies persons and their characteristics, a third machine-learning model which identifies events, such as a theft, and a fourth machine-learning model which determines deterrence actions. In an example, the machine-learning model includes a first machine-learning model which identifies objects, persons, and events, and a second machine-learning which determines deterrence actions. In an example, the machine-learning model includes a first machine-learning model which uses image data from an image sensor and a second machine-learning model which uses radar data from a radar sensor. In an example, the machine-learning model includes a first machine-learning model which uses image data from an image sensor to detect vehicles, a second machine-learning model which uses image data from the image sensor to detect persons, a third machine-learning model which uses radar data from a radar sensor to detect vehicles, and a fourth machine-learning model which uses radar data from a radar sensor to detect persons. The multiple machine-learning models may share data and reinforce each other's decisions and learnings. Other numbers, functions, and combinations of machine-learning models are considered and may be used.
The machine-learning model may be initially trained. In some implementations, the machine-learning model may be initially trained as a standard model and then updated after installation in a specific device to be customized or tailored for use with the specific device (e.g., at a given site, with given sensors or other equipment, etc.). In an example, the machine-learning model may be initially trained as a standard machine-learning model for detecting objects, persons, and movement of objects, and then updated when installed in a user's camera to be updated and refined based on image data captured by the camera and/or input from the user. In some implementations, the machine-learning model may be initially trained using historical data including a library of video and/or image data. The video and/or image data may include actual and/or synthetic data. In an example, the machine-learning model may be initially trained based on a library of video of package thefts captured by a plurality of cameras. In an example, the machine-learning model may be initially trained based on a library of video of package thefts generated by a generative machine-learning model. In some implementations, a central machine-learning model may be centrally trained using image and/or video data from a plurality of cameras and pushed to the plurality of cameras. In some implementations, one or more learnings and/or weights may be centrally obtained and pushed to the plurality of cameras.
The machine-learning model may be updated using historical data and/or user input. The machine-learning model may be updated based on its own observed historical data and/or historical data from other sources. In an example, a camera executing a machine-learning model may update its machine-learning model based on information captured by the camera. In an example, a camera executing a machine-learning model may update its machine-learning model based on information captured by other cameras. In an example, a camera executing a machine-learning model may update its machine-learning model based on learnings received from a server. In an example, a user may identify objects, persons, and other items of interest to update the machine-learning model. In some implementations, the machine-learning model may generate a notification or otherwise notify a user of a potential identification of an object or person and request user input regarding the potential identification. In some implementations, the machine-learning model may be updated based on information from other devices. In an example, the machine-learning model may be updated based on tracking information received from a computing device to improve an ability of the machine-learning model to identify packages. In an example, the machine-learning model may be updated based on information from sensors, such as a proximity sensor, gate sensor, or door sensor. In an example, the machine-learning model may be updated based on learnings identified by other machine-learning models.
In some implementations, the machine-learning model may identify other events such as the arrival or departure of specific persons. In an example, a camera executing a machine-learning model may identify an elderly individual or child leaving a house and generate a notification and/or execute a deterrence action to convince the elderly person or child to remain home or to wait for someone to help them. In an example, a camera executing a machine-learning model may identify a teenager leaving a home and remind them of a curfew. In some implementations, a user may determine a region of interest for objects and/or persons. In an example, a yard of a house may be a region of interest such that objects should not be removed from the yard and a camera executing a machine-learning model may identify a bicycle being removed from the yard and generate a notification to the user. In an example, a yard of a house may be a region of interest such that children are allowed to play in the yard but not leave the yard to go into the street or driveway, and a camera executing a machine-learning model may identify when children leave the yard and execute a deterrence action and/or generate a notification to the user.
An example method may include identifying, by a computer executing a machine-learning model, a moveable object located within an area, identifying, by the computer executing the machine-learning model, movement of the object by a person, and in response to the movement of the object by a person, executing, by the computer executing the machine-learning model, a deterrence action.
In the example method, identifying the moveable object may include tracking movement of the object into the area. In the example method, identifying the moveable object may include determining an object category of the object. In the example method, identifying the movement of the object by the person may include determining that the person has entered the area. In the example method, identifying the movement of the object by the person may include determining a safe region for the object. In the example method, identifying the movement of the object by the person may include determining a direction of the movement. In the example method, executing the deterrence action may include determining that the direction of the movement is away from a building associated with the area. In the example method, executing the deterrence action may include emitting one or more audiovisual signals. In the example method, executing the deterrence action may include generating, by the computer executing the machine-learning model, the one or more audiovisual signals. In the example method, executing the deterrence action may include determining one or more characteristics of the person.
An example apparatus may include an image sensor, and a processor executing a machine-learning model to identify a moveable object located within an area, identify movement of the moveable object by a person, and in response to the movement of the moveable object by the person, execute a deterrence action.
Identifying the moveable object may include tracking movement of the object into the area. Identifying the moveable object may include determining an object category of the object. Identifying the movement of the object by the person may include determining that the person has entered the area. Identifying the movement of the object by the person may include determining a safe region for the object. Identifying the movement of the object by the person may include determining a direction of the movement. Executing the deterrence action may include determining that the direction of the movement is away from a building associated with the area. Executing the deterrence action may include emitting one or more audiovisual signals. Executing the deterrence action may include generating, by the computer executing the machine-learning model, the one or more audiovisual signals. Executing the deterrence action may include determining one or more characteristics of the person.
The foregoing method descriptions and the process flow diagrams are provided merely as illustrative examples and are not intended to require or imply that the steps of the various embodiments must be performed in the order presented. The steps in the foregoing embodiments may be performed in any order. Words such as “then” and “next,” among others, are not intended to limit the order of the steps; these words are simply used to guide the reader through the description of the methods. Although process flow diagrams may describe the operations as a sequential process, many of the operations can be performed in parallel or concurrently. In addition, the order of the operations may be rearranged. A process may correspond to a method, a function, a procedure, a subroutine, a subprogram, and the like. When a process corresponds to a function, the process termination may correspond to a return of the function to a calling function or a main function.
The various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present disclosure.
Embodiments implemented in computer software may be implemented in software, firmware, middleware, microcode, hardware description languages, or any combination thereof. A code segment or machine-executable instructions may represent a procedure, a function, a subprogram, a program, a routine, a subroutine, a module, a software package, a class, or any combination of instructions, data structures, or program statements. A code segment may be coupled to another code segment or a hardware circuit by passing and/or receiving information, data, arguments, parameters, or memory contents. Information, arguments, parameters, data, among others, may be passed, forwarded, or transmitted via any suitable means including memory sharing, message passing, token passing, network transmission, etc.
The actual software code or specialized control hardware used to implement these systems and methods is not limiting. Thus, the operation and behavior of the systems and methods were described without reference to the specific software code being understood that software and control hardware can be designed to implement the systems and methods based on the description herein.
When implemented in software, the functions may be stored as one or more instructions or code on a non-transitory computer-readable or processor-readable storage medium. The steps of a method or algorithm disclosed herein may be embodied in a processor-executable software module, which may reside on a computer-readable or processor-readable storage medium. A non-transitory computer-readable or processor-readable media includes both computer storage media and tangible storage media that facilitate transfer of a computer program from one place to another. A non-transitory processor-readable storage media may be any available media that may be accessed by a computer. By way of example, and not limitation, such non-transitory processor-readable media may comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other tangible storage medium that may be used to store desired program code in the form of instructions or data structures and that may be accessed by a computer or processor. Disk and disc, as used herein, include compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk, and Blu-ray disc where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media. Additionally, the operations of a method or algorithm may reside as one or any combination or set of codes and/or instructions on a non-transitory processor-readable medium and/or computer-readable medium, which may be incorporated into a computer program product.
The preceding description of the disclosed embodiments is provided to enable any person skilled in the art to make or use the present disclosure. Various modifications to these embodiments will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other embodiments without departing from the spirit or scope of the disclosure. Thus, the present disclosure is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the following claims and the principles and novel features disclosed herein.
While various aspects and embodiments have been disclosed, other aspects and embodiments are contemplated. The various aspects and embodiments disclosed are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
This application claims priority to United States Provisional Patent Application, 63/592,861, filed Oct. 24, 2023, and entitled USING MACHINE-LEARNING MODELS TO IDENTIFY AND DETER PACKAGE THEFT, which is incorporated by reference herein in its entirety.
Number | Date | Country | |
---|---|---|---|
63592861 | Oct 2023 | US |