Apparatus and methods for establishing and managing a distributed, modular and extensible video surveillance system
First Claim
1. A video surveillance system module for use in a distributed and extensible video surveillance system, the video surveillance system module comprising:
- a video surveillance camera, wherein the video surveillance camera is remotely programmable;
at least one memory comprising computer readable instructions, and at least one processor configured by execution of the computer readable instructions to cause the module to perform the following;
create a video encoder configured to encode video gathered by the video surveillance camera and to transmit the encoded video to an electronic database system; and
create a video analysis engine coupled to the video surveillance camera to analyze video gathered by the video surveillance camera, wherein the video analysis engine is configuredto be programmable to permit a user to specify video analysis criteria;
to perform activity analysis of the video in accordance with the user-specified video analysis criteria;
to detect and classify objects and object activity observed by the video surveillance camera;
to generate data classifying objects and object activity for use by an entity performing surveillance, the data comprising track information comprising at least a pointer providing access to a segment of video satisfying the user-specified video analysis criteria; and
to transmit the track information, including the pointer providing access to the segment of video satisfying the user-specified video analysis criteria, to the electronic database system.
3 Assignments
0 Petitions
Accused Products
Abstract
Systems and methods are disclosed for implementing and managing distributed video surveillance systems. Systems and methods in accordance with the present invention provide a well-organized structure for describing and implementing distributed video surveillance systems and service protocols for managing the surveillance activities of clusters of video surveillance cameras. In particular, the service protocols provide a high degree of control over the surveillance activities of video surveillance cameras. In addition, the service protocols also provide a great deal of flexibility in selecting and managing a wide range of analytical and managerial tools for available for analyzing and organizing video track information.
-
Citations
53 Claims
-
1. A video surveillance system module for use in a distributed and extensible video surveillance system, the video surveillance system module comprising:
-
a video surveillance camera, wherein the video surveillance camera is remotely programmable; at least one memory comprising computer readable instructions, and at least one processor configured by execution of the computer readable instructions to cause the module to perform the following; create a video encoder configured to encode video gathered by the video surveillance camera and to transmit the encoded video to an electronic database system; and create a video analysis engine coupled to the video surveillance camera to analyze video gathered by the video surveillance camera, wherein the video analysis engine is configured to be programmable to permit a user to specify video analysis criteria; to perform activity analysis of the video in accordance with the user-specified video analysis criteria; to detect and classify objects and object activity observed by the video surveillance camera; to generate data classifying objects and object activity for use by an entity performing surveillance, the data comprising track information comprising at least a pointer providing access to a segment of video satisfying the user-specified video analysis criteria; and to transmit the track information, including the pointer providing access to the segment of video satisfying the user-specified video analysis criteria, to the electronic database system.
-
-
2. A video surveillance camera cluster comprising:
at least one video surveillance system module, the video surveillance system module comprising; a video surveillance camera, wherein the video surveillance camera is remotely programmable; at least one memory comprising computer readable instructions, and at least one processor configured by execution of the computer readable instructions to cause the module to perform the following; create a video encoder configured to encode video gathered by the video surveillance camera and to transmit the encoded video to an electronic database system; and create a video analysis engine coupled to the video surveillance camera to analyze video gathered by the video surveillance camera, wherein the video analysis engine is configured to be programmable to permit a user to specify video analysis criteria;
to perform activity analysis of the video in accordance with the user-specified video analysis criteria;
to detect and classify objects and object activity observed by the video surveillance camera;
to generate data classifying objects and object activity for use by an entity performing surveillance, the data comprising track information comprising at least a pointer providing access to a segment of video satisfying video analysis criteria; and
to transmit the track information, including the pointer providing access to the segment of video satisfying the user-specified video analysis criteria, to the electronic database system.
-
3. A video surveillance camera cluster for incorporation in a video surveillance camera system, the video surveillance camera cluster comprising:
-
a unique identifier for use by the video surveillance camera system to identify the video surveillance camera cluster; at least one video surveillance system module, the video surveillance system module comprising; a video surveillance camera, wherein the video surveillance camera is remotely programmable; at least one memory comprising computer readable instructions, and at least one processor configured by execution of the computer readable instructions to cause the module to perform the following; create a video encoder configured to encode video gathered by the video surveillance camera and to transmit the encoded video to an electronic database system; create a video analysis engine coupled to the video surveillance camera to analyze video gathered by the video surveillance camera, wherein the video analysis engine is configured to be programmable to permit a user to specify video analysis criteria;
to perform activity analysis of the video in accordance with the user-specified video analysis criteria;
to detect and classify objects and object activity observed by the video surveillance camera;
to generate data classifying objects and object activity for use by an entity performing surveillance, the data comprising track information comprising at least a pointer providing access to a segment of video satisfying the user-specified criteria; and
to transmit the track information, including the pointer providing access to the segment of video satisfying the user-specified video analysis criteria, to the electronic database system; andat least one of an output of a camera controller coupled to the video analysis engine and an output of the video encoder coupled to the video analysis engine is coupled to the electronic database system having at least a database server, a video manager server, an application server, and a surveillance application configured to generate an alarm, wherein the electronic database system is configured to display the data and the video in a browser format. - View Dependent Claims (4)
-
-
5. A video surveillance camera system front end comprising:
-
a video surveillance camera cluster comprising; at least one video surveillance system module, the video surveillance system module comprising; a video surveillance camera, wherein the video surveillance camera is remotely programmable; at least one memory comprising computer readable instructions, and at least one processor configured by execution of the computer readable instructions to cause the module to perform the following; create a video encoder configured to encode video gathered by the video surveillance camera and to transmit the encoded video to an electronic database system; and create a video analysis engine coupled to the video surveillance camera to analyze video gathered by the video surveillance camera, wherein the video analysis engine is configured to be programmable to permit a user to specify video analysis criteria;
to perform activity analysis of the video in accordance with the user-specified video analysis criteria;
to detect and classify objects and object activity observed by the video surveillance camera;
to generate data classifying objects and object activity for use by an entity performing a surveillance function, the data comprising track information comprising at least a pointer providing access to a segment of video satisfying the user-specified video analysis criteria; and
to transmit the track information, including the pointer providing access to the segment of video satisfying the user-specified video analysis criteria, to the electronic database system;at least one video surveillance system network coupled to the at least one video surveillance system module; and a remote video surveillance system control interface coupled to the at least one video surveillance system network for controlling the operations of the at least one video surveillance system module. - View Dependent Claims (6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A computer memory medium tangibly embodying a program of machine-readable instructions executable by a digital processing apparatus of a computer system to perform operations, the operations comprising:
-
establishing at least one video surveillance camera cluster comprised of at least one video encoder, at least one video analysis engine, and a plurality of video surveillance cameras by assigning unique identifiers to the at least one video surveillance camera cluster and the plurality of video surveillance cameras, wherein the unique identifiers will be used in an electronic database system for managing operations of the at least one video surveillance camera cluster and the plurality of video surveillance cameras; programming at least one of the plurality of video surveillance cameras in the at least one video surveillance camera cluster; receiving encoded video data from the at least one video encoder in the at least one video surveillance camera cluster, the encoded video data corresponding to at least one of the plurality of video surveillance cameras in the at least one video surveillance camera cluster; assigning a unique identifier to the encoded video data gathered by the at least one video surveillance camera and encoded by the corresponding encoder in the at least one video surveillance camera cluster, wherein the unique identifier will be used by the database system to catalogue video data gathered by the corresponding video surveillance camera when saving the video data for later retrieval; and selecting at least one video analysis operation to be performed on video data gathered by the at least one video surveillance camera in the at least one video surveillance camera cluster, wherein selecting comprises permitting a user to specify video analysis criteria, and wherein the video analysis operation comprises; performing activity analysis of the video data in accordance with the user-specified video analysis criteria; identifying and categorizing objects and object activity observed by the at least one video surveillance camera; and generating data identifying and classifying objects and object activity for use by an entity performing a surveillance function, the data comprising track information comprising at least a pointer providing access to a segment of video data satisfying the user-specified video analysis criteria; causing the video surveillance camera cluster to perform the operations of performing activity analysis, identifying and categorizing, and generating data; and causing the video surveillance camera cluster to transmit the track information, including the pointer providing access to the segment of video satisfying the user-specified video analysis criteria, to the computer system; receiving the track information; and using at least the track information to display corresponding video to the user. - View Dependent Claims (16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53)
-
Specification