# US 2021/0174091 A1 · Systems and methods for tracking a participant using multiple cameras

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0174091 A1
- Document ID: US20210174091A1
- Status: Published application
- Kind: A1
- Application number: 17/108,620
- Filed: 2020-12-01
- Published: 2021-06-10
- Earliest claimed: 2019-12-04
- Assignees: Yullr, LLC
- Applicants: Yullr, LLC
- Inventors: Sean Doucette
- Web page: https://patentgrep.com/patent/US20210174091A1

## CPC

- G06V 20/42: {of sport video content}
- H04N 7/181: {for receiving images from a plurality of remote sources}
- G06T 7/62: of area, perimeter, diameter or volume
- G06T 7/70: Determining position or orientation of objects or cameras (camera calibration G06T7/80)
- H04N 21/21805: {enabling multiple viewpoints, e.g. using a plurality of cameras}
- H04N 21/2187: Live feed
- H04N 23/611: where the recognised objects include parts of the human body
- H04N 23/661: Transmitting camera control signals through networks, e.g. control via the Internet
- H04N 23/69: Control of means for changing angle of the field of view, e.g. optical zoom objectives or electronic zooming
- H04N 23/695: Control of camera direction for changing a field of view, e.g. pan, tilt or based on tracking of objects
- H04N 23/90: Arrangement of cameras or camera modules, e.g. multiple cameras in TV studios or sports stadiums
- G06T 2207/10016: Video; Image sequence
- G06V 20/44: {Event detection}
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- G06T: IMAGE DATA PROCESSING OR GENERATION, IN GENERAL

## Abstract

Systems and methods of controlling the same include a video interface to receive at least one video stream from a plurality of cameras, a signal interface to receive a time-of-day value and an identifier of a participant; a processor, and a memory storing instructions that when executed cause the processor to receive, from the signal interface, the time-of-day value and the identifier of the participant; locate the participant in a first video stream from a first camera, control the first camera based on the location of the participant in the first video stream; based at least in part on the time-of-day value and the identifier of the participant, locate the participant in a second video stream from a second camera, control the second camera based on the location of the participant in the second video stream, and generate a compiled video stream of the participant from the first and second video streams.

## Claims

### Claim 1

A system for tracking a participant comprising:
a video interface configured to receive at least one video stream from a plurality of cameras;
a signal interface configured to receive a time-of-day value and an identifier of the participant;
at least one processor; and
a memory storing instructions that when executed by the at least one processor cause the at least one processor to:
receive, from the signal interface, the time-of-day value and the identifier of the participant;
locate the participant in a first video stream from a first camera in the plurality of cameras;
control an action of the first camera based on the location of the participant in the first video stream;
based at least in part on the time-of-day value and the identifier of the participant, locate the participant in a second video stream from a second camera in the plurality of cameras;
control an action of the second camera based on the location of the participant in the second video stream; and
generate a compiled video stream of the participant from at least the first video stream and the second video stream.

### Claim 2 (depends on 1)

The system of claim 1, wherein the signal interface is a virtual serial port configured to receive a clock signal from a serial port of a timing device.

### Claim 3 (depends on 1)

The system of claim 1, wherein the action of the first camera is a controlled pan, tilt, and/or zoom of the first camera; or
the action of the first camera changing between a display on mode and a display off mode of the camera.

### Claim 4 (depends on 3)

The system of claim 3, wherein the instructions when executed by the at least one processor further cause the processor to:
detect the participant in a frame of the first video stream;
generate a bounding box around the detected participant in the first frame;
determine pan, tilt, and/or zoom parameters to center the bounding box and the participant in a subsequent frame;
detect the participant in a second frame of the first video stream; and
send a command to the first camera to implement the controlled pan, tilt, and/or zoom of the first camera according to the determined pan, tilt, and/or zoom parameters.

### Claim 5 (depends on 4)

The system of claim 4, wherein the instructions when executed by the at least one processor further cause the processor to:
provide the first frame of the first video stream as a low-resolution image;
determine coordinates of the participant in the low-resolution image;
calculate a size and a position of the participant in the low-resolution image; and
generate the bounding box around the detected participant based on the calculated size and position of the participant.

### Claim 6 (depends on 1)

The system of claim 1, wherein the instructions when executed by the at least one processor further cause the processor to:
detect a start of an event from a first image of the at least one video stream; and/or
detect an end of the event from a second image of the at least one video stream.

### Claim 7 (depends on 1)

The system of claim 1, wherein the instructions when executed by the at least one processor further cause the processor to:
transmit a live stream of the participant in a course to at least one display within a network.

### Claim 8 (depends on 1)

The system of claim 1, wherein the instructions when executed by the at least one processor further cause the processor to:
transmit the compiled video stream of the participant to a server.

### Claim 9 (depends on 1)

The system of claim 1 wherein the instructions when executed by the at least one processor further cause the processor to:
overlay at least one graphical element over the compiled video stream, wherein the at least one graphical element displays information about the participant and/or a performance of the participant.

### Claim 10 (depends on 1)

The system of claim 1 wherein the instructions when executed by the at least one processor further cause the processor to:
detect a predetermined period of a lack of progress of the participant;
categorize the detection as a Did Not Finish (DNF) event; and
generate the compiled video beginning at the time-of-day value and ending at the detection of the DNF event.

### Claim 11

A method of tracking a participant by a system including a video interface, a signal interface, at least one processor, and a memory storing instructions executed by the at least one processor, the method comprising:
receiving, from the video interface, at least one video stream from a plurality of cameras;
receiving, from the signal interface, the time-of-day value and the identifier of the participant; and
the processor, when executing the instructions:
locating the participant in a first video stream from a first camera in the plurality of cameras;
controlling an action of the first camera based on the location of the participant in the first video stream;
based at least in part on the time-of-day value and the identifier of the participant, locating the participant in a second video stream from a second camera in the plurality of cameras;
controlling an action of the second camera based on the location of the participant in the second video stream; and
generating a compiled video stream of the participant from at least the first video stream and the second video stream.

### Claim 12 (depends on 11)

The method of claim 11, wherein the signal interface is a virtual serial port, the virtual serial port receiving a clock signal from a serial port of a timing device.

### Claim 13 (depends on 11)

The method of claim 11, wherein the action of the first camera is a controlled pan, tilt, and/or zoom of the first camera; or the action of the first camera is changing between a display on mode and a display off mode of the camera.

### Claim 14 (depends on 13)

The method of claim 13, further comprising the processor, when executing the instructions:
detecting the participant in a frame of the first video stream;
generating a bounding box around the detected participant in the first frame;
determining pan, tilt, and/or zoom parameters to center the bounding box and the participant in a subsequent frame;
detecting the participant in a second frame of the first video stream; and
sending a command to the first camera to implement the controlled pan, tilt, and/or zoom of the first camera according to the determined pan, tilt, and/or zoom parameters.

### Claim 15 (depends on 14)

The method of claim 14, further comprising the processor, when executing the instructions:
providing the first frame of the first video stream as a low-resolution image;
determining coordinates of the participant in the low-resolution image;
calculating a size and a position of the participant in the low-resolution image; and
generating the bounding box around the detected participant based on the calculated size and position of the participant.

### Claim 16 (depends on 11)

The method of claim 11, further comprising the processor, when executing the instructions:
detecting a start of an event from a first image of the at least one video stream; and/or
detecting an end of the event from a second image of the at least one video stream.

### Claim 17 (depends on 11)

The method of claim 11, further comprising the processor, when executing the instructions:
transmitting a live stream of the participant in a course to at least one display within a network.

### Claim 18 (depends on 11)

The method of claim 11, further comprising the processor, when executing the instructions:
transmitting the compiled video stream of the participant to a server.

### Claim 19 (depends on 11)

The method of claim 11, further comprising the processor, when executing the instructions:
overlaying at least one graphical element over the compiled video stream, wherein the at least one graphical element displays information about the participant and/or a performance of the participant.

### Claim 20 (depends on 11)

The method of claim 11, further comprising the processor, when executing the instructions:
detecting a predetermined period of a lack of progress of the participant;
categorizing the detection as a Did Not Finish (DNF) event; and
generating the compiled video beginning at the time-of-day value and ending at the detection of the DNF event.
