F_VN_DecomposeHomography
Decompose a homography matrix into four solutions of rotation, translation, and plane normal. It returns two solutions (Ra, Ta, Nb) and (Rb, Tb, Nb). The third and the fourth solutions can be calculated as follows: (Ra, -Ta, -Na) and (Rb, -Tb, -Nb).
Syntax
Definition:
FUNCTION F_VN_DecomposeHomography : HRESULT
VAR_IN_OUT
aHomography : TcVnMatrix3x3_LREAL;
aCameraMatrix : TcVnMatrix3x3_LREAL;
aRotationMatrixA : TcVnMatrix3x3_LREAL;
aTranslationVectorA : TcVnVector3_LREAL;
aNormVectorA : TcVnVector3_LREAL;
aRotationMatrixB : TcVnMatrix3x3_LREAL;
aTranslationVectorB : TcVnVector3_LREAL;
aNormVectorB : TcVnVector3_LREAL;
END_VAR
VAR_INPUT
hrPrev : HRESULT;
END_VAR
VAR_OUTPUT
nSolutions : UDINT;
END_VAR
Inputs
Name |
Type |
Description |
---|---|---|
hrPrev |
HRESULT indicating the result of previous operations (If SUCCEEDED(hrPrev) equals false, no operation is executed.) |
In/Outputs
Name |
Type |
Description |
---|---|---|
aHomography |
Homography matrix (a perspective transformation between two planes) | |
aCameraMatrix |
Camera matrix | |
aRotationMatrixA |
Rotation matrix of the first solution (Ra) | |
aTranslationVectorA |
Translation vector of the first solution (Ta) | |
aNormVectorA |
Norm vector of the first solution (Na) | |
aRotationMatrixB |
Rotation matrix of the second solution (Rb) | |
aTranslationVectorB |
Translation vector of the second solution (Tb) | |
aNormVectorB |
Norm vector of the second solution Nb |
Outputs
Name |
Type |
Description |
---|---|---|
nSolutions |
UDINT |
Returns the number of solutions. In normal cases, it is equal four. |
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 |