일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- DACON
- Carla
- Git
- CARLA simulator
- 개발흐름
- 논문분석
- Object Detection Dataset 생성
- 논문 분석
- AI Security
- 객체 탐지
- 크롤링
- VOC 변환
- Branch 활용 개발
- InstructPix2Pix
- Docker
- Custom Animation
- TensorFlow Object Detection Error
- Linux build
- 사회초년생 추천독서
- object detection
- TensorFlow Object Detection 사용예시
- TensorFlow Object Detection Model Build
- Towards Deep Learning Models Resistant to Adversarial Attacks
- paper review
- 리눅스 빌드
- 커스텀 애니메이션 적용
- TensorFlow Object Detection API install
- 기능과 역할
- DOTA dataset
- Paper Analysis
Archives
- Today
- Total
JSP's Deep learning
[CARLA Simulator] CARLA 0.9.13 Linux Build with Docker on Ubuntu 20.04.05 LTS 본문
Etc/CARLA Simulator
[CARLA Simulator] CARLA 0.9.13 Linux Build with Docker on Ubuntu 20.04.05 LTS
_JSP_ 2023. 2. 18. 13:35CARLA UE4Editor crash 오류 수정 중 : 23.02.20~23.02.21(수정완료)
* 메인 PC 사전준비 사항
- NVIDIA-Docker 및 Docker Container Toolkit 설치
- NVIDIA 그래픽 드라이버 및 CUDA, cuDNN 설치
(즉, GPU 사용가능 환경 구성) - Vulkan SDK 환경 구성
(참고 : https://vulkan.lunarg.com/doc/view/latest/linux/getting_started.html) - nvidia/vulkan 이미지 빌드
(참고 : https://jsp-coding.tistory.com/43) - xhost 권한 설정
# 다음의 명령어로 권한 설정(모든 권한 허용)
xhost +
* 빌드환경
- 메인 PC
- OS : Ubuntu 20.04
- GPU : RTX 4080
- NVIDIA 드라이버 : 525.85.05
- CUDA version : 12.0
- cuDNN : 8.9
- 도커 이미지
- 이미지 : nvidia/vulkan
- OS : Ubuntu 20.04.5 LTS
- python : 3.8.10
- 빌드버전
- CARLA : 0.9.13
- Unreal Engine : 4.26.2
1. CARLA 0.9.13 서버 빌드
1.1 도커 컨테이너 생성
docker run -itd --privileged --gpus all --name carla0913_server_ue426_vulkan -e NVIDIA_DISABLE_REQUIRE=1 -v /dev/snd:/dev/snd -v $HOME/.Xauthority:/root/.Xauthority -e DISPLAY=$DISPLAY -e NVIDIA_DRIVER_CAPABILITIES=all --device /dev/dri --net host -v /etc/vulkan/icd.d/nvidia_icd.json:/etc/vulkan/icd.d/nvidia_icd.json -v /etc/vulkan/implicit_layer.d/nvidia_layers.json:/etc/vulkan/implicit_layer.d/nvidia_layers.json -v /usr/share/glvnd/egl_vendor.d/10_nvidia.json:/usr/share/glvnd/egl_vendor.d/10_nvidia.json nvidia/vulkan:1.3-470 /bin/bash
1.2 도커 컨테이너 접속
docker exec -it carla0913_server_ue426_vulkan bash
1.3 Ubuntu 기본 패키지 설치
apt-get update &&
apt-get install wget software-properties-common &&
add-apt-repository ppa:ubuntu-toolchain-r/test &&
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|apt-key add - &&
apt-add-repository "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main" &&
apt-get update
1.4 유저 생성 및 추가
CARLA는 USER 빌드를 권장하며, USER 권한으로 진행할 시 예기치 못한 에러가 발생할 수 있다.
# 1. USER 생성
adduser ue426vulkan
# 2. sudo 및 vim 설치
apt-get update &&
apt-get install sudo &&
apt-get install vim
# 3. USER 정보 추가를 위한 편집기 열기
vim /etc/sudoers
# 4. USER 정보 추가(root 밑에 추가한다)
ue426vulkan ALL=(ALL:ALL) ALL
# 5. 저장
wq!
# 6. 컨테이너 나가기
exit
# 7. 컨테이너 USER 접속
docker exec -it --user ue426vulkan carla0913_server_ue426_vulkan bash
1.5 빌드를 위한 필요 패키지 설치
# 1.
sudo add-apt-repository -r "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main"
# 2.
sudo apt-get install build-essential clang-8 lld-8 g++-7 cmake ninja-build libvulkan1 python python-dev python3-dev python3-pip libpng-dev libtiff5-dev libjpeg-dev tzdata sed curl unzip autoconf libtool rsync libxml2-dev git
# 3.
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/lib/llvm-8/bin/clang++ 180 &&
sudo update-alternatives --install /usr/bin/clang clang /usr/lib/llvm-8/bin/clang 180
# 4.
sudo apt-get install xorg-dev
# 5.
## For Python 3
pip3 install --upgrade pip
## For Python 2
pip install --upgrade pip
# 6.
pip install --user setuptools &&
pip3 install --user -Iv setuptools==47.3.1 &&
pip install --user distro &&
pip3 install --user distro &&
pip install --user wheel &&
pip3 install --user wheel auditwheel
1.6 언리얼 엔진 빌드
* 사전 준비
- Github 계정과 Epicgame 연동
(다운로드 권한을 받기 위함) - Github 계정에서 Classic 토큰 발행
(발행된 토큰은 발행 당시를 제외하고는 확인이 불가하므로 주의) - 빌드는 user 폴더에서 진행
(cd ~/)
* 빌드
# 1. USER 폴더로 이동
cd ~/
# 2. Unreal Engine Stable version 4.26.2 다운
git clone --depth 1 -b carla https://github.com/CarlaUnreal/UnrealEngine.git ~/UnrealEngine
## 1) Github ID 입력
## 2) Github token 입력
# 3. Unreal Engine 폴더 이동
cd ~/UnrealEngine
# 4. 빌드
./Setup.sh && ./GenerateProjectFiles.sh && make
* 테스트
# 1. UE4Editor 파일이 있는 폴더로 이동
cd ~/UnrealEngine/Engine/Binaries/Linux
# 2. UE4Editor 실행
./UE4Editor
UE4Editor가 정상적으로 실행되고, 프로젝트 생성 및 열기가 정상적으로 동작하는지 확인
1.7 CARLA 0.9.13 빌드
# 1. 빌드 보조 패키지 설치
sudo apt-get install aria2
# 2. USER 폴더로 이동
cd ~/
# 3. CARLA simulator 0.9.13 다운
git clone --depth 1 -b 0.9.13 https://github.com/carla-simulator/carla
# 4. CARLA 0.9.13 asset 다운
wget http://carla-assets.s3.amazonaws.com/20211112_d5cfa12.tar.gz
# 5. 압축해제할 폴더 생성
cd ~/carla/Unreal/CarlaUE4
mkdir Content
cd Content
mkdir Carla
# 5. CARLA 0.9.13 asset 압축해제
cd ~/
tar -xvzf 20211112_d5cfa12.tar.gz -C ~/carla/Unreal/CarlaUE4/Content/Carla
# 6. 빌드 파일 수정(1/2)
cd ~/carla/Util/BuildTools
vim BuildCarlaUE4.sh
## 첫줄 추가
UE4_ROOT=~/UnrealEngine
wq
# 7. 빌드 파일 수정(2/2)
vim ~/carla/Util/BuildTools/Setup.sh
:433
## 다음의 경로로 수정
XERCESC_REPO=https://archive.apache.org/dist/xerces/c/3/sources/xerces-c-${XERCESC_VERSION}.tar.gz
# 8. 빌드
cd ~/carla
make launch
2. CARLA 0.9.13 클라이언트 빌드
2.1 도커 컨테이너 생성
docker run -itd --privileged --gpus all --name carla0913_client_ue426_vulkan -e NVIDIA_DISABLE_REQUIRE=1 -v /dev/snd:/dev/snd -v $HOME/.Xauthority:/root/.Xauthority -e DISPLAY=$DISPLAY -e NVIDIA_DRIVER_CAPABILITIES=all --device /dev/dri --net host -v /etc/vulkan/icd.d/nvidia_icd.json:/etc/vulkan/icd.d/nvidia_icd.json -v /etc/vulkan/implicit_layer.d/nvidia_layers.json:/etc/vulkan/implicit_layer.d/nvidia_layers.json -v /usr/share/glvnd/egl_vendor.d/10_nvidia.json:/usr/share/glvnd/egl_vendor.d/10_nvidia.json nvidia/vulkan:1.3-470 /bin/bash
2.2 도커 컨테이너 접속
docker exec -it carla0913_client_ue426_vulkan bash
2.3 Ubuntu 기본 패키지 설치
apt-get update &&
apt-get install wget software-properties-common &&
add-apt-repository ppa:ubuntu-toolchain-r/test &&
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key|apt-key add - &&
apt-add-repository "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main" &&
apt-get update
2.4 유저 생성 및 추가
# 1. USER 생성
adduser user
# 2. sudo 및 vim 설치
apt-get update &&
apt-get install sudo &&
apt-get install vim
# 3. USER 정보 추가
vim /etc/sudoers
## root 밑에 추가
user ALL=(ALL:ALL) ALL
# 4. 저장
wq!
# 5. 컨테이너 나가기
exit
# 6. 컨테이너 USER 접속
docker exec -it --user user carla0913_client_ue426_vulkan bash
2.5 클라이언트 빌드를 위한 필요 패키지 설치
# 1.
sudo apt-get install aria2
# 2.
sudo add-apt-repository -r "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-8 main"
# 3.
sudo apt-get install build-essential clang-8 lld-8 g++-7 cmake ninja-build libvulkan1 python python-dev python3-dev python3-pip libpng-dev libtiff5-dev libjpeg-dev tzdata sed curl unzip autoconf libtool rsync libxml2-dev git
# 4.
sudo update-alternatives --install /usr/bin/clang++ clang++ /usr/lib/llvm-8/bin/clang++ 180 &&
sudo update-alternatives --install /usr/bin/clang clang /usr/lib/llvm-8/bin/clang 180
# 5.
sudo apt-get install xorg-dev
# 6.
## For Python 3
pip3 install --upgrade pip
## For Python 2
pip install --upgrade pip
# 7.
pip install --user setuptools &&
pip3 install --user -Iv setuptools==47.3.1 &&
pip install --user distro &&
pip3 install --user distro &&
pip install --user wheel &&
pip3 install --user wheel auditwheel
2.6 CARLA 0.9.13 설치
# 1. CARLA 0.9.13 다운
cd ~/
git clone --depth 1 -b 0.9.13 https://github.com/carla-simulator/carla
# 2. 빌드 파일 수정
vim ~/carla/Util/BuildTools/Setup.sh
:433
## 다음의 주소로 수정
XERCESC_REPO=https://archive.apache.org/dist/xerces/c/3/sources/xerces-c-${XERCESC_VERSION}.tar.gz
wq
# 3. 클라이언트 빌드
cd ~/carla
make PythonAPI ARGS="--python-version=3.8"
# 4. 패키지 설치(1/3)
sudo apt-get install python3-pygame
# 5. 패키지 설치(2/3)
cd ~/carla/PythonAPI/carla/dist
pip3 install carla-0.9.13-cp38-cp38-linux_x86_64.whl
# 6. 패키지 설치(3/3)
cd ~/carla/PythonAPI/examples
python3 -m pip install -r requirements.txt
# 7. 라이브러리 빌드
cd ~/carla
make LibCarla
2.7 클라이언트 테스트
클라이언트 테스트를 위해서는 CARLA 서버가 동작 중이어야 한다(CARLA 서버 make launch 후 편집기에서 'Play'을 눌러 동작시켜야 함)
cd ~/carla/PythonAPI/examples
# Terminal A
python3 spawn_npc.py
# Terminal B
python3 dynamic_weather.py
# Terminal C
python3 generate_traffic.py
* 빌드 에러 해결
- PUBKEY_ERROR
# 없는 키를 다음의 명령어로 모두 추가
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys [ERROR에 표시된 Key 번호]
## 예시
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 15CF4D18AF4F7421
'Etc > CARLA Simulator' 카테고리의 다른 글
[CARLA Simulator] Instance Segmentation Sensor 사용법 (0) | 2023.03.21 |
---|---|
[CARLA Simulator] 커스텀 애니메이션 적용 (0) | 2023.03.21 |
[CARLA Simulator] CARLA 0.9.14 Linux Build with Docker on Ubuntu 20.04.05 LTS (0) | 2023.02.18 |
[CARLA Simulator] 클라이언트 개발 환경 세팅 (0) | 2023.02.02 |
[CARLA Simulator] CARLA 0.9.11 Linux Build with Docker on Ubuntu 20.04.05 LTS (0) | 2023.02.02 |
Comments