Acceleration profile for sprinter detection
The automated sprinter detection method and apparatus improve security system accuracy and response times by using image sensors to identify and respond to high-speed movements within security systems.
Patent Information
- Application Number
- PCT/US2024/037894
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2023-07-14
- Filing Date
- 2024-07-12
- Publication Date
- 2025-01-23
AI Technical Summary
Existing security systems often inaccurately identify persons or detect high-speed movements, leading to false alarms and reduced system effectiveness due to manual assessment delays.
A method and apparatus for automated sprinter detection using image sensors, which involves identifying a person in images, calculating their acceleration, and autonomously executing response actions when the person is identified as a sprinter.
The solution enhances the accuracy of detecting high-speed movements, reduces false alarms, and enables timely autonomous responses to potential security threats or emergencies.
Smart Images

Figure US2024037894_23012025_PF_FP_ABST
Abstract
Description
ACCELERATION PROFILE FOR SPRINTER DETECTIONCROSS REFERENCE TO RELATED APPLICATION(S)
[0001] This application claims the benefit of U.S. Provisional Application Serial No. 63 / 513,727, entitled “ACCELERATION PROFILE FOR SPRINTER DETECTION” and filed on July 14, 2023, the disclosure of which is expressly incorporated by reference herein in its entirety.TECHNICAL FIELD
[0002] The present disclosure generally relates to security systems. More particularly, the present disclosure relates to systems and methods for detection of a relatively fast-moving person, referred to as a sprinter, based on an acceleration profile.BACKGROUND
[0003] Security systems are configured to allow security personnel in charge of area, such as a retail store, a venue, and / or the like, to manage security, surveillance, access, and other similar activities associated with the area (e.g., retail store, venue, and / or the like). As part of managing security, surveillance, access, and other similar activities, the security personnel are interested in identifying a person (e.g., a customer) that enters or exits an area (e.g., within the store, venue, and / or the like) at a sprint (e.g., running at a high speed or a rapid increase of speed such as a rapid acceleration from being stationary or walking to running). Such high-speed movements may indicate a malicious intent of the person or an emergency situation in the area. For example, a person may exit an area at a high speed when the person has committed illegal activities such as stealing goods or when the person observes a hazardous or emergency event.
[0004] However, these security systems often inaccurately identify persons and / or detect persons moving at high speeds due to inaccurate classification of the person’s movements. Consequently, such inaccurate identification and / or detection can result in false alarms generated by the security systems. Frequent false alarms may cause the security personnel to not trust the security systems; thus, reducing the effectiveness of these systems. Furthermore, established responses to alarms (whether false or legitimate) may be limited to manual assessment and intervention by security personnel. Even if security personnel are well trained, human assessment and intervention may result in delays or prevent a timely response to malicious activities or an emergency situation.SUMMARY
[0005] The following presents a simplified summary of one or more aspects in order to provide a basic understanding of such aspects. This summary is not an extensive overview of all contemplated aspects and is intended to neither identify key or critical elements of all aspects nor delineate the scope of any or all aspects. Its sole purpose is to present some concepts of one or more aspects in a simplified form as a prelude to the more detailed description that is presented later.
[0006] An example aspect includes a method for automated sprinter detection, comprising receiving one or more images from one or more image sensors associated with a security system. The method further includes identifying a person in the one or more images. Additionally, the method further includes calculating an acceleration of the person based on tracking of the person in the one or more images. Additionally, the method further includes identifying the person as a sprinter based on the acceleration. Additionally, the method further includes causing autonomous execution of one or more sprinter response actions in response to identifying the person as the sprinter.
[0007] Another example aspect includes an apparatus for automated sprinter detection, comprising one or more memories and one or more processors coupled, in any combination, with the one or more memories. The one or more processors are configured, individually or in combination, to perform a plurality of functions. The one or more processors are configured to receive one or more images from one or more image sensors associated with a security system. The one or more processors are further configured to identify a person in the one or more images. Additionally, the one or more processors are further configured to calculate an acceleration of the person based on tracking of the person in the one or more images. Additionally, the one or more processors are further configured to identify the person as a sprinter based on the acceleration. Additionally, the one or more processors are further configured to cause autonomous execution of one or more sprinter response actions in response to identifying the person as the sprinter.
[0008] Another example aspect includes an apparatus for automated sprinter detection, comprising means for receiving one or more images from one or more image sensors associated with a security system. The apparatus further includes means for identifying a person in the one or more images. Additionally, the apparatus further includes means for calculating an acceleration of the person based on tracking of the person in the one or more images. Additionally, the apparatus further includes means for identifying theperson as a sprinter based on the acceleration. Additionally, the apparatus further includes means for causing autonomous execution of one or more sprinter response actions in response to identifying the person as the sprinter.
[0009] Another example aspect includes a computer-readable medium having instructions stored thereon for automated sprinter detection, wherein the instructions are executable by one or more processors, individually or in combination, to perform a plurality of functions. The instructions are executable to receive one or more images from one or more image sensors associated with a security system. The instructions are further executable to identify a person in the one or more images. Additionally, the instructions are further executable to calculate an acceleration of the person based on tracking of the person in the one or more images. Additionally, the instructions are further executable to identify the person as a sprinter based on the acceleration. Additionally, the instructions are further executable to cause autonomous execution of one or more sprinter response actions in response to identifying the person as the sprinter.
[0010] To the accomplishment of the foregoing and related ends, the one or more aspects comprise the features hereinafter fully described and particularly pointed out in the claims. The following description and the annexed drawings set forth in detail certain illustrative features of the one or more aspects. These features are indicative, however, of but a few of the various ways in which the principles of various aspects may be employed, and this description is intended to include all such aspects and their equivalents.BRIEF DESCRIPTION OF THE DRAWINGS
[0011] The disclosed aspects will hereinafter be described in conjunction with the appended drawings, provided to illustrate and not to limit the disclosed aspects, wherein like designations denote like elements, wherein dashed lines may indicate optional elements, and in which:
[0012] FIG. 1A is a diagram of an example of a computing device that detects sprinters in an area associated with a building with improved accuracy, in accordance with various aspects of the present disclosure described herein.
[0013] FIG. IB is a flowchart of an example of a method for detecting sprinters, in accordance with various aspects of the present disclosure described herein.
[0014] FIG. 2 is a diagram of an example speed profile of a person tracked through image data, in accordance with various aspects of the present disclosure described herein.
[0015] FIG. 3 is a diagram of an example cumulative speed profde of a person tracked through image data, in accordance with various aspects of the present disclosure described herein.
[0016] FIG. 4 is a diagram of an example acceleration profde of a person tracked through the image data, in accordance with various aspects of the present disclosure described herein.
[0017] FIGs. 5A-5D are diagrams of an example of tracking a person’s movement through different zones of an image, in accordance with various aspects of the present disclosure described herein.
[0018] FIG. 6 is a block diagram of an example of a computer device having components configured to perform a method for automated sprinter detection, in accordance with various aspects of the present disclosure described herein.
[0019] FIG. 7 is a flowchart of an example of a method for automated sprinter detection, in accordance with various aspects of the present disclosure described herein.
[0020] FIGs. 8A, 8B, and 8C are a flowchart of additional aspects of the method of FIG. 7, in accordance with various aspects of the present disclosure described herein.
[0021] FIG. 9 is a flowchart of additional aspects of the method of FIG. 7, in accordance with various aspects of the present disclosure described herein.
[0022] FIG. 10 is a flowchart of additional aspects of the method of FIG. 7, in accordance with various aspects of the present disclosure described herein, in accordance with various aspects of the present disclosure described herein.
[0023] FIG. 11 is a flowchart of additional aspects of the method of FIG. 7, in accordance with various aspects of the present disclosure described herein.
[0024] FIG. 12 is a flowchart of additional aspects of the method of FIG. 7, in accordance with various aspects of the present disclosure described herein.DETAILED DESCRIPTION
[0025] Various aspects are now described with reference to the drawings. In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of one or more aspects. It may be evident, however, that such aspect(s) may be practiced without these specific details.
[0026] Aspects described herein relate to a security system that can be configured to autonomously detect one or more persons moving at a relatively high speed (e.g., moving at a speed faster than a typical speed of walking), referred to herein as a sprinter, withinan area associated with a building (e.g., within a retail store, venue, and / or the like). As described herein, automated, or autonomous sprinter detection relates to an automatic detection of a person in a video or image frame and, using subsequent frames, a determination of whether a movement rate of the person satisfies a threshold condition indicative of a person sprinting.
[0027] The security system may be associated with the building and / or may be communicatively coupled with or integrated with a building management system, a local area network (LAN), a wide area network (WLAN), and / or any suitable communication system. The security system may include or be communicatively coupled to multiple sensors. The sensors may include, but are not limited to image sensors, cameras, thermal sensors, motion sensors, and the like. The multiple sensors may be positioned in different parts of the area (e.g., retail store, venue, building, and the like), and the security system may be configured to receive image data (e.g., video frames) from the multiple sensors and / or obtain data outputted from the multiple sensors.
[0028] Based on the data received from the multiple sensors, the security system may identify a person as a sprinter within an area and cause autonomous execution of one or more sprinter response actions. To identify a person as a sprinter, the security system may use the image data to identify the person and track the person’ s location and / or movement in real time. For example, the security system may be configured to detect a person within a first video frame and track changes in the person’s location and / or movement using subsequent video frames. In some examples, the security system may calculate a velocity and / or acceleration of the person based on the tracking of the person identified in the image data. Additional details related to the security system, detection of sprinters, and autonomous execution of sprinter response actions are described herein with respect to FIGs. 1-6.
[0029] FIG. 1A is a block diagram conceptually illustrating an example environment within which acceleration profiling of one or more persons may be performed. The environment may include a building area 104, such as a brick-and-mortar store (e.g., grocery store, hardware store, or any other suitable building that allows public access or limited access) or other commercial / industrial building. The interior of the building area 104 may include a number of sensors 108. Although FIG. 1A illustrates a building area with a network of sensors, any number of sensors may be used including a single sensor. Additionally, although the described aspects and FIG. 1A are described with respect to sensors 108 covering an interior of the building area 104, the principles of the describedaspects for acceleration profiling of one or more persons can also apply to sensors covering an exterior of the building area 104 or other outdoor areas such as a road or a park. In certain aspects, the sensors 108 may be configured as security cameras configured to capture video within the building area 104. In one such example, the sensors 108 may be strategically placed to capture video of a relatively wide area (e.g., an entire length of an aisle, a broad entryway or foyer comprised of multiple doors and / or paths, etc.), of areas where relatively high-value items are located, and / or of areas having a relative high occurrence of theft.
[0030] The network of sensors 108 may be configured to collectively monitor a surveilled environment (e.g., interior and / or exterior regions of the building area 104). Some or all of the sensors may be communicatively coupled to a computing device 100 located in or near the building area 104. Each sensor 108 may be connected to the computing device 100, directly or indirectly, via at least one of a wired communication channel or a wireless communication channel.
[0031] The computing device 100 may be configured to receive image data generated by one ormore ofthe sensors 108 arranged throughout the building area 104. The computing device 100 may also be configured to communicate with external devices (e.g., transmit image data and receive other data) via a computer network 150. The computer network 150 may include a personal area network (PAN), local area network (LAN), wide area network (WAN), metropolitan area network (MAN), cellular network, the Internet, or any combination thereof.
[0032] In some examples, the computing device 100 includes a local storage 115 and a sprint detection module 125. The local storage 115 may include a computer-readable medium configured to store video frames captured by the sensors 108 and software instructions or code for executing the functions described herein. The computer-readable media includes computer storage media. Storage media may be any available media that can be accessed by a computer. By way of example, and not limitation, such computer- readable media can comprise a random-access memory (RAM), a read-only memory (ROM), an electrically erasable programmable ROM (EEPROM), optical disk storage, magnetic disk storage, other magnetic storage devices, combinations of the aforementioned types of computer-readable media, or any other medium that can be used to store computer executable code in the form of instructions or data structures that can be accessed by a computer.
[0033] The sprint detection module 125 may be configured to perform image processing functions for detecting and tracking persons captured in image data generated by the sensors 108, and for detecting sprinting / running actions of those persons. In one example, the sprint detection module 125 may use Euclidian distance calculation for determining a speed of a detected person within a period of time and / or frame interval of video frames captured by the sensors 108. For detecting acceleration of the person, the sprint detection module 125 may compute an acceleration profile (e.g., as illustrated in FIG. 4) of the person based on a cumulative speed (e.g., as illustrated in FIGs. 2 and 3) of the person.
[0034] Position of a detected person at a given time may be given by function r(t), wherein r is the person’s position at a time instance t. The velocity of the person may be determined based on the following formula:where v is the velocity of the person at t. The acceleration of the person may be determined based on the following formula:where a is the acceleration of the person at t.
[0035] In certain aspects, the sprint detection module 125 may be configured to detect a person in a video frame provided by one or more sensors 108 and detect changes in speed of that person. For example, if a video frame captures a person walking through the building area 104, and the person stops or begins running, the sprint detection module 125 may detect a change in the speed of the person based on detection of the person in subsequent video frames and the location of that person within the frame at a particular time. In one example, the sprint detection module 125 may use a rolling frame interval (e.g., frame-by-frame analysis of a video, where frames are read out progressively in a line-sequential fashion) to generate an acceleration profile of the movement of the person.
[0036] If the acceleration profile indicates that the acceleration of a person meets or exceeds a configurable threshold value, then the computing device 100 may alert another device (e.g., associated with an authority) or take other action. In one example, the computing device 100 may alert a device associated with employee or security personnel so that they may intervene and prevent a potential theft or respond to an emergency situation. Such an alert may be, but is not limited to, an audible alert via an intercom system of a personal device alert (e.g., walkie-talkie or other personal electronic device).Such an alert may provide additional information, such as a location of the detected person within the building area. Other alerts may include mobile messages (e.g., push notifications, flash messages, etc.).
[0037] In certain aspects, the computing device 100 may receive one or more images from one or more image sensors (e.g., sensors 108). For example, the computing device 100 may receive a plurality of frames that form a video captured by the sensors 108 and recorded in a local storage 115. The computing device 100 may then identify a person in the one or more images or video frames. In some examples, the sprint detection module 125 may include an object detection function for detecting objects and people in the video frames. In some examples, the sprint detection module 125 may be configured to perform facial recognition and / or body recognition functions to identify a person captured in a video frame. In such an example, the local storage 115 may include facial / body characteristics associated with one or more identifiers. Here, if the sprint detection module 125 determines facial / body characteristics of a person captured in a video, it may compare those characteristics to facial / body characteristics of people stored in the local storage 115.
[0038] In certain aspects, the computing device 100 may calculate an acceleration of the person based on tracking of the person in the one or more images. As discussed, the sprint detection module 125 may generate an acceleration profile of a person detected in a video frame feed using a rolling frame interval. Here, acceleration of the detected person may be determined based on location of the person within each frame and a time each frame was captured. For example, a location of the person within each successive frame and a time each frame was captured may provide a velocity or speed of the detected person, and a cumulative speed may be determined based on summing the velocity of the detected person over the cumulative frames. A second order derivative of the cumulative speed at different times (e.g., frames) may be used to determine an acceleration of the detected person. Thus, each frame may be associated with an acceleration value indicative of a speed of the person at a certain point in time. If an acceleration value meets or exceeds a threshold value, the sprint detection module 125 may identify the person as a sprinter.
[0039] In response to identifying the person as a sprinter, the sprint detection module 125 and / or computing device 100 may automatically execute one or more sprinter response actions. For example, a sprinter response action may include an alarm or other notification to staff or employees. In some examples, if the sprint detection module 125 identifies the person and matches the facial / body characteristics of the person with locally storedcharacteristics, then computing device 100 may notify another device, such as but not limited to a device of an employee, security personnel, and / or local authorities (e.g., a police agency).
[0040] FIG. IB is a flow chart illustrating an example of actions performed by the sprint detection module 125 of FIG. 1. Initially, a sensor 108 may surveille a region associated with an area (e.g., building area 104 of FIG. 1) and capture video frames 202 of the surveilled region. The video frames 202 may be received by a computing device (e.g., computing device 100 of FIG. 1) and analyzed by a sprint detection module (e.g., sprint detection module 125 of FIG. 1). The sprint detection module may use object / person detection 204 techniques to detect a person visible in the video frames 202. The sprint detection module may track movement of a person within a rolling window of the frames by dividing or segmenting each frame into multiple zones 222, identifying the person within the frames, and visually marking the persons using a bounding box 206. For example, each video frame may be segmented into 15 equally sized zones 222 as illustrates in FIGs. 5A-5D. The size of the bounding boxes 206 may surround the visual representation of the detected person, and the size of the bounding boxes 206 may vary according to size and resolution of the frames, or user preference.
[0041] Using the zones 222, the sprint detection module may track movement 208 of the person within surveilled region and estimate the speed 210 of the person based on the amount of time it takes for the person to move from one or more zones to one or more other zones (e.g., based on the number of zones through which a person has passed 224). The sprint detection module may generate a speed profde (e.g., as illustrated in FIG. 2) of the person by associating a speed value with each frame of the rolling window of frames.
[0042] The sprint detection module may then generate a cumulative speed profde 212 (e.g., as illustrated in FIG. 3) by cumulatively summing the speed values associated with each frame. For example, the speed value at frame number 100 may be 5, the speed value at frame number 101 may be 5, and the speed value at frame number 102 may be 10. Here, frame numbers 100, 101 and 102 are associated with a flow of contiguous frames. In this example, the cumulative speed value at frame number 100 is 5, the cumulative speed value at frame number 101 is 10, and the cumulative speed value at frame number 102 is 20.
[0043] The sprint detection module may then generate an acceleration profde 214 (e.g., as illustrated in FIG. 4) of the person being tracked by taking a second order derivative(e.g., determining a rate of change) of the cumulative speed values relative to time. The sprint detection module may then determine a number of acceleration values (e.g., peaks), if any, that are greater than a first threshold value 216 (e.g., thl). In this example, the first threshold value may be an acceleration value (e.g., y-axis of graph shown in FIG. 4) such as 0.4 which represents a rate of change of speed (e.g., pixel travel divided by number of frames). If the number of acceleration peaks filtered by the previous first threshold (thl) is greater than a second threshold value (e.g., th2) and a number of frames (e.g., a delta) between at least two neighboring acceleration peak frame numbers is greater than a third threshold value (e.g., th3) 218, then the sprint detection module may determine that the person being tracked is sprinting. For example, if the number of peaks that meet or exceed an acceleration value of 0.35 (thl) is equal to or greater than 5 (e.g., at least 5 frames that meet or exceed 0.35) then the second threshold (th2) is met. And if a number of frames (e.g., 5 frames) between at least two of the peaks that meet or exceed thl, meet or exceed a third threshold is (th3 - e.g., 5 frames) then the sprint detection module may trigger an alert indicating that a tracked person is sprinting.
[0044] The sprint detection module may also determine a number of zones through which the possible sprinting person as moved. For example, if the possible sprinter has moved through a number of zones equal to or greater than fourth threshold value (e.g., th4) within a configurable window of time 220, then the sprint detection module may determine that a sprinter is detected 226. It should be noted that any of the first threshold (th 1 ), the second threshold (th2), and the third threshold (th3) may be configurable by a user.
[0045] FIG. 2 is a line graph of speed (y-axis) versus frame numbers (x-axis) illustrating an example speed profile 200 of a detected person in each frame associated with example frame numbers 400-850 of a sample video containing a plurality of frames. The sprint detection module may determine a speed value of the detected person for each frame based on a distance (e.g., in zones) the person has traveled relative to previous frames.
[0046] FIG. 3 is a line graph of cumulative speed (y-axis) versus frame numbers (x-axis) illustrating an example cumulative speed profile 300 associated with the example frame numbers 400-850 and the speed profile 200 of FIG. 2. Here, the cumulative speed value for each frame may be determined by summing the speed value for each frame with the speed values of each previous frame. A steep ramp (indicated in by a “1” and a “2,” highlighting different regions of the profile) may indicate a person moving at a sprint.
[0047] FIG. 4 is a line graph of acceleration (y-axis) versus frame numbers (x-axis) illustrating an example of an acceleration profile 400 associated with the example framenumbers 450-800 and the cumulative speed profile 300 of FIG. 3. Here, an acceleration of a detected person may be determined for each frame based on a second order derivative of the cumulative speed of the corresponding frame. If the acceleration value for a particular frame is greater than a threshold value, then the sprint detection module may determine that the tracked person has accelerated and is indicative of a running or sprinting person.
[0048] In another example, an acceleration profile may be generated as shown in Tables 1 and 2 below. Table 1 shows examples speeds and acceleration profiles per frame (e.g., first column, frames 1-10) for an object moving at walking speed. A second column (Speed / Frame) shows a value indicating a speed in pixels traveled per frame. This indicates a number of pixels a detected object has traveled at a frame relative to a previous frame. These values may be used to produce a speed profile (e.g., the example speed profile 200 of FIG. 2). A third column shows a cumulative speed value at each frame. Values in this column are produced by summing the speed (from the second column) of a corresponding frame with the speeds associated with all of the previous frames. For example, the cumulative speed at frame 3 is the sum of the speeds associated with frames 1, 2, and 3.
[0049] A fourth, fifth, and sixth column indicate an acceleration profile with a second order differential period (e.g., second_order_diff_period) equal to 1, 3, and 5, respectively. Here, the values of each acceleration profile may be calculated based on a difference of cumulative speed values.
[0050] In the example of second_order_diff_period=l, acceleration profile values may be computed using the following formula:where An-1is the acceleration profile value for frame n-l, vnis a cumulative speed velocity of a current frame (e.g., frame «),is a cumulative speed velocity of previous frame (e.g., frame n-l), xnrepresents time in terms of frame n, andrepresents time in terms of frame n-l. Here, because the differential period is equal to 1, the previous frame is 1 frame earlier (e.g., n-l). Thus, looking at the fourth column (e.g., acceleration profile 1), if the current frame is frame 5, then the previous frame is 4. This makes vn=16, vn-1=12, xn=5, and xn-t=4, resulting in an acceleration profile value for frame 4 equal to 4.
[0051] Similarly, in the example of second_order_diff_period=3, acceleration profde values may be computed using the following formula:
[0052] And also, in the example of second_order_diff_period=5, acceleration profde values may be computed using the following formula:The acceleration profde values may be used to generate an acceleration profde such as that illustrated in FIG. 4. It should be noted that although the above example of Table 1 shows the second_order_diff_period equal to 1, 3, and 5, any suitable second_order_diff_period value may be used.
[0053] Table 2 shows examples speeds and acceleration profdes per frame for an object moving at a sprinting speed, or a speed relatively faster than walking. Table 2 may be generated using the same formulas discussed above.
[0054] The algorithm shown by the actions illustrated in FIG. IB may be performed to detect a sprinter based on the acceleration profdes computed using the methods discussed above. It should be noted that the algorithm may detect a sprinting object: (i) if the object is initially moving at a walking speed and later changes to a sprinting speed, and (ii) if the object is moving at a constant or substantially constant sprint.
[0055] FIGs. 5A-5D each illustrate a respective frame 502, 504, 506, and 508 wherein a person is identified and tracked with a bounding box 510. Here, each frame is divided into 15 zones (each zone being individually numbered 1-15 in each of FIGs. 5A-5D), and the identified person’s location within each frame is tracked, providing the sprint detection module with a basis for determining the person’s speed.
[0056] Referring to FIG. 6 and FIG. 7, in operation, computing device 100 may perform a method 700 for automated sprinter detection, such as via execution of sprint detection module 125 by one or more processors 105 and / or one or more memories 110.
[0057] At block 702, the method 700 includes receiving one or more images from one or more image sensors associated with a security system. For example, in an aspect, computing device 100, one or more processors 105, one or more memories 110, sprintdetection module 125, and / or receiving component 620 may be configured to or may comprise means for receiving one or more images from one or more image sensors associated with a security system.
[0058] For example, the receiving at block 702 may include receiving a flow of video frames output by a video sensor, such as via a wired or wireless communication link. Each frame may be associated with a particular time at which the frame was captured. Further, for example, the receiving at block 702 may be performed to provide the sprint detection module with a basis for identifying a person in one or more frames, and for tracking the person and determining their speed and acceleration at a given time.
[0059] At block 704, the method 700 includes identifying a person in the one or more images. For example, in an aspect, computing device 100, one or more processors 105, one or more memories 110, sprint detection module 125, and / or identifying component 625 may be configured to or may comprise means for identifying a person in the one or more images.
[0060] For example, the identifying at block 704 may include one or more object detection techniques configured to identify a person in one or more frames of a received frame flow. Further, for example, the identifying at block 704 may be performed to identify and track one or more persons in each frame in order to determine a speed and acceleration of the persons.
[0061] At block 706, the method 700 includes calculating an acceleration of the person based on tracking of the person in the one or more images. For example, in an aspect, computing device 100, one or more processors 105, one or more memories 110, sprint detection module 125, and / or calculating component 630 may be configured to or may comprise means for calculating an acceleration of the person based on tracking of the person in the one or more images.
[0062] For example, the calculating at block 706 may include computing one or more of a speed profile of an identified person, a cumulative speed profile of the person, and an acceleration profile of the person. Further, for example, the calculating at block 706 may be performed to determine whether the person is sprinting and, thus, is a potential shoplifter.
[0063] At block 708, the method 700 includes identifying the person as a sprinter based on the acceleration. For example, in an aspect, computing device 100, one or more processors 105, one or more memories 110, sprint detection module 125, and / oridentifying component 625 may be configured to or may comprise means for identifying the person as a sprinter based on the acceleration.
[0064] For example, the identifying at block 708 may include using the one or more profiles to determine that the identified person is sprinting within the building area. Further, for example, the identifying at block 708 may be performed to alert an employee or security service that there is a potential shoplifter in the store or building area.
[0065] At block 710, the method 700 includes causing autonomous execution of one or more sprinter response actions in response to identifying the person as the sprinter. For example, in an aspect, computing device 100, one or more processors 105, one or more memories 110, sprint detection module 125, and / or causing component 635 may be configured to or may comprise means for causing autonomous execution of one or more sprinter response actions in response to identifying the person as the sprinter.
[0066] For example, the causing at block 710 may include performing actions such as alerting a device of an employee or authority of a potential shoplifter. In some examples, the actions may include triggering an alarm, sending location and / or identification information of the person to a device of an authority, etc. Further, for example, the causing at block 710 may be performed to enhance loss prevention techniques at stores or other establishments.
[0067] Referring to FIG. 8A, in an alternative or additional aspect, at block 802, the calculating at block 706 of the acceleration of the person further includes calculating a distance the person traveled based on the tracking of the person in the one or more images, wherein at least a subset of the one or more images are associated with different frames
[0068] For example, the sprint detection module 125 may track, using successive frames, the location of a person within that frame using frame -divided zones. The amount of time (e.g., based on the time between the capture of contiguous frames) a person takes to leave a first zone and / or enter a second zone may indicate a speed of the person being tracked.
[0069] In this optional aspect, at block 804, the calculating at block 706 of the acceleration of the person further includes calculating a cumulative speed of the person for the different frames based on the distance traveled by the person.
[0070] For example, the sprint detection module 125 may determine a cumulative profile of the person being tracked to determine if a slope of the profile is indicative of a sprinting or running person. Here, the sprinting profile may be based on the information generated in the speed profile. If the cumulative speed profile indicates that a person is running (e.g.,a slope exceeds a threshold value), then the sprint detection module 125 may determine to generate an acceleration profile.
[0071] In this optional aspect, at block 806, the method 700 may further include wherein the acceleration is calculated for the different frames based on the cumulative speed and a rolling frame interval. For example, in an aspect, computing device 100, one or more processors 105, one or more memories 110, sprint detection module 125, and / or calculating component 630 may be configured to or may comprise means for wherein the acceleration is calculated for the different frames based on the cumulative speed and a rolling frame interval.
[0072] For example, the calculating at block 806 may include generating an acceleration profile wherein an acceleration for one or more frames in which a person is identified may be computed. Here, the sprint detection module 125 may use second order derivatives to compute an acceleration value associated with a person identified in a given frame based on the time and the cumulative speed of that frame. Further, for example, the calculating at block 806 may be performed to determine whether a tracked person is sprinting and whether an action needs to be taken to apprehend or question the identified person.
[0073] In an alternative or additional aspect, the rolling frame interval is a predetermined number of contiguous frames.
[0074] In an alternative or additional aspect, the acceleration is a second order derivative of the cumulative speed of the person.
[0075] Referring to FIG. 8B, in this optional aspect, at block 808, the identifying at block 708 of the person as the sprinter based on the acceleration further includes identifying a number of peaks of the acceleration within a set of frames.
[0076] For example, the acceleration profile may be defined by acceleration values associated with one or more frames in a predetermined number of contiguous frames. If one or more of the acceleration values are greater than a threshold value (e.g., a peak is identified), then the sprint detection module 125 may determine that the person is a potential sprinter.
[0077] In this optional aspect, at block 810, the identifying at block 708 of the person as the sprinter based on the acceleration further includes determining whether the number of peaks of the acceleration satisfies a threshold number of peaks.
[0078] For example, sprint detection module 125 may determine a number of peaks (e.g., values that exceed a first threshold value) within the predetermined number of frames. Ifthe number of peaks meets or exceeds a second threshold value, then the sprint detection module 125 may determine that the person being tracked is a sprinter.
[0079] Referring to FIG. 8C, in this optional aspect, at block 812, the method 700 may further include wherein the identification of the person as the sprinter is based on the determination that the number of peaks satisfies the threshold number of peaks. For example, in an aspect, computing device 100, one or more processors 105, one or more memories 110, sprint detection module 125, and / or identifying component 625 may be configured to or may comprise means for the identification of the person as the sprinter being based on the determination that the number of peaks satisfies the threshold number of peaks.
[0080] For example, the identifying at block 812 may include determining a number of peaks within the predetermined number of frames. If the number of peaks meets or exceeds a second threshold value, then the sprint detection module 125 may determine that the person being tracked is a sprinter.
[0081] Referring back to FIG. 8B, in this optional aspect, at block 814, the identifying at block 708 of the person as the sprinter based on the acceleration further includes dividing the different frames into different zones.
[0082] For example, the sprint detection module 125 may segment each frame into a number of zones used for tracking the speed of the identified person. The speed may be determined based on how quickly the person moves from a zone and / or moves into another zone.
[0083] In this optional aspect, at block 816, the identifying at block 708 of the person as the sprinter based on the acceleration further includes identifying a number of zones of the different zones the person traveled through based on tracking of the person in one or more images associated with the different frames.
[0084] For example, the sprint detection module 125 may track movement of the identified person within a given frame relative to a previous frame . If the identified person moves through a relatively high number of zones within a short window of time (e.g., a small number of frames), then the sprint detection module 125 may determine that the person is moving fast relative to a person moving through a relatively small number of zones within a longer window of time.
[0085] In this optional aspect, at block 818, the identifying at block 708 of the person as the sprinter based on the acceleration further includes determining whether the number zones satisfies a threshold number of zones.
[0086] For example, the sprint detection module 125 may determine a number of zones a tracked person has passed through within a given period of time. If the number of zones passed through meets or exceeds a threshold value, then the sprint detection module 125 may determine that the person could be sprinting.
[0087] Referring to FIG. 8C, in this optional aspect, at block 820, the method 700 may further include wherein the identification of the person as the sprinter is further based on the determination that the number of zones satisfies the threshold number of zones. For example, in an aspect, computing device 100, one or more processors 105, one or more memories 110, sprint detection module 125, and / or identifying component 625 may be configured to or may comprise means for the identification of the person as the sprinter being further based on the determination that the number of zones satisfies the threshold number of zones.
[0088] For example, the identifying at block 820 may include determining the number of zones a tracked person has passed through within a given period of time. If the number of zones passed through meets or exceeds a threshold value, then the sprint detection module 125 may determine that the person could be sprinting. The sprint detection module 125 may then perform an action, such as notifying an employee or security service.
[0089] In an alternative or additional aspect, at least a subset of the one or more image sensors are located near an entry point or an exit point of a structure associated with the security system.
[0090] Referring to FIG. 9, in an alternative or additional aspect, at block 902, the causing at block 710 of autonomous execution of at least one sprinter response action of the one or more sprinter response actions further includes transmitting an alert to at least one or more computing devices associated with the security system.
[0091] For example, an alert may be sent to a personal device of an employee or a security guard. In some examples, the alert may trigger a noise such as a siren or other audible response. In some examples, the alert may be transmitted to an external computing device (e.g., via WLAN), such as a computing device associated with a police station.
[0092] Referring to FIG. 10, in an alternative or additional aspect, at block 1002, the causing at block 710 of autonomous execution of at least one sprinter response action of the one or more sprinter response actions further includes transmitting an alert to one or more computing devices associated with a local security personnel or a law enforcement personnel.
[0093] For example, the alert may be transmitted via a wired or wireless communication depending on the locality of the computing devices relative to the security system.
[0094] In this optional aspect, at block 1004, the transmitting at block 1002 of the alert further includes identifying the person within a person of interest database, wherein the alert indicates information from the person of interest database associated with the person.
[0095] For example, the sprint detection module 125 may identify characteristics (e.g., bodily or facial) of the person who has been detected as sprinting. The security system may include a local database configured to store existing characteristics (e.g., obtained from a law enforcement service and / or captured previously by the sprint detection module 125).
[0096] Referring to FIG. 11, in an alternative or additional aspect, at block 1102, the method 700 may further include storing information associated with tracking of the person in the one or more images in a data storage unit associated with security system. For example, in an aspect, computing device 100, one or more processors 105, one or more memories 110, sprint detection module 125, and / or storing component 640 may be configured to or may comprise means for storing information associated with tracking of the person in the one or more images in a data storage unit associated with security system.
[0097] For example, the storing at block 1102 may include storing information about the tracked person in a local database. For example, the sprint detection module 125 may identify frames wherein a person’s facial features or bodily features are easily and clearly identifiable. These frames may be stored in order to confirm identity of the person at a later time.
[0098] In an alternative or additional aspect, the stored information comprises at least an image of the one or more images.
[0099] Referring to FIG. 12, in an alternative or additional aspect, at block 1202, the causing at block 710 of autonomous execution of at least one sprinter response action of the one or more sprinter response actions further includes causing at least one of overhead announcements via a speaker associated with the security system or a visual security cue via a light emitting device. For example, in an aspect, computing device 100, one or more processors 105, one or more memories 110, sprint detection module 125, and / or causing component 635 may be configured to or may comprise means for causing at least one of overhead announcements via a speaker associated with the security system or a visual security cue via a light emitting device.
[0100] For example, the causing at block 1202 may include triggering an existing loss prevention technique such as an audible and / or visual alert to employees of the store and / or others within the building area.
[0101] Further, for example, the causing at block 1202 may be performed to prevent a shoplifter from leaving with merchandise.
[0102] While the foregoing disclosure discusses illustrative aspects and / or embodiments, it should be noted that various changes and modifications could be made herein without departing from the scope of the described aspects and / or embodiments as defined by the appended claims. Furthermore, although elements of the described aspects and / or embodiments may be described or claimed in the singular, the plural is contemplated unless limitation to the singular is explicitly stated. Additionally, all or a portion of any aspect and / or embodiment may be utilized with all or a portion of any other aspect and / or embodiment, unless stated otherwise.
[0103] As used herein, a processor, at least one processor, and / or one or more processors, individually or in combination, configured to perform or operable for performing a plurality of actions is meant to include at least two different processors able to perform different, overlapping or non-overlapping subsets of the plurality actions, or a single processor able to perform all of the plurality of actions. In one non-limiting example of multiple processors being able to perform different ones of the plurality of actions in combination, a description of a processor, at least one processor, and / or one or more processors configured or operable to perform actions X, Y, and Z may include at least a first processor configured or operable to perform a first subset of X, Y, and Z (e.g., to perform X) and at least a second processor configured or operable to perform a second subset of X, Y, and Z (e.g., to perform Y and Z). Alternatively, a first processor, a second processor, and a third processor may be respectively configured or operable to perform a respective one of actions X, Y, and Z. It should be understood that any combination of one or more processors each may be configured or operable to perform any one or any combination of a plurality of actions.
[0104] As used herein, a memory, at least one memory, and / or one or more memories, individually or in combination, configured to store or having stored thereon instructions executable by one or more processors for performing a plurality of actions is meant to include at least two different memories able to store different, overlapping or nonoverlapping subsets of the instructions for performing different, overlapping or nonoverlapping subsets of the plurality actions, or a single memory able to store theinstructions for performing all of the plurality of actions. In one non-limiting example of one or more memories, individually or in combination, being able to store different subsets of the instructions for performing different ones of the plurality of actions, a description of a memory, at least one memory, and / or one or more memories configured or operable to store or having stored thereon instructions for performing actions X, Y, and Z may include at least a first memory configured or operable to store or having stored thereon a first subset of instructions for performing a first subset of X, Y, and Z (e.g., instructions to perform X) and at least a second memory configured or operable to store or having stored thereon a second subset of instructions for performing a second subset of X, Y, and Z (e.g., instructions to perform Y and Z). Alternatively, a first memory, and second memory, and a third memory may be respectively configured to store or have stored thereon a respective one of a first subset of instructions for performing X, a second subset of instruction for performing Y, and a third subset of instructions for performing Z. It should be understood that any combination of one or more memories each may be configured or operable to store or have stored thereon any one or any combination of instructions executable by one or more processors to perform any one or any combination of a plurality of actions. Moreover, one or more processors may each be coupled to at least one of the one or more memories and configured or operable to execute the instructions to perform the plurality of actions. For instance, in the above non-limiting example of the different subset of instructions for performing actions X, Y, and Z, a first processor may be coupled to a first memory storing instructions for performing action X, and at least a second processor may be coupled to at least a second memory storing instructions for performing actions Y and Z, and the first processor and the second processor may, in combination, execute the respective subset of instructions to accomplish performing actions X, Y, and Z. Alternatively, three processors may access one of three different memories each storing one of instructions for performing X, Y, or Z, and the three processor may in combination execute the respective subset of instruction to accomplish performing actions X, Y, and Z. Alternatively, a single processor may execute the instructions stored on a single memory, or distributed across multiple memories, to accomplish performing actions X, Y, and Z.Example Aspects
[0105] Clause 1. A method for automated sprinter detection, comprising: receiving one or more images from one or more image sensors associated with a security system;identifying a person in the one or more images; calculating an acceleration of the person based on tracking of the person in the one or more images; identifying the person as a sprinter based on the acceleration; and causing autonomous execution of one or more sprinter response actions in response to identifying the person as the sprinter.
[0106] Clause 2. The method of clause 1, wherein calculating the acceleration of the person further comprises: calculating a distance the person traveled based on the tracking of the person in the one or more images, wherein at least a subset of the one or more images are associated with different frames; calculating a cumulative speed of the person for the different frames based on the distance traveled by the person, and wherein the acceleration is calculated for the different frames based on the cumulative speed and a rolling frame interval.
[0107] Clause 3. The method of clause 2, wherein the rolling frame interval is a predetermined number of frames.
[0108] Clause 4. The method of any of clauses 2 and 3, wherein the acceleration is a second order derivative of the cumulative speed of the person.
[0109] Clause 5. The method of any of clauses 2-4, wherein identifying the person as the sprinter based on the acceleration further comprises: identifying a number of peaks of the acceleration within a set of frames; determining whether the number of peaks of the acceleration satisfies a threshold number of peaks; and wherein the person is identified based on the determination that the number of peaks satisfies the threshold number of peaks.
[0110] Clause 6. The method of clause 5, further comprising: dividing the different frames into different zones; identifying a number of zones of the different zones the person traveled through based on tracking of the person in one or more images associated with the different frames; determining whether the number of zones satisfies a threshold number of zones, and wherein the person is identified based further on the determination that the number of zones satisfies the threshold number of zones.
[0111] Clause 7. The method of any of clauses 1-6, wherein at least a subset of the one or more image sensors are located near an entry point or an exit point of a structure associated with the security system.
[0112] Clause 8. The method of any of clauses 1-7, wherein causing autonomous execution of at least one sprinter response action of the one or more sprinter response actions further comprises: transmitting an alert to at least one or more computing devices associated with the security system.
[0113] Clause 9. The method of any of clauses 1-8, wherein causing autonomous execution of at least one sprinter response action of the one or more sprinter response actions further comprises: transmitting an alert to one or more computing devices associated with a local security personnel or a law enforcement personnel.
[0114] Clause 10. The method of clause 9, wherein transmitting the alert further comprises: identifying the person within a person of interest database, wherein the alert indicates information from the person of interest database associated with the person.
[0115] Clause 11. The method of any of clauses 9 and 10, further comprises: storing information associated with tracking of the person in the one or more images in a data storage unit associated with security system.
[0116] Clause 12. The method of clause 11, wherein the stored information comprises at least an image of the one or more images.
[0117] Clause 13. The method of any of clauses 1-12, wherein causing autonomous execution of at least one sprinter response action of the one or more sprinter response actions further comprises: causing at least one of overhead announcements via a speaker associated with the security system or a visual security cue via a light emitting device.
[0118] Clause 14. An apparatus for automated sprinter detection, comprising: one or more memories; and one or more processors coupled, in any combination, with the one or more memories and configured, individually or in combination, to: receive one or more images from one or more image sensors associated with a security system; identify a person in the one or more images; calculate an acceleration of the person based on tracking of the person in the one or more images; identify the person as a sprinter based on the acceleration; and cause autonomous execution of one or more sprinter response actions in response to identify the person as the sprinter.
[0119] Clause 15. The apparatus of clause 14, wherein to calculate the acceleration of the person the one or more processors are further configured to: calculate a distance the person traveled based on the tracking of the person in the one or more images, wherein at least a subset of the one or more images are associated with different frames; calculate a cumulative speed of the person for the different frames based on the distance traveled by the person, and wherein the acceleration is calculated for the different frames based on the cumulative speed and a rolling frame interval.
[0120] Clause 16. The apparatus of clause 15, wherein the rolling frame interval is a predetermined number of frames.
[0121] Clause 17. The apparatus of any of clauses 15 and 16, wherein the acceleration is a second order derivative of the cumulative speed of the person.
[0122] Clause 18. The apparatus of any of clauses 15-17, wherein to identify the person as the sprinter based on the acceleration the one or more processors are further configured to: identify a number of peaks of the acceleration within a set of frames; determine whether the number of peaks of the acceleration satisfies a threshold number of peaks; and wherein the person is identified based on the determination that the number of peaks satisfies the threshold number of peaks.
[0123] Clause 19. The apparatus of clause 18, wherein the one or more processors are further configured to: divide the different frames into different zones; identify a number of zones of the different zones the person traveled through based on tracking of the person in one or more images associated with the different frames; determine whether the number of zones satisfies a threshold number of zones, and wherein the person is identified based further on the determination that the number of zones satisfies the threshold number of zones.
[0124] Clause 20. The apparatus of any of clauses 14-19, wherein at least a subset of the one or more image sensors are located near an entry point or an exit point of a structure associated with the security system.
[0125] Clause 21. The apparatus of any of clauses 14-20, wherein to cause autonomous execution of at least one sprinter response action of the one or more sprinter response actions the one or more processors are further configured to: transmit an alert to at least one or more computing devices associated with the security system.
[0126] Clause 22. The apparatus of any of clauses 14-21, wherein to cause autonomous execution of at least one sprinter response action of the one or more sprinter response actions the one or more processors are further configured to: transmit an alert to one or more computing devices associated with a local security personnel or a law enforcement personnel.
[0127] Clause 23. The apparatus of clause 22, wherein to transmit the alert the one or more processors are further configured to: identify the person within a person of interest database, wherein the alert indicates information from the person of interest database associated with the person.
[0128] Clause 24. The apparatus of any of clauses 22 and 23, the one or more processors are further configured to: store information associated with tracking of the person in the one or more images in a data storage unit associated with security system.
[0129] Clause 25. The apparatus of clause 24, wherein the stored information comprises at least an image of the one or more images.
[0130] Clause 26. The apparatus of any of clauses 14-25, wherein to cause autonomous execution of at least one sprinter response action of the one or more sprinter response actions the one or more processors are further configured to: cause at least one of overhead announcements via a speaker associated with the security system or a visual security cue via a light emitting device.
[0131] Clause 27. An apparatus comprising: one or more means for performing the method of any of claims 1-13.
[0132] Clause 28. A non-transitory, computer-readable medium comprising computer executable code, the code when executed by one or more processors causes the one or more processors to, individually or in combination, perform the method of any of claims 1-13.
Claims
CLAIMSWhat is claimed is:
1. A method for automated sprinter detection, comprising: receiving one or more images from one or more image sensors associated with a security system; identifying a person in the one or more images; calculating an acceleration of the person based on tracking of the person in the one or more images; identifying the person as a sprinter based on the acceleration; and causing autonomous execution of one or more sprinter response actions in response to identifying the person as the sprinter.
2. The method of claim 1, wherein calculating the acceleration of the person further comprises: calculating a distance the person traveled based on the tracking of the person in the one or more images, wherein at least a subset of the one or more images are associated with different frames; and calculating a cumulative speed of the person for the different frames based on the distance traveled by the person, wherein the acceleration is calculated for the different frames based on the cumulative speed and a rolling frame interval.
3. The method of claim 2, wherein the rolling frame interval is a predetermined number of frames.
4. The method of any one of claims 2 or 3, wherein the acceleration is a second order derivative of the cumulative speed of the person.
5. The method of any one of claims 2-4, wherein identifying the person as the sprinter based on the acceleration further comprises: identifying a number of peaks of the acceleration within a set of frames; and determining whether the number of peaks of the acceleration satisfies a threshold number of peaks, and wherein the person is identified based on the determination that the number of peaks satisfies the threshold number of peaks.
6. The method of claim 5, further comprising: dividing the different frames into different zones; identifying a number of zones of the different zones the person traveled through based on tracking of the person in one or more images associated with the different frames; and determining whether the number of zones satisfies a threshold number of zones, wherein the person is identified based further on the determination that the number of zones satisfies the threshold number of zones.
7. The method of any one of claims 1-6, wherein at least a subset of the one or more image sensors are located near an entry point or an exit point of a structure associated with the security system.
8. The method of any one of claims 1-7, wherein causing autonomous execution of at least one sprinter response action of the one or more sprinter response actions further comprises: transmitting an alert to at least one or more computing devices associated with the security system.
9. The method of any one of claims 1-8, wherein causing autonomous execution of at least one sprinter response action of the one or more sprinter response actions further comprises: transmitting an alert to one or more computing devices associated with a local security personnel or a law enforcement personnel.
10. The method of claim 9, wherein transmitting the alert further comprises: identifying the person within a person of interest database, wherein the alert indicates information from the person of interest database associated with the person.
11. The method of any one of claims 9 or 10, further comprising: storing information associated with tracking of the person in the one or more images in a data storage unit associated with security system.
12. The method of claim 11, wherein the stored information comprises at least an image of the one or more images.
13. The method of any one of claims 1-12, wherein causing autonomous execution of at least one sprinter response action of the one or more sprinter response actions further comprises: causing at least one of overhead announcements via a speaker associated with the security system or a visual security cue via a light emitting device.
14. An apparatus for automated sprinter detection, comprising: one or more memories; and one or more processors coupled, in any combination, with the one or more memories and configured, individually or in combination, to: receive one or more images from one or more image sensors associated with a security system; identify a person in the one or more images; calculate an acceleration of the person based on tracking of the person in the one or more images; identify the person as a sprinter based on the acceleration; and cause autonomous execution of one or more sprinter response actions in response to identify the person as the sprinter.
15. The apparatus of claim 14, wherein to calculate the acceleration of the person the one or more processors are further configured to: calculate a distance the person traveled based on the tracking of the person in the one or more images, wherein at least a subset of the one or more images are associated with different frames; and calculate a cumulative speed of the person for the different frames based on the distance traveled by the person, wherein the acceleration is calculated for the different frames based on the cumulative speed and a rolling frame interval.
16. The apparatus of claim 15, wherein the rolling frame interval is a predetermined number of frames.
17. The apparatus of any one of claims 15 or 16, wherein the acceleration is a second order derivative of the cumulative speed of the person.
18. The apparatus of any one of claims 15-17, wherein to identify the person as the sprinter based on the acceleration the one or more processors are further configured to: identify a number of peaks of the acceleration within a set of frames; and determine whether the number of peaks of the acceleration satisfies a threshold number of peaks, wherein the person is identified based on the determination that the number of peaks satisfies the threshold number of peaks.
19. The apparatus of claim 18, wherein the one or more processors are further configured to: divide the different frames into different zones; identify a number of zones of the different zones the person traveled through based on tracking of the person in one or more images associated with the different frames; and determine whether the number of zones satisfies a threshold number of zones, wherein the person is identified based further on the determination that the number of zones satisfies the threshold number of zones.
20. The apparatus of any one of claims 14-19, wherein at least a subset of the one or more image sensors are located near an entry point or an exit point of a structure associated with the security system.
21. The apparatus of any one of claims 14-20, wherein to cause autonomous execution of at least one sprinter response action of the one or more sprinter response actions the one or more processors are further configured to: transmit an alert to at least one or more computing devices associated with the security system.
22. The apparatus of any one of claims 14-21, wherein to cause autonomous execution of at least one sprinter response action of the one or more sprinter response actions the one or more processors are further configured to:transmit an alert to one or more computing devices associated with a local security personnel or a law enforcement personnel.
23. The apparatus of claim 22, wherein to transmit the alert the one or more processors are further configured to: identify the person within a person of interest database, wherein the alert indicates information from the person of interest database associated with the person.
24. The apparatus of any one of claims 22 or 23, wherein the one or more processors are further configured to: store information associated with tracking of the person in the one or more images in a data storage unit associated with security system.
25. The apparatus of claim 24, wherein the stored information comprises at least an image of the one or more images.
26. The apparatus of any one of claims 14-25, wherein to cause autonomous execution of at least one sprinter response action of the one or more sprinter response actions the one or more processors are further configured to: cause at least one of overhead announcements via a speaker associated with the security system or a visual security cue via a light emitting device.
27. A non-transitory, computer-readable medium comprising computer executable code, the code when executed by one or more processors causes the one or more processors to, individually or in combination, perform an operation for automated sprinter detection, wherein the operation comprises: receiving one or more images from one or more image sensors associated with a security system; identifying a person in the one or more images; calculating an acceleration of the person based on tracking of the person in the one or more images; identifying the person as a sprinter based on the acceleration; and causing autonomous execution of one or more sprinter response actions in response to identifying the person as the sprinter.
28. The non-transitory, computer-readable medium of claim 27, wherein calculating the acceleration of the person further comprises: calculating a distance the person traveled based on the tracking of the person in the one or more images, wherein at least a subset of the one or more images are associated with different frames; and calculating a cumulative speed of the person for the different frames based on the distance traveled by the person, wherein the acceleration is calculated for the different frames based on the cumulative speed and a rolling frame interval.
29. The non-transitory, computer-readable medium of claim 28, wherein the rolling frame interval is a predetermined number of frames.
30. The non-transitory, computer-readable medium of claim of any one of claims 28 or 29, wherein the acceleration is a second order derivative of the cumulative speed of the person.
Citation Information
Patent Citations
Monitor system
US20180130211A1
Method of distinguishing running from walking
US7930135B2