Skip to content

Namespace vl#

Namespace List > vl

Classes#

Type Name
class Buffer <class T>
class ColorRgb
class EncodedImage
The camera image encoded to a binary file format.
class EncodingSettings
stores the settings for image encoding (e.g. JPEG parameters)
class Frame
class ICamera
class IFrameObserver
Observer (pattern) to be registered on the ICamera interface as callback for new camera frames.
class Image
class ImageBuf
a memory of an image, e.g. a separated color channel
class ImageGray
class ImagePlane
a plane of an image, e.g. a separated color channel
class ImageRgb
struct ImageSettings
The (post-processing) settings for a single camera stream / IFrameObserver .
class IntParameters <typename ParType>
class MemoryResource
struct NoParameters
class PixelFormat
the complete pixel format description of an image
struct PropertyDescriptor <prop>
struct PropertyDescriptor< CameraProperty::AwbMode > <>
struct PropertyDescriptor< CameraProperty::Exposure > <>
struct PropertyDescriptor< CameraProperty::ExposureAuto > <>
struct PropertyDescriptor< CameraProperty::ExposureAutoMax > <>
struct PropertyDescriptor< CameraProperty::ExposureAutoMin > <>
struct PropertyDescriptor< CameraProperty::FlashOutputMode > <>
struct PropertyDescriptor< CameraProperty::FrameRate > <>
struct PropertyDescriptor< CameraProperty::Gain > <>
struct PropertyDescriptor< CameraProperty::GainAuto > <>
struct PropertyDescriptor< CameraProperty::GainAutoMax > <>
struct PropertyDescriptor< CameraProperty::GainAutoMin > <>
struct PropertyDescriptor< CameraProperty::Gamma > <>
struct PropertyDescriptor< CameraProperty::TriggerMode > <>
class Range <typename T>
Represents a numeric range (min, max)

Public Types#

Type Name
enum AutoControlMode
Automatically adapt gain and exposure mode.
typedef AutoControlMode AutoExposureMode
Alias name for AutoControlMode - always enables both, gain and exposure auto.
enum AwbMode
Available auto white balancing modes.
enum BinningMode
Binning modes (combine / average pixels in the image)
enum CameraProperty
Usable / implemented camera properties.
enum CameraStatus
ICamera start/stop operation status.
enum CaptureStatus
The current frames capture status, indicating whether the frame received is valid / useable.
enum Depth
The pixel depth of the Image .
enum FlashOutputMode
Flash output modes (when the flash signal is emitted relatively to the image acquisition)
enum ImageEncoding
The requested encoding format of the image (e.g. for specific IFrameObserver )
enum ImageFormat
The color format of the Image .
enum JpgParameters
parameters used for JPEG compression
enum MemoryType
memory type, describes where the allocated memory block is located (on host or GPU memory)
enum PngParameters
parameters used for PNG compression
typedef size_t StreamId
identifies an open camera stream / observer
enum TriggerMode
Trigger modes (start image acquisition)
enum VcCameraApi

Public Functions#

Type Name
VL_TYPES_EXPORT void copyBytes (const uint8_t * src, uint8_t * dst, MemoryType srcMemoryType, MemoryType dstMemoryType, size_t size)
std::unique_ptr< hs::Property > createCameraProperty (Args... args)
VL_TYPES_EXPORT bool cudaAccessible (MemoryResource *)
VL_TYPES_EXPORT MemoryResource * cudaDeviceMemoryResource ()
VL_TYPES_EXPORT void cudaDeviceSynchronize ()
std::enable_if<!std::is_same< typenamestd::result_of< Func(Args...)>::type, void >::value, typenamestd::result_of< Func(Args...)>::type >::type cudaManagedMemoryAccess (Func func, Args &&... args)
std::enable_if< std::is_same< typenamestd::result_of< Func(Args...)>::type, void >::value >::type cudaManagedMemoryAccess (Func func, Args &&... args)
VL_TYPES_EXPORT bool cudaManagedMemoryEnabled ()
VL_TYPES_EXPORT void cudaManagedMemoryLock ()
VL_TYPES_EXPORT MemoryResource * cudaManagedMemoryResource ()
VL_TYPES_EXPORT void cudaManagedMemoryUnlock ()
std::enable_if<!std::is_same< typenamestd::result_of< Func(Args...)>::type, void >::value, typenamestd::result_of< Func(Args...)>::type >::type cudaMemoryAccess (bool isManaged, Func func, Args &&... args)
std::enable_if< std::is_same< typenamestd::result_of< Func(Args...)>::type, void >::value >::type cudaMemoryAccess (bool isManaged, Func func, Args &&... args)
VL_TYPES_EXPORT MemoryResource * defaultCudaMemoryResource ()
VL_TYPES_EXPORT MemoryResource * defaultHostMemoryResource ()
VL_TYPES_EXPORT bool hostAccessible (MemoryResource *)
VL_TYPES_EXPORT MemoryResource * hostMemoryResource ()
VL_CAMERA_EXPORT std::unique_ptr< ICamera > makeAlviumCamera (size_t idx=0)
VL_CAMERA_EXPORT std::unique_ptr< ICamera > makeArgusCamera (size_t idx=0)
VL_CAMERA_EXPORT std::unique_ptr< ICamera > makeCamera (size_t idx=0)
VL_TYPES_EXPORT ImageBuf makeImageBuf (size_t width, size_t height, ImageFormat format, MemoryResource * memoryResource)
VL_TYPES_EXPORT ImageBuf makeImageBufGray8 (size_t width, size_t height, MemoryResource * memoryResource)
VL_TYPES_EXPORT ImageBuf makeImageBufRgb888 (size_t width, size_t height, MemoryResource * memoryResource)
VL_TYPES_EXPORT ImageBuf makeImageBufYuv420 (size_t width, size_t height, MemoryResource * memoryResource)
VL_CAMERA_EXPORT std::unique_ptr< ICamera > makeVcCamera (size_t idx=0, VcCameraApi api=VcCameraApi::Auto)
VL_TYPES_EXPORT bool memoryPoolEnabled ()
VL_TYPES_EXPORT MemoryResource * memoryResource (MemoryType memoryType)
VL_TYPES_EXPORT void resize (const Image & src, Image & dst)
VL_TYPES_EXPORT void setCudaManagedMemoryEnabled (bool enable)
VL_TYPES_EXPORT void setMemoryPoolEnabled (bool enable)
VL_CAMERA_EXPORT std::string toString (AutoControlMode mode)
VL_CAMERA_EXPORT std::string toString (TriggerMode mode)
VL_CAMERA_EXPORT std::string toString (FlashOutputMode mode)
VL_CAMERA_EXPORT std::string toString (AwbMode mode)
VL_CAMERA_EXPORT std::string toString (BinningMode mode)
size_t valueSize ()
VL_TYPES_EXPORT size_t valueSize (Depth depth)

Public Types Documentation#

enum AutoControlMode#

Automatically adapt gain and exposure mode.

enum vl::AutoControlMode {
    Off,
    Continuous
};


typedef AutoExposureMode#

Alias name for AutoControlMode - always enables both, gain and exposure auto.

using vl::AutoExposureMode = typedef AutoControlMode;


enum AwbMode#

Available auto white balancing modes.

enum vl::AwbMode {
    Off,
    Auto,
    Incandescent,
    Fluorescent,
    WarmFluorescent,
    Daylight,
    CloudyDaylight,
    Twilight,
    Shade
};


enum BinningMode#

Binning modes (combine / average pixels in the image)

enum vl::BinningMode {
    Off,
    Binning2x2,
    Binning4x4
};

Depends on camera / sensor hardware


enum CameraProperty#

Usable / implemented camera properties.

enum vl::CameraProperty {
    Exposure,
    ExposureAuto,
    ExposureAutoMax,
    ExposureAutoMin,
    Gain,
    GainAuto,
    GainAutoMax,
    GainAutoMin,
    TriggerMode,
    FlashOutputMode,
    AwbMode,
    BinningMode,
    Gamma,
    FrameRate
};


enum CameraStatus#

ICamera start/stop operation status.

enum vl::CameraStatus {
    Success,
    UnknownError
};


enum CaptureStatus#

The current frames capture status, indicating whether the frame received is valid / useable.

enum vl::CaptureStatus {
    Success,
    UnknownError,
    Uninitialized,
    Timeout,
    TimestampError,
    PipelineError
};


enum Depth#

The pixel depth of the Image .

enum vl::Depth {
    UInt8,
    UInt16,
    UInt32,
    UInt64,
    Int8,
    Int16,
    Int32,
    Int64,
    Float,
    Double
};


enum FlashOutputMode#

Flash output modes (when the flash signal is emitted relatively to the image acquisition)

enum vl::FlashOutputMode {
    Off,
    ExposureActiveHigh,
    ExposureActiveLow
};

Depends on camera / sensor hardware


enum ImageEncoding#

The requested encoding format of the image (e.g. for specific IFrameObserver )

enum vl::ImageEncoding {
    None,
    Jpg,
    Png
};


enum ImageFormat#

The color format of the Image .

enum vl::ImageFormat {
    Invalid,
    Gray8,
    RGB888,
    NV12,
    YUV420
};


enum JpgParameters#

parameters used for JPEG compression

enum vl::JpgParameters {
    JpgQuality
};


enum MemoryType#

memory type, describes where the allocated memory block is located (on host or GPU memory)

enum vl::MemoryType {
    Invalid,
    Host,
    Cuda,
    CudaManaged,
    Unspecified
};

while working with the Images (or other memory chunks), their location must be respected. If a CPU operation shall be performed, then the memory needs to be transferred to the CPU first and vice-versa. Each transfer is costly. It is beneficial to keep memory near the GPU as long as possible to speed up the processing pipeline.


enum PngParameters#

parameters used for PNG compression

enum vl::PngParameters;


typedef StreamId#

identifies an open camera stream / observer

using vl::StreamId = typedef size_t;


enum TriggerMode#

Trigger modes (start image acquisition)

enum vl::TriggerMode {
    Off = 0,
    Software = 1,
    RisingEdge = 2,
    FallingEdge = 3,
    Hardware = 3
};

Depends on camera / sensor hardware

Some e.g. IMX412 handles the software trigger by discarding images in free-run and only forwarding when software trigger is set -> no exact timely relation between trigger and image acquisition start)

For sensors supporting hardware trigger, the physical signal will be forwarded directly to the camera chip and will start the image acquisition with very low latency after the trigger is received.


enum VcCameraApi#

enum vl::VcCameraApi {
    Auto,
    Argus,
    V4L
};

Public Functions Documentation#

function copyBytes#

VL_TYPES_EXPORT  void vl::copyBytes (
    const  uint8_t * src,
    uint8_t * dst,
    MemoryType srcMemoryType,
    MemoryType dstMemoryType,
    size_t size
) 

function createCameraProperty#

template<CameraProperty prop, class... Args>
std::unique_ptr< hs::Property > vl::createCameraProperty (
    Args... args
) 

function cudaAccessible#

VL_TYPES_EXPORT  bool vl::cudaAccessible (
    MemoryResource *
) 

function cudaDeviceMemoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::cudaDeviceMemoryResource () 

function cudaDeviceSynchronize#

VL_TYPES_EXPORT  void vl::cudaDeviceSynchronize () 

function cudaManagedMemoryAccess#

template<typename Func, typename... Args>
std::enable_if<!std::is_same< typenamestd::result_of< Func (Args...)>::type, void >::value, typenamestd::result_of< Func (Args...)>::type >::type vl::cudaManagedMemoryAccess (
    Func func,
    Args &&... args
) 

function cudaManagedMemoryAccess#

template<typename Func, typename... Args>
std::enable_if< std::is_same< typenamestd::result_of< Func (Args...)>::type, void >::value >::type vl::cudaManagedMemoryAccess (
    Func func,
    Args &&... args
) 

function cudaManagedMemoryEnabled#

VL_TYPES_EXPORT  bool vl::cudaManagedMemoryEnabled () 

function cudaManagedMemoryLock#

VL_TYPES_EXPORT  void vl::cudaManagedMemoryLock () 

function cudaManagedMemoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::cudaManagedMemoryResource () 

function cudaManagedMemoryUnlock#

VL_TYPES_EXPORT  void vl::cudaManagedMemoryUnlock () 

function cudaMemoryAccess#

template<typename Func, typename... Args>
std::enable_if<!std::is_same< typenamestd::result_of< Func (Args...)>::type, void >::value, typenamestd::result_of< Func (Args...)>::type >::type vl::cudaMemoryAccess (
    bool isManaged,
    Func func,
    Args &&... args
) 

function cudaMemoryAccess#

template<typename Func, typename... Args>
std::enable_if< std::is_same< typenamestd::result_of< Func (Args...)>::type, void >::value >::type vl::cudaMemoryAccess (
    bool isManaged,
    Func func,
    Args &&... args
) 

function defaultCudaMemoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::defaultCudaMemoryResource () 

function defaultHostMemoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::defaultHostMemoryResource () 

function hostAccessible#

VL_TYPES_EXPORT  bool vl::hostAccessible (
    MemoryResource *
) 

function hostMemoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::hostMemoryResource () 

function makeAlviumCamera#

VL_CAMERA_EXPORT std::unique_ptr< ICamera > vl::makeAlviumCamera (
    size_t idx=0
) 

function makeArgusCamera#

VL_CAMERA_EXPORT std::unique_ptr< ICamera > vl::makeArgusCamera (
    size_t idx=0
) 

function makeCamera#

VL_CAMERA_EXPORT std::unique_ptr< ICamera > vl::makeCamera (
    size_t idx=0
) 

function makeImageBuf#

VL_TYPES_EXPORT  ImageBuf vl::makeImageBuf (
    size_t width,
    size_t height,
    ImageFormat format,
    MemoryResource * memoryResource
) 

function makeImageBufGray8#

VL_TYPES_EXPORT  ImageBuf vl::makeImageBufGray8 (
    size_t width,
    size_t height,
    MemoryResource * memoryResource
) 

function makeImageBufRgb888#

VL_TYPES_EXPORT  ImageBuf vl::makeImageBufRgb888 (
    size_t width,
    size_t height,
    MemoryResource * memoryResource
) 

function makeImageBufYuv420#

VL_TYPES_EXPORT  ImageBuf vl::makeImageBufYuv420 (
    size_t width,
    size_t height,
    MemoryResource * memoryResource
) 

function makeVcCamera#

VL_CAMERA_EXPORT std::unique_ptr< ICamera > vl::makeVcCamera (
    size_t idx=0,
    VcCameraApi api=VcCameraApi::Auto
) 

function memoryPoolEnabled#

VL_TYPES_EXPORT  bool vl::memoryPoolEnabled () 

function memoryResource#

VL_TYPES_EXPORT  MemoryResource * vl::memoryResource (
    MemoryType memoryType
) 

function resize#

VL_TYPES_EXPORT  void vl::resize (
    const  Image & src,
    Image & dst
) 

function setCudaManagedMemoryEnabled#

VL_TYPES_EXPORT  void vl::setCudaManagedMemoryEnabled (
    bool enable
) 

function setMemoryPoolEnabled#

VL_TYPES_EXPORT  void vl::setMemoryPoolEnabled (
    bool enable
) 

function toString#

VL_CAMERA_EXPORT std::string vl::toString (
    AutoControlMode mode
) 

function toString#

VL_CAMERA_EXPORT std::string vl::toString (
    TriggerMode mode
) 

function toString#

VL_CAMERA_EXPORT std::string vl::toString (
    FlashOutputMode mode
) 

function toString#

VL_CAMERA_EXPORT std::string vl::toString (
    AwbMode mode
) 

function toString#

VL_CAMERA_EXPORT std::string vl::toString (
    BinningMode mode
) 

function valueSize#

template<Depth depth>
size_t vl::valueSize () 

function valueSize#

VL_TYPES_EXPORT  size_t vl::valueSize (
    Depth depth
) 


The documentation for this class was generated from the following file docs/libvl/build/2.0.0/doxygen/source/vl/buffer.h