F_VN_ReferenceColorSimilarityExp_TcVnVector3_LREAL
Computes the similarity to a reference color for each pixel in the source image. (expert function)
Can use available TwinCAT Job Tasks for executing parallel code regions.
Can return partial results when canceled by Watchdog.
Syntax
Definition:
FUNCTION F_VN_ReferenceColorSimilarityExp_TcVnVector3_LREAL : HRESULT
VAR_INPUT
ipSrcImage : ITcVnImage;
ipDestImage : Reference To ITcVnImage;
END_VAR
VAR_IN_OUT
aRefColor : TcVnVector3_LREAL;
END_VAR
VAR_INPUT
fVariance : REAL;
fLuminanceWeight : REAL;
hrPrev : HRESULT;
END_VAR
Inputs
Name |
Type |
Description |
---|---|---|
ipSrcImage |
RGB source image (USINT, 3 channels) | |
ipDestImage |
Reference To ITcVnImage |
Returns the similarity to aRefColor for each pixel in ipSrcImage (USINT, 1 channel. An appropriate destination image will be created if required.) |
fVariance |
REAL |
Allowed color variance (0.1 - 0.3 might be a good start to try) |
fLuminanceWeight |
REAL |
Weight the impact of the luminance ([0..1], e.g. set to 0 to be more resistant to unequal illumination, but might be required to differentiate between some colors) |
hrPrev |
HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.) |
Further information
There are three ways to pass the reference color to the corresponding function:
- As a trained color model of the type
ITcVnColorModel
- As a trained color model of the type
ITcVnMlModel
- Directly with values in a
TcVnVector3_LREAL
,
To train a color model, a corresponding F_VN_TrainImageColor function must be used. The two color models differ only in the data type, functionally there are no differences. The ITcVnMlModel
is the general data type for ML models for which there are also function blocks for loading and saving. Therefore, this data type and the corresponding functions should be used if the trained color model is to be saved to disk.
Samples
Required License
TC3 Vision Base
System Requirements
Development environment | Target platform | PLC libraries to include |
---|---|---|
TwinCAT V3.1.4024.54 or later | PC or CX (x64) with PL50, e.g. Intel 4-core Atom CPU | Tc3_Vision |