| 20 | |
| 21 | |
| 22 | std::vector<float> read_lidar_data(const std::string lidar_data_path) |
| 23 | { |
| 24 | std::ifstream lidar_data_file(lidar_data_path, std::ifstream::in | std::ifstream::binary); |
| 25 | lidar_data_file.seekg(0, std::ios::end); |
| 26 | const size_t num_elements = lidar_data_file.tellg() / sizeof(float); |
| 27 | lidar_data_file.seekg(0, std::ios::beg); |
| 28 | |
| 29 | std::vector<float> lidar_data_buffer(num_elements); |
| 30 | lidar_data_file.read(reinterpret_cast<char*>(&lidar_data_buffer[0]), num_elements*sizeof(float)); |
| 31 | return lidar_data_buffer; |
| 32 | } |
| 33 | |
| 34 | void gen_range_image(float * virtual_image, pcl::PointCloud<pcl::PointXYZI>::Ptr current_vertex, |
| 35 | float fov_up, float fov_down, int proj_H, int proj_W, int max_range, float farer_bound, float nearer_bound) |