occupancyMap3D
설명
occupancyMap3D
객체는 3차원 맵과 맵 정보를 저장합니다. 맵은 팔진트리 데이터 구조에 확률 값으로 저장됩니다. 이 클래스는 임의의 환경을 처리하고 관측값 입력값을 기반으로 크기를 동적으로 확장합니다. 포인트 클라우드 또는 특정 xyz 위치로 관측값을 추가할 수 있습니다. 이러한 관측값은 확률 값을 업데이트합니다. 확률적 값은 위치의 점유를 나타냅니다. 팔진트리 데이터 구조는 메모리와 디스크 모두에서 효율성을 유지하기 위해 데이터를 적절하게 트리밍합니다.
생성
설명
는 관측값과 디폴트 속성값이 없는, 빈 3차원 점유 맵을 생성합니다.omap
= occupancyMap3D
는 맵 해상도를 지정하고(단위: 셀/미터) omap
= occupancyMap3D(res
)Resolution
속성을 설정합니다.
는 하나 이상의 이름-값 인수를 사용하여 속성을 지정합니다. 예를 들어 omap
= occupancyMap3D(res
,Name,Value)"FreeThreshold",0.25
는 장애물이 없는 셀로 간주할 임계값을 0.25의 확률 값으로 지정합니다.
속성
객체 함수
checkOccupancy | Check if locations are free or occupied |
getOccupancy | Get occupancy probability of locations |
inflate | 각 점유 위치 확장 |
insertPointCloud | Insert 3-D points or point cloud observation into map |
rayIntersection | Find intersection points of rays and occupied map cells |
setOccupancy | Set occupancy probability of locations |
show | Display 3-D occupancy map |
updateOccupancy | Update occupancy probability at locations |
예제
알고리즘
참고 문헌
[1] Hornung, Armin, Kai M. Wurm, Maren Bennewitz, Cyrill Stachniss, and Wolfram Burgard. "OctoMap: an efficient probabilistic 3D mapping framework based on octrees." Autonomous Robots 34, no. 3 (April 2013): 189–206. https://doi.org/10.1007/s10514-012-9321-0.
확장 기능
버전 내역
R2019b에 개발됨
참고 항목
객체
함수
checkMapCollision
|insertPointCloud
|inflate
|setOccupancy
|show
|rosReadOccupancyMap3D
(ROS Toolbox)