VPI(Vision Programming Interface)

jaeung·2023년 9월 15일
0

reading & summary

목록 보기
11/28

VPI 설치에 선호되는 도구는 호스트와 대상 시스템 모두에서 설치 및 설정 프로세스를 자동화하는 SDK Manager 설치 프로그램 입니다.
VPI는 엣지단 젯슨 디바이스 혹은 벡엔드(서버단) 둘다 활용이 가능하며, 젯슨 디바이스에는 여러 컴퓨팅 엔진이 있습니다.
예를 들면 GPU(CUDA), CPU, PVA, VIC, NvDec, NvEnc, ISP 등 이 있지만 직접 액세스 할 수 없으므로 사용할 수 없습니다.

VPI 이러한 문제를 해결하는 것을 목표로 합니다.

  • 우리가 VPI를 사용해야 하는 13가지 이유:
    Cuda(GPU)에서 OpenCV보다 15배 빠릅니다.
    VisionWorks 보다 6배가 빠릅니다.
    일반 CPU에서 OpenCV보다 최대 30배 빠릅니다.
    모든 젯슨 임베디드 가속기와 효율적인 컴퓨터 비전용 파이프 라인을 만들수 있습니다.
    비슷한 알고리즘은 여러 다른 가속기에 구현가능합니다.
    시스템 레벨에서 컴퓨터 비젼 프로세싱 과부하 방지는 로드밸런싱으로 쉽게 수행할 수 있습니다.
    다른 가속기와 인터페이스 하기 위한 통합 API
    엣지단 Jetson 디바이스 및 서버단 x86 Linux PC 모두에서 가속화
    여러 가속기 간의 메모리 관리 효율화를 증대시킵니다.
    OpenCV, NVIDIA® CUDA, VisionWorks ™ ®, EGL 등과의 상호 운용성
    NVIDIA® VisionWorks™를 대체하도록 설계되었습니다.
    추후 파이썬, 파이프라인 플로우그래프
    효율적인 이벤트 및 스트림 파이프라인 구성가능
    설치 프로그램에 대한 자세한 설명은 SDK Manager User Guide를 참조하세요 .

메모
SDK Manager 설치 프로그램을 통해 VPI를 설치할 때 VPI v2.3 출시 이후 적용된 버그 수정을 활용하려면 VPI를 최신 버전으로 업그레이드하는 것이 좋습니다. 이렇게 하려면 터미널에서 다음 명령을 실행하세요.

apt또는 linux-x86_64 호스트에 VPI 호스트 구성 요소를 설치하는 데 사용할 수 있습니다 .

VPI 저장소의 공개 키를 설치합니다.
sudo apt 설치 gnupg
sudo apt-key adv --fetch-key https://repo.download.nvidia.com/jetson/jetson-ota-public.asc
시스템에 새로운 적절한 저장소를 추가하는 데 필요한 일부 패키지를 설치하십시오.
sudo apt 설치 소프트웨어 속성-공통
공용 저장소 서버를 apt구성에 추가하십시오.
우분투 18.04의 경우:
sudo add-apt-repository 'deb https://repo.download.nvidia.com/jetson/x86_64/bionic r35.2 main'
우분투 20.04의 경우:
sudo add-apt-repository 'deb https://repo.download.nvidia.com/jetson/x86_64/focus r35.2 main'
로컬 저장소 패키지 목록을 업데이트합니다.
sudo 적절한 업데이트
호스트에 VPI 패키지와 해당 종속성을 설치합니다.
sudo apt 설치 libnvvpi2 vpi2-dev vpi2-samples
디스플레이가 연결되어 있으면 VPI 데모 패키지도 설치하세요.
sudo apt install vpi2-demos
그런 다음 데모 애플리케이션 의 지침을 따르십시오 .
Python 바인딩의 경우 다음을 수행합니다.
Python 3.8(Ubuntu 18.04 및 Ubuntu 20.04)
sudo apt 설치 python3.8-vpi2
Python 3.9(Ubuntu 20.04만 해당)
sudo apt 설치 python3.9-vpi2
두 경우 모두 pip, conda, apt 또는 다른 방법을 통해 numpy 모듈을 설치해야 합니다.
(선택 사항) aarch64-l4t 아키텍처를 대상으로 하는 크로스 컴파일을 위한 개발 패키지입니다.
sudo apt 설치 vpi2-cross-aarch64-l4t
설치 프로그램은 VPI 파일을 디렉터리에 복사합니다 /opt/nvidia/vpi2.

이 디렉터리 안에는 다음과 같은 하위 디렉터리가 있습니다.

  • 빈 데모 애플리케이션 및 기타 실행 파일
  • 포함하다 C 헤더
  • lib/<아치> 설치되는 플랫폼의 공유 라이브러리, 아치는 x86_64-linux-gnu 또는 aarch64-linux-gnu 일 수 있습니다.
  • 견본/* 완전한 샘플 애플리케이션
  • lib/aarch-linux-gnu/lib x86_64 시스템에 설치할 때 Jetson 장치로 크로스 컴파일하는 데 필요한 공유 라이브러리
    성공적으로 설치한 후 기본 개념을 읽고 몇 가지 기본 VPI 개념을 배운 다음 VPI를 사용하여 첫 번째 애플리케이션을 작성하십시오 .

문제해결방법1
The issue was I didnt have the nvidia-container-runtimeinstalled. Since the deamon.jsonwas available I missed this.

nvidia-container-runtime을 설치하지 않았습니다.

https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_visual_slam/issues/64

출처 : https://docs.nvidia.com/vpi/installation.html

profile
Done is better than perfect.

0개의 댓글