IP Library Granted Patent US 11,810,350
Granted Patent B2
US 11,810,350 · App. 17/326,628 · Granted Nov 7, 2023

Processing of surveillance video streams using image classification and object detection

Inventors: Shaomin Xiong (Fremont, CA); Toshiki Hirano (San Jose, CA); Damien Kah (San Jose, CA); Rajeev Nagabhirava (San Jose, CA); David Berman (San Jose, CA)
Assignee: Western Digital Technologies, Inc.
G06V20/41G06T7/70G06V20/52G08B13/19608G08B13/19619G08B13/19663
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 11,810,350
App. No.
17/326,628
Granted
Nov 7, 2023
Kind
B2
Abstract

Systems and methods for processing surveillance video streams using image classification and object detection are described. Video data from a video image sensor may be processed using an image classifier to determine whether an object type is present in a video frame. If the object type is present, the video frame and/or subsequent video frames may be processed using an object detector to provide additional object data, such as position information, for use in other video surveillance processes. In some examples, an event message may be generated and sent to a video surveillance application in response to selective object detection.

Claims (106)

1. A system, comprising:

a video image sensor; and

a controller comprising:

a plurality of image classifiers, wherein each image classifier of the plurality of image classifiers is configured for a different object type; and

a plurality of object detectors, wherein each object detector of the plurality of object detectors is configured for a different object type;

wherein the controller is configured to:

receive video data from the video image sensor, wherein the video data includes a time-dependent video stream of video frames captured by the video image sensor;

process the video data through the plurality of image classifiers to determine at least one object type for a first frame of the video data;

determine a corresponding object detector from the plurality of object detectors, the corresponding object detector configured to detect a first object type corresponding to the at least one object type determined by the plurality of image classifiers;

determine, using the corresponding object detector, position information for a detected object in the video data having the first object type; and

send, over a network, an event notification to a video surveillance application.

2. The system of claim 1 , wherein:

the controller comprises:

a processor;

a memory;

the plurality of image classifiers, stored in the memory for execution by the processor, and configured to use:

a first set of processor resources; and

a first set of memory resources; and

the plurality of object detectors, stored in the memory for execution by the processor, and configured to use:

a second set of processor resources; and

a second set of memory resources;

the first set of processor resources are less than the second set of processor resources; and

the first set of memory resources are less than the second set of memory resources.

3. The system of claim 1 , further comprising:

a video camera housing, wherein the video camera housing encloses:

the video image sensor;

the controller; and

a network interface configured to communicate with the network.

4. The system of claim 1 , wherein:

the plurality of image classifiers is configured to:

process each video frame in the time-dependent video stream; and

return a binary indicator of the first object type from a corresponding image classifier for the first object type; and

the corresponding object detector is configured to:

selectively process, responsive to the corresponding image classifier determining that the first object type is present, a subset of video frames to determine the position information for the detected object; and

return position information values for the detected object.

5. The system of claim 4 , wherein:

the corresponding image classifier is further configured to return an image type confidence value for the first object type; and

the corresponding object detector is further configured to return an object detected confidence value for the detected object.

6. The system of claim 5 , wherein the controller is further configured to:

compare the object detected confidence value to an object verification threshold;

responsive to the object detected confidence value meeting the object verification threshold, verify, using the corresponding image classifier, the first object type; and

responsive to the verification of the first object type being negative, report a detection failure event.

7. The system of claim 1 , wherein the controller is further configured to:

initiate, responsive to the position information for the detected object, an object tracking algorithm for the detected object to process subsequent video frames of the time-dependent video stream;

determine, using the object tracking algorithm, whether the detected object is present in the subsequent video frames of the time-dependent video stream;

responsive to the object tracking algorithm determining an object exit event, verify, using the plurality of image classifiers, the first object type in a video frame corresponding to the object exit event; and

responsive to verifying that the first object type is present in the video frame corresponding to the object exit event, report a detection failure event.

8. The system of claim 1 , wherein:

the plurality of image classifiers is configured to process the video data from the video image sensor as video frames are received by the controller; and

the plurality of object detectors is configured to selectively process the video data responsive to the image classifier determining that the first object type is present in a classified video data frame.

9. The system of claim 1 , wherein each image classifier of the plurality of image classifiers is configured to process the first frame through an image classification algorithm configured to comprehend the first frame as a whole to determine a presence or absence of a corresponding object type for that image classifier.

10. The system of claim 1 , wherein the controller is further configured to send the position information and image data for the detected object for further processing by an analytics engine using a model selected from:

an object recognition model;

an object tracking model; and

an attribute detection model.

11. A computer-implemented method, comprising:

receiving video data from a video image sensor, wherein the video data includes a time-dependent video stream of video frames captured by the video image sensor;

determining, using a plurality of image classifiers, whether a first object type is present in a first frame of the video data, wherein each image classifier of the plurality of image classifiers is configured for a different object type;

determining a corresponding object detector from a plurality of object detectors, wherein:

each object detector of the plurality of object detectors is configured for a different object type; and

the corresponding object detector is configured to detect an object type corresponding to the first object type determined by the plurality of image classifiers;

determining, using the corresponding object detector, position information for a detected object in the video data having the first object type; and

sending, over a network, an event notification to a video surveillance application.

12. The computer-implemented method of claim 11 , further comprising:

configuring a controller to:

use a first set of compute resources for the plurality of image classifiers; and

use a second set of compute resources for the plurality of object detectors, wherein the first set of compute resources is less than the second set of compute resources.

13. The computer-implemented method of claim 12 , wherein:

the controller comprises compute resources including a processor and a memory;

the plurality of image classifiers and the plurality of object detectors are stored in the memory for execution by the processor;

the controller executes:

receiving the video data from the video image sensor;

determining whether the first object type is present;

determining position information for the detected object; and

sending the event notification; and

the controller, the video image sensor, and a network interface for communicating over the network are disposed within a video camera housing.

14. The computer-implemented method of claim 11 , further comprising:

processing, with the plurality of image classifiers, each video frame in the video data;

returning, by the plurality of image classifiers, a binary indicator of the first object type by a corresponding image classifier for the first object type;

selectively processing, with the corresponding object detector and responsive to the corresponding image classifier determining that the first object type is present, a subset of video frames to determine the position information for the detected object; and

returning, by the corresponding object detector, position information values for the detected object.

15. The computer-implemented method of claim 14 , further comprising:

returning, by the corresponding image classifier, an image type confidence value for the first object type; and

returning, by the corresponding object detector, an object detected confidence value for the detected object.

16. The computer-implemented method of claim 15 , further comprising:

comparing the object detected confidence value to an object verification threshold;

responsive to the object detected confidence value meeting the object verification threshold, verifying, using the corresponding image classifier, the first object type; and

responsive to the verification of the first object type being negative, reporting a detection failure event.

17. The computer-implemented method of claim 11 , further comprising:

initiating, responsive to the position information for the detected object, an object tracking algorithm for the detected object to process subsequent video frames of the video data;

determining, using the object tracking algorithm, whether the detected object is present in the subsequent video frames of the time-dependent video stream;

responsive to the object tracking algorithm determining an object exit event, verifying, using the plurality of image classifiers, the first object type in a video frame corresponding to the object exit event; and

responsive to verifying that the first object type is present in the video frame corresponding to the object exit event, reporting a detection failure event.

18. The computer-implemented method of claim 11 , further comprising:

processing, by the plurality of image classifiers, the video data from the video image sensor as video frames are received by a controller; and

selectively processing, by the corresponding object detector, a subset of the video data responsive to the plurality of image classifiers determining that the first object type is present in a classified video data frame.

19. The computer-implemented method of claim 11 , wherein each image classifier of the plurality of image classifiers is configured to process the first frame through an image classification algorithm configured to comprehend the first frame as a whole to determine a presence or absence of a corresponding object type for that image classifier.

20. A storage system, comprising:

a video image sensor;

a plurality of image classifiers, wherein each image classifier of the plurality of image classifiers is configured for a different object type;

a plurality of object detectors, wherein each object detector of the plurality of object detectors is configured for a different object type;

means for receiving video data from the video image sensor, wherein the video data includes a time-dependent stream of video frames captured by the video image sensor;

means for determining, using the plurality of image classifiers, whether a first object type is present in a first frame of the video data;

means for determining a corresponding object detector from the plurality of object detectors, wherein the corresponding object detector is configured to detect an object type corresponding to the first object type determined by the plurality of image classifiers;

means for determining, using the corresponding object detector, position information for a detected object in the video data having the first object type; and

means for sending, over a network, an event notification to a video surveillance application.

Assignments (10)
PARTIAL RELEASE OF SECURITY INTERESTS Recorded Apr 25, 2025
From: JPMORGAN CHASE BANK, N.A., AS AGENT
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 071382/0001 →
SECURITY AGREEMENT Recorded Apr 25, 2025
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 071050/0001 →
PATENT COLLATERAL AGREEMENT Recorded Aug 23, 2024
From: SANDISK TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS THE AGENT
Reel/Frame 068762/0494 →
CHANGE OF NAME Recorded Jun 27, 2024
From: SANDISK TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067982/0032 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 29, 2024
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: SANDISK TECHNOLOGIES, INC.
Reel/Frame 067567/0682 →
PATENT COLLATERAL AGREEMENT - DDTL LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 067045/0156 →
PATENT COLLATERAL AGREEMENT - A&R LOAN AGREEMENT Recorded Aug 21, 2023
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 064715/0001 →
RELEASE OF SECURITY INTEREST AT REEL 057651 FRAME 0296 Recorded Feb 8, 2022
From: JPMORGAN CHASE BANK, N.A.
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 058981/0958 →
SECURITY INTEREST Recorded Sep 17, 2021
From: WESTERN DIGITAL TECHNOLOGIES, INC.
To: JPMORGAN CHASE BANK, N.A., AS AGENT
Reel/Frame 057651/0296 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2021
From: XIONG, SHAOMIN; HIRANO, TOSHIKI; KAH, DAMIEN; NAGABHIRAVA, RAJEEV; BERMAN, DAVID
To: WESTERN DIGITAL TECHNOLOGIES, INC.
Reel/Frame 056331/0591 →