TrackObject
class TrackObject extends Job implements ShouldQueue
Attempts to track an obect in a video. The object is initially defined by a video annotation. The annotation will be updated with the positions determined with the object tracking method.
Traits
Properties
protected VideoAnnotation | $annotation | The annotation that defines the initial object to track. |
|
protected bool | $deleteWhenMissingModels | Ignore this job if the annotation does not exist any more. |
|
int | $tries | The number of times the job may be attempted. |
Methods
Execute the job.
Execute the object tracking method and get the resulting annotation key frames.
Get the path to to input file for the object tracking script.
Create the JSON file that is the input for the object tracking script.
Delete a file if it exists.
Get the path to to output file for the object tracking script.
Execute a Python script.
Get the coordinates and dimensions of the start window for the object tracking script.
Get the points of a keyframe depending on the annotation shape.
Details
at line 50
__construct(VideoAnnotation $annotation)
Create a new instance.
at line 60
void
handle()
Execute the job.
at line 97
protected array
getTrackingKeyframes(VideoAnnotation $annotation)
Execute the object tracking method and get the resulting annotation key frames.
at line 131
protected string
getInputJsonPath(VideoAnnotation $annotation)
Get the path to to input file for the object tracking script.
at line 144
protected string
createInputJson(VideoAnnotation $annotation, string $videoPath)
Create the JSON file that is the input for the object tracking script.
at line 164
protected
maybeDeleteFile(string $path)
Delete a file if it exists.
at line 178
protected string
getOutputJsonPath(VideoAnnotation $annotation)
Get the path to to output file for the object tracking script.
at line 190
protected string
python(string $command)
Execute a Python script.
at line 213
protected array
getStartWindow(VideoAnnotation $annotation)
Get the coordinates and dimensions of the start window for the object tracking script.
at line 256
protected array
getPointsFromKeyframe(VideoAnnotation $annotation, array $keyframe)
Get the points of a keyframe depending on the annotation shape.