일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 오늘도 우라라
- install opencv-4.4.0 on ubuntu 22.04
- MSG
- publish
- 토픽
- 기초
- 그랑사가
- 오늘도 우라라 펫
- 오늘도 우라라 펫 공략
- 우분투
- 등차수열
- Linux
- 오늘도 우라라 공략
- 데이터 베이스
- while
- ubuntu
- 반복문
- Subscribe
- 환경설정
- mariaDB
- JungOl
- mysql
- LeetCode
- ros
- 리눅스
- 마리아 DB
- topic
- C++
- C언어
- 프로그래밍
- Today
- Total
하루의 쉼터
[Node] MAP_SERVER에 관하여 본문
| ROS MAP_SERVER에 관하여 분석하고 이해하자.
map_server란?
1. map_server 역할
Node를 통하여 저장공간으로부터 맵 파일을 읽고 ROS를 통해 요청하는 다른 node에게 제공 저장된 데이터를 전달하는 역할
2. 유틸리티 제공
동적으로 생성 된 맵을 파일에 저장할 수 있는 map_saver 명령 줄 유틸리티도 제공
2.1 지도 형식
- map_saver를 통하여 지도 형식을 한쌍으로 저장하게 되는데 아래와 같다.
file_name.yaml |
file_name.pgm |
- 이미지는 해당 픽셀의 색상으로 각 셀의 점유 상태를 설명하며 점유 관련하여는 차후에 다루겠습니다.
* map 관련 데이터 한쌍 예시)
이미지 데이터는 SDL Image Library(이미지 파일 로딩 라이브러리)를 사용하였으며 SDL_IMG_LIB는 아래와 같은 홈페이지를 통하여 자세하게 알수 있다.
www.libsdl.org/projects/SDL_image/docs/index.html
* SDL image library는 BMP, GIF, JPEG, LBM, PCX, PNG, PNM, SVG, TGA, TIFF, WEBP, XCF, XPM, XV 형식을 지원
2.1.1 Yaml 형식 : 맵 메타 데이터를 저장
image | 점유 격자 지도의 이미지 경로 ex) test.png |
resolution | 해상도 공식 : 미터 / 픽셀 |
origin | MAP 원점 좌표(위치) 2D 포즈 (x, y, yaw) |
occupied_thresh | 임계 값보다 큰 점유를 가진 픽셀은 점유 상태로 확인 |
free_thresh | 점유값이 임계 값보다 작은 픽셀은 비어있는 상태로 확인 |
negate | white / black free / occupied semantics가 반전되어야하는지 여부 |
map.yaml 예시 :
map.pgm 예시 :
* vi를 통하여 데이터 확인
* gimp를 통하여 데이터 확인
3. 송수신 데이터
3.1 Topic
3.1.1 map_metadata
msg type | nav_msgs / MapMetaData |
역할 | 지도 메타 데이터를 수신 |
2021/03/03 - [프로그래밍 - 정의/ROS] - [Topic] nav_msgs/MapMetaData
3.1.2 map
msg type | nav_msgs / OccupancyGrid |
역할 | 지도 데이터를 수신(토픽) |
2021/03/05 - [프로그래밍 - 정의/ROS] - [Topic] nav_msgs/OccupancyGrid
3.2 Service
3.2.1 static_map
srv type | nav_msgs / GetMap |
역할 | 지도 데이터를 수신(서비스) |
Reference Site :
'프로그래밍 > ROS' 카테고리의 다른 글
[ERROR] invalid message type: (0) | 2021.03.08 |
---|---|
[Topic] nav_msgs/OccupancyGrid (0) | 2021.03.05 |
[Topic] nav_msgs/MapMetaData (0) | 2021.03.03 |
[ROS] 메시지 통신 (Topic, Service, Action) (0) | 2019.09.17 |
[ROS] ROS 용어 정리 (0) | 2019.09.16 |