SwinTransformer / Swin-Object Detection 개발환경 설정(CUDA 11.0)

1. CUDA 11.0.2 설치

CUDA 버전은 설치할 라이브러리의 호환성에 맞추어 잘 선택.(pytorch prebuild 버전이 홈페이지 올라와있는 11.1로 설치했다면 더 간편했을 것. 이 게시글에서는 11.0로 설치했음.)

  • CUDA Download (.run 파일로 설치하는 것이 가장 편하다)

$ wget http://developer.download.nvidia.com/compute/cuda/11.0.2/local_installers/cuda_11.0.2_450.51.05_linux.run

  • 그래픽 드라이버 체크 해제 설치

    $ sudo sh cuda_11.0.2_450.51.05_linux.run

  • CUDA 환경변수 설정

    $ sudo gedit ~/.bashrc

export PATH=/usr/local/cuda-11.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-11.0/lib64:$LD_LIBRARY_PATH
export CUDA_HOME=/usr/local/cuda-11.0
export FORCE_CUDA="1"

$ source ~/.bashrc
$ sudo reboot

2. CUDNN 8 설치

3. Swin-Transformer-Object-Detection 개발환경 설정

4. 데모 코드 실행

  • cascade_mask_rcnn_swin_base 데모

    $ python demo/image_demo2.py demo/demo.jpg configs/swin/cascade_mask_rcnn_swin_base_patch4_window7_mstrain_480-800_giou_4conv1f_adamw_3x_coco.py checkpoint/cascade_mask_rcnn_swin_base_patch4_window7.pth

데모 실행 시 mmcv maximum version(1.4.0)을 초과했다는 에러발생 시, "Swin root/mmdet/init.py" 파일의 20 line mmcv_maximum_version 을 1.5.0으로 변경해 준다.
(site-packages의 mmdet버전과, swin 로컬 mmdet 버전 차이로 인해 발생하는 에러)

  • cascade_mask_rcnn_swin_base 데모 실행 결과

5. Apex 설치

  • Apex 미설치 시 데모 및 트레이닝 중 Apex is not installed 라고 계속 출력된다

    $ cd ~/workspace/
    $ git clone https://github.com/NVIDIA/apex
    $ cd apex
    $ sudo apt-get install build-essential
    $ pip install -v --disable-pip-version-check --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./
    $ cd ~/workspace/Swin-Transformer-Object-Detection/
    $ python
    $ >>> import apex
    $ >>> quit()

  • apex 동작 확인(경고 문구가 안나오면 apex 설치된 것)

    $ python demo/image_demo2.py demo/demo.jpg configs/swin/cascade_mask_rcnn_swin_base_patch4_window7_mstrain_480-800_giou_4conv1f_adamw_3x_coco.py checkpoint/cascade_mask_rcnn_swin_base_patch4_window7.pth

좋은 웹페이지 즐겨찾기