US 12,223,772 B2
Systems, devices, and methods for pedestrian traffic assessment
William Royle, Silver Spring, MD (US); Wayne Mitzen, Manassas, VA (US); David Dochter, Washington, DC (US); and Matthew Alexander, Rockville, MD (US)
Assigned to PIVOT ANALYTICS, LLC, Washington, DC (US)
Filed by PIVOT ANALYTICS, LLC, Washington, DC (US)
Filed on Jan. 7, 2022, as Appl. No. 17/570,983.
Prior Publication US 2023/0222840 A1, Jul. 13, 2023
Int. Cl. G06V 40/20 (2022.01); G06T 7/246 (2017.01); H04N 7/18 (2006.01)
CPC G06V 40/20 (2022.01) [G06T 7/246 (2017.01); H04N 7/181 (2013.01); G06T 2207/10016 (2013.01); G06T 2207/30196 (2013.01)] 11 Claims
OG exemplary drawing
 
1. A computer implemented method of quantifying pedestrian footfall, the method to be carried out by a counting server including a CPU core with multithreading capability operating a plurality of CPU threads, and a GPU, the method comprising:
obtaining by a first optical processing thread of the plurality of CPU threads a first optical data block;
obtaining by a second optical processing thread of the plurality of CPU threads a second optical data block;
determining, by the first optical processing thread, a scene change in the first optical data block;
determining, by the second optical processing thread, a second scene change in the second optical data block;
requesting, by the first optical processing thread, that a GPU management thread of the plurality of CPU threads allocate GPU resources for analysis of a first optical frame associated with the scene change;
requesting, by second optical processing thread, that the GPU management thread allocate GPU resources for analysis of a second optical frame associated with the second scene change;
allocating, by the GPU management thread, first GPU resources for analysis of the first optical frame and second GPU resources for analysis of the second optical frame;
identifying, by the GPU, a feature of interest in the first optical frame;
identifying, by the GPU, a second feature of interest in the second optical frame;
tracking, by the first optical processing thread, the feature of interest in optical frames of the first optical data block subsequent to the first optical frame;
tracking, by the second optical processing thread, the second feature of interest in optical frames of the second optical data block subsequent to the second optical frame;
incrementing, by the first optical processing thread, an FOI count responsive to the feature of interest crossing a predetermined point in one of the optical frames; and
incrementing, by the second optical processing thread, the FOI count responsive to the second feature of interest crossing the predetermined point in a second one of the optical frames.