일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 하나이름생각이나지않고
- fastapi
- 빈생성에러
- 담백하답니다
- 스프링부트환경설정
- 리눅스
- 기본소스코드끌어오기
- 표준프레임워크
- 소스코드보는법익히기
- 소스분석
- 티파라찌
- 광주광역시운암동
- 광주꾸덕꾸덕
- 전체파일내키워드찾기
- 매력이다이다
- 다시또봐요
- ls-ld
- 자바파일업로드
- 운암동점심
- root접근하기
- 권한확인명령어
- 운암동돈까스맛집
- 광주광역시이색카페
- opencvwithcudano
- install에러
- importjetson
- 강의리추어탕본점
- 디저트는
- 기세이다
- CSS
- Today
- Total
개발자 구겹이
import jetson_inference 본문
import jetson_inference 를 할 수 없음
>> build 과정이 제대로 못 진행됐다던가
>> 서로 호환되어야 할 것들이 매칭이 안 된 것일 수 있다.
** jetson_inference 모듈은 jetson 보드에서 사용할 수 있음
우분투에서 접한 import jetson 불가 에러 관련 issue를 정리해본다.
누구를 위하여? 나 (⸝⸝⸝⁼̴́◡⁼̴̀⸝⸝⸝)를 위하여
1. 관련 개념
1) CUDA; Compute Unified Device Architecture;
NVIDIA에서 만든 GPU 병렬 컴퓨팅 플랫폼이자 API임 : GPU를 일반적인 연산에도 쓸 수 있게 해주는 기술
* 딥러닝은 CUDA 없이 못 돌린다고 할 수 있을만큼 중요한 기능을 수행하는 쿠다
> pytorch, tensorflow와 같은 프레임워크들이 cuda위에서 돌아감
>> cuda가 있으면 : gpu,
>> cuda가 없으면 : cpu로 학습을 진행
>>
torch.cuda.is_available()
2) $ pip list | grep opencv, $ pkg-config --modversion [opencv4]
python.exe 로 진입해서 import 모듈을 해보았을 때, pip list에 있는 모듈과 시스템의 모듈을 불러오는데는 분명한 차이가 있음
아래는 이와 관련한 gpu가 가진 지식을 가지고 온것임
기존 pip 로 설치되는 대부분의 패키지 >> cpu 전용으로 설치됨 : cuda와 연동 안됨(?)
>> jetson 관련 모듈을 직접 build해야 하는 이유이기도 함 : du
2. import jetson ~을 위한 필요 과정들
1) jetson_inference를 쓰기 위해 필요한 것들
① CUDA가 활성화된 OpenCV
>> cuda 옵션을 켜서 소스 빌드 필요. WITH_CUDA = ON
② Jetson에 최적화된 Pytorch + torchvision
>> NVIDIA에 제공하는 Jetpack버전에 맞는 wheel 파일 사용
>> Pytorch 버전에 맞춰 git clone 후 직접 build/install
③ 라이브러리들 간의 CUDA 호환성 확인
>> 영상 처리, 객체 탐지, 분류, 세그멘테이션 등을 cuda 가속으로 돌리기 때문에, 이 모듈들이 같은 버전에서 빌드되어 있어야,
import jetson_inference 가 잘 작동됨. jetson_inference는 내부적으로 OpenCV, Pytorch를 이용해 cuda를 돌린다고 함.
④ CMake로 jetson-inference 빌드
2) 버전 기록
Device : agx xavier Orin ff
OS : Ubuntu 20.04 << 18.04버전을 다운받았는데, 터미널에서 조회해보니 20.04가 출력됨
Jetpack : 5.1.5 ( sdkmanager : 2.2.0)
OpenCV 4.5
CUDA 11.4
CUDA -X AI _ cuDNN 8.6
CUDA -X AI _ TensorRT 8.5
ComputerVision _ OpenCV 4.5
CompyterVision _ VPI on Target 2.4
3) jetson_inference 임포트를 위한 관련 모듈들 설치 순서
torch>torchvision>opencv>jetson_inference
① torch설치 : jetson용으로 nvidia가 빌드한 wheel파일을 사용할 것
# 예시 (PyTorch 2.0.0 for JetPack 5.1.1+)
wget https://nvidia.box.com/shared/static/ez58yq6qt0e4d12o4x3qksz1kz03vrz7.whl -O torch-2.0.0-cp38-cp38-linux_aarch64.whl
pip3 install torch-2.0.0-cp38-cp38-linux_aarch64.whl
② torchvision설치 : torch 버전에 맞게 github에서 소스를 받아 빌드해야 함
sudo apt-get install libjpeg-dev zlib1g-dev
git clone --branch v0.15.1 https://github.com/pytorch/vision torchvision
cd torchvision
python3 setup.py install
③ opencv설치: cuda활성화된 버전으로. jetpack에 opencv는 기본 설치되어 있지만, cuda 지원이 꺼져있음*
sudo apt-get remove libopencv*
sudo apt-get install cmake g++ python3-dev python3-numpy
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git
cd opencv
mkdir build && cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D WITH_CUDA=ON \
-D CUDA_ARCH_BIN=7.2 \ #xavier nx, agx xavier 기준 버전임. 보드에 따라 바꿔줄 것
-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules \
-D BUILD_opencv_python3=ON \
-D ENABLE_NEON=ON \
-D WITH_GSTREAMER=ON \
-D WITH_LIBV4L=ON \
-D BUILD_TESTS=OFF \ -D BUILD_PERF_TESTS=OFF \
-D BUILD_EXAMPLES=OFF ..
#cf. cmake-gui
make -j$(nproc)
sudo make install
④ jetson_inference 빌드
git clone --recursive https://github.com/dusty-nv/jetson-inference
cd jetson-inference
mkdir build && cd build
cmake ../
make -j$(nproc)
sudo make install
3. 참고해볼만한 문서
OpenCV : 4.5.4 with CUDA : NO >> https://makejarvis.tistory.com/88
Nvidia AGX Xavier의 OpenCV 4.10.0 with CUDA 설치(GPU사용)
아래 글은 과거에 작성해둔 글을 현기준(2024.6월)으로 추가 업데이트를 하였습니다. 내용에 기존 것과 좀 섞여있을 수 있는데, 절차는 문제가 없으니 따라하시면 됩니다.jetpack을 설치하면 OpenCV
makejarvis.tistory.com
'LINUX' 카테고리의 다른 글
리눅스 특정 파일 권한 확인 및 부여 (0) | 2025.04.15 |
---|---|
SDK Manager is verifying system readiness to install (0) | 2025.04.07 |
일반 계정으로 root 디렉토리 접근하기 -bash: cd: root: Permission denied (0) | 2025.01.10 |