IP Library Granted Patent US 9,936,170
Granted Patent B2
US 9,936,170 · App. 14/952,200 · Granted Apr 3, 2018

View handling in video surveillance systems

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 9,936,170
App. No.
14/952,200
Granted
Apr 3, 2018
Kind
B2
Abstract

A content analysis engine receives video input and performs analysis of the video input to produce one or more gross change primitives. A view engine coupled to the content analysis engine receives the one or more gross change primitives from the content analysis engine and provides view identification information. A rules engine coupled to the view engine receives the view identification information from the view engine and provides one or more rules based on the view identification information. An inference engine performs video analysis based on the one or more rules provided by the rules engine and the one or more gross change primitives.

Claims (75)

1. A computing system comprising:

one or more processors; and

a memory system comprising one or more non-transitory computer-readable media storing instructions that, when executed by at least one of the one or more processors, cause the computing system to perform a method comprising:

receiving a video signal comprising a plurality of frames;

performing background segmentation on the video signal to extract foregrounds from the plurality of frames;

determining an area of a foreground for a first frame of the plurality of frames;

determining that the first frame of the plurality of frames is a bad frame based on determining that the area of the foreground is greater than a predetermined portion of a total frame area of the first frame;

generating a bad frame event based on determining the first frame is a bad frame;

determining a bad frame type corresponding to the first frame;

storing an indication of the bad frame type in a listing of bad frame types;

deleting a data packet containing the first frame based on the bad frame event;

generating a gross change event based on determining that a predetermined number of consecutive bad frames occur; and

clearing the listing of bad frame types based on the gross change event.

2. The system of claim 1 , the method further comprising:

determining an area of a foreground for a second frame of the plurality of frames by determining a total number of pixels in the foreground of the second frame; and

determining that the second frame of the plurality of frames is a good frame based on determining that the total number of pixels in the foreground of the second frame is lower than a predetermined threshold.

3. The system of claim 2 , the method further comprising:

determining one or more video primitives based on the second frame;

determining a view identification corresponding to the one or more video primitives based on the second frame;

determining one or more rules to apply based on the view identification;

determining that an event has occurred based on the one or more video primitives and the one or more rules; and

determining a response to the event.

4. The system of claim 1 , the method further comprising:

generating a gross change primitive in response to the gross change event.

5. The system of claim 1 , the method further comprising:

resetting a gross change detector in response to the gross change event.

6. The system of claim 1 , the method further comprising:

deleting each data packet that occurred after a first bad frame of the consecutive bad frames in response to the gross change event.

7. The system of claim 1 , the method further comprising:

returning a content analysis engine to a warm-up state in response to the gross change event.

8. The system of claim 1 , wherein the bad frame type comprises at least one of an unknown bad frame, a light-on bad frame, a light-off bad frame, and a camera-motion bad frame.

9. The system of claim 1 , wherein the listing of bad frame types is a bad frame histogram.

10. A non-transitory computer-readable medium storing instructions that, when executed by at least one processor of a computing system, cause the computing system to perform a method comprising:

receiving a video signal comprising a plurality of frames;

performing background segmentation on the video signal to extract foregrounds from the plurality of frames;

determining an area of a foreground for a first frame of the plurality of frames;

determining that the first frame of the plurality of frames is a bad frame based on determining that the area of the foreground is greater than a predetermined portion of a total frame area of the first frame;

generating a bad frame event based on determining the first frame is a bad frame;

determining a bad frame type corresponding to first frame;

storing an indication of the bad frame type in a listing of bad frame types;

deleting a data packet containing the first frame based on the bad frame event;

generating a gross change event based on determining that a predetermined number of consecutive bad frames occur; and

clearing the listing of bad frame types based on the gross change event.

11. A method comprising:

receiving a video signal comprising a plurality of frames;

performing background segmentation on the video signal to extract foregrounds from the plurality of frames;

determining an area of a foreground for a first frame of the plurality of frames;

determining that the first frame of the plurality of frames is a bad frame based on determining that the area of the foreground is greater than a predetermined portion of a total frame area of the first frame;

generating a bad frame event based on determining the first frame is a bad frame;

determining a bad frame type corresponding to the first frame;

storing an indication of the bad frame type in a listing of bad frame types;

deleting a data packet containing the first frame based on the bad frame event;

generating a gross change event based on determining that a predetermined number of consecutive bad frames occur; and

clearing the listing of bad frame types based on the gross change event.

12. The method of claim 11 , further comprising:

determining an area of a foreground for a second frame of the plurality of frames by determining a total number of pixels in the foreground of the second frame; and

determining that the second frame of the plurality of frames is a good frame based on determining that the total number of pixels in the foreground of the second frame is lower than a predetermined threshold.

13. The method of claim 12 , further comprising:

determining one or more video primitives based on the second frame;

determining a view identification corresponding to the one or more video primitives based on the second frame;

determining one or more rules to apply based on the view identification;

determining that an event has occurred based on the one or more video primitives and the one or more rules; and

determining a response to the event.

14. The method of claim 11 , further comprising:

generating a gross change primitive in response to the gross change event.

15. The method of claim 11 , further comprising:

resetting a gross change detector in response to the gross change event.

16. The method of claim 11 , further comprising:

resetting a tracker in response to the gross change event.

17. The method of claim 11 , further comprising:

deleting each data packet that occurred after a first bad frame of the consecutive bad frames in response to the gross change event.

18. The method of claim 11 , further comprising:

returning a content analysis engine to a warm-up state in response to the gross change event.

19. The method of claim 11 , wherein the bad frame type comprises at least one of an unknown bad frame, a light-on bad frame, a light-off bad frame, and a camera-motion bad frame.

20. The method of claim 11 , wherein the listing of bad frame types is a bad frame histogram.

Assignments (4)
NUNC PRO TUNC ASSIGNMENT Recorded Oct 23, 2022
From: AVIGILON FORTRESS CORPORATION
To: MOTOROLA SOLUTIONS, INC.
Reel/Frame 061746/0897 →
RELEASE OF SECURITY INTEREST Recorded Aug 21, 2018
From: HSBC BANK CANADA
To: AVIGILON FORTRESS CORPORATION
Reel/Frame 047032/0063 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2017
From: YIN, WEIHONG; CHOSAK, ANDREW J; FRAZIER, MATTHEW F; CLARK, JOHN IAN WALLACE; EGNAL, GEOFFREY; HAERING, NIELS; LIPTON, ALAN J; MADDEN, DONALD G; MANNEBACH, MICHAEL C; MYERS, GARY W; VENETIANER, PETER L; ZHANG, ZHONG; SFEKAS, JAMES S
To: OBJECTVIDEO, INC.
Reel/Frame 044375/0036 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2017
From: OBJECTVIDEO, INC.
To: AVIGILON FORTRESS CORPORATION
Reel/Frame 044375/0089 →