US20170102999A1 - Automated integration of video evidence with data records - Google Patents
Automated integration of video evidence with data records Download PDFInfo
- Publication number
- US20170102999A1 US20170102999A1 US15/387,521 US201615387521A US2017102999A1 US 20170102999 A1 US20170102999 A1 US 20170102999A1 US 201615387521 A US201615387521 A US 201615387521A US 2017102999 A1 US2017102999 A1 US 2017102999A1
- Authority
- US
- United States
- Prior art keywords
- event
- metadata
- data
- digital media
- database
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1461—Backup scheduling policy
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/78—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1458—Management of the backup or restore process
- G06F11/1464—Management of the backup or restore process for networked environments
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2458—Special types of queries, e.g. statistical queries, fuzzy queries or distributed queries
- G06F16/2477—Temporal data queries
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/252—Integrating or interfacing systems involving database management systems between a Database Management System and a front-end application
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/48—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/48—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/487—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using geographical or spatial information, e.g. location
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/40—Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
- G06F16/48—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
- G06F16/489—Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using time information
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/60—Information retrieval; Database structures therefor; File system structures therefor of audio data
- G06F16/61—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/70—Information retrieval; Database structures therefor; File system structures therefor of video data
- G06F16/71—Indexing; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/80—Information retrieval; Database structures therefor; File system structures therefor of semi-structured data, e.g. markup language structured data such as SGML, XML or HTML
- G06F16/81—Indexing, e.g. XML tags; Data structures therefor; Storage structures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/951—Indexing; Web crawling techniques
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/95—Retrieval from the web
- G06F16/953—Querying, e.g. by the use of web search engines
- G06F16/9538—Presentation of query results
-
- G06F17/30041—
-
- G06F17/30044—
-
- G06F17/30778—
-
- G06F17/30858—
-
- G06F17/30864—
-
- G06F17/30911—
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2201/00—Indexing scheme relating to error detection, to error correction, and to monitoring
- G06F2201/84—Using snapshots, i.e. a logical point-in-time copy of the data
Definitions
- Body-mounted or “on-officer” video provides an effective solution for law enforcement agencies to decrease complaints against officers and reduce use of force.
- the quantity of files that are produced by on-officer video deployments result in unprecedented data management issues for these organizations. Prematurely deleting evidence or being unable to find the proper file can undermine an investigation and prosecution. Having officers manually add the information necessary to ensure this does not happen wastes valuable officer time and can never be completely accurate.
- a computer system receives event data associated with a plurality of data records in a database (e.g., a records management system (RMS) or computer-aided dispatch (CAD) database) and receives metadata corresponding to a digital media content file (e.g., a video, audio, or image file).
- a database e.g., a records management system (RMS) or computer-aided dispatch (CAD) database
- CAD computer-aided dispatch
- the digital media content file may be used as evidence in a criminal investigation.
- the event data may be provided in the form of a summary or snapshot of the database, which may include data records covering a limited period of time.
- the computer system performs a comparison of at least a portion of the event data with at least a portion of the metadata.
- the comparison may include, for example, comparing a user identifier (e.g., a badge ID for a police officer that recorded the digital media content) in the metadata with a user identifier in the event data and comparing a time frame (e.g., a start time and end time) in the event data with a time frame in the metadata.
- the computer system automatically identifies a matching event for the digital media content file based on the comparison.
- the matching event is associated with at least one of the data records.
- the computer system automatically tags the digital media content file by modifying the metadata based on event data associated with the matching event. Modifying the metadata may include adding an event identifier, an event type, or a location to the metadata.
- the metadata may be included in the digital media content file.
- the computer system can analyze the modified metadata in response to a search query.
- the search query may include a search parameter
- the modified metadata may include metadata corresponding to the search parameter.
- the computer system can provide search results based on the analysis of the modified metadata.
- a server computer detects event data in a destination folder, encrypts the event data, and uploads the encrypted event data, which is decrypted before performing the comparison.
- the digital media content file can be recorded by any suitable digital media device, such as a video camera.
- the computer system may further include a dock configured to upload digital media content received from the digital media device.
- FIG. 1 is a block diagram depicting an illustrative computer system configured to perform automated matching and tagging of digital media content
- FIG. 2 is a table depicting event data in a database snapshot
- FIG. 3 is a flow chart diagram of an illustrative automated matching and tagging process that can be performed within the computer system of FIG. 1 ;
- FIG. 4 is a block diagram that illustrates basic aspects of a computing device appropriate for use in accordance with embodiments of the present disclosure.
- Embodiments of the present disclosure are generally directed to techniques and tools for automated integration of digital media content (e.g., video, audio, or still images) with data records (e.g., records associated with a records management system (RMS) or computer-aided dispatch (CAD) system).
- data records e.g., records associated with a records management system (RMS) or computer-aided dispatch (CAD) system.
- RMS records management system
- CAD computer-aided dispatch
- one or more embodiments can be used to allow law enforcement agencies to automatically link video taken by officers in the field (e.g., with a body-mounted or vehicle dash-mounted video camera) to data records relating to events (e.g., incidents under investigation).
- Described embodiments allow digital media content evidence to be efficiently and accurately associated with particular events and information associated with those events, such as event types, locations, users (e.g., police officers that recorded the content), or the like.
- Described embodiments include an illustrative computer system that implements a matching algorithm that can be used to automatically match digital media content with such records.
- the illustrative system can be deployed in a law enforcement context in order to effectively manage collection and organization of digital media content evidence.
- benefits of the systems and techniques described herein may include greater accuracy, increased efficiency, and reduced cost.
- Metadata associated with digital media content can be modified automatically, which can help to avoid errors (such as misspellings) and incomplete information associated with manual data entry.
- the modified metadata can make searching for content easier and more accurate.
- the illustrative system frees officers from manual video tagging, reduces involvement of IT staff, and can work with any records system without involving RMS/CAD system vendors. The reduction in time that may otherwise be spent by officers, IT staff, vendors, and the like can translate into significant cost reductions.
- RMS and CAD integrations can provide significant gains in efficiency and accuracy over prior systems.
- FIG. 1 is a block diagram depicting an illustrative computer system 100 configured to perform automated matching and tagging of digital media content.
- the illustrative system 100 includes components of an agency network (e.g., a law enforcement agency's network) and a service provider computer system 130 .
- a summary of records is exported from a database 110 in the form of a snapshot (e.g., a CSV or XML file).
- the database 110 may be an RMS database, a CAD database, a combined RMS/CAD database, or some other database comprising records to be integrated with digital media content.
- a regularly recurring, automated snapshot of the database is generated (e.g., every 12 hours, 24 hours, etc.) from the database 110 .
- the regularity with which the snapshot is generated can serve to place a limit on the time lag between the uploading of the digital media content and the tagging and matching process.
- data also can be obtained from the database 110 in other ways, such as by obtaining potentially relevant database entries through direct queries to the database, or by generating database snapshots on an as-needed basis instead of, or in combination with, regularly generated snapshots.
- an integrator application 122 acts as an intermediary between the database 110 and the service provider computer system 130 .
- the snapshot is generated, it is sent to a destination folder 120 , which is monitored by the integrator application 122 .
- the integrator application 122 performs an encrypted push operation in which the integrator application encrypts the snapshot, uploads the encrypted snapshot to a service provider computer system 130 , and deletes the snapshot from the destination folder 122 . Encryption of the event data helps to secure the event data against both outside and inside security threats.
- the destination folder 120 contains no data before the snapshot is sent, thereby allowing the integrator application 122 to proceed on the assumption that whatever data is detected in the destination folder 120 is a valid snapshot and can be processed accordingly.
- the agency network also includes a firewall 140 .
- Information can be securely transmitted to and from the agency network through the firewall 140 , e.g., via port 443 in a secure sockets layer (SSL) transmission.
- SSL secure sockets layer
- the integrator application 122 and the destination folder 120 reside on the same device (e.g., server 124 ) for ease of communication and to avoid or simplify potential network permission issues. (If the integrator application 122 is on a different device, it may need to be provided with both copy and delete permissions in the destination folder 120 .)
- the integrator application 122 uses .NET Framework, version 4.0, available from Microsoft Corporation, and uses AES encryption with a 256-bit key size. Alternatively, other encryption techniques or key sizes can be used.
- a digital media device 150 transmits digital media content to a dock 160 (e.g., via a direct physical connection, wired or cable connection, or wireless connection).
- the dock may be configured to automatically upload the digital media content and related metadata to the service provider computer system 130 .
- a user e.g., a law enforcement officer
- the digital media device 150 may upload the digital media content and metadata to the service provider computer system 130 without using the dock 160 .
- the digital media device may be connected to or paired with a smart phone, notebook computer, tablet computer, or other device that provides upload capabilities with a wired or wireless Internet connection, mobile network connection, or other secure network connection.
- the system 100 may provide the ability to secure the digital media content, metadata, or other information in several ways.
- the digital media device 150 or the dock 160 may provide encryption functionality to secure the transmission of digital media content, metadata, etc., against both outside and inside security threats, and to protect privacy of the individuals involved.
- the service provider computer system 130 may require successful authentication of the user, digital media device 150 , and/or dock 160 before allowing the upload to proceed.
- the body-mounted video camera may have a unique identifier that can be provided for authentication purposes and/or added to metadata of the video being uploaded.
- the service provider computer system 130 may provide encryption functionality to secure stored digital media content, metadata, etc., as well as to secure any information that is sent back to the agency network (e.g., in response to search queries for digital media content that may relate to a particular investigation).
- the service provider computer system 130 includes storage 132 and an automated matching and tagging module 134 .
- the service provider computer system 130 stores the content and metadata in storage 132 , which may be any suitable storage medium. In practice, the content and metadata may be stored together in the storage 132 or separately. At times, metadata may be retrieved from persistent storage and stored in memory of the service provider computer system 130 to allow quicker access during automated tagging and/or matching processes performed by the automated matching and tagging module 134 , as described in further detail below.
- the service provider computer system 130 can automatically tag the uploaded digital media content with relevant information (e.g., Incident ID, Category, and Location) with reference to the snapshot and match the uploaded digital media content with data records represented in the snapshot, as described in further detail below.
- Content tagging and matching can be monitored in the service provider computer system 130 by a monitoring application (not shown), which can perform functions such as monitoring success or failure of matching operations.
- the automated matching and tagging module 134 can make searching for content easier and more accurate, e.g., by modifying metadata of digital media content based on results of the automated matching and tagging process. Whereas initial metadata associated with a digital media content file may have only basic information, the automated matching and tagging module 134 can modify the metadata to include additional information such as event identifiers, event types, and the like, as described in further detail below. In this way, the metadata associated with digital media content files can be enriched, allowing searches to be more productive. In one possible scenario, an authenticated computing device 170 on an agency network sends search queries for potentially relevant content to the service provider computer system 130 .
- the search queries may include search parameters such as an event identifier, event type, location, or the like, which can be compared with metadata associated with files that have been processed by the automated matching and tagging module 134 . Potentially relevant search results can be provided in responses to search queries.
- the service provider computer system 130 may allow authorized users to securely download or stream digital media content that may be found during a search, e.g., by providing a hyperlink to a corresponding file.
- FIG. 2 depicts a table 200 that represents a snapshot generated from an RMS or CAD database of a law enforcement agency.
- the snapshot contains the following fields, which may be presented in the snapshot in any order:
- User identifier e.g., a Badge ID for the officer that recorded a video
- Event identifier e.g., Event ID
- fields are only examples, and may be supplemented with other fields (e.g., equipment IDs for police vehicles, camera equipment, or the like).
- the fields that are used in a particular implementation may vary depending on factors such as the design and content of the database from which the snapshot is generated, requirements of other programs that may use the data, or other factors.
- location can be recorded in terms of a street address (e.g., the Street and City fields shown in FIG. 2 ) and/or in some other way (e.g., GPS coordinates), and the way in which location is recorded may be based on requirements of a mapping program (e.g., Bing Maps, available from Microsoft Corporation).
- a mapping program e.g., Bing Maps, available from Microsoft Corporation.
- some of the records represented in the snapshot do not have all of the fields populated.
- records associated with Event ID 14-164644 have no values associated with the Event Type, Street, and City fields. This may occur when a data record has been created but lacks complete information for the event.
- Such records may still be used in an automated matching and tagging process, as described in further detail below, even if the ability to tag corresponding digital media content will be somewhat limited by the missing information.
- the computer system 100 may include functionality for improving data integrity.
- Badge IDs for officers in the snapshot are required to match Badge IDs in corresponding officers' profiles in the service provider computer system 130 .
- the service provider computer system 130 may resolve differences in Badge ID values by, for example, changing one or more Badge IDs in the snapshot or in the officers' profiles.
- the computer system 100 may include functionality for accurate mapping of data fields, such as Event Types and categories.
- the service provider computer system 130 compares a list of possible Event Types that could be present in the snapshot with a list of categories in the service provider computer system 130 . If the lists are not identical, the service provider computer system 130 may need mapping instructions. For example, each CAD or RMS Event Type in a snapshot can be mapped to an appropriate category by the service provider, with all possible Event Types being correlated with one or more categories. In one possible mapping technique, multiple Event Types can be mapped to a single category in the service provider computer system 130 , if needed.
- Values in the snapshot and/or the service provider computer system 130 may be subject to restrictions in terms of permissible data types, value ranges, and/or the like. For example, in at least one embodiment, there is a two-character minimum for the Badge ID field.
- An agency can set requirements on category/event type mapping, standardization of user identifiers (e.g., badge IDs or other unique IDs for police officers or other emergency responders), or the like.
- the computer system 100 may include functionality for conformance with such requirements, such as functionality described above with respect to data integrity, permissible data types and/or value ranges, accurate mapping, etc.
- Snapshots can be validated to ensure that they conform to requirements. Validation of snapshots may involve, at least at an initial stage, multiple iterations to ensure that correct data is being pulled from correct fields. Test runs can be performed by a service provider and the results can be verified and shared with the agency. Adjustments can be made by the service provider and/or the agency to ensure accuracy.
- an illustrative digital media content matching and tagging algorithm is described that can be used to match digital media content (e.g., video, audio, or still image evidence in a criminal investigation) with data records and tag the content with additional metadata based on the results of the matching process.
- digital media content e.g., video, audio, or still image evidence in a criminal investigation
- metadata may include an incident identifier, an incident location, and an incident category.
- FIG. 3 is a flow chart diagram of an illustrative matching and tagging process 300 that can be performed in a computer system, such as the service provider computer system 130 shown in FIG. 1 .
- the system receives event data associated with data records in a database.
- the event data can be provided in the form of database snapshots (e.g., CAD or RMS snapshots) generated on a regular basis (e.g., daily or twice per day), as described above.
- the event data is associated with data records that correspond with one or more events, such as incidents that a law enforcement agency responded to.
- the event data may include data fields such as “Incident ID” or “Event ID”; “Officer ID” or “Badge ID”; “Start Time” and “End Time”; “Location” (e.g., a street address or GPS coordinates), and “Category” or “Event Type” (e.g., an incident type such as “Larceny,” “Domestic Disturbance,” etc.).
- a service provider converts received event data into an internal common format so the matching can be done in a generic way for a variety of customers (such as multiple law enforcement agencies), which allows data processing to proceed in a more efficient and timely manner.
- the system receives metadata corresponding to a digital media content file, and at step 330 , the system compares the event data with the metadata. If the metadata and/or event data are encrypted, the system decrypts the encrypted data before performing the comparison.
- initial metadata for unmatched digital media content is obtained, and each entry S of the event data is processed to search for matches.
- the system automatically identifies a matching event for the digital media content file based on the comparison. Matches can be detected in different ways, depending on the content of the initial metadata, the content of the event data, and other factors.
- the initial metadata may be generated automatically, e.g., by the digital media device 150 that was used to record the content.
- matches can be identified based on different kinds of comparisons, or comparisons of different attributes or combinations of attributes. For example, a match may be identified based on the values of V(Officer ID) and V(Start Time), without regard to V(End Time), based on the assumption that a match should be identified for any video made by an officer that begins within a specified time window, regardless of when the video ends. This can account for situations where the officer inadvertently continues recording longer than necessary, which may place V(End Time) beyond the value of S(End Time). As another example, if GPS or other location data is included in the initial metadata, matches may be identified based on comparisons of Start Time, End Time, and location information. For a greater degree of certainty of the match, the comparisons of Start Time, End Time, and location information can be combined with a comparison of a user identifier (e.g., Officer ID).
- a user identifier e.g., Officer ID
- the earliest and latest records represented in the event data can define a time window to use for the matching process.
- Uploads of digital media content files can sometimes be delayed for long periods of time, e.g., due to an officer's schedule, unexpected emergencies, etc. If an officer waits 48 hours to upload files, the matching process for that day's CAD/RMS data may run before this transfer.
- snapshots can contain data in a “look-back” window that exceeds the regular time interval (e.g., 12 hours, 24 hours, etc.) between snapshots.
- the snapshots can include the previous 3 days (72 hours) worth of data to try to capture videos in the matching process that were uploaded within 72 hours of being captured in the field.
- the look-back window can help to ensure that files will be tagged correctly if they are uploaded within the predefined time period after an event.
- the look-back window can be set as a 2- or 3-times multiple of the regular time interval, or any other desired length of time.
- Digital media content that was created within the time window can be requested by the automated tagging and matching module 134 of the service provider computer system 130 .
- the service provider computer system 130 may retrieve metadata from persistent storage and store it in memory of the service provider computer system 130 to allow quicker access during automated tagging and/or matching processes performed by the automated matching and tagging module 134 .
- the automated matching and tagging module 134 processes metadata and does not need to process the digital media content itself to perform automated tagging and matching. This aspect provides significant benefits from a technical perspective (e.g., in terms of reduced processing time) and also allows the digital media content to remain securely stored during such processing.
- the system automatically tags the digital media content file by modifying the metadata (e.g., by adding to or updating the metadata) based on event data associated with matching event.
- the automated tagging and matching module 134 can automatically add metadata fields or update values of metadata fields for the digital media content, depending on the information that is available for the matching event.
- metadata fields such as such as “Incident Identifier,” “Category,” and “Location” can be added to the metadata.
- Each field can provide benefits on its own or in combination with other fields.
- the “Incident Identifier” may be useful for allowing digital media content to be found in response to database queries for evidence relating to a particular incident.
- “Location” may be useful for allowing database queries by location.
- “Category” may be associated with a time period for which evidence of that category should be retained, which can be helpful for complying with agency rules or other laws or regulations regarding retention of data or evidence.
- some of the records represented in the snapshot do not have all of the fields populated with values.
- records associated with Event ID 14-164644 have no values associated with the Event Type, Street, and City fields.
- such records may still be used in an automated matching and tagging process, even if the ability to tag corresponding digital media content may be somewhat limited by the missing information.
- a video uploaded by the officer associated with Badge ID N92 may be matched to a corresponding entry in the snapshot 200 based on the Badge ID, Start Time, and End Time.
- the matching video still can be tagged with the corresponding Event ID based on the information in the snapshot 200 , even though the Event Type, Street, and City are missing.
- Subsequent snapshots may include updated information for Event ID 14-164644, and the metadata for the matching video may be updated accordingly.
- Matching digital media content with database entries can also allow the system to detect and correct data entry errors, thereby enhancing data integrity. For example, if an officer has the ability to manually set the “Incident ID” in the field, the illustrative matching algorithm can detect any discrepancies between the manually-entered “Incident ID” and the “Incident ID” from the CAD/RMS database, and correct it.
- the system can detect inconsistent or duplicative data in snapshots.
- the automated matching and tagging module 134 may detect that there are multiple database entries each having the same Badge ID, Start Time, and End Time. This may occur, for example, where multiple Event IDs are inadvertently assigned to the same underlying event. This detection capability may be useful to prevent duplicate matches if a rule requires an individual digital media file to be matched with no more than one database entry, or to avoid tagging content with incorrect metadata.
- the system can be configured to provide manual matching and/or manual tagging functionality that may be used to supplement results of an automated matching and tagging process.
- described techniques and tools may be implemented by any suitable computing device or set of devices.
- a data store contains data as described herein and may be hosted, for example, by a database management system (DBMS) to allow a high level of data throughput between the data store and other components of a described system.
- the DBMS may also allow the data store to be reliably backed up and to maintain a high level of availability.
- a data store may be accessed by other system components via a network, such as a private network in the vicinity of the system, a secured transmission channel over the public Internet, a combination of private and public networks, and the like.
- a data store may include structured data stored as files in a traditional file system. Data stores may reside on computing devices that are part of or separate from components of systems described herein. Separate data stores may be combined into a single data store, or a single data store may be split into two or more separate data stores.
- server devices may include suitable computing devices configured to provide information and/or services described herein.
- Server devices may include any suitable computing devices, such as dedicated server devices.
- Server functionality provided by server devices may, in some cases, be provided by software (e.g., virtualized computing instances or application objects) executing on a computing device that is not a dedicated server device.
- client can be used to refer to a computing device that obtains information and/or accesses services provided by a server over a communication link. However, the designation of a particular device as a client device does not necessarily require the presence of a server.
- a single device may act as a server, a client, or both a server and a client, depending on context and configuration.
- Actual physical locations of clients and servers are not necessarily important, but the locations can be described as “local” for a client and “remote” for a server to illustrate a common usage scenario in which a client is receiving information provided by a server at a remote location.
- FIG. 4 is a block diagram that illustrates aspects of an illustrative computing device 400 appropriate for use in accordance with embodiments of the present disclosure.
- the description below is applicable to servers, personal computers, mobile phones, smart phones, tablet computers, embedded computing devices, and other currently available or yet-to-be-developed devices that may be used in accordance with embodiments of the present disclosure.
- the computing device 400 includes at least one processor 402 and a system memory 404 connected by a communication bus 406 .
- the system memory 404 may be volatile or nonvolatile memory, such as read only memory (“ROM”), random access memory (“RAM”), EEPROM, flash memory, or other memory technology.
- ROM read only memory
- RAM random access memory
- EEPROM electrically erasable programmable read-only memory
- flash memory or other memory technology.
- system memory 404 typically stores data and/or program modules that are immediately accessible to and/or currently being operated on by the processor 402 .
- the processor 402 may serve as a computational center of the computing device 400 by supporting the execution of instructions.
- the computing device 400 may include a network interface 410 comprising one or more components for communicating with other devices over a network.
- Embodiments of the present disclosure may access basic services that utilize the network interface 410 to perform communications using common network protocols.
- the network interface 410 may also include a wireless network interface configured to communicate via one or more wireless communication protocols, such as WiFi, 2G, 3G, 4G, LTE, WiMAX, Bluetooth, and/or the like.
- the computing device 400 also includes a storage medium 408 .
- services may be accessed using a computing device that does not include means for persisting data to a local storage medium. Therefore, the storage medium 408 depicted in FIG. 4 is optional.
- the storage medium 408 may be volatile or nonvolatile, removable or nonremovable, implemented using any technology capable of storing information such as, but not limited to, a hard drive, solid state drive, CD-ROM, DVD, or other disk storage, magnetic tape, magnetic disk storage, and/or the like.
- computer-readable medium includes volatile and nonvolatile and removable and nonremovable media implemented in any method or technology capable of storing information, such as computer-readable instructions, data structures, program modules, or other data.
- system memory 404 and storage medium 408 depicted in FIG. 4 are examples of computer-readable media.
- FIG. 4 does not show some of the typical components of many computing devices.
- the computing device 400 may include input devices, such as a keyboard, keypad, mouse, trackball, microphone, video camera, touchpad, touchscreen, electronic pen, stylus, and/or the like.
- Such input devices may be coupled to the computing device 400 by wired or wireless connections including RF, infrared, serial, parallel, Bluetooth, USB, or other suitable connection protocols using wireless or physical connections.
- data can be captured by input devices and transmitted or stored for future processing.
- the processing may include encoding data streams, which can be subsequently decoded for presentation by output devices.
- Media data can be captured by multimedia input devices and stored by saving media data streams as files on a computer-readable storage medium (e.g., in memory or persistent storage on a client device, server, administrator device, or some other device).
- Input devices can be separate from and communicatively coupled to computing device 400 (e.g., a client device), or can be integral components of the computing device 400 .
- multiple input devices may be combined into a single, multifunction input device (e.g., a video camera with an integrated microphone).
- the computing device 400 may also include output devices such as a display, speakers, printer, etc.
- the output devices may include video output devices such as a display or touchscreen.
- the output devices also may include audio output devices such as external speakers or earphones.
- the output devices can be separate from and communicatively coupled to the computing device 400 , or can be integral components of the computing device 400 .
- Input functionality and output functionality may be integrated into the same input/output device (e.g., a touchscreen). Any suitable input device, output device, or combined input/output device either currently known or developed in the future may be used with described systems.
- functionality of computing devices described herein may be implemented in computing logic embodied in hardware or software instructions, which can be written in a programming language, such as C, C++, COBOL, JAVATM, PHP, Perl, Python, Ruby, HTML, CSS, JavaScript, VBScript, ASPX, Microsoft .NETTM languages such as C#, and/or the like.
- Computing logic may be compiled into executable programs or written in interpreted programming languages.
- functionality described herein can be implemented as logic modules that can be duplicated to provide greater processing capability, merged with other modules, or divided into sub-modules.
- the computing logic can be stored in any type of computer-readable medium (e.g., a non-transitory medium such as a memory or storage medium) or computer storage device and be stored on and executed by one or more general-purpose or special-purpose processors, thus creating a special-purpose computing device configured to provide functionality described herein.
- a computer-readable medium e.g., a non-transitory medium such as a memory or storage medium
- computer storage device e.g., a non-transitory medium such as a memory or storage medium
- general-purpose or special-purpose processors e.g., a general-purpose or special-purpose processors
- modules or subsystems can be separated into additional modules or subsystems or combined into fewer modules or subsystems. Modules or subsystems can be omitted or supplemented with other modules or subsystems. Functions that are indicated as being performed by a particular device, module, or subsystem may instead be performed by one or more other devices, modules, or subsystems.
- automated matching and tagging functionality is described with reference to FIG. 1 as being performed in a service provider computer system 130 , it also possible for matching and tagging functionality to be performed by a suitably configured device on an agency network, or some other device.
- processing stages in the various techniques can be separated into additional stages or combined into fewer stages.
- processing stages in the various techniques can be omitted or supplemented with other techniques or processing stages.
- processing stages that are described as occurring in a particular order can instead occur in a different order.
- processing stages that are described as being performed in a series of steps may instead be handled in a parallel fashion, with multiple modules or software processes concurrently handling one or more of the illustrated processing stages.
- processing stages that are indicated as being performed by a particular device or module may instead be performed by one or more other devices or modules.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Multimedia (AREA)
- Library & Information Science (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Computational Linguistics (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
A computer system receives event data associated with data records in a database, receives metadata corresponding to a digital media content file (e.g., a video, audio, or image file), compares the event data with the metadata, automatically identifies a matching event based on the comparison, and automatically tags the content file by modifying the metadata based on event data associated with the matching event. In one usage scenario, the digital media content file may be used as evidence in a criminal investigation. The event data may be provided in the form of a summary or snapshot of the database, which may include data records covering a limited period of time. The digital media content file can be recorded by any suitable digital media device, such as a video camera. The computer system may further include a dock configured to upload digital media content received from the digital media device.
Description
- This application is a continuation of application Ser. No. 14/687,483, filed Apr. 15, 2015, which claims the benefit of Provisional Application No. 62/127,804, filed Mar. 3, 2015, the disclosures of which are hereby incorporated by reference herein in their entirety.
- Body-mounted or “on-officer” video provides an effective solution for law enforcement agencies to decrease complaints against officers and reduce use of force. However, the quantity of files that are produced by on-officer video deployments result in unprecedented data management issues for these organizations. Prematurely deleting evidence or being unable to find the proper file can undermine an investigation and prosecution. Having officers manually add the information necessary to ensure this does not happen wastes valuable officer time and can never be completely accurate.
- This summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This summary is not intended to identify key features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.
- In one aspect, a computer system receives event data associated with a plurality of data records in a database (e.g., a records management system (RMS) or computer-aided dispatch (CAD) database) and receives metadata corresponding to a digital media content file (e.g., a video, audio, or image file). In one usage scenario, the digital media content file may be used as evidence in a criminal investigation. The event data may be provided in the form of a summary or snapshot of the database, which may include data records covering a limited period of time. The computer system performs a comparison of at least a portion of the event data with at least a portion of the metadata. The comparison may include, for example, comparing a user identifier (e.g., a badge ID for a police officer that recorded the digital media content) in the metadata with a user identifier in the event data and comparing a time frame (e.g., a start time and end time) in the event data with a time frame in the metadata. The computer system automatically identifies a matching event for the digital media content file based on the comparison. The matching event is associated with at least one of the data records. The computer system automatically tags the digital media content file by modifying the metadata based on event data associated with the matching event. Modifying the metadata may include adding an event identifier, an event type, or a location to the metadata. The metadata may be included in the digital media content file.
- The computer system can analyze the modified metadata in response to a search query. The search query may include a search parameter, and the modified metadata may include metadata corresponding to the search parameter. The computer system can provide search results based on the analysis of the modified metadata.
- In another aspect, a server computer detects event data in a destination folder, encrypts the event data, and uploads the encrypted event data, which is decrypted before performing the comparison. The digital media content file can be recorded by any suitable digital media device, such as a video camera. The computer system may further include a dock configured to upload digital media content received from the digital media device.
- The foregoing aspects and many of the attendant advantages of this invention will become more readily appreciated as the same become better understood by reference to the following detailed description, when taken in conjunction with the accompanying drawings, wherein:
-
FIG. 1 is a block diagram depicting an illustrative computer system configured to perform automated matching and tagging of digital media content; -
FIG. 2 is a table depicting event data in a database snapshot; -
FIG. 3 is a flow chart diagram of an illustrative automated matching and tagging process that can be performed within the computer system ofFIG. 1 ; and -
FIG. 4 is a block diagram that illustrates basic aspects of a computing device appropriate for use in accordance with embodiments of the present disclosure. - Embodiments of the present disclosure are generally directed to techniques and tools for automated integration of digital media content (e.g., video, audio, or still images) with data records (e.g., records associated with a records management system (RMS) or computer-aided dispatch (CAD) system). For example, one or more embodiments can be used to allow law enforcement agencies to automatically link video taken by officers in the field (e.g., with a body-mounted or vehicle dash-mounted video camera) to data records relating to events (e.g., incidents under investigation). Described embodiments allow digital media content evidence to be efficiently and accurately associated with particular events and information associated with those events, such as event types, locations, users (e.g., police officers that recorded the content), or the like.
- Described embodiments include an illustrative computer system that implements a matching algorithm that can be used to automatically match digital media content with such records. The illustrative system can be deployed in a law enforcement context in order to effectively manage collection and organization of digital media content evidence. In such a context, benefits of the systems and techniques described herein may include greater accuracy, increased efficiency, and reduced cost.
- As described herein, metadata associated with digital media content can be modified automatically, which can help to avoid errors (such as misspellings) and incomplete information associated with manual data entry. The modified metadata can make searching for content easier and more accurate. The illustrative system frees officers from manual video tagging, reduces involvement of IT staff, and can work with any records system without involving RMS/CAD system vendors. The reduction in time that may otherwise be spent by officers, IT staff, vendors, and the like can translate into significant cost reductions. By automating the addition of metadata to videos or other digital media content that officers record, RMS and CAD integrations can provide significant gains in efficiency and accuracy over prior systems.
- In the following description, numerous specific details are set forth in order to provide a thorough understanding of illustrative embodiments of the present disclosure. It will be apparent to one skilled in the art, however, that many embodiments of the present disclosure may be practiced without some or all of the specific details. In some instances, well-known process steps have not been described in detail in order not to unnecessarily obscure various aspects of the present disclosure. Further, it will be appreciated that embodiments of the present disclosure may employ any combination of features described herein. The illustrative examples provided herein are not intended to be exhaustive or to limit the claimed subject matter to the precise forms disclosed.
- The technological solutions described herein provide technological benefits relating to, for example, processing and handling of digital media content (e.g., digital video) and related metadata within computer systems. It will be understood that although systems and processes are described herein in terms of “evidence,” “law enforcement,” and the like in order to describe illustrative usage scenarios, the disclosed subject matter is not inherently legal in nature or limited to organization of human activities.
- In this section, an illustrative system that performs automated matching and tagging of digital media content is described. Although specific details and arrangements are described in this section for the purpose of illustration, many alternatives to the illustrative system are possible in accordance with principles described herein.
-
FIG. 1 is a block diagram depicting anillustrative computer system 100 configured to perform automated matching and tagging of digital media content. Theillustrative system 100 includes components of an agency network (e.g., a law enforcement agency's network) and a serviceprovider computer system 130. In the example shown inFIG. 1 , a summary of records is exported from adatabase 110 in the form of a snapshot (e.g., a CSV or XML file). In practice, thedatabase 110 may be an RMS database, a CAD database, a combined RMS/CAD database, or some other database comprising records to be integrated with digital media content. In at least one embodiment, a regularly recurring, automated snapshot of the database is generated (e.g., every 12 hours, 24 hours, etc.) from thedatabase 110. The regularity with which the snapshot is generated can serve to place a limit on the time lag between the uploading of the digital media content and the tagging and matching process. It should be understood that data also can be obtained from thedatabase 110 in other ways, such as by obtaining potentially relevant database entries through direct queries to the database, or by generating database snapshots on an as-needed basis instead of, or in combination with, regularly generated snapshots. - In the example shown in
FIG. 1 , anintegrator application 122 acts as an intermediary between thedatabase 110 and the serviceprovider computer system 130. Once the snapshot is generated, it is sent to adestination folder 120, which is monitored by theintegrator application 122. When a snapshot is detected, theintegrator application 122 performs an encrypted push operation in which the integrator application encrypts the snapshot, uploads the encrypted snapshot to a serviceprovider computer system 130, and deletes the snapshot from thedestination folder 122. Encryption of the event data helps to secure the event data against both outside and inside security threats. In at least one embodiment, thedestination folder 120 contains no data before the snapshot is sent, thereby allowing theintegrator application 122 to proceed on the assumption that whatever data is detected in thedestination folder 120 is a valid snapshot and can be processed accordingly. Typically, for security reasons, the agency network also includes afirewall 140. Information can be securely transmitted to and from the agency network through thefirewall 140, e.g., via port 443 in a secure sockets layer (SSL) transmission. - In at least one embodiment, the
integrator application 122 and thedestination folder 120 reside on the same device (e.g., server 124) for ease of communication and to avoid or simplify potential network permission issues. (If theintegrator application 122 is on a different device, it may need to be provided with both copy and delete permissions in thedestination folder 120.) In at least one embodiment, theintegrator application 122 uses .NET Framework, version 4.0, available from Microsoft Corporation, and uses AES encryption with a 256-bit key size. Alternatively, other encryption techniques or key sizes can be used. - In the example shown in
FIG. 1 , a digital media device 150 (e.g., a digital video camera, audio recorder, or the like) transmits digital media content to a dock 160 (e.g., via a direct physical connection, wired or cable connection, or wireless connection). The dock may be configured to automatically upload the digital media content and related metadata to the serviceprovider computer system 130. In one usage scenario, a user (e.g., a law enforcement officer) records digital video content on a video camera during a work shift and inserts the camera into a suitably configureddock 160 at the end of the shift. Alternatively, thedigital media device 150 may upload the digital media content and metadata to the serviceprovider computer system 130 without using thedock 160. For example, the digital media device may be connected to or paired with a smart phone, notebook computer, tablet computer, or other device that provides upload capabilities with a wired or wireless Internet connection, mobile network connection, or other secure network connection. - The
system 100 may provide the ability to secure the digital media content, metadata, or other information in several ways. For example, thedigital media device 150 or thedock 160 may provide encryption functionality to secure the transmission of digital media content, metadata, etc., against both outside and inside security threats, and to protect privacy of the individuals involved. As another example, the serviceprovider computer system 130 may require successful authentication of the user,digital media device 150, and/or dock 160 before allowing the upload to proceed. The body-mounted video camera may have a unique identifier that can be provided for authentication purposes and/or added to metadata of the video being uploaded. As another example, the serviceprovider computer system 130 may provide encryption functionality to secure stored digital media content, metadata, etc., as well as to secure any information that is sent back to the agency network (e.g., in response to search queries for digital media content that may relate to a particular investigation). - The service
provider computer system 130 includesstorage 132 and an automated matching andtagging module 134. The serviceprovider computer system 130 stores the content and metadata instorage 132, which may be any suitable storage medium. In practice, the content and metadata may be stored together in thestorage 132 or separately. At times, metadata may be retrieved from persistent storage and stored in memory of the serviceprovider computer system 130 to allow quicker access during automated tagging and/or matching processes performed by the automated matching andtagging module 134, as described in further detail below. The serviceprovider computer system 130 can automatically tag the uploaded digital media content with relevant information (e.g., Incident ID, Category, and Location) with reference to the snapshot and match the uploaded digital media content with data records represented in the snapshot, as described in further detail below. Content tagging and matching can be monitored in the serviceprovider computer system 130 by a monitoring application (not shown), which can perform functions such as monitoring success or failure of matching operations. - The automated matching and
tagging module 134 can make searching for content easier and more accurate, e.g., by modifying metadata of digital media content based on results of the automated matching and tagging process. Whereas initial metadata associated with a digital media content file may have only basic information, the automated matching andtagging module 134 can modify the metadata to include additional information such as event identifiers, event types, and the like, as described in further detail below. In this way, the metadata associated with digital media content files can be enriched, allowing searches to be more productive. In one possible scenario, an authenticatedcomputing device 170 on an agency network sends search queries for potentially relevant content to the serviceprovider computer system 130. The search queries may include search parameters such as an event identifier, event type, location, or the like, which can be compared with metadata associated with files that have been processed by the automated matching andtagging module 134. Potentially relevant search results can be provided in responses to search queries. The serviceprovider computer system 130 may allow authorized users to securely download or stream digital media content that may be found during a search, e.g., by providing a hyperlink to a corresponding file. -
FIG. 2 depicts a table 200 that represents a snapshot generated from an RMS or CAD database of a law enforcement agency. In the example shown inFIG. 2 , the snapshot contains the following fields, which may be presented in the snapshot in any order: - 1. User identifier (e.g., a Badge ID for the officer that recorded a video):
- 2. Start Time (officer arrival time—when the officer took the call);
- 3. End Time (officer departure time—when the officer closed the call);
- 4. Event identifier (e.g., Event ID);
- 5. Event type (category);
- 6. Street (address); and
- 7. City.
- These fields are only examples, and may be supplemented with other fields (e.g., equipment IDs for police vehicles, camera equipment, or the like). The fields that are used in a particular implementation may vary depending on factors such as the design and content of the database from which the snapshot is generated, requirements of other programs that may use the data, or other factors. For example, location can be recorded in terms of a street address (e.g., the Street and City fields shown in
FIG. 2 ) and/or in some other way (e.g., GPS coordinates), and the way in which location is recorded may be based on requirements of a mapping program (e.g., Bing Maps, available from Microsoft Corporation). - In the example shown in
FIG. 2 , some of the records represented in the snapshot do not have all of the fields populated. In particular, records associated with Event ID 14-164644 have no values associated with the Event Type, Street, and City fields. This may occur when a data record has been created but lacks complete information for the event. Such records may still be used in an automated matching and tagging process, as described in further detail below, even if the ability to tag corresponding digital media content will be somewhat limited by the missing information. - Referring again to
FIG. 1 , thecomputer system 100 may include functionality for improving data integrity. For example, in at least one embodiment, Badge IDs for officers in the snapshot are required to match Badge IDs in corresponding officers' profiles in the serviceprovider computer system 130. In some circumstances (such as where Badge IDs were inaccurately entered or have been updated), the serviceprovider computer system 130 may resolve differences in Badge ID values by, for example, changing one or more Badge IDs in the snapshot or in the officers' profiles. - The
computer system 100 may include functionality for accurate mapping of data fields, such as Event Types and categories. In at least one embodiment, the serviceprovider computer system 130 compares a list of possible Event Types that could be present in the snapshot with a list of categories in the serviceprovider computer system 130. If the lists are not identical, the serviceprovider computer system 130 may need mapping instructions. For example, each CAD or RMS Event Type in a snapshot can be mapped to an appropriate category by the service provider, with all possible Event Types being correlated with one or more categories. In one possible mapping technique, multiple Event Types can be mapped to a single category in the serviceprovider computer system 130, if needed. - Values in the snapshot and/or the service
provider computer system 130 may be subject to restrictions in terms of permissible data types, value ranges, and/or the like. For example, in at least one embodiment, there is a two-character minimum for the Badge ID field. - An agency can set requirements on category/event type mapping, standardization of user identifiers (e.g., badge IDs or other unique IDs for police officers or other emergency responders), or the like. The
computer system 100 may include functionality for conformance with such requirements, such as functionality described above with respect to data integrity, permissible data types and/or value ranges, accurate mapping, etc. Snapshots can be validated to ensure that they conform to requirements. Validation of snapshots may involve, at least at an initial stage, multiple iterations to ensure that correct data is being pulled from correct fields. Test runs can be performed by a service provider and the results can be verified and shared with the agency. Adjustments can be made by the service provider and/or the agency to ensure accuracy. - In this section, an illustrative digital media content matching and tagging algorithm is described that can be used to match digital media content (e.g., video, audio, or still image evidence in a criminal investigation) with data records and tag the content with additional metadata based on the results of the matching process. In a law enforcement context, such metadata may include an incident identifier, an incident location, and an incident category. Although specific details are described in this section for the purpose of illustration, digital media content can be matched with database entries and tagged in other ways, in accordance with principles described herein.
-
FIG. 3 is a flow chart diagram of an illustrative matching andtagging process 300 that can be performed in a computer system, such as the serviceprovider computer system 130 shown inFIG. 1 . Atstep 310, the system receives event data associated with data records in a database. The event data can be provided in the form of database snapshots (e.g., CAD or RMS snapshots) generated on a regular basis (e.g., daily or twice per day), as described above. The event data is associated with data records that correspond with one or more events, such as incidents that a law enforcement agency responded to. The event data may include data fields such as “Incident ID” or “Event ID”; “Officer ID” or “Badge ID”; “Start Time” and “End Time”; “Location” (e.g., a street address or GPS coordinates), and “Category” or “Event Type” (e.g., an incident type such as “Larceny,” “Domestic Disturbance,” etc.). - The exact formats, data size, and other characteristics of the event data can differ based on organizational factors such as agency requirements and/or technological factors such as the processing power and data storage limitations of available computing resources, data transmission rates and protocols, and the like. In at least one embodiment, a service provider converts received event data into an internal common format so the matching can be done in a generic way for a variety of customers (such as multiple law enforcement agencies), which allows data processing to proceed in a more efficient and timely manner.
- Referring again to
FIG. 3 , atstep 320 the system receives metadata corresponding to a digital media content file, and atstep 330, the system compares the event data with the metadata. If the metadata and/or event data are encrypted, the system decrypts the encrypted data before performing the comparison. In at least one embodiment, initial metadata for unmatched digital media content is obtained, and each entry S of the event data is processed to search for matches. - At
step 340, the system automatically identifies a matching event for the digital media content file based on the comparison. Matches can be detected in different ways, depending on the content of the initial metadata, the content of the event data, and other factors. Referring again toFIG. 1 , at least some of the initial metadata may be generated automatically, e.g., by thedigital media device 150 that was used to record the content. As an example, an uploaded video may contain, in its initial metadata, an Officer ID, a Start Time, and an End Time. Given this initial metadata, a match can be identified if there is an uploaded video V such that S(Officer ID)=V(Officer ID), S(Start Time)<V(Start Time), and V(End Time)<S(End Time). - Alternatively, matches can be identified based on different kinds of comparisons, or comparisons of different attributes or combinations of attributes. For example, a match may be identified based on the values of V(Officer ID) and V(Start Time), without regard to V(End Time), based on the assumption that a match should be identified for any video made by an officer that begins within a specified time window, regardless of when the video ends. This can account for situations where the officer inadvertently continues recording longer than necessary, which may place V(End Time) beyond the value of S(End Time). As another example, if GPS or other location data is included in the initial metadata, matches may be identified based on comparisons of Start Time, End Time, and location information. For a greater degree of certainty of the match, the comparisons of Start Time, End Time, and location information can be combined with a comparison of a user identifier (e.g., Officer ID).
- In at least one embodiment, the earliest and latest records represented in the event data can define a time window to use for the matching process. Uploads of digital media content files can sometimes be delayed for long periods of time, e.g., due to an officer's schedule, unexpected emergencies, etc. If an officer waits 48 hours to upload files, the matching process for that day's CAD/RMS data may run before this transfer. To avoid a situation where no match will occur, snapshots can contain data in a “look-back” window that exceeds the regular time interval (e.g., 12 hours, 24 hours, etc.) between snapshots. For example, if an agency is generating snapshots on a daily (24-hour) schedule, the snapshots can include the previous 3 days (72 hours) worth of data to try to capture videos in the matching process that were uploaded within 72 hours of being captured in the field. The look-back window can help to ensure that files will be tagged correctly if they are uploaded within the predefined time period after an event. The look-back window can be set as a 2- or 3-times multiple of the regular time interval, or any other desired length of time.
- Digital media content that was created within the time window can be requested by the automated tagging and
matching module 134 of the serviceprovider computer system 130. In response to the request, the serviceprovider computer system 130 may retrieve metadata from persistent storage and store it in memory of the serviceprovider computer system 130 to allow quicker access during automated tagging and/or matching processes performed by the automated matching andtagging module 134. The automated matching andtagging module 134 processes metadata and does not need to process the digital media content itself to perform automated tagging and matching. This aspect provides significant benefits from a technical perspective (e.g., in terms of reduced processing time) and also allows the digital media content to remain securely stored during such processing. - Referring again to
FIG. 3 , atstep 350 the system automatically tags the digital media content file by modifying the metadata (e.g., by adding to or updating the metadata) based on event data associated with matching event. For example, the automated tagging andmatching module 134 can automatically add metadata fields or update values of metadata fields for the digital media content, depending on the information that is available for the matching event. For example, metadata fields such as such as “Incident Identifier,” “Category,” and “Location” can be added to the metadata. Each field can provide benefits on its own or in combination with other fields. For example, the “Incident Identifier” may be useful for allowing digital media content to be found in response to database queries for evidence relating to a particular incident. As another example, “Location” may be useful for allowing database queries by location. As another example, “Category” may be associated with a time period for which evidence of that category should be retained, which can be helpful for complying with agency rules or other laws or regulations regarding retention of data or evidence. - In the
illustrative snapshot 200 shown inFIG. 2 , some of the records represented in the snapshot do not have all of the fields populated with values. In particular, records associated with Event ID 14-164644 have no values associated with the Event Type, Street, and City fields. As mentioned above, such records may still be used in an automated matching and tagging process, even if the ability to tag corresponding digital media content may be somewhat limited by the missing information. For example, a video uploaded by the officer associated with Badge ID N92 may be matched to a corresponding entry in thesnapshot 200 based on the Badge ID, Start Time, and End Time. The matching video still can be tagged with the corresponding Event ID based on the information in thesnapshot 200, even though the Event Type, Street, and City are missing. Subsequent snapshots may include updated information for Event ID 14-164644, and the metadata for the matching video may be updated accordingly. - Matching digital media content with database entries can also allow the system to detect and correct data entry errors, thereby enhancing data integrity. For example, if an officer has the ability to manually set the “Incident ID” in the field, the illustrative matching algorithm can detect any discrepancies between the manually-entered “Incident ID” and the “Incident ID” from the CAD/RMS database, and correct it.
- In at least one embodiment, the system can detect inconsistent or duplicative data in snapshots. For example, referring again to
FIG. 1 , the automated matching andtagging module 134 may detect that there are multiple database entries each having the same Badge ID, Start Time, and End Time. This may occur, for example, where multiple Event IDs are inadvertently assigned to the same underlying event. This detection capability may be useful to prevent duplicate matches if a rule requires an individual digital media file to be matched with no more than one database entry, or to avoid tagging content with incorrect metadata. - Although it may be desirable in most cases to associate an individual digital media file with no more than one database entry, there can be exceptions to this rule. For example, it may be possible for a recorded video to be relevant to multiple incidents that happened to take place at the same time and location. To accommodate these and other situations, the system can be configured to provide manual matching and/or manual tagging functionality that may be used to supplement results of an automated matching and tagging process.
- Unless otherwise specified in the context of specific examples, described techniques and tools may be implemented by any suitable computing device or set of devices.
- In any of the described examples, a data store contains data as described herein and may be hosted, for example, by a database management system (DBMS) to allow a high level of data throughput between the data store and other components of a described system. The DBMS may also allow the data store to be reliably backed up and to maintain a high level of availability. For example, a data store may be accessed by other system components via a network, such as a private network in the vicinity of the system, a secured transmission channel over the public Internet, a combination of private and public networks, and the like. Instead of or in addition to a DBMS, a data store may include structured data stored as files in a traditional file system. Data stores may reside on computing devices that are part of or separate from components of systems described herein. Separate data stores may be combined into a single data store, or a single data store may be split into two or more separate data stores.
- Some of the functionality described herein may be implemented in the context of a client-server relationship. In this context, server devices may include suitable computing devices configured to provide information and/or services described herein. Server devices may include any suitable computing devices, such as dedicated server devices. Server functionality provided by server devices may, in some cases, be provided by software (e.g., virtualized computing instances or application objects) executing on a computing device that is not a dedicated server device. The term “client” can be used to refer to a computing device that obtains information and/or accesses services provided by a server over a communication link. However, the designation of a particular device as a client device does not necessarily require the presence of a server. At various times, a single device may act as a server, a client, or both a server and a client, depending on context and configuration. Actual physical locations of clients and servers are not necessarily important, but the locations can be described as “local” for a client and “remote” for a server to illustrate a common usage scenario in which a client is receiving information provided by a server at a remote location.
-
FIG. 4 is a block diagram that illustrates aspects of anillustrative computing device 400 appropriate for use in accordance with embodiments of the present disclosure. The description below is applicable to servers, personal computers, mobile phones, smart phones, tablet computers, embedded computing devices, and other currently available or yet-to-be-developed devices that may be used in accordance with embodiments of the present disclosure. - In its most basic configuration, the
computing device 400 includes at least oneprocessor 402 and asystem memory 404 connected by acommunication bus 406. Depending on the exact configuration and type of device, thesystem memory 404 may be volatile or nonvolatile memory, such as read only memory (“ROM”), random access memory (“RAM”), EEPROM, flash memory, or other memory technology. Those of ordinary skill in the art and others will recognize thatsystem memory 404 typically stores data and/or program modules that are immediately accessible to and/or currently being operated on by theprocessor 402. In this regard, theprocessor 402 may serve as a computational center of thecomputing device 400 by supporting the execution of instructions. - As further illustrated in
FIG. 4 , thecomputing device 400 may include anetwork interface 410 comprising one or more components for communicating with other devices over a network. Embodiments of the present disclosure may access basic services that utilize thenetwork interface 410 to perform communications using common network protocols. Thenetwork interface 410 may also include a wireless network interface configured to communicate via one or more wireless communication protocols, such as WiFi, 2G, 3G, 4G, LTE, WiMAX, Bluetooth, and/or the like. - In the illustrative embodiment depicted in
FIG. 4 , thecomputing device 400 also includes astorage medium 408. However, services may be accessed using a computing device that does not include means for persisting data to a local storage medium. Therefore, thestorage medium 408 depicted inFIG. 4 is optional. In any event, thestorage medium 408 may be volatile or nonvolatile, removable or nonremovable, implemented using any technology capable of storing information such as, but not limited to, a hard drive, solid state drive, CD-ROM, DVD, or other disk storage, magnetic tape, magnetic disk storage, and/or the like. - As used herein, the term “computer-readable medium” includes volatile and nonvolatile and removable and nonremovable media implemented in any method or technology capable of storing information, such as computer-readable instructions, data structures, program modules, or other data. In this regard, the
system memory 404 andstorage medium 408 depicted inFIG. 4 are examples of computer-readable media. - For ease of illustration and because it is not important for an understanding of the claimed subject matter,
FIG. 4 does not show some of the typical components of many computing devices. In this regard, thecomputing device 400 may include input devices, such as a keyboard, keypad, mouse, trackball, microphone, video camera, touchpad, touchscreen, electronic pen, stylus, and/or the like. Such input devices may be coupled to thecomputing device 400 by wired or wireless connections including RF, infrared, serial, parallel, Bluetooth, USB, or other suitable connection protocols using wireless or physical connections. - In any of the described examples, data can be captured by input devices and transmitted or stored for future processing. The processing may include encoding data streams, which can be subsequently decoded for presentation by output devices. Media data can be captured by multimedia input devices and stored by saving media data streams as files on a computer-readable storage medium (e.g., in memory or persistent storage on a client device, server, administrator device, or some other device). Input devices can be separate from and communicatively coupled to computing device 400 (e.g., a client device), or can be integral components of the
computing device 400. In some embodiments, multiple input devices may be combined into a single, multifunction input device (e.g., a video camera with an integrated microphone). Thecomputing device 400 may also include output devices such as a display, speakers, printer, etc. The output devices may include video output devices such as a display or touchscreen. The output devices also may include audio output devices such as external speakers or earphones. The output devices can be separate from and communicatively coupled to thecomputing device 400, or can be integral components of thecomputing device 400. Input functionality and output functionality may be integrated into the same input/output device (e.g., a touchscreen). Any suitable input device, output device, or combined input/output device either currently known or developed in the future may be used with described systems. - In general, functionality of computing devices described herein may be implemented in computing logic embodied in hardware or software instructions, which can be written in a programming language, such as C, C++, COBOL, JAVA™, PHP, Perl, Python, Ruby, HTML, CSS, JavaScript, VBScript, ASPX, Microsoft .NET™ languages such as C#, and/or the like. Computing logic may be compiled into executable programs or written in interpreted programming languages. Generally, functionality described herein can be implemented as logic modules that can be duplicated to provide greater processing capability, merged with other modules, or divided into sub-modules. The computing logic can be stored in any type of computer-readable medium (e.g., a non-transitory medium such as a memory or storage medium) or computer storage device and be stored on and executed by one or more general-purpose or special-purpose processors, thus creating a special-purpose computing device configured to provide functionality described herein.
- Many alternatives to the systems and devices described herein are possible. Individual modules or subsystems can be separated into additional modules or subsystems or combined into fewer modules or subsystems. Modules or subsystems can be omitted or supplemented with other modules or subsystems. Functions that are indicated as being performed by a particular device, module, or subsystem may instead be performed by one or more other devices, modules, or subsystems. For example, although automated matching and tagging functionality is described with reference to
FIG. 1 as being performed in a serviceprovider computer system 130, it also possible for matching and tagging functionality to be performed by a suitably configured device on an agency network, or some other device. - Although some examples in the present disclosure include descriptions of devices comprising specific hardware components in specific arrangements, techniques and tools described herein can be modified to accommodate different hardware components, combinations, or arrangements. Further, although some examples in the present disclosure include descriptions of specific usage scenarios, techniques and tools described herein can be modified to accommodate different usage scenarios. Functionality that is described as being implemented in software can instead be implemented in hardware, or vice versa.
- Many alternatives to the techniques described herein are possible. For example, processing stages in the various techniques can be separated into additional stages or combined into fewer stages. As another example, processing stages in the various techniques can be omitted or supplemented with other techniques or processing stages. As another example, processing stages that are described as occurring in a particular order can instead occur in a different order. As another example, processing stages that are described as being performed in a series of steps may instead be handled in a parallel fashion, with multiple modules or software processes concurrently handling one or more of the illustrated processing stages. As another example, processing stages that are indicated as being performed by a particular device or module may instead be performed by one or more other devices or modules.
- The principles, representative embodiments, and modes of operation of the present disclosure have been described in the foregoing description. However, aspects of the present disclosure which are intended to be protected are not to be construed as limited to the particular embodiments disclosed. Further, the embodiments described herein are to be regarded as illustrative rather than restrictive. It will be appreciated that variations and changes may be made by others, and equivalents employed, without departing from the spirit of the present disclosure. Accordingly, it is expressly intended that all such variations, changes, and equivalents fall within the spirit and scope of the claimed subject matter.
Claims (27)
1. A computer-implemented method comprising:
receiving event data associated with a plurality of data records in a database, wherein the database comprises a records management system database or a computer-aided dispatch database, and wherein the event data is included in a database snapshot comprising a CSV file or an XML file;
receiving metadata corresponding to a digital media content file;
performing a comparison of at least a portion of the event data with at least a portion of the metadata;
based on the comparison, automatically identifying a matching event for the digital media content file, wherein the matching event is associated with at least one of the data records; and
automatically modifying the metadata based on event data associated with the matching event, wherein automatically modifying the metadata comprises updating or adding at least one of the following: an event identifier, an event type or category, and a location.
2. The method of claim 1 , wherein the database snapshot is generated periodically at a regular time interval.
3. The method of claim 2 , wherein the database snapshot includes data in a look-back window that exceeds the regular time interval.
4. The method of claim 1 , wherein the comparison comprises comparing a time frame in the event data with a time frame in the metadata.
5. The method of claim 1 , wherein the comparison comprises at least one of the following:
comparing a user identifier in the metadata with a user identifier in the event data;
comparing a time frame in the event data with a time frame in the metadata; and
comparing a location in the event data with a location in the metadata.
6. The method of claim 1 , wherein the digital media content file comprises a video file.
7. The method of claim 1 , wherein the digital media content file comprises an audio file.
8. The method of claim 1 , wherein the digital media content file comprises an image file.
9. The method of claim 1 , wherein the metadata is included in the digital media content file.
10. The method of claim 1 , further comprising analyzing the modified metadata in response to a search query.
11. The method of claim 10 , wherein the search query comprises a search parameter, and wherein the modified metadata includes metadata corresponding to the search parameter.
12. The method of claim 11 , further comprising providing a search result based on the analysis of the modified metadata.
13. A system comprising:
at least one computing device having one or more processors and computer-readable storage media having stored thereon computer-executable instructions configured to cause the at least one computing device to:
receive event data associated with a plurality of data records in a database, wherein the database comprises a records management system database or a computer-aided dispatch database, and wherein the event data is included in a database snapshot;
receive metadata corresponding to a digital media content file;
perform a comparison of at least a portion of the event data with at least a portion of the metadata;
based on the comparison, automatically identify a matching event for the digital media content file, wherein the matching event is associated with at least one of the data records; and
automatically modify the metadata based on event data associated with the matching event, wherein automatically modifying the metadata comprises updating or adding at least one of the following: an event identifier, an event type or category, and a location.
14. The system of claim 13 further comprising a dock configured to upload the digital media content file to the at least one computing device.
15. The system of claim 13 , wherein the comparison comprises comparing a time frame in the event data with a time frame in the metadata.
16. The system of claim 13 , wherein the database snapshot comprises a CSV file or an XML file.
17. The system of claim 13 , wherein the database snapshot is generated periodically at a regular time interval.
18. The system of claim 17 , wherein the database snapshot includes data in a look-back window that exceeds the regular time interval.
19. The system of claim 13 further comprising a server computer having one or more processors and computer-readable storage media having stored thereon computer-executable instructions configured to cause the server computer to:
detect the event data in a destination folder;
encrypt the event data; and
upload the encrypted event data to the at least one computing device.
20. A non-transitory computer-readable storage medium having stored thereon computer-executable instructions, including instructions that, when executed by one or more computing devices, cause the one or more computing devices to:
receive event data associated with a plurality of data records in a database, wherein the database comprises a records management system database or a computer-aided dispatch database, and wherein the event data is included in a database snapshot comprising a CSV file or an XML file;
receive metadata corresponding to a digital media content file;
perform a comparison of at least a portion of the event data with at least a portion of the metadata;
based on the comparison, automatically identify a matching event for the digital media content file, wherein the matching event is associated with at least one of the data records; and
automatically modify the metadata based on event data associated with the matching event, wherein automatically modifying the metadata comprises updating or adding at least one of the following: an event identifier, an event type or category, and a location.
21. A system comprising:
at least one processor;
a network interface; and
computer-readable storage media having stored thereon computer-executable instructions configured to cause the processor to:
receive via the network interface a summary of a plurality of data records, the data records stored in at least one of a records management system database and a computer-aided dispatch database, the summary includes data regarding one or more events, the summary in the format of at least one of a CVS and XML file;
receive metadata associated with digital media content, the metadata related to an event recorded in the digital media content;
compare at least a portion of the data regarding the one or more events from the summary with at least a portion of the metadata;
in accordance with comparing, automatically identify one event from the one or more events that matches the event recorded in the digital media content; and
automatically modify the metadata to include at least one of an event identifier, an event type, an event category, and a location regarding the one event from the summary.
22. The system of claim 21 , wherein the summary comprises a snapshot of the data records at the time the snapshot is created.
23. The system of claim 21 , wherein each row of the summary in the format of the CVS file includes data regarding one event.
24. The system of claim 21 , wherein the summary includes data regarding events that occurred during a period of time.
25. The system of claim 21 , wherein the digital media content comprises digital video content.
26. The system of claim 21 , wherein the processor further receives the summary periodically, the summary received each period includes data regarding events that occurred during a period of time.
27. The system of claim 21 , wherein:
the summary of the plurality of data records is generated at a regular time interval; and
for each summary generated, the processor executes the computer-executable instructions to receive, compare, identify, and modify.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US15/387,521 US20170102999A1 (en) | 2015-03-03 | 2016-12-21 | Automated integration of video evidence with data records |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US201562127804P | 2015-03-03 | 2015-03-03 | |
| US14/687,483 US11237918B2 (en) | 2015-03-03 | 2015-04-15 | Automated integration of video evidence with data records |
| US15/387,521 US20170102999A1 (en) | 2015-03-03 | 2016-12-21 | Automated integration of video evidence with data records |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US14/687,483 Continuation US11237918B2 (en) | 2015-03-03 | 2015-04-15 | Automated integration of video evidence with data records |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| US20170102999A1 true US20170102999A1 (en) | 2017-04-13 |
Family
ID=56848417
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US14/687,483 Active 2038-06-09 US11237918B2 (en) | 2015-03-03 | 2015-04-15 | Automated integration of video evidence with data records |
| US15/387,521 Abandoned US20170102999A1 (en) | 2015-03-03 | 2016-12-21 | Automated integration of video evidence with data records |
Family Applications Before (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US14/687,483 Active 2038-06-09 US11237918B2 (en) | 2015-03-03 | 2015-04-15 | Automated integration of video evidence with data records |
Country Status (4)
| Country | Link |
|---|---|
| US (2) | US11237918B2 (en) |
| AU (1) | AU2015384779B2 (en) |
| CA (1) | CA2977025C (en) |
| WO (1) | WO2016140695A1 (en) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN112860631A (en) * | 2021-04-25 | 2021-05-28 | 成都淞幸科技有限责任公司 | Efficient metadata batch configuration method |
| US11343472B2 (en) | 2020-03-17 | 2022-05-24 | Axis Ab | Associating captured media to a party |
| US11477287B2 (en) * | 2020-05-05 | 2022-10-18 | Intelepeer | System and methods for dynamically extending analytics in a cloud communications platform |
Families Citing this family (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9984154B2 (en) | 2015-05-01 | 2018-05-29 | Morpho Detection, Llc | Systems and methods for analyzing time series data based on event transitions |
| US10846263B2 (en) * | 2017-09-22 | 2020-11-24 | Microsoft Technology Licensing, Llc | Systems and methods for implementing content aware file management labeling |
| US10560261B1 (en) | 2018-05-24 | 2020-02-11 | DeepTruth, LLC | Systems and techniques for capture of trusted media data |
| US10956490B2 (en) * | 2018-12-31 | 2021-03-23 | Audiobyte Llc | Audio and visual asset matching platform |
| US11086931B2 (en) | 2018-12-31 | 2021-08-10 | Audiobyte Llc | Audio and visual asset matching platform including a master digital asset |
| US12093316B2 (en) | 2019-01-31 | 2024-09-17 | Hewlett Packard Enterprise Development Lp | Partial file system instances |
| US10817529B2 (en) | 2019-03-20 | 2020-10-27 | Motorola Solutions, Inc. | Device, system and method for interoperability between digital evidence management systems |
| US11392541B2 (en) * | 2019-03-22 | 2022-07-19 | Hewlett Packard Enterprise Development Lp | Data transfer using snapshot differencing from edge system to core system |
| US11010371B1 (en) * | 2019-09-16 | 2021-05-18 | Palantir Technologies Inc. | Tag management system |
| US10965778B1 (en) * | 2019-09-18 | 2021-03-30 | Motorola Solutions, Inc. | Multiunit charging device and method for preemptive data upload |
| CN113127680B (en) * | 2019-12-30 | 2023-05-02 | Tcl新技术(惠州)有限公司 | Cross-network alarm condition association method, storage medium and system |
| KR102385492B1 (en) * | 2021-05-14 | 2022-04-13 | 이정환 | System for providing video storage service using accelerometer |
| US20230047116A1 (en) * | 2021-08-10 | 2023-02-16 | Motorola Solutions, Inc. | Method, system and computer program product for backup assignment of a mobile electronics device |
| CN113986623A (en) * | 2021-10-25 | 2022-01-28 | 威盛电子(深圳)有限公司 | Method, device and computer readable storage medium for creating MP4 file |
| WO2024253213A1 (en) * | 2023-06-07 | 2024-12-12 | 이정환 | Image storage service provision system using acceleration sensor |
| US12481698B2 (en) * | 2024-01-22 | 2025-11-25 | Dropbox, Inc. | Time travel search using digital content snapshots |
Citations (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040146272A1 (en) * | 2003-01-09 | 2004-07-29 | Kessel Kurt A. | System and method for managing video evidence |
| US20070027938A1 (en) * | 2005-07-26 | 2007-02-01 | Scribe Software Inc. | Detecting data changes |
| US20070168715A1 (en) * | 2005-12-08 | 2007-07-19 | Herz William S | Emergency data preservation services |
| US7894519B2 (en) * | 2005-01-24 | 2011-02-22 | Moderator Systems, Inc. | Wireless event authentication system |
| US20120023099A1 (en) * | 2007-12-12 | 2012-01-26 | Brett Crossley | System and method for creating metadata |
| US20120274846A1 (en) * | 2009-11-25 | 2012-11-01 | Hiroaki Kimura | Secondary content provision system and method |
| US20140129521A1 (en) * | 2011-09-23 | 2014-05-08 | Hybrid Logic Ltd | System for live-migration and automated recovery of applications in a distributed system |
| US20140337346A1 (en) * | 2013-05-10 | 2014-11-13 | Uberfan, Llc | Event-related media management system |
| US20140351217A1 (en) * | 2013-05-23 | 2014-11-27 | Oracle International Corporation | Database snapshot analysis |
| US20160037227A1 (en) * | 2014-07-29 | 2016-02-04 | Eldon Technology Limited | Apparatus, systems and methods for media content searching |
| US9275127B1 (en) * | 2013-06-14 | 2016-03-01 | Microstrategy Incorporated | Location categorization |
Family Cites Families (39)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6430562B1 (en) * | 1999-03-01 | 2002-08-06 | Electronic Data Systems Corporation | Integrated resource management system and method |
| US7158175B2 (en) * | 2001-11-30 | 2007-01-02 | Eastman Kodak Company | System including a digital camera and a docking unit for coupling to the internet |
| AUPR960601A0 (en) * | 2001-12-18 | 2002-01-24 | Canon Kabushiki Kaisha | Image protection |
| US7707221B1 (en) * | 2002-04-03 | 2010-04-27 | Yahoo! Inc. | Associating and linking compact disc metadata |
| US7685134B2 (en) * | 2003-12-31 | 2010-03-23 | Nokia Corporation | Media file sharing, correlation of metadata related to shared media files and assembling shared media file collections |
| KR100737804B1 (en) * | 2005-03-30 | 2007-07-10 | 전자부품연구원 | Media service provision system using sensor network and metadata |
| US7814057B2 (en) * | 2005-04-05 | 2010-10-12 | Microsoft Corporation | Page recovery using volume snapshots and logs |
| US20080256099A1 (en) * | 2005-09-20 | 2008-10-16 | Sterna Technologies (2005) Ltd. | Method and System For Managing Data and Organizational Constraints |
| US7856436B2 (en) * | 2005-12-23 | 2010-12-21 | International Business Machines Corporation | Dynamic holds of record dispositions during record management |
| AU2008262268B2 (en) * | 2007-06-09 | 2012-05-03 | Sensormatic Electronics, LLC | System and method for integrating video analytics and data analytics/mining |
| US7870110B2 (en) * | 2008-02-27 | 2011-01-11 | International Business Machines Corporation | Method and system for generating a transaction-bound sequence of records in a relational database table |
| US20090251311A1 (en) | 2008-04-06 | 2009-10-08 | Smith Patrick W | Systems And Methods For Cooperative Stimulus Control |
| KR100877999B1 (en) * | 2008-05-21 | 2009-01-12 | 주식회사 아이디폰 | Law enforcement full-time filming video transmission system and method |
| US8199151B2 (en) * | 2009-02-13 | 2012-06-12 | Naturalmotion Ltd. | Animation events |
| US8311983B2 (en) | 2009-04-28 | 2012-11-13 | Whp Workflow Solutions, Llc | Correlated media for distributed sources |
| US8825597B1 (en) | 2009-08-13 | 2014-09-02 | Dropbox, Inc. | Network folder synchronization |
| US8695054B2 (en) * | 2010-09-29 | 2014-04-08 | Verizon Patent And Licensing Inc. | Ingesting heterogeneous video content to provide a unified video provisioning service |
| KR20120080379A (en) * | 2011-01-07 | 2012-07-17 | 삼성전자주식회사 | Method and apparatus of annotating in a digital camera |
| US20130073302A1 (en) * | 2011-03-17 | 2013-03-21 | William F. Ryan | System and method for visual display of bed status by integration of location information from ambulance transports |
| CA3060189C (en) * | 2011-05-12 | 2021-09-21 | Solink Corporation | Video analytics system |
| US20130073576A1 (en) * | 2011-09-19 | 2013-03-21 | International Business Machines Corporation | System and Protocol To Dynamically Query Sensor Data Collections |
| US9036361B2 (en) * | 2012-01-23 | 2015-05-19 | Honeywell International Inc. | Avionic media systems including actuated media docking stations and over-center locking mechanisms suitable for usage therein |
| US8458193B1 (en) * | 2012-01-31 | 2013-06-04 | Google Inc. | System and method for determining active topics |
| US9613104B2 (en) * | 2012-02-17 | 2017-04-04 | Netflix, Inc. | System and method for building a point-in-time snapshot of an eventually-consistent data store |
| US20130275296A1 (en) * | 2012-03-16 | 2013-10-17 | esdatanetworks INC | Proximal Customer Transaction Incented By Donation of Auto-Boarded Merchant |
| EP2801962B1 (en) * | 2012-09-12 | 2016-09-21 | Omron Corporation | Data flow control order generating apparatus and sensor managing apparatus |
| US9286455B2 (en) | 2012-10-04 | 2016-03-15 | Msi Security, Ltd. | Real identity authentication |
| US20140164266A1 (en) | 2012-12-07 | 2014-06-12 | Whp Workflow Solutions, Llc | Multi-media file upload workflow and transactions |
| US20140229312A1 (en) * | 2013-02-11 | 2014-08-14 | Ricoh Company, Ltd. | Auction item listing generation |
| WO2014182638A2 (en) * | 2013-05-04 | 2014-11-13 | Christopher Decharms | Mobile security technology |
| US9275293B2 (en) * | 2014-02-28 | 2016-03-01 | Thrift Recycling Management, Inc. | Automated object identification and processing based on digital imaging and physical attributes |
| GB201404612D0 (en) * | 2014-03-14 | 2014-04-30 | Microsoft Corp | Communication event history |
| US10318543B1 (en) * | 2014-03-20 | 2019-06-11 | Google Llc | Obtaining and enhancing metadata for content items |
| EP3180747A1 (en) * | 2014-05-07 | 2017-06-21 | Microtronic AG | Method and system for authorising access to goods and/or services at a point of sale and corresponding point of sale |
| US20150379530A1 (en) * | 2014-06-26 | 2015-12-31 | International Business Machines Corporation | Driving business traffic by predictive analysis of social media |
| US10204120B2 (en) | 2014-09-19 | 2019-02-12 | Salesforce.Com, Inc. | Error checking database records |
| US10318575B2 (en) * | 2014-11-14 | 2019-06-11 | Zorroa Corporation | Systems and methods of building and using an image catalog |
| US10616219B2 (en) * | 2014-12-11 | 2020-04-07 | FlowJo, LLC | Single cell data management and analysis systems and methods |
| US20160286156A1 (en) * | 2015-02-12 | 2016-09-29 | Creative Law Enforcement Resources, Inc. | System for managing information related to recordings from video/audio recording devices |
-
2015
- 2015-04-15 AU AU2015384779A patent/AU2015384779B2/en active Active
- 2015-04-15 CA CA2977025A patent/CA2977025C/en active Active
- 2015-04-15 WO PCT/US2015/026046 patent/WO2016140695A1/en not_active Ceased
- 2015-04-15 US US14/687,483 patent/US11237918B2/en active Active
-
2016
- 2016-12-21 US US15/387,521 patent/US20170102999A1/en not_active Abandoned
Patent Citations (11)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20040146272A1 (en) * | 2003-01-09 | 2004-07-29 | Kessel Kurt A. | System and method for managing video evidence |
| US7894519B2 (en) * | 2005-01-24 | 2011-02-22 | Moderator Systems, Inc. | Wireless event authentication system |
| US20070027938A1 (en) * | 2005-07-26 | 2007-02-01 | Scribe Software Inc. | Detecting data changes |
| US20070168715A1 (en) * | 2005-12-08 | 2007-07-19 | Herz William S | Emergency data preservation services |
| US20120023099A1 (en) * | 2007-12-12 | 2012-01-26 | Brett Crossley | System and method for creating metadata |
| US20120274846A1 (en) * | 2009-11-25 | 2012-11-01 | Hiroaki Kimura | Secondary content provision system and method |
| US20140129521A1 (en) * | 2011-09-23 | 2014-05-08 | Hybrid Logic Ltd | System for live-migration and automated recovery of applications in a distributed system |
| US20140337346A1 (en) * | 2013-05-10 | 2014-11-13 | Uberfan, Llc | Event-related media management system |
| US20140351217A1 (en) * | 2013-05-23 | 2014-11-27 | Oracle International Corporation | Database snapshot analysis |
| US9275127B1 (en) * | 2013-06-14 | 2016-03-01 | Microstrategy Incorporated | Location categorization |
| US20160037227A1 (en) * | 2014-07-29 | 2016-02-04 | Eldon Technology Limited | Apparatus, systems and methods for media content searching |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11343472B2 (en) | 2020-03-17 | 2022-05-24 | Axis Ab | Associating captured media to a party |
| US11477287B2 (en) * | 2020-05-05 | 2022-10-18 | Intelepeer | System and methods for dynamically extending analytics in a cloud communications platform |
| US12143449B2 (en) | 2020-05-05 | 2024-11-12 | Intelepeer | System and methods for dynamically extending analytics in a cloud communications platform |
| CN112860631A (en) * | 2021-04-25 | 2021-05-28 | 成都淞幸科技有限责任公司 | Efficient metadata batch configuration method |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2016140695A1 (en) | 2016-09-09 |
| CA2977025A1 (en) | 2016-09-09 |
| AU2015384779B2 (en) | 2019-05-02 |
| AU2015384779A1 (en) | 2017-08-24 |
| CA2977025C (en) | 2020-12-08 |
| US11237918B2 (en) | 2022-02-01 |
| US20160259794A1 (en) | 2016-09-08 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US11237918B2 (en) | Automated integration of video evidence with data records | |
| US9875374B2 (en) | System and method for collecting, storing, and securing data | |
| US11797519B2 (en) | Atomic capture of a set of related files, using a distributed ledger, for proof of authenticity | |
| US10713391B2 (en) | Tamper protection and video source identification for video processing pipeline | |
| JP6426174B2 (en) | Data management of connected devices | |
| US10354348B2 (en) | Digital evidence management | |
| Quick et al. | Big forensic data management in heterogeneous distributed systems: quick analysis of multimedia forensic data | |
| CN114611140A (en) | Dynamic management of data with context-based processing | |
| US12314423B2 (en) | Predictive response-generation systems to facilitate timely compliance with information-disclosure laws | |
| US11922239B1 (en) | System and method for abstraction of application programming interface creation without code | |
| EP3537319A1 (en) | Tamper protection and video source identification for video processing pipeline | |
| US11853451B2 (en) | Controlled data access | |
| US20250133274A1 (en) | Systems and methods for generating, analyzing, and storing data snippets | |
| US11962874B2 (en) | Systems and methods for generating, analyzing, and storing data snippets | |
| Jamali et al. | Harmonized Data Drive: Standardizing and Unifying Smart Car Information Storage for Enhanced Forensics and Interoperability | |
| US20200278948A1 (en) | Method, apparatus and system for managing electronic fingerprint of electronic file | |
| Rahman et al. | Framework analysis of IDFIF V2 in WhatsApp investigation process on android smartphones | |
| US11748515B2 (en) | System and method for secure linking of anonymized data | |
| EP3265930A1 (en) | Automated integration of video evidence with data records | |
| US20230230485A1 (en) | Data processing system with machine learning engine to provide roadside assistance functions | |
| US20140040315A1 (en) | Content management | |
| WO2023213388A1 (en) | Techniques for de-identifying datasets | |
| CN121234394A (en) | Data risk detection methods, servers, storage media, and software products | |
| CN121261914A (en) | Evidence collection analysis method, system, medium and electronic equipment based on public cloud |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |