Получение ошибки: YAML :: TypedBadConversion <double>' - PullRequest
0 голосов
/ 21 октября 2018

Я пытался преобразовать информацию о камере из файла yaml в sensor_msgs / CameraInfo.Файл yaml был успешно загружен.И ошибка возникает при попытке получить значение коэффициента искажения:

YAML::Node conf = YAML::LoadFile(yaml_file); 
std::vector<double> dd;
dd = conf["distortion_coefficients"]["data"].as<std::vector<double> >();

И ошибка похожа на: "terminat вызывается после создания экземпляра

'YAML :: TypedBadConversion'what (): yaml-cpp: ошибка в строке 0, столбце 0: плохое преобразование "

Мой файл YAML для distortion_coefficients похож на

distortion_coefficients:   
  rows: 1  
  cols: 5  
  data: [0.013750 -0.162804 0.008105 0.002423 0.000000]

Любая идея, как решитьэто?

1 Ответ

0 голосов
/ 21 октября 2018

Ваш data не имеет запятых, разделяющих значения, поэтому он не может быть прочитан как последовательность чисел.

Если вы измените его на

distortion_coefficients:   
  rows: 1  
  cols: 5  
  data: [0.013750, -0.162804, 0.008105, 0.002423, 0.000000]

тогда он должен работать как положено.

...