Add code to rectify frames for stereo depth images
Signed-off-by: Jacki <jacki@thejackimonster.de>
This commit is contained in:
parent
262df2523c
commit
682daf4385
3 changed files with 160 additions and 64 deletions
|
@ -124,6 +124,10 @@ struct device_imu_euler_t {
|
|||
float yaw;
|
||||
};
|
||||
|
||||
struct device_imu_mat3x3_t {
|
||||
float m [9];
|
||||
};
|
||||
|
||||
struct device_imu_size_t {
|
||||
uint16_t width;
|
||||
uint16_t height;
|
||||
|
@ -144,6 +148,7 @@ typedef struct device_imu_vec2_t device_imu_vec2_type;
|
|||
typedef struct device_imu_vec3_t device_imu_vec3_type;
|
||||
typedef struct device_imu_quat_t device_imu_quat_type;
|
||||
typedef struct device_imu_euler_t device_imu_euler_type;
|
||||
typedef struct device_imu_mat3x3_t device_imu_mat3x3_type;
|
||||
typedef struct device_imu_size_t device_imu_size_type;
|
||||
|
||||
typedef void (*device_imu_event_callback)(
|
||||
|
@ -203,6 +208,10 @@ uint32_t device_imu_camera_get_num_of_sensors(const device_imu_camera_type *came
|
|||
|
||||
const device_imu_camera_sensor_type* device_imu_camera_get_sensor(const device_imu_camera_type *camera, uint32_t index);
|
||||
|
||||
device_imu_mat3x3_type device_imu_sensor_get_rotation(const device_imu_camera_sensor_type *sensor);
|
||||
|
||||
device_imu_vec3_type device_imu_sensor_get_position(const device_imu_camera_sensor_type *sensor);
|
||||
|
||||
device_imu_size_type device_imu_sensor_get_resolution(const device_imu_camera_sensor_type *sensor);
|
||||
|
||||
device_imu_vec2_type device_imu_sensor_get_cc(const device_imu_camera_sensor_type *sensor);
|
||||
|
|
|
@ -1152,6 +1152,28 @@ const device_imu_camera_sensor_type* device_imu_camera_get_sensor(const device_i
|
|||
return &(camera->sensors[index]);
|
||||
}
|
||||
|
||||
device_imu_mat3x3_type device_imu_sensor_get_rotation(const device_imu_camera_sensor_type *sensor) {
|
||||
device_imu_mat3x3_type rotation;
|
||||
rotation.m[0] = sensor->cameraMisalignment.array[0][0];
|
||||
rotation.m[1] = sensor->cameraMisalignment.array[0][1];
|
||||
rotation.m[2] = sensor->cameraMisalignment.array[0][2];
|
||||
rotation.m[3] = sensor->cameraMisalignment.array[1][0];
|
||||
rotation.m[4] = sensor->cameraMisalignment.array[1][1];
|
||||
rotation.m[5] = sensor->cameraMisalignment.array[1][2];
|
||||
rotation.m[6] = sensor->cameraMisalignment.array[2][0];
|
||||
rotation.m[7] = sensor->cameraMisalignment.array[2][1];
|
||||
rotation.m[8] = sensor->cameraMisalignment.array[2][2];
|
||||
return rotation;
|
||||
}
|
||||
|
||||
device_imu_vec3_type device_imu_sensor_get_position(const device_imu_camera_sensor_type *sensor) {
|
||||
device_imu_vec3_type position;
|
||||
position.x = sensor->cameraOffset.axis.x;
|
||||
position.y = sensor->cameraOffset.axis.y;
|
||||
position.z = sensor->cameraOffset.axis.z;
|
||||
return position;
|
||||
}
|
||||
|
||||
device_imu_size_type device_imu_sensor_get_resolution(const device_imu_camera_sensor_type *sensor) {
|
||||
device_imu_size_type resolution;
|
||||
resolution.width = sensor->resolution[0];
|
||||
|
|
Reference in a new issue