IP Library Granted Patent US 8,908,912
Granted Patent B2
US 8,908,912 · App. 13/258,476 · Granted Dec 9, 2014

Particle tracking methods

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 8,908,912
App. No.
13/258,476
Granted
Dec 9, 2014
Kind
B2
Abstract

A method for tracking an object in a video data, comprises the steps of determining a plurality of particles for estimating a location of the object in the video data, determining a weight for each of the plurality of the particles, wherein the weights of two or more particles are determined substantially in parallel, and estimating the location of the object in the video data based upon the determined particle weights.

Claims (226)

1. A method of tracking an object in a video data, comprising:

determining a plurality of particles for use in estimating a location of the object in the video data;

allocating a first group of the plurality of particles to a graphics processing unit (GPU);

allocating a second group of the plurality of particles to one or more processing units;

determining a weight for each of the plurality of the particles, wherein:

the weight for at least some of the first and second groups of particles are determined in parallel;

the weight of two or more particles among the plurality of particles is determined substantially in parallel; and

the weight of each of the plurality of particles is based on a plurality of information cues and a Bhattacharyya similarity function; and

estimating the location of the object in the video data based upon the determined particle weights.

2. The method of claim 1 , comprising dividing the plurality of particles amongst the one or more processing units, wherein each processing unit is arranged to determine the weight for each of the particles allocated thereto.

3. The method of claim 1 , comprising dividing the plurality of particles amongst a plurality of processors in the GPU, wherein each processor is arranged to determine the weight for each of the particles allocated thereto.

4. The method of claim 1 , comprising selecting a particle having a greatest weight from the plurality of particles.

5. The method of claim 1 , wherein the plurality of information cues includes a colour histogram, an edge orientation histogram and wavelet features.

6. The method of claim 5 , wherein a weight P n colour of an nth particle based on the colour histogram is determined by:

P

n

colour

=

exp

{

-

D

2

(

H

n

colour

,

H

ref

colour

)

with

D

(

H

n

colour

,

H

ref

colour

)

=

(

1

-

i

=

0

B

-

1

h

i

,

n

colour

·

h

i

,

ref

colour

)

1

/

2

wherein D is the Bhattacharyya similarity function, H n colour is a colour histogram in a HSV colour space for the nth particle and H ref colour is a reference colour histogram for the nth particle.

7. The method of claim 5 , wherein a weight P n edge of an nth particle based on the edge orientation histogram is determined by:

P

n

edge

=

exp

{

-

D

2

(

H

n

edge

,

H

ref

edge

)

with

D

(

H

n

edge

,

H

ref

edge

)

=

(

1

-

i

=

0

B

-

1

h

i

,

n

edge

·

h

i

,

ref

edge

)

1

/

2

wherein H n edge is an edge orientation histogram for the nth particle, H ref edge is a reference edge orientation histogram and D is the Bhattacharyya similarity function.

8. The method of claim 1 , wherein the weight for each of the plurality of particles is determined as a sum of weights determined according to each of the plurality of information cues.

9. A non-transitory computer-useable medium having a compute readable program code to implement a method for tracking an object in video data comprising:

determining a plurality of particles for use in estimating a location of the object in the video data;

allocating a first group of the plurality of particles to a graphics processing unit (GPU);

allocating a second group of the plurality of particles to one or more processing units;

determining a weight for each of the plurality of the particles, wherein:

the weight for at least some of the first and second groups of particles are determined in parallel;

the weight of two or more particles among the plurality of particles is determined substantially in parallel; and

the weight of each of the plurality of particles is based on a plurality of information cues and a Bhattacharyya similarity function; and

estimating the location of the object in the video data based upon the determined particle weights.

10. An apparatus for tracking an object in a video data, comprising:

a first processing unit arranged to:

determine a plurality of particles; and

estimate a location of the object in the video data based upon a weight of each of the plurality of particles, wherein the weight of each of the plurality of particles is based on:

a plurality of information cues selected from a colour histogram, an edge orientation histogram and wavelet features; and

a Euclidean distance between a sample feature vector and a reference feature vector; and

a graphics processing unit arranged to determine a weight for at least some of the plurality of the particles, wherein the weight of two or more particles among the plurality of particles is determined substantially in parallel.

11. The apparatus of claim 10 , comprising a plurality of processing units, wherein the first processing unit is arranged to allocate a first group of the plurality of particles to the graphics processing unit and to allocate a second group of the plurality of particles to the plurality of processing units, wherein the graphics processing unit and the plurality of processing units are arranged to determine the weights for at least some of the first group and the second group in parallel.

12. The method of claim 10 , wherein a weight P n wavelet of an nth particle based on the edge orientation histogram is determined by:

P

n

wavelet

=

exp

{

-

Eu

(

V

n

wavelet

,

V

ref

wavelet

)

with

Eu

(

V

n

wavelet

,

V

ref

wavelet

)

=

(

i

=

0

B

-

1

(

v

i

,

n

wavelet

-

v

i

,

ref

wavelet

)

2

)

1

/

2

wherein Eu is the Euclidean distance between the sample feature vector V n wavelet and the reference feature vector V ref wavelet .

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 30, 2018
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: GOOGLE LLC
Reel/Frame 045933/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2015
From: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 037079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2011
From: LIU, KE-YAN; TANG, LIANG; WANG, LEI; LIU, WEI
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 027513/0214 →