Impact Acquire SDK Python
Statistics Class Reference

Contains basic statistical information. More...

Inheritance diagram for Statistics:
[legend]

Public Member Functions

 __init__ (self, pDev)
 
 reset (self)
 Resets all statistical properties.
 

Properties

 abortedRequestsCount = property(lib_mvIMPACT_acquire.Statistics_abortedRequestsCount_get, doc=)
 An integer property (read-only) containing the overall count of image requests which have been aborted since the mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().
 
 bandwidthConsumed = property(lib_mvIMPACT_acquire.Statistics_bandwidthConsumed_get, doc=)
 A float property (read-only) containing the current bandwidth consumed by this device in KB/s based on the average buffer size and the timestamps delivered from the device driver.
 
 captureTime_s = property(lib_mvIMPACT_acquire.Statistics_captureTime_s_get, doc=)
 A float property (read-only) containing the overall time an image request spent in the device drivers processing chain.
 
 errorCount = property(lib_mvIMPACT_acquire.Statistics_errorCount_get, doc=)
 An integer property (read-only) containing the overall count of image requests which returned with an error since the mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().
 
 formatConvertTime_s = property(lib_mvIMPACT_acquire.Statistics_formatConvertTime_s_get, doc=)
 An integer property (read-only) containing the time (in seconds) needed to convert the image data delivered by the hardware and/or active internal driver filter nodes to the format specified by mvIMPACT.acquire.ImageDestination.pixelFormat internally.
 
 frameCount = property(lib_mvIMPACT_acquire.Statistics_frameCount_get, doc=)
 An integer property (read-only) containing the overall count of images captured since the mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().
 
 framesIncompleteCount = property(lib_mvIMPACT_acquire.Statistics_framesIncompleteCount_get, doc=)
 An integer property (read-only) containing the overall count of image requests which haven't been captured completely since the mvIMPACT.acquire.Device has been opened.
 
 framesPerSecond = property(lib_mvIMPACT_acquire.Statistics_framesPerSecond_get, doc=)
 A float property (read-only) containing the current number of frames captured per second.
 
 imageProcTime_s = property(lib_mvIMPACT_acquire.Statistics_imageProcTime_s_get, doc=)
 An integer property (read-only) containing the time (in seconds) needed to process the image data internally.
 
 lostImagesCount = property(lib_mvIMPACT_acquire.Statistics_lostImagesCount_get, doc=)
 An integer property (read-only) containing the number of images that have been lost from a continuous image stream coming from a video signal source.
 
 missingDataAverage_pc = property(lib_mvIMPACT_acquire.Statistics_missingDataAverage_pc_get, doc=)
 A float property (read-only) containing the average amount of data missing in frames that haven't been captured completely since the mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().
 
 queueTime_s = property(lib_mvIMPACT_acquire.Statistics_queueTime_s_get, doc=)
 A float property (read-only) containing the average time (in seconds) a mvIMPACT.acquire.Request object spends in the request queue of the device.
 
 retransmitCount = property(lib_mvIMPACT_acquire.Statistics_retransmitCount_get, doc=)
 A 64 bit integer property (read-only) containing the number of retransmit requests issued due to temporary bus bandwidth shortages or other transmission problems since this mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().
 
 thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
 
 timedOutRequestsCount = property(lib_mvIMPACT_acquire.Statistics_timedOutRequestsCount_get, doc=)
 An integer property (read-only) containing the overall count of image requests which have timed out since the mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().
 

Detailed Description

Contains basic statistical information.

This class contains basic statistical information about the mvIMPACT.acquire.Device and the the current image acquisition progress.

Constructor & Destructor Documentation

◆ __init__()

__init__ ( self,
pDev )

Reimplemented from ComponentCollection.

Member Function Documentation

◆ reset()

reset ( self)

Resets all statistical properties.

Returns

Property Documentation

◆ abortedRequestsCount

abortedRequestsCount = property(lib_mvIMPACT_acquire.Statistics_abortedRequestsCount_get, doc=)
static

An integer property (read-only) containing the overall count of image requests which have been aborted since the mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().

◆ bandwidthConsumed

bandwidthConsumed = property(lib_mvIMPACT_acquire.Statistics_bandwidthConsumed_get, doc=)
static

A float property (read-only) containing the current bandwidth consumed by this device in KB/s based on the average buffer size and the timestamps delivered from the device driver.

Since
2.12.3

◆ captureTime_s

captureTime_s = property(lib_mvIMPACT_acquire.Statistics_captureTime_s_get, doc=)
static

A float property (read-only) containing the overall time an image request spent in the device drivers processing chain.

This time is NOT the reciprocal of the frame rate, but usually a much longer period of time as it includes the time elapsed from sending the request into the capture queue until the buffer has been placed back into one of the result queues again. This time increases with the amount of requests being used.

◆ errorCount

errorCount = property(lib_mvIMPACT_acquire.Statistics_errorCount_get, doc=)
static

An integer property (read-only) containing the overall count of image requests which returned with an error since the mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().

◆ formatConvertTime_s

formatConvertTime_s = property(lib_mvIMPACT_acquire.Statistics_formatConvertTime_s_get, doc=)
static

An integer property (read-only) containing the time (in seconds) needed to convert the image data delivered by the hardware and/or active internal driver filter nodes to the format specified by mvIMPACT.acquire.ImageDestination.pixelFormat internally.

This time will be almost 0 when no custom destination pixel format has been specified and if a custom destination format was selected and this format differs from the pixel format that is transferred by the hardware this time will be a part (or all, but never more) than the time reported by mvIMPACT.acquire.Statistics.imageProcTime_s.

Since
1.12.58

◆ frameCount

frameCount = property(lib_mvIMPACT_acquire.Statistics_frameCount_get, doc=)
static

An integer property (read-only) containing the overall count of images captured since the mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().

This counter is incremented regardless of the result a request is returned with thus also e.g. if a request did time out, was aborted(e.g. due to a call to mvIMPACT.acquire.FunctionInterface.imageRequestReset or mvIMPACT.acquire.FunctionInterface.acquisitionStop) or the data was not completely captured.

◆ framesIncompleteCount

framesIncompleteCount = property(lib_mvIMPACT_acquire.Statistics_framesIncompleteCount_get, doc=)
static

An integer property (read-only) containing the overall count of image requests which haven't been captured completely since the mvIMPACT.acquire.Device has been opened.

This value is a good indicator for bandwidth problems on the device to host connection.

Note
This feature is supported by every device driver. If a device does not seem to support this feature (calling mvIMPACT.acquire.Component.isValid returns false) a driver update will fix this.

◆ framesPerSecond

framesPerSecond = property(lib_mvIMPACT_acquire.Statistics_framesPerSecond_get, doc=)
static

A float property (read-only) containing the current number of frames captured per second.

This property is calculated from a running average where the current difference between 2 consecutive frames contributes 30 percent to the new value while the remaining 70 percent are used from the previous value to avoid sudden strong fluctuations in case a frame is missing of trigger frequencies are not constant.

This property is reset to 0.0 automatically if the acquisition either has been stopped by calling mvIMPACT.acquire.FunctionInterface.acquisitionStop() or mvIMPACT.acquire.FunctionInterface.imageRequestReset() or the internal request queue has run out of buffers for more than 200 milliseconds.

See also
The Capture Process

◆ imageProcTime_s

imageProcTime_s = property(lib_mvIMPACT_acquire.Statistics_imageProcTime_s_get, doc=)
static

An integer property (read-only) containing the time (in seconds) needed to process the image data internally.

This time might be interesting e.g. if the image data is transformed into a color image by the driver (e.g. when working with Bayer mosaic cameras) or if any other processing function is applied to the image before it is transferred to the user.

◆ lostImagesCount

lostImagesCount = property(lib_mvIMPACT_acquire.Statistics_lostImagesCount_get, doc=)
static

An integer property (read-only) containing the number of images that have been lost from a continuous image stream coming from a video signal source.

Note
For some devices this value is based on an assumption so it's by no means absolutely accurate, but when this value starts to increase this might indicate that a problem is present.

Possible causes (among others) might be:

  • the capture device or device driver can't cope with the amount of data the video signal source is delivering in the current mode of operation
  • the capture device or device driver can't transfer all the data to the host PC because of bus bandwidth shortages
  • the capture device or device driver image request queue ran low because the system is busy doing other things or because of a bug in the application
Note
This feature is supported by every device driver. If a device does not seem to support this feature (calling mvIMPACT.acquire.Component.isValid returns false) a driver update will fix this.

◆ missingDataAverage_pc

missingDataAverage_pc = property(lib_mvIMPACT_acquire.Statistics_missingDataAverage_pc_get, doc=)
static

A float property (read-only) containing the average amount of data missing in frames that haven't been captured completely since the mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().

This value is a good indicator for bandwidth problems on the device to host connection.

Note
This feature is supported by every device driver. If a device does not seem to support this feature (calling mvIMPACT.acquire.Component.isValid returns false) a driver update will fix this.

◆ queueTime_s

queueTime_s = property(lib_mvIMPACT_acquire.Statistics_queueTime_s_get, doc=)
static

A float property (read-only) containing the average time (in seconds) a mvIMPACT.acquire.Request object spends in the request queue of the device.

This is the time between a call to mvIMPACT.acquire.FunctionInterface.imageRequestSingle() and the time the driver actually uses this buffer to capture data into it or to forward it into a kernel driver.

◆ retransmitCount

retransmitCount = property(lib_mvIMPACT_acquire.Statistics_retransmitCount_get, doc=)
static

A 64 bit integer property (read-only) containing the number of retransmit requests issued due to temporary bus bandwidth shortages or other transmission problems since this mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().

This value can be an indicator for transmission problems because of bad signal quality or bus bandwidth shortages in the system. Ideally this property should stay 0 all the time if the system can cope with the amount of data transferred and the signal quality is good. However it might increase slowly and still every frame will be flawless as the driver internally was able to restore the lost data by re-requesting it from the video signal source again.

Note
This feature is supported by every device driver. If a device does not seem to support this feature (calling mvIMPACT.acquire.Component.isValid returns false) a driver update will fix this.

◆ thisown

thisown = property(lambda x: x.this.own(), lambda x, v: x.this.own(v), doc="The membership flag")
static

◆ timedOutRequestsCount

timedOutRequestsCount = property(lib_mvIMPACT_acquire.Statistics_timedOutRequestsCount_get, doc=)
static

An integer property (read-only) containing the overall count of image requests which have timed out since the mvIMPACT.acquire.Device has been opened OR since the last call to mvIMPACT.acquire.Statistics.reset().