Class vart::Overlay#

class Overlay

This module facilitates the overlay of annotations onto the video frame, currently overlay utilizes OpenCV library to draw on frames, which is software based.

Overlay supports drawing of bounding boxes, text, lines, arrows, circles and polygons on frames. Application can also incorporate custom implementation using base class.

Public Functions

Overlay() = delete#
Overlay(OverlayImplType overlay_impl_type, std::shared_ptr<Device> device)#

Overlay() - Constructor for creating an overlay instance, which accepts input type and device instance parameters.

Parameters:
  • overlay_impl_type – Enum class to specify which type of overlay implementation to use

  • deviceDevice handle to be used by implementation

Overlay(std::shared_ptr<OverlayImplBase> ptr)#

Overlay() - Constructor for creating an overlay instance, which accepts user defined pimpl parameters.

Parameters:

ptr – Pointer to user’s implementation instance

const std::shared_ptr<OverlayImplBase> &get_pimpl_handle() const#

get_pimpl_handle() - Retrieves pointer to implementation class.

Returns:

Returns a constant reference of pointer to implementation class.

void draw_overlay(VideoFrame &frame, OverlayShapeInfo &shape_info)#

draw_overlay() - Draws the input overlay information on to the frame

Parameters:
  • frame – video frame on which drawing operation to be performed

  • shape_info – Information used in drawing operation

Private Members

std::shared_ptr<OverlayImplBase> pimpl#