## Dual Quaternions

List of Operators ↓

This chapter contains operators for handling dual quaternions.

### Introduction to Dual Quaternions

A dual quaternion consists of the two quaternions and , where is the real part, is the dual part, and is the dual unit number (). Each quaternion consists of the scalar part and the vector part , where are the basis elements of the quaternion vector space.

For information how dual quaternions can be used for the description of rigid 3D transformations and their relation to Plücker coordinates, see `“Solution Guide III-C - 3D Vision”`.

### Representing Dual Quaternions in HALCON

In HALCON, a dual quaternion is represented by a tuple with eight values , where and are the scalar and the vector part of the real part and and are the scalar and the vector part of the dual part.

#### List of Operators

`deserialize_dual_quat`
Deserialize a serialized dual quaternion.
`dual_quat_compose`
Multiply two dual quaternions.
`dual_quat_conjugate`
Conjugate a dual quaternion.
`dual_quat_interpolate`
Interpolate two dual quaternions.
`dual_quat_normalize`
Normalize a dual quaternion.
`dual_quat_to_hom_mat3d`
Convert a unit dual quaternion into a homogeneous transformation matrix.
`dual_quat_to_screw`
Convert a unit dual quaternion into a screw.
`dual_quat_trans_line_3d`
Transform a 3D line with a unit dual quaternion.
`dual_quat_trans_point_3d`
Transform a 3D point with a unit dual quaternion.
`screw_to_dual_quat`
Convert a screw into a dual quaternion.
`serialize_dual_quat`
Serialize a dual quaternion.