본문 바로가기
  • AI 개발자가 될래요
로보틱스

[ROS/ROS2] ROS2 bag 파일을 ROS .bag 파일로 변환하는 법

by 꿀개 2024. 12. 23.

[ROS/ROS2] ROS2 bag 파일을 ROS .bag 파일로 변환하는 법

 

ROS로 구현된 알고리즘을 ROS2로 로깅된 데이터를 이용해 실행하려 할 때 

두 버전 차이로 인해 다이렉트로는 ros에서 ros2 bag파일을 읽어오지 못한다.

 

그럴 때는 ros2 bag파일을 ros 파일로 변환시켜주면 된다.

 

1. rosbags 패키지 설치

먼저 rosbags 패키지를 설치한다. 

pip install rosbags

 

만약 설치에 오류가 난다면 아나콘다 안에서의 설치 오류인지 확인해보자. (에러메세지로 확인 가능)

필자의 경우 아나콘다 안에서 설치했을 때 오류가 나서 conda deactivate 후 설치했더니 정상적으로 되었다.

 

2. ros2 -> ros 변환

그 후 아래 변수에 적절한 경로와 이름을 넣어 명령어를 수행하면 된다.

* 앞 변수에는 폴더를, 뒤 변수에는 파일 이름을 넣어줘야 한다.

 

rosbags-convert --src <$ROS2_BAG_FOLDER> --dst <$ROS_BAG_FILE_NAME.bag>

 

변환이 완료되면 명령어를 실행한 경로 내에 .bag파일이 있을 것이다.