IP Library Granted Patent US 12,056,918
Granted Patent B1
US 12,056,918 · App. 18/477,280 · Granted Aug 6, 2024

Methods and apparatus for identifying video-derived data

Inventors: Rishabh Goyal (San Mateo, CA); Song Cao (Foster City, CA)
Assignee: Verkada Inc.
G06V10/945G06F16/71G06F16/75G06V10/82G06V20/41G06V20/52H04N5/2628H04N7/183
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,056,918
App. No.
18/477,280
Granted
Aug 6, 2024
Kind
B1
Abstract

A method for generating and selecting images of objects based on video data and text data includes receiving, at a processor of a video camera system, a video stream including a series of video frames depicting at least one object. A set of at least one classification for the object is generated. Additionally, an image that depicts the object and that includes a cropped portion of a video frame from the series of video frames is generated. A set of at least one index key is generated based on the set of at least one classification, and the image is stored based on the set of at least one index key. The processor receives a signal representing a text input from a user, and the processor performs at least one of (1) retrieval of the image or (2) generation of an alert.

Claims (60)

1. An apparatus, comprising:

a processor; and

a memory operably coupled to the processor, the memory storing instructions to cause the processor to:

receive a video stream including a series of video frames;

generate a set of at least one classification associated with an object depicted in at least one video frame from the series of video frames;

generate an image that depicts the object and that includes a cropped portion of a video frame from the series of video frames;

generate a set of at least one index key based on the set of at least one classification;

store the image based on the set of at least one index key;

receive a signal representing a text input from a user; and

perform at least one of (1) retrieval of the image based on (a) at least one index key from the set of at least one index key and (b) the text input, or (2) generation of an alert based on (a) at least one classification from the set of at least one classification and (b) the text input.

2. The apparatus of claim 1 , further comprising a video camera operably coupled to the processor, the video camera configured to generate the video stream.

3. The apparatus of claim 1 , wherein the instructions to cause the processor to generate the set of at least one classification include instructions to generate the set of at least one classification based on a motion associated with the object within at least two video frames from the series of video frames.

4. The apparatus of claim 1 , wherein the instructions to cause the processor to perform at least one of the retrieval or the generation include instructions to:

generate embedded text data associated with a latent space that is associated with the set of at least one classification; and

perform at least one of (1) retrieval of the image based on the embedded text data or (2) generation of an alert based on the embedded text data.

5. The apparatus of claim 4 , wherein the processor is configured to use (1) a first neural network to generate the set of at least one classification and (2) a second neural network to generate the embedded text data.

6. The apparatus of claim 5 , wherein the second neural network includes at least one of a transformer model or a convolutional neural network.

7. The apparatus of claim 1 , wherein the object is a first object, the at least one video frame is a first at least one video frame, the set of at least one classification is a first set of at least one classification, the image is a first image, the image is a first image, the cropped portion is a first cropped portion, the set of at least one index key is a first set of at least one index key, the video frame is a first video frame, and the memory further stores instructions to cause the processor to:

classify a second object depicted in at least one of: (1) the first at least one video frame from the series of video frames or (2) a second at least one video frame from the series of video frames, to define a second set of at least one classification;

generate a second image that depicts the second object and that includes a second cropped portion of at least one of the first video frame or a second video frame from the series of video frames;

generate a second set of at least one index key based on the second set of at least one classification; and

store the second image based on the second set of at least one index key.

8. The apparatus of claim 7 , wherein the text input is a first text input, and the memory further stores instructions to cause the processor to:

receive a signal representing a second text input from the user; and

retrieve the second image based on each of the first text input, the second text input, the first set of at least one classification, and the second set of at least one classification.

9. The apparatus of claim 8 , wherein:

the first text input describes a class that includes a plurality of objects; and

the second text input describes a subclass that includes at least one object from the plurality of objects, the subclass being a subset of the class.

10. The apparatus of claim 1 , wherein the memory further stores instructions to cause the processor to cause transmission of the image to at least one remote compute device based on at least one of the retrieval or the alert.

11. The apparatus of claim 1 , wherein:

the memory further stores instructions to cause the processor to generate a security domain-specific supervising signal based on the image and using a neural network; and

the generation of the alert is based on the security domain-specific supervising signal, the at least one classification from the set of at least one classification, and the text input.

12. The apparatus of claim 1 , wherein:

the set of at least one classification includes a classification associated with an activity that is (1) performed by the object and (2) depicted in a plurality of video frames from the series of video frames; and

the text input includes a description of the activity.

13. The apparatus of claim 1 , wherein the memory further stores instructions to cause the processor to:

store a plurality of video frames that includes the at least one video frame; and

retrieve the plurality of video frames based on (a) at least one index key from the set of at least one index key and (b) the text input.

14. A non-transitory, processor-readable medium storing instructions that, when executed by a processor, cause the processor to:

receive a video stream including a series of video frames;

generate a set of at least one classification associated with an object depicted in at least one video frame from the series of video frames;

generate an image that depicts the object and that includes a cropped portion of a video frame from the series of video frames;

generate a set of at least one index key based on the set of at least one classification;

store the image based on the set of at least one index key;

receive a signal representing a text input from a user; and

perform at least one of (1) retrieval of the image based on (a) at least one index key from the set of at least one index key and (b) the text input, or (2) generation of an alert based on (a) at least one classification from the set of at least one classification and (b) the text input.

15. The non-transitory, processor-readable medium of claim 14 , wherein the instructions to cause the processor to receive the video stream include instructions to receive the video stream from a video camera that is operably coupled to the processor and configured to generate the video stream.

16. The non-transitory, processor-readable medium of claim 14 , wherein the instructions to cause the processor to generate the set of at least one classification include instructions to generate the set of at least one classification based on a motion associated with the object within at least two video frames from the series of video frames.

17. The non-transitory, processor-readable medium of claim 14 , wherein the instructions to cause the processor to perform at least one of the retrieval or the generation include instructions that, when executed by the processor, cause the processor to:

generate embedded text data associated with a latent space that is associated with the set of at least one classification; and

perform at least one of (1) retrieval of the image based on the embedded text data or (2) generation of an alert based on the embedded text data.

18. The non-transitory, processor-readable medium of claim 17 , wherein:

the instructions to generate the set of at least one classification include instructions to generate the set of at least one classification using a first neural network; and

the instructions to generate the embedded text data include instructions to generate the embedded text data using a second neural network.

19. The non-transitory, processor-readable medium of claim 17 , wherein the instructions to generate the embedded text data include instructions to generate the embedded text data using a neural network that includes at least one of a transformer model or a convolutional neural network.

20. The non-transitory, processor-readable medium of claim 14 , wherein the object is a first object, the at least one video frame is a first at least one video frame, the set of at least one classification is a first set of at least one classification, the image is a first image, the image is a first image, the cropped portion is a first cropped portion, the set of at least one index key is a first set of at least one index key, the video frame is a first video frame, the non-transitory, processor-readable medium further storing instructions that, when executed by the processor, cause the processor to:

classify a second object depicted in at least one of: (1) the first at least one video frame from the series of video frames or (2) a second at least one video frame from the series of video frames, to define a second set of at least one classification;

generate a second image that depicts the second object and that includes a second cropped portion of at least one of the first video frame or a second video frame from the series of video frames;

generate a second set of at least one index key based on the second set of at least one classification; and

store the second image based on the second set of at least one index key.

Assignments (2)
SECURITY INTEREST Recorded Oct 1, 2024
From: VERKADA INC.
To: FIRST-CITIZENS BANK & TRUST COMPANY, AS AGENT
Reel/Frame 068758/0910 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2023
From: CAO, SONG; GOYAL, RISHABH
To: VERKADA INC.
Reel/Frame 065529/0191 →