| 39 | namespace { |
| 40 | |
| 41 | std::shared_ptr<Database> CreateTestDatabase() { |
| 42 | auto database = Database::Open(kInMemorySqliteDatabasePath); |
| 43 | |
| 44 | Camera camera1 = Camera::CreateFromModelId( |
| 45 | kInvalidCameraId, SimplePinholeCameraModel::model_id, 1, 1, 1); |
| 46 | camera1.camera_id = database->WriteCamera(camera1); |
| 47 | Camera camera2 = Camera::CreateFromModelId( |
| 48 | kInvalidCameraId, SimplePinholeCameraModel::model_id, 2, 2, 2); |
| 49 | camera2.camera_id = database->WriteCamera(camera2); |
| 50 | |
| 51 | Rig rig; |
| 52 | rig.AddRefSensor(camera1.SensorId()); |
| 53 | rig.AddSensor(camera2.SensorId()); |
| 54 | const rig_t rig_id = database->WriteRig(rig); |
| 55 | |
| 56 | Image image1; |
| 57 | image1.SetName("image1"); |
| 58 | image1.SetCameraId(camera1.camera_id); |
| 59 | image1.SetImageId(database->WriteImage(image1)); |
| 60 | Image image2; |
| 61 | image2.SetName("image2"); |
| 62 | image2.SetCameraId(camera2.camera_id); |
| 63 | image2.SetImageId(database->WriteImage(image2)); |
| 64 | Image image3; |
| 65 | image3.SetName("image3"); |
| 66 | image3.SetCameraId(camera1.camera_id); |
| 67 | image3.SetImageId(database->WriteImage(image3)); |
| 68 | Image image4; |
| 69 | image4.SetName("image4"); |
| 70 | image4.SetCameraId(camera2.camera_id); |
| 71 | image4.SetImageId(database->WriteImage(image4)); |
| 72 | |
| 73 | PosePrior pose_prior1; |
| 74 | pose_prior1.corr_data_id = image1.DataId(); |
| 75 | pose_prior1.position = Eigen::Vector3d::Random(); |
| 76 | pose_prior1.pose_prior_id = database->WritePosePrior(pose_prior1); |
| 77 | PosePrior pose_prior2; |
| 78 | pose_prior1.corr_data_id = image2.DataId(); |
| 79 | pose_prior2.position = Eigen::Vector3d::Random(); |
| 80 | pose_prior2.pose_prior_id = database->WritePosePrior(pose_prior2); |
| 81 | |
| 82 | Frame frame1; |
| 83 | frame1.SetRigId(rig_id); |
| 84 | frame1.AddDataId(image1.DataId()); |
| 85 | frame1.AddDataId(image2.DataId()); |
| 86 | frame1.SetFrameId(database->WriteFrame(frame1)); |
| 87 | Frame frame2; |
| 88 | frame2.SetRigId(rig_id); |
| 89 | frame2.AddDataId(image3.DataId()); |
| 90 | frame2.AddDataId(image4.DataId()); |
| 91 | frame2.SetFrameId(database->WriteFrame(frame2)); |
| 92 | |
| 93 | database->WriteKeypoints(image1.ImageId(), FeatureKeypoints(10)); |
| 94 | database->WriteKeypoints(image2.ImageId(), FeatureKeypoints(5)); |
| 95 | database->WriteKeypoints(image3.ImageId(), FeatureKeypoints(6)); |
| 96 | database->WriteKeypoints(image4.ImageId(), FeatureKeypoints(3)); |
| 97 | |
| 98 | TwoViewGeometry two_view_geometry; |
no test coverage detected