31 {
32 std::vector<std::string> expect_entry = { "t", "p_x", "p_y", "p_z", "q_w", "q_x", "q_y", "q_z" };
33
35 ReadCsv(&csv_data, file_path);
36
37 unsigned long number_of_datapoints = csv_data["t"].size();
38 data_out->resize(number_of_datapoints);
39
40 for (size_t k = 0; k < number_of_datapoints; k++)
41 {
42 Time time = csv_data["t"][k] + time_offset;
43
44 Eigen::Vector3d position(csv_data["p_x"][k], csv_data["p_y"][k], csv_data["p_z"][k]);
45 Eigen::Quaterniond orientation(csv_data["q_w"][k], csv_data["q_x"][k], csv_data["q_y"][k], csv_data["q_z"][k]);
47
48 BufferDataType data;
49 data.set_measurement(std::make_shared<VisionMeasurementType>(position, orientation));
50
51 BufferEntryType current_entry(time, data, sensor);
52 data_out->at(k) = current_entry;
53 }
54 }
static Eigen::Quaterniond NormalizeQuaternion(const Eigen::Quaterniond &quat, std::string note="")
std::map< std::string, std::vector< double > > CsvDataType
Definition read_csv.h:26