farm-ng-core
camera_rig.h
Go to the documentation of this file.
1 // Copyright (c) 2011, Hauke Strasdat
2 // Copyright (c) 2012, Steven Lovegrove
3 // Copyright (c) 2021, farm-ng, inc.
4 //
5 // Use of this source code is governed by an MIT-style
6 // license that can be found in the LICENSE file or at
7 // https://opensource.org/licenses/MIT.
8 
9 #pragma once
10 
11 #include "sophus/lie/se3.h"
13 
14 namespace sophus {
15 
16 /// Camera as part of a sensor `rig`.
17 struct CameraInRig {
21 
22  /// Camera intrinsics
24 
25  /// Camera extrinsics
27 };
28 
29 /// Sensor rig with multiple cameras.
31  std::vector<CameraInRig> cameras_in_rig;
32 
33  void transformRig(sophus::SE3d const& new_rig_from_rig) {
34  for (auto& camera_in_rig : cameras_in_rig) {
35  camera_in_rig.rig_from_camera =
36  new_rig_from_rig * camera_in_rig.rig_from_camera;
37  }
38  }
39 
40  void transformRig(uint32_t camera_num) {
41  sophus::SE3d new_rig_from_rig =
42  cameras_in_rig[camera_num].rig_from_camera.inverse();
43  transformRig(new_rig_from_rig);
44  }
45 };
46 
47 } // namespace sophus
sophus::CameraInRig::camera_model
CameraModel camera_model
Camera intrinsics.
Definition: camera_rig.h:23
sophus::MultiCameraRig::transformRig
void transformRig(uint32_t camera_num)
Definition: camera_rig.h:40
sophus
Image MutImage, owning images types.
Definition: num_diff.h:20
sophus::CameraInRig::rig_from_camera
sophus::SE3d rig_from_camera
Camera extrinsics.
Definition: camera_rig.h:26
sophus::CameraModel
Concrete camera model class.
Definition: camera_model.h:351
sophus::CameraInRig
Camera as part of a sensor rig.
Definition: camera_rig.h:17
sophus::MultiCameraRig::transformRig
void transformRig(sophus::SE3d const &new_rig_from_rig)
Definition: camera_rig.h:33
sophus::CameraInRig::CameraInRig
CameraInRig()
Definition: camera_rig.h:18
sophus::MultiCameraRig
Sensor rig with multiple cameras.
Definition: camera_rig.h:30
camera_model.h
se3.h
sophus::Isometry3< double >
sophus::MultiCameraRig::cameras_in_rig
std::vector< CameraInRig > cameras_in_rig
Definition: camera_rig.h:31
sophus::CameraInRig::CameraInRig
CameraInRig(CameraModel const &camera_model)
Definition: camera_rig.h:19