eVision C++ API 26.10.0-beta.2.dev
Loading...
Searching...
No Matches
eVision::EasyDeepLearning::EDeepLearningBenchmark Class Reference

Deep Learning benchmark results. More...

#include <eVision/EasyDeepLearning/EDeepLearningBenchmark.h>

Collaboration diagram for eVision::EasyDeepLearning::EDeepLearningBenchmark:

Public Member Functions

 EDeepLearningBenchmark ()
 Constructors.
 EDeepLearningBenchmark (const eVision::EasyDeepLearning::EDeepLearningBenchmark &other)
 Constructors.
 EDeepLearningBenchmark (const eVision::EasyDeepLearning::EDeepLearningBenchmarkSettings &settings)
 Constructors.
virtual ~EDeepLearningBenchmark () throw ()
eVision::EasyDeepLearning::EDeepLearningBenchmark & operator= (const eVision::EasyDeepLearning::EDeepLearningBenchmark &other)
 Assignment operator.
bool IsValid () const
 Whether the benchmark is ready and valid.
eVision::EError GetErrorCode () const
 Error code thrown when computing the benchmark.
std::string GetErrorDescription () const
 Description of the error that occurred during the benchmark.
virtual void Load (const std::string &filePath)
 Load a EDeepLearningBenchmark object. The given ESerializer must have been created for reading.
virtual void Load (eVision::ESerializer *serializer)
 Load a EDeepLearningBenchmark object. The given ESerializer must have been created for reading.
virtual void Save (const std::string &filePath)
 Save the EDeepLearningBenchmark object. The given ESerializer must have been created for writing.
virtual void Save (eVision::ESerializer *serializer)
 Save the EDeepLearningBenchmark object. The given ESerializer must have been created for writing.
int GetNumImagesByInference () const
 The number of images that were processed together in one inference call to exploit the specified batch size. For EasyClassify and EasyLocate, this is equal to the batch size. For EasySegment, it depends on the number of patches that are extracted from input images.
int GetNumInferences () const
 Number of inference made in the benchmark. It is equal to EDeepLearningBenchmarkSettings::GetNumInferences.
std::vector< double > GetTimePerInference () const
 Inference time (in nanoseconds) for all the inference calls (an inference processes EDeepLearningBenchmark::GetNumImagesByInference images together). A time of 0 means that the images for this inference call were dropped (not processed).
int GetNumDroppedInference () const
 The number of dropped inference call. Dropped inference call happens when simulating a camera framerate and the processing speed isn't fast enough.
double GetMinLatency () const
 Minimum latency (time between the acquisition of an image and the computation of its result).
double GetMaxLatency () const
 Maximum latency (time between the acquisition of an image and the computation of its result).
double GetMeanLatency () const
 Mean latency.
double GetThroughput () const
 Number of images per second that were processed by the Deep Learning tool.
double GetMinTimePerInference () const
 Minimum time for a single inference call (in seconds).
double GetMaxTimePerInference () const
 Maximum time for a single inference call (in seconds).
double GetMeanTimePerInference () const
 Mean time for a single inference call (in seconds).
double GetStdTimePerInference () const
 Standard deviation of the inference time for a single inference call (in seconds).
double GetMinTimePerImage () const
 Minimum time in seconds for an image (equal to EDeepLearningBenchmark::GetMinTimePerInference / EDeepLearningBenchmark::GetNumImagesByInference).
double GetMaxTimePerImage () const
 Maximum time in seconds for an image (equal to EDeepLearningBenchmark::GetMaxTimePerInference / EDeepLearningBenchmark::GetNumImagesByInference).
double GetMeanTimePerImage () const
 Mean time in seconds for an image (equal to EDeepLearningBenchmark::GetMeanTimePerInference / EDeepLearningBenchmark::GetNumImagesByInference).
double GetStdTimePerImage () const
 Standard deviation of the time in seconds for an image (equal to EDeepLearningBenchmark::GetStdTimePerInference / EDeepLearningBenchmark::GetNumImagesByInference).
int GetDatasetWidth () const
 Width of the dataset used to run the benchmark.
int GetDatasetHeight () const
 Height of the dataset used to run the benchmark.
int GetBenchmarkWidth () const
 Width of the images generated in the benchmark. It depends on EDeepLearningBenchmark::GetDatasetWidth and EDeepLearningBenchmarkSettings::GetInternalResizeDisabled).
int GetBenchmarkHeight () const
 Height of the images generated in the benchmark. It depends on EDeepLearningBenchmark::GetDatasetHeight and EDeepLearningBenchmarkSettings::GetInternalResizeDisabled).
const eVision::EasyDeepLearning::EDeepLearningBenchmarkSettings & GetBenchmarkSettings () const
 Settings of the benchmark.
eVision::EasyDeepLearning::EDeepLearningBenchmarkSettings & GetBenchmarkSettings ()
 Settings of the benchmark.
 EDeepLearningBenchmark (CppWrapperInternal::InternalConstructor)

Public Attributes

CppWrapperInternal::WrappedClass wrappedClass_

Detailed Description

Deep Learning benchmark results.

License(s): EasyClassify or EasySegment or EasyLocate

Constructor & Destructor Documentation

◆ EDeepLearningBenchmark() [1/4]

eVision::EasyDeepLearning::EDeepLearningBenchmark::EDeepLearningBenchmark ( )

Constructors.

◆ EDeepLearningBenchmark() [2/4]

eVision::EasyDeepLearning::EDeepLearningBenchmark::EDeepLearningBenchmark ( const eVision::EasyDeepLearning::EDeepLearningBenchmark & other)

Constructors.

Parameters
otherThe other EDeepLearningBenchmark that we will copy into this one.

◆ EDeepLearningBenchmark() [3/4]

eVision::EasyDeepLearning::EDeepLearningBenchmark::EDeepLearningBenchmark ( const eVision::EasyDeepLearning::EDeepLearningBenchmarkSettings & settings)

Constructors.

Parameters
settingsThe settings used to configure this EDeepLearningBenchmark.

◆ ~EDeepLearningBenchmark()

eVision::EasyDeepLearning::EDeepLearningBenchmark::~EDeepLearningBenchmark ( )
throw ( )
virtual

◆ EDeepLearningBenchmark() [4/4]

eVision::EasyDeepLearning::EDeepLearningBenchmark::EDeepLearningBenchmark ( CppWrapperInternal::InternalConstructor )

Member Function Documentation

◆ GetBenchmarkHeight()

int eVision::EasyDeepLearning::EDeepLearningBenchmark::GetBenchmarkHeight ( ) const

Height of the images generated in the benchmark. It depends on EDeepLearningBenchmark::GetDatasetHeight and EDeepLearningBenchmarkSettings::GetInternalResizeDisabled).

◆ GetBenchmarkSettings() [1/2]

eVision::EasyDeepLearning::EDeepLearningBenchmarkSettings & eVision::EasyDeepLearning::EDeepLearningBenchmark::GetBenchmarkSettings ( )

Settings of the benchmark.

◆ GetBenchmarkSettings() [2/2]

const eVision::EasyDeepLearning::EDeepLearningBenchmarkSettings & eVision::EasyDeepLearning::EDeepLearningBenchmark::GetBenchmarkSettings ( ) const

Settings of the benchmark.

◆ GetBenchmarkWidth()

int eVision::EasyDeepLearning::EDeepLearningBenchmark::GetBenchmarkWidth ( ) const

Width of the images generated in the benchmark. It depends on EDeepLearningBenchmark::GetDatasetWidth and EDeepLearningBenchmarkSettings::GetInternalResizeDisabled).

◆ GetDatasetHeight()

int eVision::EasyDeepLearning::EDeepLearningBenchmark::GetDatasetHeight ( ) const

Height of the dataset used to run the benchmark.

◆ GetDatasetWidth()

int eVision::EasyDeepLearning::EDeepLearningBenchmark::GetDatasetWidth ( ) const

Width of the dataset used to run the benchmark.

◆ GetErrorCode()

eVision::EError eVision::EasyDeepLearning::EDeepLearningBenchmark::GetErrorCode ( ) const

Error code thrown when computing the benchmark.

◆ GetErrorDescription()

std::string eVision::EasyDeepLearning::EDeepLearningBenchmark::GetErrorDescription ( ) const

Description of the error that occurred during the benchmark.

◆ GetMaxLatency()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetMaxLatency ( ) const

Maximum latency (time between the acquisition of an image and the computation of its result).

◆ GetMaxTimePerImage()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetMaxTimePerImage ( ) const

◆ GetMaxTimePerInference()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetMaxTimePerInference ( ) const

Maximum time for a single inference call (in seconds).

◆ GetMeanLatency()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetMeanLatency ( ) const

Mean latency.

◆ GetMeanTimePerImage()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetMeanTimePerImage ( ) const

◆ GetMeanTimePerInference()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetMeanTimePerInference ( ) const

Mean time for a single inference call (in seconds).

◆ GetMinLatency()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetMinLatency ( ) const

Minimum latency (time between the acquisition of an image and the computation of its result).

◆ GetMinTimePerImage()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetMinTimePerImage ( ) const

◆ GetMinTimePerInference()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetMinTimePerInference ( ) const

Minimum time for a single inference call (in seconds).

◆ GetNumDroppedInference()

int eVision::EasyDeepLearning::EDeepLearningBenchmark::GetNumDroppedInference ( ) const

The number of dropped inference call. Dropped inference call happens when simulating a camera framerate and the processing speed isn't fast enough.

◆ GetNumImagesByInference()

int eVision::EasyDeepLearning::EDeepLearningBenchmark::GetNumImagesByInference ( ) const

The number of images that were processed together in one inference call to exploit the specified batch size. For EasyClassify and EasyLocate, this is equal to the batch size. For EasySegment, it depends on the number of patches that are extracted from input images.

◆ GetNumInferences()

int eVision::EasyDeepLearning::EDeepLearningBenchmark::GetNumInferences ( ) const

Number of inference made in the benchmark. It is equal to EDeepLearningBenchmarkSettings::GetNumInferences.

◆ GetStdTimePerImage()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetStdTimePerImage ( ) const

Standard deviation of the time in seconds for an image (equal to EDeepLearningBenchmark::GetStdTimePerInference / EDeepLearningBenchmark::GetNumImagesByInference).

◆ GetStdTimePerInference()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetStdTimePerInference ( ) const

Standard deviation of the inference time for a single inference call (in seconds).

◆ GetThroughput()

double eVision::EasyDeepLearning::EDeepLearningBenchmark::GetThroughput ( ) const

Number of images per second that were processed by the Deep Learning tool.

◆ GetTimePerInference()

std::vector< double > eVision::EasyDeepLearning::EDeepLearningBenchmark::GetTimePerInference ( ) const

Inference time (in nanoseconds) for all the inference calls (an inference processes EDeepLearningBenchmark::GetNumImagesByInference images together). A time of 0 means that the images for this inference call were dropped (not processed).

◆ IsValid()

bool eVision::EasyDeepLearning::EDeepLearningBenchmark::IsValid ( ) const

Whether the benchmark is ready and valid.

◆ Load() [1/2]

void eVision::EasyDeepLearning::EDeepLearningBenchmark::Load ( const std::string & filePath)
virtual

Load a EDeepLearningBenchmark object. The given ESerializer must have been created for reading.

Parameters
filePathFile path.

◆ Load() [2/2]

void eVision::EasyDeepLearning::EDeepLearningBenchmark::Load ( eVision::ESerializer * serializer)
virtual

Load a EDeepLearningBenchmark object. The given ESerializer must have been created for reading.

Parameters
serializerPointer to the ESerializer created for reading.

◆ operator=()

eVision::EasyDeepLearning::EDeepLearningBenchmark & eVision::EasyDeepLearning::EDeepLearningBenchmark::operator= ( const eVision::EasyDeepLearning::EDeepLearningBenchmark & other)

Assignment operator.

Parameters
otherThe other EDeepLearningBenchmark that we will copy into this one.

◆ Save() [1/2]

void eVision::EasyDeepLearning::EDeepLearningBenchmark::Save ( const std::string & filePath)
virtual

Save the EDeepLearningBenchmark object. The given ESerializer must have been created for writing.

Parameters
filePathFile path.

◆ Save() [2/2]

void eVision::EasyDeepLearning::EDeepLearningBenchmark::Save ( eVision::ESerializer * serializer)
virtual

Save the EDeepLearningBenchmark object. The given ESerializer must have been created for writing.

Parameters
serializerPointer to the ESerializer created for writing.

Member Data Documentation

◆ wrappedClass_

CppWrapperInternal::WrappedClass eVision::EasyDeepLearning::EDeepLearningBenchmark::wrappedClass_