The field of invention relates to electronic devices that sense and interpret motion and sense and interpret sounds.
Acoustic detection of gunfire or gunshots is well known in the art. These systems are generally composed of multiple high-tech microphones mounted on telephone and light poles and on high surfaces of buildings. These microphones “continuously listen” to ambient sounds and when a sound is detected with a fast rise time, software algorithms to determine the rise time, peak sound, and the decay rate will analyze the sound in real time. Gunshots have very well understood characteristics that can be analyzed by large computers. Once a gunshot sound is detected, the time of arrival at different microphones of the same sound allows computers, through triangulation, to determine an approximate geographical area where the gunshot originated. A second type of acoustic detection of gunfire or gunshots is through the use of portable or mobile detectors. These detectors will generally listen for a basic acoustic waveform that approximates a gunshot. Once such a waveform is detected it is uploaded to a central computer for additional analysis. A second type of mobile detection is used in mobile devices where the analysis is performed on the mobile device. These types of mobile devices are generally mounted in police vehicles with portable high performance computers due to the amount of computer processing needed to perform the analysis.
Methods for monitoring persons running are well known in the art. Smart Phones have had the ability to monitor personal walking and running and for generating a map showing the path a person has taken while walking or running. Generally these types of sensors rely on a GPS sensor to determine the personal physical location. Some of these devices will not only plot a map track of the path taken but also the periodic speed and elevation gain and loss.
The inventors recognize that what is needed is needed is some way to monitor sounds and personal motion of police officers to determine when an officer is in foot pursuit, involved in an altercation, when gun shots are detected close by an officer, and when an officer is incapacitated.
The present invention includes a portable or mobile hand held device designed to collect real time data consisting of body movement acceleration, GPS position, audio analysis of audio for gunshots and body movement and heart rate. These data are analyzed by algorithms to determine if an officer needs help and if the officer is in a threatening tactical situation.
The present application refers to an audio or acoustic fingerprint, which is a condensed digital summary, deterministically generated from an audio signal that can be used to identify an audio sample or quickly locate similar items in an audio database.
Reference will now be made in detail to various embodiments, examples of which are illustrated in the accompanying drawings. Wherever possible, the same reference numbers will be used throughout the drawings to refer to the same or like parts.
In a preferred embodiment, a gunshot detector is disclosed. The gunshot detector preferably compares a footprint of the sound against a fingerprint database of sounds, rather than analyzing rise, fall, peak, and duration and levels of a sound bit. The database is constructed through recording a plurality of different gunshots from different scenarios, e.g., outside a vehicle, inside a vehicle with the windows rolled up, and inside a vehicle with the windows rolled down. The gunshot recordings are recorded from long barrel guns (rifles), short barrel auto loading guns, and short barrel revolving cylinder guns.
The recordings are made with the fired guns pointing directly away from the recording apparatus, angled toward the recording apparatus, and pointed vertically in relation to the recording apparatus. In this embodiment, the recordings will be analyzed and normalized for each orientation of a gun and for physical placement of the recording apparatus. The resulting database will be generated where a numerical value or fingerprint will represent the analyzed and normalized sounds of the gunshots.
When a portable gunshot detector being carried by a police officer “hears”, what may be a gunshot, the sound is analyzed and a fingerprint of the sound generated. The footprint is then compared against the database resident in the gunshot detector being carried by the officer. If a close match of the generated audio fingerprint is found in the resident database, the gunshot detector speaks a warning of, “GUNSHOT”, to the officer then contacts a dispatcher by sending one or more metadata packages containing the matched gunshot fingerprint from the database and the fingerprint recorded by the gunshot detector along with the officer's identity, tactical state, and GPS location.
In another preferred embodiment, the officer wears a heart rate sensor such as those found in athletic heart rate monitors. These monitors may be contained in a band that wraps around the chest or wraps around the arm and communicates via a radio frequency link to a display. The heart rate sensor may also be contained in a watch that runners wear that displays the runner's heart rate on the front of the watch.
In the present embodiment, a heart rate sensor is fixed to the officer and sends heart rate sensor data to a communications device carried by the officer that can communicate with a dispatcher. This preferred embodiment also has a multi-axis accelerometer and a gyroscope. These two sensors allow the communications device, through mathematical algorithms to determine that the officer may be involved in a foot pursuit, a fight, or if the officer has been injured or killed. In any of these tactical situations, the device will have the capability to send metadata packages to a dispatcher. The metadata can contain the officer's heart rate, GPS position for movement, and other data.
The communications device can differentiate the actions of an officer walking and running. Using heart rate data in addition to movement rate data, the communications device can tell if the officer is walking or running. If the GPS device indicates that the officer is running and his heart rate has accelerated, the communications device will determine that he is in a foot pursuit. If the officer is not moving from a relatively small geographically position and his heart rate accelerates, and the multi-axis accelerometer and gyroscope are indicating rapid movement, the device will assume that the officer is involved in a physical altercation. If the communications device determines that the officer is not physically moving or has fallen and the heart rate sensor determines that the officer's heart rate has dropped to a very low rate and/or has stopped, the communications device will determine that he is severely injured, wounded, or has been killed by an assailant or involved in a fatal accident. If the communications device determines that any of these tactical situations have occurred, it sends metadata packages to a dispatcher.
In another preferred embodiment, the communications device can have a training mode whereby the officer that carries the device will engage in various training scenarios while dressed in full work gear and running in a simulated foot pursuit, engaging in a simulated fight, sitting in a vehicle and once his heart rate drops to a normal level, having other personnel firing weapons outside the vehicle and through open windows of the vehicle. The result of these training scenarios is the construction of a database of movement types, heart rates, physical movements, and determinations.
Additionally, this preferred embodiment will collect and save data for later processing and inclusion into the scenario database on a periodic basis.
Now referencing
In this depiction, microphone and speaker 26 detect sounds in an police officer's environment and separate out sounds with a short duration and fast rise and decay times. Those sounds are processed and an acoustical fingerprint created through the use of one or more algorithms of the plurality of algorithms 16. The resulting suspect fingerprint is matched against a database of gunshot fingerprints by database and engine 28. If a match of the suspect fingerprint is made then the device will alert the officer of a positive ID of a gunshot by outputting the word “GUNSHOT” through the speaker of microphone and speaker 26. While the search for a match is taking place, the device will gather the outputs from three axis accelerometer 18 and three axis gyroscope 20 and heart rate sensor link 22. These data will make a determination of the officer's current tactical status such as (1) in a foot pursuit, (2) an altercation, (3) sitting in a vehicle, (4) injured, and/or (5) killed. If the suspect acoustic fingerprint is determined to be a valid gunshot, the device will format a packet of data including the officer's GPS coordinates, tactical situation, the detected gunshot fingerprint, matched gunshot fingerprint, officer's identification, and other pertinent data. This packet will be sent via comm radio 24 to a dispatch center.
Now referencing
The process starts with test shooter 42 at logic block 46 notify recorder to start. Signal 66 start recording is sent to the plurality of recorders 44 where the recorder operators (not shown) all start their recorders. The physical records (not shown) will be digital records with high sample rate capability.
Generation of gunshot sounds will be through the firing of a plurality of guns (not shown) including automatic handguns, revolver handguns, automatic rifles, and shotguns. Each firearm will be fired a plurality of times.
Logic block 48 select next gun from list of guns starts the collection of sounds with the test shooter picking the first gun from the list of guns to be fired. Control for the procedure then falls through to logic block 50 fire shots away from recorders. At this logic block, test shooter 42 will point the current gun in a direction substantially away from the location of the recorders. Test shooter 42 will fire a plurality of shots from the firearm after which control will fall through to logic block 52. Test shooter 42 will then fire a plurality of shots in a direction substantially toward the location of the recorders after which control will fall through to logic block 54 fire shots substantially vertically in relation to the location of the recorders after which control will fall through to logic decision block 56 last gun?
If the current gun is the last gun on the list to be fired, control will fall through to logic result block 60 YES where signal 70 shooting finished will be sent to logic block 64 process the sound of each gunshot and create database of gunshot fingerprints. If the current gun is NOT the last gun on the list to be fired, control will fall through to logic block 58 NO where control will be transferred to logic block 48 select next gun from list of guns. This loop that ranges from logic block 48 to logic block 58 will be repeated until all of the guns on the list have been fired and their sounds captured on the recording devices 44.
At the conclusion of the gun firings, the recorded sounds will be processed through acoustic fingerprinting algorithms. Acoustic fingerprinting software is well known in the art and commercially shipped in the market. The current application does not claim any art describing the algorithms of how the acoustic fingerprint is created. Each created finger print from a gunshot group will be included in the gunshot fingerprint database.
Now referencing
At decision logic block 112 device spoke “GUNSHOT”? makes a determination as to device having either found or not found a match for the gunshot like sound that was captured. The captured sound may have been a gunshot that was not in the database or was not a gunshot but sounded like a gunshot. The sound may have been created by a vehicle back firing or the detonation of a firework such as a firecracker. If the sound was not a gunshot, then device 104 will not have spoken the word “GUNSHOT”. If the officer heard the sound but did not hear the device speak “GUNSHOT” then he will make a determination as to the sound being a gunshot or not.
If the officer determines that the sound was a gunshot, he will tap the case housing the device 104 indicating that the sound was a gunshot. If this was the case, control will fall through to logic result block 118 YES. This logic result block will send signal 134 send initial report of false negative to logic block 122 Save Sound and Metadata and Upload To Processing Center and Dispatcher. This logic block saves the fingerprint of the “heard” sound along with any pertinent metadata and uploads it to processing center 106 and to the dispatcher (not shown). Device 104 will then send signal 138 send false neg sound to processing center 106 logic block 128 process sound and create fingerprint.
At the same time, officer 102 will, after the incident of the false negative being reported, logic block 120 officer after action tap replies to gunshot question from device. This logic block requests the officer to complete an after action report which will describe the type and model (if known) of the firearm which was fired. This logic block will then send signal 136 send after action metadata to device 104 logic block 124 upload after action report to processing center. This logic block will send signal 140 send after action data to processing center 106 logic block 130 add metadata from after action report. Processing center 106 logic block 130 adds metadata from after action report. This process block adds the additional metadata to the fingerprint that was uploaded from device 104 and added to the acoustic fingerprint database (not shown). Control will then fall through to logic block 132 push down to devices the processed fingerprint. This logic block sends signal 142 new gunshot fingerprint to device 104. At device 104, control will fall through to logic block 126 add new gunshot fingerprint to local database. This action updates the local databases (not shown) that are resident on all devices 104.
The intended purpose of this depiction is to show how processing center 104 database and the local databases residing on devices 104 are updated in real time.
Now referencing
Now referencing
Although only a few embodiments have been disclosed in detail above, other embodiments are possible and the inventors intend these to be encompassed within this specification. The specification describes certain technological solutions to solve the technical problems that are described expressly and inherently in this application. This disclosure describes embodiments, and the claims are intended to cover any modification or alternative or generalization of these embodiments which might be predictable to a person having ordinary skill in the art. For example, other kinds of devices can be used and more or fewer comparisons can be made.
Those of skill would further appreciate that 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 running on a specific purpose machine that is programmed to carry out the operations described in this application, 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 exemplary embodiments.
The various illustrative logical blocks, modules, and circuits described in connection with the embodiments disclosed herein, may be implemented or performed with a general or specific purpose processor, or with hardware that carries out these functions, e.g., a Digital Signal Processor (DSP), an Application Specific Integrated Circuit (ASIC), a Field Programmable Gate Array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. The processor can be part of a computer system that also has an internal bus connecting to cards or other hardware, running based on a system BIOS or equivalent that contains startup and boot software, system memory which provides temporary storage for an operating system, drivers for the hardware and for application programs, disk interface which provides an interface between internal storage device(s) and the other hardware, an external peripheral controller which interfaces to external devices such as a backup storage device, and a network that connects to a hard wired network cable such as Ethernet or may be a wireless connection such as a RF link running under a wireless protocol such as 802.11. Likewise, external bus 18 may be any of but not limited to hard wired external busses such as IEEE-1394 or USB. The computer system can also have a user interface port that communicates with a user interface, and which receives commands entered by a user, and a video output that produces its output via any kind of video output format, e.g., VGA, DVI, HDMI, displayport, or any other form. This may include laptop or desktop computers, and may also include portable computers, including cell phones, tablets such as the IPAD™ and Android platform tablet, and all other kinds of computers and computing platforms.
A processor may also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. These devices may also be used to select values for devices as described herein.
The steps of a method or algorithm described in connection with the embodiments disclosed herein may be embodied directly in hardware, in a software module executed by a processor, using cloud computing, or in combinations. A software module may reside in Random Access Memory (RAM), flash memory, Read Only Memory (ROM), Electrically Programmable ROM (EPROM), Electrically Erasable Programmable ROM (EEPROM), registers, hard disk, a removable disk, a CD-ROM, or any other form of tangible storage medium that stores tangible, non transitory computer based instructions. An exemplary storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium may reside in reconfigurable logic of any type.
In one or more exemplary embodiments, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium. Computer-readable media includes both computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A 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 RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a computer.
The memory storage can also be rotating magnetic hard disk drives, optical disk drives, or flash memory based storage drives or other such solid state, magnetic, or optical storage devices. Also, any connection is properly termed a computer-readable medium. For example, if the software is transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. Disk and disc, as used herein, includes 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. The computer readable media can be an article comprising a machine-readable non-transitory tangible medium embodying information indicative of instructions that when performed by one or more machines result in computer implemented operations comprising the actions described throughout this specification.
Operations as described herein can be carried out on or over a website. The website can be operated on a server computer, or operated locally, e.g., by being downloaded to the client computer, or operated via a server farm. The website can be accessed over a mobile phone or a PDA, or on any other client. The website can use HTML code in any form, e.g., MHTML, or XML, and via any form such as cascading style sheets (“CSS”) or other.
The computers described herein may be any kind of computer, either general purpose, or some specific purpose computer such as a workstation. The programs may be written in C, or Java, Brew or any other programming language. The programs may be resident on a storage medium, e.g., magnetic or optical, e.g. the computer hard drive, a removable disk or media such as a memory stick or SD media, or other removable medium. The programs may also be run over a network, for example, with a server or other machine sending signals to the local machine, which allows the local machine to carry out the operations described herein.
Also, the inventor(s) intend that only those claims which use the words “means for” are intended to be interpreted under 35 USC 112, sixth paragraph. Moreover, no limitations from the specification are intended to be read into any claims, unless those limitations are expressly included in the claims.
Where a specific numerical value is mentioned herein, it should be considered that the value may be increased or decreased by 20%, while still staying within the teachings of the present application, unless some different range is specifically mentioned. Where a specified logical sense is used, the opposite logical sense is also intended to be encompassed.
The previous description of the disclosed exemplary embodiments is provided to enable any person skilled in the art to make or use the present invention. Various modifications to these exemplary 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 invention. Thus, the present invention is not intended to be limited to the embodiments shown herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
This application claims priority from provisional application No. 62/004,361, filed May 29, 2015, the entire contents of which are herewith incorporated by reference.
Number | Date | Country | |
---|---|---|---|
62004361 | May 2014 | US |