Intel Realsense 카메라와 함께 ISAAC ROS VSLAM 및 Nvblox를 사용한 AMR 탐색

로봇 탐색 이면의 기술은 지속적으로 발전해 왔지만, 진정한 자율 탐색을 실현하기까지 해결해야 할 몇 가지 주요 장애물이 남아 있습니다. NVIDIA의 새로운 솔루션은 이 다음 단계를 현실로 만드는 데 일조하고 있습니다. 이 문서에서는 GPU 가속 ROS 및 ROS2 시스템과 VSLAM 알고리즘 및 Nvblox 패키지를 사용하여 더 적은 CPU 전력으로 더 효율적인 자율 로봇 탐색(AMR)을 구현하는 방법을 알아봅니다.

서론

자율 탐색은 로봇 시스템의 중요한 단계입니다. 자율 이동 로봇(AMR) 탐색의 필수 요소 중 하나는 "시각적 SLAM", 즉 시각적 동시 위치추정 및 매핑입니다. 시각적 SLAM은 카메라로 촬영한 이미지를 이용해 환경을 매핑하고 로봇의 위치를 동시에 추정하는 기술입니다. 화성 탐사에 사용되는 피닉스 착륙선, 오퍼튜니티 탐사선 및 인제뉴어티 헬리콥터는 자율 탐색 및 착륙을 위해 시각적 SLAM 알고리즘을 활용합니다. 추가 응용 분야로는 진공 청소, 내시경 검사, 무인 공중, 지상 및 수중 로봇 등이 있으며, 이러한 분야에서는 기계가 작업 자동화를 수행합니다.

시각적 SLAM은 카메라로 획득한 이미지에서 포즈를 추정하고 맵을 생성하는 데 많은 계산 능력이 필요합니다. 대부분의 시각적 SLAM(VSLAM) 알고리즘은 CPU 성능을 사용하므로 실시간 포즈 추정 및 맵 생성에 제약이 있습니다. Isaac ROS(로봇 작동 시스템), VSLAM 및 Nvblox는 자율 이동 로봇의 실시간 탐색을 위해 포즈를 추정하고 주변 환경의 맵을 생성하는 데 도움이 되는 GPU 가속 ROS2 패키지입니다. AMR의 자율 탐색을 위해 Isaac ROS VSLAM 및 Nvblox가 Realsense 카메라와 얼마나 잘 작동하는지 확인하기 위한 실험이 수행되었습니다.

NVIDIA ISAAC ROS 시각적 SLAM 및 Nvblox 파이프라인

그림 1은 NVIDIA ISAAC ROS 시각적 SLAM 및 Nvblox 파이프라인의 작동 및 통합을 보여 줍니다. 여기서 VSLAM은 포즈를 추정하고 Nvblox는 로봇의 자율 탐색을 위해 주변 환경의 맵을 재구성합니다.

Block Diagram of Isaac ROS VSLAM and Nvblox
그림 1: Isaac ROS VSLAM 및 Nvblox의 블록 다이어그램

NVIDIA Isaac ROS VSLAM은 스테레오 시각적 위치추정 및 매핑을 동시에 수행하는 ROS2 패키지입니다. 시간 동기화된 스테레오 이미지 쌍을 사용하여 스테레오 시각적 관성 주행 거리 측정을 계산하며, Isaac Elbrus GPU 가속 라이브러리를 사용합니다. 시각적 관성 주행 거리 측정, 최적화, 매핑이 Isaac ROS VSLAM의 3가지 구성 요소입니다. 시각적 주행 거리 측정(VO)은 시작점을 기준으로 카메라의 위치를 추정하는 기술입니다. 그림 1에 표시된 VO 포즈는 VO로 추정됩니다. 시각적 동시 위치추정 및 매핑(VSLAM) 방법은 VO 포즈를 토대로 구축되었으며, 이전에 확인된 환경 부분을 사용하여 루프 폐쇄 감지 및 SLAM 포즈 추정을 통해 VO 포즈의 품질을 향상시키는 것을 목표로 합니다. 시각적 데이터 외에도 Elbrus는 관성 측정 장치(IMU)의 측정값을 사용할 수 있습니다. 조명 조건이 좋지 않거나 카메라 앞에 길고 특징 없는 표면이 있는 경우처럼 VO가 포즈를 추정할 수 없는 경우 IMU로 전환됩니다. 그림 1은 V-SLAM에 의해 추정된 SLAM 포즈를 보여 줍니다.

NVIDIA Isaac ROS Nvblox는 카메라 이미지에서 AMR 주변 환경을 실시간 3D 재구성하는 데 사용되는 ROS2 패키지입니다. 재구성은 경로 계획자가 안전한 탐색 경로를 생성하는 데 사용하도록 고안되었습니다. Nvblox는 NVIDIA CUDA를 사용하여 이 프로세스를 가속화하고 실시간 작업을 지원합니다. 이 저장소에는 Nvblox 코어 라이브러리에 대한 ROS2 통합이 포함되어 있습니다. Nvblox 알고리즘은 잘린 부호 거리 함수(TSDF), 메시, 유클리드 부호 거리 함수(ESDF)와 같이 3가지 주요 구성 요소로 구성됩니다. Nvblox는 RGB 이미지, 심도 이미지, SLAM 포즈를 입력 및 출력 메시로 사용하여 시각화하고, 거리 슬라이스 맵을 경로 계획에 사용합니다. Nvblox는 RGB 및 심도 이미지 스트림, 그리고 심도 이미지의 해당 포즈로 2D 거리 맵 슬라이스와 3D 메시를 생성합니다. 시각화를 위해 주변 환경의 3D 재구성을 색상화하는 데 사용되는 RGB 이미지 스트림은 선택 사항입니다. 2D 거리 맵 슬라이스는 각 지점과 가장 가까운 재구성된 장애물 사이의 거리와 RVIZ 시각화를 위한 3D 메시를 보여 줍니다. 시각화를 위한 주변 환경의 3D 재구성은 선택 사항입니다. 2D 거리 맵 슬라이스는 각 지점과 가장 가까운 재구성된 장애물 사이의 거리를 표시할 뿐만 아니라 RVIZ 시각화를 위한 3D 메시도 표시합니다.

Isaac ROS VSLAM, Nvblox 및 Nav2 스택 파이프라인에 대한 설명

Isaac ROS V-SLAM, Nvblox 및 Nav2 스택을 사용하는 AMR 자율 탐색을 위한 전체 파이프라인은 그림 2에 표현되어 있습니다. 이 파이프라인은 Realsense 카메라 노드, Isaac ROS V-SLAM 노드, Isaac ROS Nvblox 노드, Nav2 노드, Rviz 노드와 같이 5개 노드로 구성됩니다. 다음 단락에서는 각 블록에 대해 설명합니다.

Isaac ROS VSLAM Nvblox and NAV2 pipeline
그림 2: Isaac ROS VSLAM, Nvblox 및 NAV2 파이프라인

Realsense 카메라 노드는 Realsense 카메라에서 이미지를 캡처하고 RGB, 심도, infra-1 및 infra-2 이미지를 게시합니다. infra-1 및 infra-2는 적외선 이미지입니다. infra-1 및 infra-2 이미지는 Isaac ROS V-SLAM 블록에 의해 구독되며 포즈와 tf를 게시합니다. Isaac ROS Nvblox 블록은 RGB 이미지, 심도 이미지, 포즈 및 if를 구독하여 거리 슬라이스 맵을 생성합니다. Nav2 노드는 경로 계획 및 탐색을 위해 거리 슬라이스 맵을 활용합니다. Nav2 노드는 AMR이 현재 포즈, 맵, 목적지 포즈 등의 목표를 사용하여 자율적으로 목표 상태에 도달할 수 있도록 하는 제어 시스템입니다. Nav2 노드는 목표 상태에 대한 경로를 성공적으로 구성하고 목표 위치까지 계획된 경로를 따르도록 AMR에 명령을 보냅니다. Rviz는 이미지, 주행 거리 측정 및 생성된 지도를 시각화하고 AMR에 목표 포즈를 제공하는 데 유용한 도구입니다.

실험 결과

그림 3은 AMR에 장착된 RealSense 카메라를 통해 보는 내용과 그 결과로 생성되는 3D 포인트 클라우드 맵을 메시로 보여 줍니다. 그림 4의 생성된 맵에는 주어진 목표 상태와 계획된 경로, 그리고 계획된 경로를 따라 목표 상태에 안전하게 도달하는 AMR이 표시되어 있습니다.

AMR images with generated 3d map
그림 3: 왼쪽 이미지는 실험실 환경의 AMR 표시, 가운데 이미지는 AMR이 보는 내용 표시, 오른쪽 이미지는 생성된 3D 맵을 메시로 표시

AMR generated map goal state
그림 4: 왼쪽 그림은 주어진 목표로 생성된 지도 표시, 두 번째 그림은 계획된 경로 표시, 오른쪽 세 번째 그림은 AMR이 목표 상태에 도달했음을 표시

결론

실험실에서 AMR을 자율적으로 탐색시키기 위해 Intel RealSense 카메라가 Isaac ROS VSLAM, Isaac ROS Nvblox 및 Nav2 스택에 통합되었습니다. AMR은 매핑 및 탐색 목적을 위해 실험실 환경 내부로 이동했습니다. Isaac ROS VSLAM은 AMR 주변 환경의 지도를 생성하는 동시에 AMR의 주행 거리 측정을 성공적으로 추정했습니다. GPU 가속 덕분에 NVIDIA Isaac ROS VSLAM 및 Nvblox 파이프라인에 실시간 성능이 구현됩니다. 동시에 VSLAM 알고리즘은 지도상의 위치를 파악하고 안전한 탐색을 위한 맵을 생성했습니다. 로봇 엔지니어들이 다양한 상업용 로봇 제품을 개발하는 데 당사의 실험 시연이 도움이 되기를 바랍니다. 자세한 내용은 저자에게 문의하십시오.


최신 뉴스

Sorry, your filter selection returned no results.

개인정보 보호정책이 업데이트되었습니다. 잠시 시간을 내어 변경사항을 검토하시기 바랍니다. 동의를 클릭하면 Arrow Electronics 개인정보 보호정책 및 이용 조건에 동의하는 것입니다.

당사의 웹사이트에서는 사용자의 경험 향상과 사이트 개선을 위해 사용자의 기기에 쿠키를 저장합니다. 당사에서 사용하는 쿠키 및 쿠키 비활성화 방법에 대해 자세히 알아보십시오. 쿠키와 추적 기술은 마케팅 목적으로 사용될 수 있습니다. '동의'를 클릭하면 기기에 쿠키를 배치하고 추적 기술을 사용하는 데 동의하는 것입니다. 쿠키 및 추적 기술을 해제하는 방법에 대한 자세한 내용과 지침을 알아보려면 아래의 '자세히 알아보기'를 클릭하십시오. 쿠키 및 추적 기술 수락은 사용자의 자발적 선택이지만, 웹사이트가 제대로 작동하지 않을 수 있으며 사용자와 관련이 적은 광고가 표시될 수 있습니다. Arrow는 사용자의 개인정보를 존중합니다. 여기에서 당사의 개인정보 보호정책을 읽을 수 있습니다.