IMVLumeneraCustomConfig
The IMVLumeneraCustomConfig Interface from the MontiVision Extended Video Source Control provides methods to use custom properties from Lumenera cameras.
Methods:
| LuGetCorrectionMatrix | Get the current corretion matrix from a Lumenera camera. |
| LuGetDemosaicMethod | Get the demosaic method from a lumenera camera. |
| LuGetFlipping | Get the flipping parameter from a Lumenera camera. |
| LuGetGain | Get tha gain value from a Lumenera camera. |
| LuGetHue | Get the hue value from a lumenera camera. |
| LuGetProperty | Get a custom property value. |
| LuGetPropertyRange | Get a custom property range value. |
| LuGetSaturation | Get the saturation values from a Lumenera camera. |
| LuGetWhiteBalance | Get the white balance values from a lumenera camera. |
| LuIsAvailable | Check if a filter provides the Lumenera custom interfaces. |
| LuSetCorrectionMatrix | Set the correction matrix from a Lumenera camera. |
| LuSetDemosaicMethod | Set the demosaic method from a lumenera camera. |
| LuSetFlipping | Set the flipping parameter from a Lumenera camera. |
| LuSetGain | Set the gain value from a Lumenera camera. |
| LuSetHue | Set the hue value from a Lumenera camera. |
| LuSetProperty | Set a custom property value. |
| LuSetSaturation | Set the saturation values for a Lumenera camera. |
| LuSetWhiteBalance | Set the white balance values from a Lumenera camera. |
| SetImageParams | Set image parameters like brightness, contrast and gamma from a Lumernera camera. |
Header file:
IMVLumeneraCustomConfig.h
Interface definition language file:
IMVLumeneraCustomConfig.idl
Typelib: MVLumeneraCustomConfig
Interface ID: IID_IMVLumeneraCustomConfig
The next table contains the custom properties from the lumerners cameras. The description based on the lumenera SDK dokumentation. To get more infomation about these properties look at the camera documentation or contact the hadware vendor. Maybe some custom properties from lumernera cameras are not listed in the table but you can use these additional properties with this interface.
| Poperty | Value | Description |
| MV_LUCUSTOM_WHITEBAL_U | 0 | unused |
| MV_LUCUSTOM_WHITEBAL_V | 1 | unused |
| MV_LUCUSTOM_GAIN | 2 | The analog global gain for the capture pin output. The value is a multiplication factor of 0x1000. Applicable flag: Lucam_Prop_Auto_Flag. |
| MV_LUCUSTOM_GAIN_RED | 3 | The specific color gains for the capture pin output. The values are a multiplication factor of 0x1000. Applicable flag: Lucam_Prop_Auto_Flag. Setting / clearing the Lucam_Prop_Auto_Flag flag for one of these properties will do the same for all colors. |
| MV_LUCUSTOM_GAIN_GREEN1 | 4 | The specific color gains for the capture pin output. The values are a multiplication factor of 0x1000. Applicable flag: Lucam_Prop_Auto_Flag. Setting / clearing the Lucam_Prop_Auto_Flag flag for one of these properties will do the same for all colors. |
| MV_LUCUSTOM_GAIN_GREEN2 | 5 | The specific color gains for the capture pin output. The values are a multiplication factor of 0x1000. Applicable flag: Lucam_Prop_Auto_Flag. Setting / clearing the Lucam_Prop_Auto_Flag flag for one of these properties will do the same for all colors. |
| MV_LUCUSTOM_GAIN_BLUE | 6 | The specific color gains for the capture pin output. The values are a multiplication factor of 0x1000. Applicable flag: Lucam_Prop_Auto_Flag. Setting / clearing the Lucam_Prop_Auto_Flag flag for one of these properties will do the same for all colors. |
| MV_LUCUSTOM_STARTPOS | 7 | The start position of the capture pin output from the sensor array. The 16 lsb of the 32 bit value are the X start position. The 16 msb are the Y start position. The value set will take effect the next time the capture pin is connected. |
| MV_LUCUSTOM_STILL_STARTPOS | 8 | The start position of the still pin output from the sensor array. The 16 lsb of the 32 bit value are the X start position. The 16 msb are the Y start position. The value set will take effect the next time the still pin is connected. |
| MV_LUCUSTOM_STILL_EXPOSURE | 9 | The exposure in microseconds for the still capture output. This value may not take effect until the still pin is connected. This property should not be read. |
| MV_LUCUSTOM_STILL_GAIN | 10 | The analog global gain for the still pin output. The value is a multiplication factor of 0x1000. This value may not take effect until the still pin is connected. This property should not be read. |
| MV_LUCUSTOM_STILL_GAIN_RED | 11 | The specific color gains for the capture pin output. The values are a multiplication factor of 0x1000. This value may not take effect until the still pin is connected. This property should not be read. |
| MV_LUCUSTOM_STILL_GAIN_GREEN1 | 12 | The specific color gains for the capture pin output. The values are a multiplication factor of 0x1000. This value may not take effect until the still pin is connected. This property should not be read. |
| MV_LUCUSTOM_STILL_GAIN_GREEN2 | 13 | The specific color gains for the capture pin output. The values are a multiplication factor of 0x1000. This value may not take effect until the still pin is connected. This property should not be read. |
| MV_LUCUSTOM_STILL_GAIN_BLUE | 14 | The specific color gains for the capture pin output. The values are a multiplication factor of 0x1000. This value may not take effect until the still pin is connected. This property should not be read. |
| MV_LUCUSTOM_STILL_STROBE_DELAY | 15 | The delay in microseconds between the occurrence of a trigger and the strobe output. . This value may not take effect until the still pin is connected. |
| MV_LUCUSTOM_RESET | 16 | Set a value of 0 to reset the camera hardware. |
| MV_LUCUSTOM_VERSION | 17 | Use with LuCustomGetRange() only. The default value represent the serial number of the camera. The maximum value represent the driver version. The 8 lsb of the minimum value are the firmware major version. The next 8 bits are the firmware minor version. The next 8 bits are the FPGA major version. The last 8 bits are the FPGA minor version number. |
| MV_LUCUSTOM_BINNING | 18 | Binning / subsampling factor of the capture pin output. Bits 0-7: X factor. Must not be 0. Bits 8-15: When 0: subsample in the X direction. When 1: bin the X direction. Bits 16-23: Y factor. Must not be 0. Bits 24-31: When 0: subsample in the Y direction. When 1: bin the Y direction. This property will not take effect until the capture pin is connected. |
| MV_LUCUSTOM_STILL_BINNING | 19 | Binning / subsampling factor of the still pin output. Bits 0-7: X factor. Must not be 0. Bits 8-15: When 0: subsample in the X direction. When 1: bin the X direction. Bits 16-23: Y factor. Must not be 0. Bits 24-31: When 0: subsample in the Y direction. When 1: bin the Y direction. This property will not take effect until the still pin is connected. |
| MV_LUCUSTOM_EXTERN_INTERFACE | 20 | Read only. When the value read is 1: The camera is connected to a USB 1 port. When the value read is 2: The camera is connected to a USB 2.0 port. |
| MV_LUCUSTOM_STILL_DYN_RANGE | 21 | unused |
| MV_LUCUSTOM_STILL_KNEE1_EXPOSURE | 22 | Lu12X only. Time delay in microseconds of the exposure knees. These properties may not take effect until the still pin is connected. Setting a value of 0 or higher than the still exposure will disable the knee. |
| MV_LUCUSTOM_STILL_KNEE2_EXPOSURE | 23 | Lu12X only. Time delay in microseconds of the exposure knees. These properties may not take effect until the still pin is connected. Setting a value of 0 or higher than the still exposure will disable the knee. |
| MV_LUCUSTOM_STILL_KNEE3_EXPOSURE | 24 | Lu12X only. Time delay in microseconds of the exposure knees. These properties may not take effect until the still pin is connected. Setting a value of 0 or higher than the still exposure will disable the knee. |
| MV_LUCUSTOM_VIDEO_KNEE | 25 | Lu12X only. Video knee for the capture pin output. |
| MV_LUCUSTOM_STILL_SHUTTER_TYPE | 26 | Lu10X, Lu20X, Lu30X only. The shutter type for the still pin images. A value of 0 selects global shutter. 1 selects rolling shutter. This property will not take effect until the still pin is connected. |
| MV_LUCUSTOM_STILL_EXPOSURE_DELAY | 27 | For snapshots, this is the delay in microseconds between the trigger and the start of exposure. |
| MV_LUCUSTOM_THRESHOLD | 28 | Lu050 only. The threshold for the count/filter mode. The value range from 0 to 255. |
| MV_LUCUSTOM_SPECIAL_MODE | 29 | |
| MV_LUCUSTOM_AUTO_EXP_TARGET | 30 | RGET The luminance target for the auto exposure and auto gain functions. The value ranges from 0 to 255. |
| MV_LUCUSTOM_EXPOSURE | 31 | The exposure in microseconds. Applicable flag: Lucam_Prop_Auto_Flag. Note: The IAMVideoProcAmp interface supports exposure, but it does not allow to set it as precisely as this property. |
The flags from the table below based on the flags from the Lumenera SDK documentation.
| Flag | Value |
| Lucam_Prop_Presence_Flag | 0x80000000 |
| Lucam_Prop_Auto_Capable_Flag | 0x40000000 |
| Lucam_Prop_Use_Flag | 0x00008000 |
| Lucam_Prop_Auto_Flag | 0x00004000 |
Demosaic
Methods
Values for the demosaic methods.
| Method | Value |
| MV_LUCAM_DM_NONE | 0 |
| MV_LUCAM_DM_FAST | 1 |
| MV_LUCAM_DM_HIGH_QUALITY | 2 |
| MV_LUCAM_DM_HIGHER_QUALITY | 3 |
Values for the default corretion matrix methods.
| Matrix | Value |
| MV_LUCAM_CM_NONE | 0 |
| MV_LUCAM_CM_FLUORESCENT | 1 |
| MV_LUCAM_CM_DAYLIGHT | 2 |
| MV_LUCAM_CM_INCANDESCENT | 3 |
| MV_LUCAM_CM_XENON_FLASH | 4 |
| MV_LUCAM_CM_HALOGEN | 5 |
Method IMVLumeneraCustomConfig::LuGetCorrectionMatrix
Declaration: Function LuGetCorrectionMatrix(Filter As String) As LongGet the current corretion matrix from a Lumenera camera. The Correction Matrix table above contains all possible values.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). HRESULT LuGetCorrectionMatrix(BSTR Filter, LONG* value);
Method IMVLumeneraCustomConfig::LuGetDemosaicMethod
Declaration: Function LuGetDemosaicMethod(Filter As String) As LongGet the demosaic method from a lumenera camera. The Demosaic Methods table above contains all possible method values.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). HRESULT LuGetDemosaicMethod(BSTR Filter, LONG* value);
Method IMVLumeneraCustomConfig::LuGetFlipping
Declaration: Sub LuGetFlipping(Filter As String, FlipX As Boolean, FlipY As Boolean)Get the flipping parameter from a Lumenera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). FlipX Flipping along x-axis enabled. FlipY Flipping along y-axis enabled. HRESULT LuGetFlipping(BSTR Filter, VARIANT_BOOL* FlipX, VARIANT_BOOL* FlipY);
Method IMVLumeneraCustomConfig::LuGetGain
Declaration: Function LuGetGain(Filter As String) As DoubleGet tha gain value from a Lumenera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). HRESULT LuGetGain(BSTR Filter, DOUBLE* value);
Method IMVLumeneraCustomConfig::LuGetHue
Declaration: Function LuGetHue(Filter As String) As DoubleGet the hue value from a lumenera camera, range from -180 to +180.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). HRESULT LuGetHue(BSTR Filter, DOUBLE* value);
Method IMVLumeneraCustomConfig::LuGetProperty
Declaration: Sub LuGetProperty(Filter As String, Property As Long, Value As Long, Flags As Long)Get a custom property value.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). Property Property value from the custom property table. Value Current custom property value. Flags Current custom flags. HRESULT LuGetProperty(BSTR Filter, LONG Property, LONG* Value, LONG* Flags);
Method IMVLumeneraCustomConfig::LuGetPropertyRange
Declaration: Sub LuGetPropertyRange(Filter As String, Property As Long, Min As Long, Max As Long, Stepping As Long, Default As Long, Flags As Long)Get a custom property range value.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). Property Property value from the custom property table. Min Minimum value from the custom property. Max Maximum value from the custom property. Stepping Possible value steps for the property. Default Default value for the property. Flags Available property flags. HRESULT LuGetPropertyRange(BSTR Filter, LONG Property, LONG* Min, LONG* Max, LONG* Stepping, LONG* Default, LONG* Flags);
Method IMVLumeneraCustomConfig::LuGetSaturation
Declaration: Sub LuGetSaturation(Filter As String, SatU As Double, SatV As Double)Get the saturation values from a Lumenera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). SatU Saturation value, normal is 1.0. SatV Saturation value, normal is 1.0. HRESULT LuGetSaturation(BSTR Filter, DOUBLE* SatU, DOUBLE* SatV);
Method IMVLumeneraCustomConfig::LuGetWhiteBalance
Declaration: Sub LuGetWhiteBalance(Filter As String, WBU As Double, WBV As Double)Get the white balance values from a lumenera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). WBU White balance value. WBV White balance value. HRESULT LuGetWhiteBalance(BSTR Filter, DOUBLE* WBU, DOUBLE* WBV);
Method IMVLumeneraCustomConfig::LuIsAvailable
Declaration: Function LuIsAvailable(Filter As String) As BooleanCheck if a filter provides the Lumenera custom interfaces. Returns S_OK if avaiable or S_FALSE if the filter doesn't provides Lumernera custom functions.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). HRESULT LuIsAvailable(BSTR Filter, VARIANT_BOOL* value);
Method IMVLumeneraCustomConfig::LuSetCorrectionMatrix
Declaration: Sub LuSetCorrectionMatrix(Filter As String, Matrix As Long)Set the correction matrix from a Lumenera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). Matrix New value from the Correction Matrix table. HRESULT LuSetCorrectionMatrix(BSTR Filter, LONG Matrix);
Method IMVLumeneraCustomConfig::LuSetDemosaicMethod
Declaration: Sub LuSetDemosaicMethod(Filter As String, DemosaicMethod As Long)Set the demosaic method from a lumenera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). DemosaicMethod New value from the Demosaic Methods table. HRESULT LuSetDemosaicMethod(BSTR Filter, LONG DemosaicMethod);
Method IMVLumeneraCustomConfig::LuSetFlipping
Declaration: Sub LuSetFlipping(Filter As String, FlipX As Boolean, FlipY As Boolean)Set the flipping parameter from a Lumenera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). FlipX Enable flipping arount the x-axis. FlipY Enable flipping arount the y-axis. HRESULT LuSetFlipping(BSTR Filter, VARIANT_BOOL FlipX, VARIANT_BOOL FlipY);
Method IMVLumeneraCustomConfig::LuSetGain
Declaration: Sub LuSetGain(Filter As String, Gain As Double)Set the gain value from a Lumenera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). Gain The new gain value. HRESULT LuSetGain(BSTR Filter, DOUBLE Gain);
Method IMVLumeneraCustomConfig::LuSetHue
Declaration: Sub LuSetHue(Filter As String, Hue As Double)Set the hue value from a Lumenera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). Hue New hue value, range from -180 to +180 HRESULT LuSetHue(BSTR Filter, DOUBLE Hue);
Method IMVLumeneraCustomConfig::LuSetProperty
Declaration: Sub LuSetProperty(Filter As String, Property As Long, Value As Long, Flags As Long)Set a custom property value.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). Property Property value from the custom property table. Value New value for the cutom property. Flags New flags for the custom property. HRESULT LuSetProperty(BSTR Filter, LONG Property, LONG Value, LONG Flags);
Method IMVLumeneraCustomConfig::LuSetSaturation
Declaration: Sub LuSetSaturation(Filter As String, SatU As Double, SatV As Double)Set the saturation values for a Lumenera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). SatU New saturation value. SatV New saturation value. HRESULT LuSetSaturation(BSTR Filter, DOUBLE SatU, DOUBLE SatV);
Method IMVLumeneraCustomConfig::LuSetWhiteBalance
Declaration: Sub LuSetWhiteBalance(Filter As String, WBU As Double, WBV As Double)Set the white balance values from a Lumenera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). WBU New white balance value. WBV New white balance value. HRESULT LuSetWhiteBalance(BSTR Filter, DOUBLE WBU, DOUBLE WBV);
Method IMVLumeneraCustomConfig::SetImageParams
Declaration: Sub SetImageParams(Filter As String, Brightness As Double, Contrast As Double, Gamma As Double)Set image parameters like brightness, contrast and gamma from a Lumernera camera.
Parameter:
C Prototype:
Filter Label from the video source filter (lumenera camera). Brightness Brightness value from -100.0 to 100.0. Contrast Contrast value from 0.0 to 10.0. Gamma Gamma value from 0.1 to 10.0. HRESULT SetImageParams(BSTR Filter, DOUBLE Brightness, DOUBLE Contrast, DOUBLE Gamma);