IP Library Granted Patent US 10,423,892
Granted Patent B2
US 10,423,892 · App. 15/090,862 · Granted Sep 24, 2019

Trajectory cluster model for learning trajectory patterns in video data

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 10,423,892
App. No.
15/090,862
Granted
Sep 24, 2019
Kind
B2
Abstract

Techniques are disclosed for analyzing and learning behavior in an acquired stream of video frames. In one embodiment, a trajectory analyzer clusters trajectories of objects depicted in video frames and builds a trajectory model including the trajectory clusters, a prior probability of assigning a trajectory to each cluster, and an intra-cluster probability distribution indicating the probability that a trajectory mapping to each cluster is least various distances away from the cluster. Given a new trajectory, a score indicating how unusual the trajectory is may be computed based on the product of the probability of the trajectory mapping to a particular cluster and the intra-cluster probability of the trajectory being a computed distance from the cluster. The distance used to match the trajectory to the cluster and determine intra-cluster probability is computed using a parallel Needleman-Wunsch algorithm, with cells in antidiagonals of a matrix and connected sub-matrices being computed in parallel.

Claims (62)

1. A computer-implemented method for analyzing trajectories of objects depicted in video frames captured by a plurality of video cameras, comprising:

acquiring, via a video driver, a plurality of data streams to track an object, the plurality of data streams being processed video frames from a plurality of video cameras, each data stream including a tracked subject identifier that specifies the object being tracked, and a camera identifier associated with a corresponding video camera of the plurality of video cameras;

calculating, via at least one processor, a first distance between a received trajectory for the object in a first data stream of the plurality of data streams and a stored trajectory cluster from a plurality of stored trajectory clusters based on the tracked subject identifier;

determining, based on the first distance, whether the received trajectory maps to the stored trajectory cluster; and

upon determining that the received trajectory maps to the stored trajectory cluster:

determining a first score based on at least a joint probability computed as a product of a probability of the received trajectory mapping to the stored trajectory cluster and the probability of the received trajectory being the first distance from the stored trajectory cluster, and

upon determining that the first score exceeds a threshold value, issuing an alert to a user, the alert indicating an anomaly in the received trajectory of the object.

2. The method of claim 1 , further comprising generating a new trajectory including an (x,y) position of the object upon determining that the received trajectory does not map to the stored trajectory cluster, and storing the new trajectory in a trajectory buffer.

3. The method of claim 1 , wherein:

the probability of the received trajectory mapping to the stored trajectory cluster is determined based on at least a count of previous trajectories for the object which mapped to the stored trajectory cluster based on the tracked subject identifier.

4. The method of claim 1 , wherein the first score is determined as S=1.0−Pr×f i , Pr being the probability of the received trajectory mapping to the stored trajectory cluster, and f i being the probability of the received trajectory being the first distance from the stored trajectory cluster.

5. The method of claim 1 , wherein:

the stored trajectory cluster includes an ordered list of points in a two-dimensional (2D) image-pixel space; and

the first distance between the received trajectory and the stored trajectory cluster is a distance between a list of points of the received trajectory and the list of points of the stored trajectory cluster determined based on a dynamic programming technique.

6. The method of claim 5 , wherein:

the dynamic programming technique is a Needleman-Wunsch algorithm; and

cells in antidiagonals of a matrix used in the Needleman-Wunsch algorithm and all connected sub-matrices are computed in parallel.

7. The method of claim 1 , further comprising:

upon determining that the received trajectory does not map to a stored trajectory cluster:

determining a second score based on at least a cumulative probability distribution indicating a probability of the received trajectory being at least a second distance from a mature stored trajectory cluster that best matches the received trajectory, and

upon determining that the second score exceeds a second threshold value, issuing an alert to the user.

8. The method of claim 1 , wherein the received trajectory is assembled by appending tracked positions of the object to the received trajectory.

9. The method of claim 8 , wherein assembling the received trajectory includes:

clustering raw tracked object positions; and

appending the clustered tracked positions to the received trajectory.

10. A non-transitory computer-readable storage medium storing instructions, which when executed by a computer system, perform operations to:

acquire a plurality of data streams to track an object, the plurality of data streams being processed video frames from a plurality of video cameras, each data stream including a tracked subject identifier that specifies the object being tracked, and a camera identifier associated with a corresponding video camera of the plurality of video cameras;

calculate a first distance between a received trajectory for the object in a first data stream of the plurality of data streams and a stored trajectory cluster from a plurality of stored trajectory clusters based on the tracked subject identifier;

determine, based on the first distance, whether the received trajectory maps to the stored trajectory cluster; and

upon a determination that the received trajectory maps to the stored trajectory cluster:

determine a first score based on at least a joint probability computed as a product of a probability of the received trajectory mapping to the stored trajectory cluster and the probability of the received trajectory being the first distance from the stored trajectory cluster, and

upon a determination that the first score exceeds a threshold value, issue an alert to a user, the alert indicating an anomaly in the received trajectory of the object.

11. The non-transitory computer-readable storage medium of claim 10 , wherein:

the probability of the received trajectory mapping to the stored trajectory cluster is determined based on at least a count of previous trajectories for the object which mapped to the stored trajectory cluster based on the tracked subject identifier.

12. The non-transitory computer-readable storage medium of claim 10 , wherein the first score is determined as S=1.0−Pr×f i , Pr being the probability of the received trajectory mapping to the stored trajectory cluster, and f i being the probability of the received trajectory being the first distance from the stored trajectory cluster.

13. The non-transitory computer-readable storage medium of claim 10 , wherein:

the stored trajectory cluster includes an ordered list of points in a two-dimensional (2D) image-pixel space; and

the first distance between the received trajectory and the stored trajectory cluster is a distance between a list of points of the received trajectory and the list of points of the stored trajectory cluster determined based on a dynamic programming technique.

14. The non-transitory computer-readable storage medium of claim 13 , wherein:

the dynamic programming technique is a Needleman-Wunsch algorithm; and

cells in antidiagonals of a matrix used in the Needleman-Wunsch algorithm and all connected sub-matrices are computed in parallel.

15. The non-transitory computer-readable storage medium of claim 10 , the operations further comprising:

upon a determination that the received trajectory does not map to a stored trajectory cluster:

determine a second score based on at least a second cumulative probability distribution indicating probability of the received trajectory being at least a second distance from a mature stored trajectory cluster that best matches the received trajectory, and

upon a determination that the second score exceeds a second threshold value, issue an alert to the user.

16. The non-transitory computer-readable storage medium of claim 10 , wherein the received trajectory is assembled by appending tracked positions of the object to the received trajectory.

17. The computer-readable storage medium of claim 16 , wherein instructions to assemble the received trajectory includes operations to:

cluster raw tracked object positions; and

append the clustered tracked positions to the received trajectory.

18. A system, comprising:

a processor; and

a memory in communication with the processor, wherein the memory includes an application program configured to perform operations to:

acquire a plurality of data streams to track an object, the plurality of data streams being processed video frames from a plurality of video cameras, each data stream including a tracked subject identifier that specifies the object being tracked, and a camera identifier associated with a corresponding video camera of the plurality of video cameras;

calculate a first distance between a received trajectory for the object in a first data stream of the plurality of data streams and a stored trajectory cluster from a plurality of stored trajectory clusters based on the tracked subject identifier;

determine, based on the first distance, whether the received trajectory maps to the stored trajectory cluster; and

upon a determination that the received trajectory maps to the stored trajectory cluster:

determine a first score based on at least a joint probability computed as a product of a probability of the received trajectory mapping to the stored trajectory cluster and the probability of the received trajectory being the first distance from the stored trajectory cluster, and

upon a determination that the first score exceeds a threshold value, issue an alert to a user, the alert indicating an anomaly in the received trajectory of the object.

19. The system of claim 18 , wherein:

the first distance between the received trajectory and the stored trajectory cluster is a distance between a list of points of the received trajectory and the list of points of the stored trajectory cluster determined based on a Needleman-Wunsch algorithm; and

cells in antidiagonals of a matrix used in the Needleman-Wunsch algorithm and all connected sub-matrices are computed in parallel.

20. The system of claim 18 , the application program further configured to perform operations to generate a new trajectory including an (x,y) position of the object upon determining that the received trajectory does not map to the stored trajectory cluster, and storing the new trajectory in a trajectory buffer.

Assignments (69)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2020
From: OMNI AI, INC.
To: INTELLECTIVE AI, INC.
Reel/Frame 052216/0585 →
SECURITY INTEREST Recorded Jun 14, 2017
From: GIANT GRAY, INC.
To: BLESSING, STEPHEN C.; MCCLAIN, TERRY F.; WALTER, JEFFREY; WALTER, SIDNEY; WILLIAMS, JAY; WILLIAMS, SUE
Reel/Frame 042807/0240 →
SECURITY INTEREST Recorded Jun 8, 2017
From: GIANT GRAY, INC.
To: GOLDEN, ROGER; PEREZ-MAJUL, ALAIN; PEREZ-MAJUL, ALENA; PEREZ-MAJUL, MARIA; PEREZ-MAJUL, FERNANDO
Reel/Frame 042734/0380 →
SECURITY INTEREST Recorded Jun 5, 2017
From: GIANT GRAY, INC.
To: HOLT, HILLERY N.; HUTTON, DONNA; HUTTON, WILLIAM; HUTTON, GARY; HUTTON, DEBORAH K.; JAMES, RONALD; JAMES, JUDITH; JOHNSON, ANN; JOHNSON, NORMAN; JUDGE, JOYCE A.; KEEVIN, LOIS JANE; KINNAMAN, SANDRA; KINNEY, JOY E.; KOUSARI, EHSAN; KOUSARI, MARY; LEMASTER, CHERYL J.; LEMASTER, CARL D.; LITTLE, CAMILLE; LITTLE, STEPHEN C.; MARCUM, JOSEPH; MARCUM, DEBRA; MCAVOY, JOHN; MCAVOY, TIFFANY; MCCORD, LUCINDA; MCCORD, STEPHEN; MCKAIN, CHRISTINE; MERCER, JOAN; MORRIS, GILBERT; MORRIS, DEBRA; NECESSARY, MICHAEL J.; PEGLOW, SUE ELLEN; PETERS, CYNTHIA; PIKE, DAVID A.; REECE, DONALD B.; REECE, MYRTLE D.; RENBARGER, TERRY; RENBARGER, ROSEMARY; REYES, JOSE; REYES, BETH; RHOTEN, MARY C.; RICKS, PENNY L.; ROBINSON, RICK; SGRO, MARIO P.; SGRO, MARIO; ST. LOUIS, GLORIA; STROEH, MARY ANN; STROEH, STEPHEN L.; SULLIVAN, DONNA L.; TOWNSEND, CHRISTOPHER; TOWNSEND, JILL; TREES, CRAIG; WELPOTT, WARREN R.; WELPOTT, WARREN; WELPOTT, TRAVIS; WELPOTT, MELISSA; ZEIGLER, BETTY JO
Reel/Frame 042687/0055 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: HARRINGTON, ANNE M.
Reel/Frame 042665/0161 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: DESHIELDS, JAMES
Reel/Frame 042663/0048 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: ENRIQUEZ, RICK
Reel/Frame 042663/0577 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: GANGWER, ALAN; GANGWER, JANE
Reel/Frame 042663/0691 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: GINDER, DARLENE; GINDER, MICHAEL
Reel/Frame 042663/0764 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: HANNER, DAVID; HANNER, KATTE
Reel/Frame 042664/0172 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: HARRINGTON, ANNE
Reel/Frame 042665/0109 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: HIGGINBOTTOM, BRYCE E.
Reel/Frame 042665/0493 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: HIGGINBOTTOM, BRYCE
Reel/Frame 042665/0678 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: HOLT, RUTH ANN
Reel/Frame 042665/0685 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: DUNLAVY, FRIEDA
Reel/Frame 042666/0637 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BAGIENSKI, FRANK
Reel/Frame 042645/0494 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BATCHELDER, ROBERT
Reel/Frame 042645/0507 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BATCHELDER, LEANNE
Reel/Frame 042645/0552 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BIVANS, WAYNE
Reel/Frame 042646/0443 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BIVANS, JENNIFER
Reel/Frame 042646/0512 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BODINE, EDWARD
Reel/Frame 042646/0534 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BODINE, EDWARD
Reel/Frame 042646/0599 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BODINE, REBECCAH
Reel/Frame 042646/0630 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BODINE, REBECCAH
Reel/Frame 042646/0711 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BOSE, BETHEL
Reel/Frame 042646/0862 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BOSLER, ALAN J.
Reel/Frame 042647/0016 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BOSLER, MARY ALICE
Reel/Frame 042647/0143 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BOSLER, ALAN J.
Reel/Frame 042647/0196 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BOSLER, MARY ALICE
Reel/Frame 042647/0384 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BRUNER, JOHN
Reel/Frame 042647/0447 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BRUNER, LINDA
Reel/Frame 042647/0831 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BRUNNEMER, BRENT
Reel/Frame 042652/0446 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BRUNNEMER, BRENT
Reel/Frame 042652/0518 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BURKE, JOHNIE
Reel/Frame 042652/0777 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BRUNNEMER, BRENT
Reel/Frame 042652/0788 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BURKE, JOHNIE
Reel/Frame 042652/0795 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BURKE, MARY
Reel/Frame 042652/0828 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BURKE, MARY
Reel/Frame 042652/0905 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BUSBY, RANAYE
Reel/Frame 042652/0912 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: BUSBY, BRET D.
Reel/Frame 042652/0919 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: CANADA, LISBETH ANN
Reel/Frame 042652/0946 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: CANADA, ROBERT
Reel/Frame 042653/0367 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: CANADA, LISBETH ANN
Reel/Frame 042653/0374 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: CHEEK, GERALD
Reel/Frame 042657/0671 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: CHEEK, PAMELA
Reel/Frame 042658/0507 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: COLLINS, STEVEN F.
Reel/Frame 042658/0634 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: COLLINS, LINDA
Reel/Frame 042658/0962 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: COLLINS, STEVEN F.
Reel/Frame 042658/0969 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: CONBOY, PAIGE
Reel/Frame 042659/0039 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: CONBOY, PAIGE
Reel/Frame 042659/0179 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: CONBOY, SEAN P.
Reel/Frame 042659/0272 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: CONBOY, SEAN
Reel/Frame 042659/0431 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: COX, REBECCA J.
Reel/Frame 042659/0603 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: COX, LAWRENCE E.
Reel/Frame 042659/0667 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: DARLING, WILLIAM; DARLING, DIANA
Reel/Frame 042659/0776 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: DAVIS, JEFFREY J.
Reel/Frame 042661/0438 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: DAVIS, JEFFREY J.; DAVIS, NAOMI
Reel/Frame 042662/0103 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: DENNY, SUMMER
Reel/Frame 042662/0923 →
SECURITY INTEREST Recorded Jun 1, 2017
From: GIANT GRAY, INC.
To: DESHIELDS, JAMES
Reel/Frame 042662/0983 →
SECURITY INTEREST Recorded May 30, 2017
From: GIANT GRAY, INC.
To: MULTIMEDIA GRAPHIC NETWORK
Reel/Frame 042621/0900 →
SECURITY INTEREST Recorded May 30, 2017
From: GIANT GRAY, INC.
To: DAVIS, DREW
Reel/Frame 042621/0988 →
SECURITY INTEREST Recorded May 30, 2017
From: GIANT GRAY, INC.
To: TRAN, JOHN
Reel/Frame 042622/0033 →
SECURITY INTEREST Recorded May 30, 2017
From: GIANT GRAY, INC.
To: TRAN, JOHN
Reel/Frame 042622/0052 →
SECURITY INTEREST Recorded May 30, 2017
From: GIANT GRAY, INC.
To: WILKINSON, PHILIP
Reel/Frame 042622/0065 →
SECURITY INTEREST Recorded May 30, 2017
From: GIANT GRAY, INC.
To: DAVIS, DREW
Reel/Frame 042621/0962 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2017
From: GIANT GRAY, INC.
To: PEPPERWOOD FUND II, LP
Reel/Frame 041684/0417 →
CHANGE OF NAME Recorded Mar 22, 2017
From: BEHAVORIAL RECOGNITION SYSTEMS, INC.
To: GIANT GRAY, INC.
Reel/Frame 042067/0907 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 22, 2017
From: PEPPERWOOD FUND II, LP
To: OMNI AI, INC.
Reel/Frame 041687/0531 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 7, 2016
From: XU, GANG; SEOW, MING-JUNG; YANG, TAO; COBB, WESLEY KENNETH
To: BEHAVIORAL RECOGNITION SYSTEMS, INC.
Reel/Frame 038215/0563 →