System, device, and method for camera placement based on access tier attributes

A system, device, and method for camera placement based on access tier attributes is disclosed. The method includes correlating, by an at least one electronic processor, a geographical location and existing tiered camera deployments with electronically stored indications of crime rates across a geographic area associated with a security agency. The method also includes generating, by the at least one electronic processor, at least one new proposed security camera deployment at at least a first proposed location in the geographic area associated with the security agency having a proposed tier selected from one of a plurality of tiers determined as a function of the correlating.

BACKGROUND

Security cameras are increasingly being deployed, which may collect and store video locally and/or upload video to a central security database. However, visualizing the location and attributes of all cameras in a given area, as well as choosing where to place new cameras or choosing where to move existing cameras, is a time consuming and difficult process, prone to error based in part on a lack of visual relationships between existing cameras and gaps in camera access rights.

DETAILED DESCRIPTION OF THE INVENTION

As discussed earlier, visualizing the location and access tier attributes of all cameras in a given area, relative to current and/or historical crime rates, for use in determining where to place cameras based on access tiers is time consuming and difficult, and prone to error. Thus, there exists a need for an improved method, device, and system for determining suggested camera placements based on access tier attributes.

There are many factors to consider when placing a new camera or relocating an existing camera, such as, the actual location and direction to point it, the zoom and field of view attributes of the camera, interaction and overlap coverage between all cameras, access tiers, and other factors based on camera classifications and other camera parameters. Using some or all of the available sources of camera data, metadata, access tier classifications, and other parameters, via a machine learning and/or artificial intelligence, to provide a recommendation for the placement of a new camera (having a particular determined access tier) or relocating an existing camera (having a particular determined access tier) would allow for more efficient, error free, lower cost, and easily visualized automated processes to determining where, based on current and/or historical crime rates, certain access tiers of cameras should be distributed, installed, and configured. As a result, a responding public security agency can ensure that cameras with appropriate access capabilities are located and accessible based on the determined real-time, historical and/or predicted levels of detected crimes in corresponding geographic jurisdictions being protected by those corresponding agencies, and ease of access to relevant video evidence can be further ensured for crimes being predicted to occur in the future.

In accordance with one example embodiment, there is provided a method for facilitating security camera-related changes as a function of stored indications of existing tiered camera deployments and crime rates. The method includes retrieving, by an at least one electronic processor of a computing device under control by or associated with a public, enterprise, or commercial security agency, from an electronic database, existing tiered camera deployment entries. Each entry in the database includes a geographic location of the respective existing tiered camera deployment and a respective access tier identifier selected from one of at least a first tier in which the security agency has full control over or ownership of the existing tiered camera deployment, a second tier in which the security agency has live video access for the existing tiered camera deployment but less than full control or ownership, and a third tier in which the security agency has no live video access for the existing tiered camera deployment but previously recorded video is obtainable. The method also includes retrieving, by the at least one electronic processor, electronically stored indications of crime rates across a geographic area associated with the security agency. The crime rates vary in intensity over the geographic area. The method also includes correlating, by the at least one electronic processor, the geographical location and the existing tiered camera deployments with an electronically stored indication of crime rates across the geographic area associated with the security agency. The method also includes generating, by the at least one electronic processor, at least one new proposed security camera deployment at at least a first proposed location in the geographic area associated with the security agency having a proposed tier selected from the one of the first, second, and third tiers determined as a function of the correlating. The method also includes causing to be displayed, by the at least one electronic processor, at least one of the proposed tier and the new proposed security camera deployment having the first proposed location via a display device communicatively coupled to at least one input device operable to approve or reject the new proposed security camera deployment.

The generating of the new proposed security camera deployment in the above-mentioned method may, in at least one example, further include dividing the geographic area into substantially similarly sized geometric units, assigning a crime score to each geometric unit based on a determined level of real-time or historical crime occurring within that geometric unit, assigning a camera access tier score to each geometric unit based on access tiers of one or more cameras available within that geometric unit, generating a difference score for each geometric unit based on a difference between the corresponding camera access tier score and corresponding crime score for that geometric unit, and selecting one or more of the geometric units having a highest difference score as the new proposed tiered camera deployment.

The above-mentioned method may, in at least one example, further include one of: i) detecting user input approving the new proposed security camera deployment having the first proposed location and the proposed tier via the input device, and ii) receiving user input transmitted from a reviewing agent computing device approving the new proposed security camera deployment having the first proposed location, and the above-mentioned method may also include: a) responsively generating and transmitting orders to request installation of the new proposed security camera deployment at the first proposed location; or b) responsively causing to be displayed a second new proposed security camera deployment having a second proposed location different from the first proposed location, determined in light of the approved new proposed security camera deployment, via the display device, and transmitting the second proposed security camera deployment having the second proposed location different from the first proposed location, determined in light of the approved new proposed security camera deployment, to a reviewing agent computing device.

The above-mentioned method may, in at least one example, further include providing indications, via the display device, of each of existing tiered camera deployments at the third tier and an input mechanism by which a copy of locally stored video content can be requested to a registered owner of each second tier camera.

In accordance with another example embodiment, there is provided a system that includes an at least one processor and an at least one memory coupled to the at least one processor. The at least one memory contains a set of instructions thereon that when executed by the at least one processor cause the at least one processor to perform a set of functions. The set of functions includes retrieving existing tiered camera deployment entries. Each entry in the database includes a geographic location of a respective existing tiered camera deployment. Each entry in the database also includes a respective access tier identifier selected from one of at least a first tier in which a security agency has full control over or ownership of the existing tiered camera deployment, a second tier in which the security agency has live video access for the existing tiered camera deployment but less than full control or ownership, and a third tier in which the security agency has no live video access for the existing tiered camera deployment but previously recorded video is obtainable. The set of functions also includes retrieving electronically stored indications of crime rates across a geographic area associated with the security agency. The crime rates varying in intensity over the geographic area. The set of functions also includes correlating the geographic location and the tier of the existing tiered camera deployments with an electronically stored indication of crime rates across the geographic area associated with the security agency. The set of functions also includes generating at least one new proposed security camera deployment at at least a first proposed location in the geographic area associated with the security agency having a proposed tier selected from the one of the first, second, and third tiers determined as a function of the correlating. The set of functions also includes causing to be displayed at least one of the proposed tier and the new proposed security camera deployment having the first proposed location via a display device communicatively coupled to at least one input device operable to approve or reject the new proposed security camera deployment.

In accordance with yet another example embodiment, there is provided a non-transient computer readable medium storing program instructions for causing a computer to perform a set of functions. The set of functions includes retrieving, from an at least one electronic memory of the computer, existing tiered camera deployment entries. Each entry in the database includes a geographic location of a respective existing tiered camera deployment. Each entry in the database also includes a respective access tier identifier selected from one of at least a first tier in which the security agency has full control over or ownership of the existing tiered camera deployment, a second tier in which the security agency has live video access for the existing tiered camera deployment but less than full control or ownership, and a third tier in which the security agency has no live video access for the existing tiered camera deployment but previously recorded video is obtainable. The set of functions also includes retrieving, from the at least one electronic memory of the computer, electronically stored indications of crime rates across a geographic area associated with the security agency. The crime rates vary in intensity over the geographic area. The set of functions also includes correlating the geographic location and the existing tiered camera deployments with an electronically stored indication of crime rates across the geographic area associated with the security agency. The set of functions also includes generating at least one new proposed security camera deployment at at least a first proposed location in the geographic area associated with the security agency having a proposed tier selected from the one of the first, second, and third tiers determined as a function of the correlating. The set of functions also includes causing to be displayed, via a display communicatively coupled to the computer, at least one of: the proposed tier, and the new proposed security camera deployment, having the first proposed location, to be approved or rejected by operation of at least one input device of the computer.

Each of the above-mentioned embodiments will be discussed in more detail below, starting with example system and device architectures of the system in which the embodiments may be practiced, followed by an illustration of processing blocks for achieving an improved technical method, device, and system for camera placement based on access tier attributes.

Example embodiments are herein described with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to example embodiments. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a special purpose and unique machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. The methods and processes set forth herein need not, in some embodiments, be performed in the exact sequence as shown and likewise various blocks may be performed in parallel rather than in sequence. Accordingly, the elements of methods and processes are referred to herein as “blocks” rather than “steps.”

The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus that may be on or off-premises, or may be accessed via the cloud in any of a software as a service (SaaS), platform as a service (PaaS), or infrastructure as a service (IaaS) architecture so as to cause a series of operational blocks to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide blocks for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks. It is contemplated that any part of any aspect or embodiment discussed in this specification can be implemented or combined with any part of any other aspect or embodiment discussed in this specification.

Attention is first directed toFIG.1, which depicts a flowchart of a process for determining one or more suggested camera placements based on access tier attributes, in accordance with some example embodiments. The flowchart100comprises a plurality of blocks that result in providing a recommended output of camera placement of a camera at a particular determined access tier.

As depicted in block102, process100begins where an electronic processor of an electronic computing device under control by, or associated with a public, enterprise, or commercial security agency, retrieves, from an electronic database, existing tiered camera deployment entries, each entry in the database including a geographic location of the existing tiered camera deployment and an access tier identifier selected from one of at least a first tier in which the security agency has full control over or ownership of the existing tiered camera deployment, a second tier in which the security agency has real-time access to a video stream of the existing tiered camera deployment but not full control or ownership, and a third tier in which the security agency has no real-time access to a video stream of the existing tiered camera deployment but may obtain previously recorded video at a later time.

At block104, the electronic computing device retrieves electronically stored indications of crime rates across a geographic area associated with the security agency, the crime rates varying in intensity over the geographic area.

At block106, the electronic computing device correlates the geographical location and the plurality of tiers of the existing tiered camera deployments with an electronically stored indication of crime rates across the geographic area associated with the security agency.

At block108, the electronic computing device generates at least one new proposed security camera deployment at a first proposed location in the geographic area associated with the security agency having a proposed tier selected from the one of the first, second, and third tiers determined as a function of the correlating. Also, it will be further understood that the geographic area may, in one or more examples, be divided into substantially similarly sized geometric units. These geometric units and their potential application have been herein previously described. Also as previously mentioned, a difference score for each geometric unit can be generated based on a difference between the corresponding camera access tier score and a corresponding crime score for that geometric unit. In at least one example (i.e. for a new proposed security camera deployment) camera selection may be:

One or more cameras at the first tier in the case where geometric unit(s) have a highest difference score relative to other geometric units;

One or more cameras at the second tier in the case where geometric units have a difference score that is not the highest or the lowest relative to other geometric units; and

Not selected at all in the case where geometric unit(s) having a lowest difference score relative to other geometric units.

At block110, the electronic computing device causes to be displayed at least one of the proposed tier and the new proposed security camera deployment having the first proposed location via a display device communicatively coupled to at least one input device operable to approve or reject the new proposed security camera deployment.

FIG.2diagrammatically illustrates a system200in accordance with some example embodiments. Depicted in respect of the illustrated architecture are a plurality of storage repositories202that provide inputs to a processor and software240to generate an output to indicate a recommended placement of a new or existing camera as depicted in output map260. In one embodiment, block242(forming a part of the processor and software240) represents software to perform the analysis and recommendation for the camera placement, wherein the software represents artificial intelligence and machine learning that will be discussed later in this figure. Also, in another example, the block242represents custom hardware designed for software execution. In some examples, the plurality of storage repositories could provide at least one of the following: source of user input (block204), crime incident data related to public security (block206), camera metadata from different camera sources (including public safety cameras208, and private & public cameras212that includes other private sources210and other public sources214, prediction data (block216), camera image samples from various commercial aggregate repositories, CommandCentral (CC) Vault218and CC Aware220. For example, the following schemas are depicted for the crime incident data and camera registration data. In some examples, the user input is changing the position or orientation or both of a camera to accommodate an obstruction. Also, in some examples, the prediction data is a predetermined area assigned a numerical likelihood of a crime occurring, crime type, and/or incident data supporting the prediction. However, one skilled in the art appreciates utilizing different schemas for the organization of the data in a database as needed for their relevant application, memory size, latency, and data flows.

The processor and software instructions240could store and process one or more machine learning algorithms and/or deep learning algorithms as software in the block242, and may include, but are not limited to: a generalized linear regression algorithm; a random forest algorithm; a support vector machine algorithm; a gradient boosting regression algorithm; a decision tree algorithm; a generalized additive model; neural network algorithms; deep learning algorithms; evolutionary programming algorithms; Bayesian inference algorithms, reinforcement learning algorithms, and the like.

However, it is possible that generalized linear regression algorithms, random forest algorithms, support vector machine algorithms, gradient boosting regression algorithms, decision tree algorithms, generalized additive models, and the like could optionally be selected over neural network algorithms, deep learning algorithms, evolutionary programming algorithms, and the like, in some public security environments. However, any suitable machine learning algorithm and/or deep learning algorithm is within the scope of present examples. As discussed earlier, the algorithms would analyze the inputs received from the storage repositories202and analyze the relevant tiers and relevant camera capabilities database (block222) that is accessible within the storage repositories202to generate an output to indicate a recommended placement of a new or existing camera as depicted in output map260. More detail and discussion on this process will be depicted in the following figures.

Furthermore, the block242may include, but are not limited to, algorithms for one or more of: setting different criteria for tiers, camera capability, and different thresholds and analysis based on real-time crime rates, historical crime rates and/or predicted crime rates. For example, the camera capability could include, but is not limited to, custom alerts, motion-detection night view, 180 or 360-degree field of view, remote focus and high zoom ratio, cloud video storage, weather proof/hardness, and remote tilt control.

Attention is now directed toFIG.3, which depicts a graphical user interface300for displaying camera placements based on a tier classification and a recommended placement for a new or existing camera in accordance with some example embodiments. The graphical user interface depicts a plurality of different tiers for existing cameras based at least in part on the type of control or access, that overlays a map264(within graphical user interface region262) that depicts geographical locations of the cameras with real-time and historical crime rates. In some examples, the different tiers could include some or all of the following. A first tier (for example, camera icons290,292and294) in which the security agency has full control over or ownership of the existing tiered camera deployment, a second tier (for example, camera icons280,282and284) in which the security agency has live video access for the existing tiered camera deployment but less than full control or ownership, and a third tier (for example, camera icons270,274and276) in which the security agency has no live video access to the existing tiered camera deployment but may obtain previously recorded video. The map would then show the different tiers as well as the relevant cameras for each tier in a legend302. Finally, star icons320and324depict suggestions for the placement of two new cameras. However, this example is not limited to recommending two cameras. Also, suggestions for new cameras need not be an entirely new add where no camera existed before. Other possibilities include carrying out an upgrade to make a third tier camera a second tier camera, make a second tier camera a first tier camera, etc. Also, although icons are employed in the illustrated example embodiment, it will be understood that other various suitable forms of displaying indications are also contemplated.

As described earlier, the tier definitions were determined by ownership and control. However, many other factors and attributes could be included to determine a tier classification. For example, the camera attributes with respect to quality and resolution may impact a determination of the tier classification used. However, one skilled in the art appreciates utilizing different criteria to include more control features, more or less tiers, zoom capability, packaging and durability features, etc.

In at least one example embodiment, a tier selection matrix may be used for classification as to the tier within which any given camera would belong to. An example of a tier selection matrix is provided in Table 1 below.

Attention is now directed toFIG.4, which depicts is a flowchart of a method400for a workflow for determining a new camera placement, in accordance with some example embodiments. This figure provides a detailed workflow to represent interactions between the user and the system provided and described earlier in connection withFIG.2.FIG.4depicts a user402, a User Interface Map Recommendation404, the Recommendation Service242, and the storage repositories202(earlier discussed in connection withFIG.2). Also, a user can request adjustments, overrides, or be used as part of the recalculation to allow for input and adjustments to utilize a better-quality camera or request access from a third party or other security agency.

In the first dataflow depicted (420), the user,402, interacts with the camera placement system by requesting to view the application map (for example, the output map260fromFIG.2) and recommendations.

Next, Recommendation Service242provides (425) already processed camera recommendations to the User Interface Map Recommendation404.

In the next dataflow depicted (430), the user402changes the placement recommendation camera criterion that results in a user interaction request (435) to the Recommendation Service242. Consequently, this initiates multiple Source Data requests (shown inFIG.4as “Get Source Data440” and “Source Data445”) from the storage repositories202(earlier discussed in connection withFIG.2). In the illustrated method400, the storage repositories202include Crime Incident and Prediction Sources, Camera Video Data, Command Central Aware Camera Directory, and other Custom Sources to include Public or other sources. Based on all those source data results, updates to camera placement recommendation with tier adjustment is performed (450).

Attention is directed toFIG.5, which illustrates an electronic processing device500for determining camera placements based on access tier attributes, in accordance with some example embodiments. The electronic processing device500may implement the block242shown inFIG.2and may include a first electronic processor505(for example, a microprocessor or other electronic device). The first electronic processor505includes input and output interfaces (not shown) and is electrically coupled to a first memory510, a first network interface515, a microphone520, a speaker525, and a display530. In some examples, the electronic processing device500includes fewer or additional components in configurations different from that illustrated inFIG.5. For instance, the electronic processing device500may additionally include a push-to-talk button and/or a camera, either or both of which may be used to allow the call taker/dispatcher to participate in one of the audio and/or audio/video calls forwarded to the electronic processing device500, or to review video generated by cameras within a security system to which the cameras belong. As another example, the electronic processing device500may include one or more additional input devices such as a computer mouse and/or a keyboard that receive inputs from a user of the electronic processing device500. In some examples, the electronic processing device500performs functionality in addition to or other than the functionality described below. In still further examples, the electronic processing device500may not include a the first network interface515, the microphone520, the display530, and/or the speaker525.

The first memory510may include read only memory (ROM), random access memory (RAM), other non-transitory computer-readable media, or a combination thereof. The first electronic processor505is configured to receive instructions and data from the first memory510and execute, among other things, the instructions. In particular, the first electronic processor505executes instructions stored in the first memory510to perform the methods described herein, including but not limited to the electronic processing device500operations described with respect toFIG.1and its associated text. In some examples, some or all of the first electronic processor505and the first memory510is implemented on devices located at an on-premises apparatus, while in other examples, some or all of the first electronic processor505and the first memory510may be located at a remote cloud-computer cluster accessible via one or more wired and/or wireless networks.

The first memory510may further store, permanently or temporarily, all or portions of one or more of the databases illustrated, for example, inFIG.2and associated text, among other electronically created, modified, and/or stored content.

The first network interface515electronically sends and receives data to and from network-addressable electronic devices that may form part of the system200inFIG.2, among other devices. In some examples, the first network interface515includes one or more transceivers for wirelessly communicating with network-addressable electronic devices that may form part of the system200inFIG.2. Alternatively, or in addition, the first network interface515may include a connector or port for receiving a wired connection for communicating with network-addressable electronic devices that may form part of the system200inFIG.2, such as an Ethernet cable. The first electronic processor505may receive one or more sensor or video data feeds through the first network interface515(for example, data feeds generated by one or more of cameras).

The first electronic processor505may output text and graphics to the (connected) display530, the (connected) speaker525, or to some other electronic recipient via the first network interface515, among other possibilities.

The display530displays images, video, text, and/or data to the subject user, a supervisor, or other individual. The display530may be a liquid crystal display (LCD) screen or an organic light emitting display (OLED) display screen. In some examples, a touch sensitive input interface may be incorporated into the display530as well, allowing the subject user or supervisor to interact with content provided on the display530. In some examples, the speaker525and the display530are referred to as output devices that present data feeds to a subject user or supervisor at the electronic computing device500. In some examples, the microphone520, a computer mouse, and/or a keyboard or a touch-sensitive display are referred to as input devices that receive input from a subject user or supervisor at the electronic processing device500.

Hence, provided herein is a method, software, and system for relocating an existing camera or placing a new camera based on a tier scheme and other inputs relating to crime rates and camera capabilities. For example, different tiers and associated ownership and control were defined and facilitated an automated analysis of recommending a new location for an existing or new camera based at least in part on crime rates or camera capabilities, or both.

As should be apparent from this detailed description above, the operations and functions of the electronic computing device are sufficiently complex as to require their implementation on a computer system, and cannot be performed, as a practical matter, in the human mind. Electronic computing devices such as set forth herein are understood as requiring and providing speed and accuracy and complexity management that are not obtainable by human mental steps, in addition to the inherently digital nature of such operations (e.g., a human mind cannot interface directly with RAM or other digital storage, cannot transmit or receive electronic messages, electronically encoded video, electronically encoded audio, etc., and cannot correlate a geographical location and tiered camera deployments with stored crime rates indicia, among other features and functions set forth herein).