노트와 노트

Mask R-CNN 환경 구성 : 로컬 PC, 코랩(google colab) 본문

Machine Learning & DeepLearning

Mask R-CNN 환경 구성 : 로컬 PC, 코랩(google colab)

gellygelly 2022. 1. 10. 22:18

작년 초에 Mask R-CNN을 이용해서 Image Segmentation을 진행하면서 Mask R-CNN 환경 구성에 대해 정리해뒀다. 사실 다른 연구원들에게 보여줄 목적으로 로컬 PC와 코랩에서 각각 환경 구성을 진행할 수 있도록 상세하게 적어둔 글이었는데 올해 또 Mask R-CNN을 이용해 학습 모델을 만들어야 할 일이 생겨서 해당 문서를 보면서 정말 많은 도움을 받았다. 생각난 김에 블로그에도 올려 두면 편하겠다는 생각이 들어서 적어 두려고 한다. 

 

 

※ 아래 글에서 명시된 버전 외의 타 버전을 이용한 테스트는 해보지 않아 동작 여부 모름


<Mask R-CNN 환경 구성 가이드 - 로컬 PC>

 

① Anaconda 설치 및 환경 변수 설정 - 설치되어 있을 시 생략

  • 설치경로\Anaconda3
  • 설치경로₩Anaconda3₩Scripts
  • 설치경로₩Anaconda3₩Library₩bin

② CUDA & CUDNN 설치

 

CUDA Toolkit

CUDA Toolkit Develop, Optimize and Deploy GPU-Accelerated Apps The NVIDIA® CUDA® Toolkit provides a development environment for creating high performance GPU-accelerated applications. With the CUDA Toolkit, you can develop, optimize, and deploy your appl

developer.nvidia.com

※ 반드시 CUDA 버전과 CUDNN 버전이 호환되어야 하므로, 'CUDNN for CUDA 9.0' 을 설치해야 합니다

 

NVIDIA cuDNN

NVIDIA cuDNN The NVIDIA CUDA® Deep Neural Network library (cuDNN) is a GPU-accelerated library of primitives for deep neural networks. cuDNN provides highly tuned implementations for standard routines such as forward and backward convolution, pooling, nor

developer.nvidia.com

 

1) 다운로드한 CUDNN 파일의 압축 풀기

2) 압축 해제한 폴더 내의 파일들을 복사한 후 CUDA가 설치된 경로(별도로 설치 위치를 지정하지 않은 경우, 윈도우에선 기본적으로 ‘C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0’ 이 경로에 설치되어 있음)에 붙여넣기

3) ‘대상 폴더에 이름이 같은 파일이 있다’는 문구가 뜨면 ‘대상 폴더의 파일 덮어쓰기’ 클릭

 

  • cudnn 시스템 환경변수 설정 : CUDA 경로 지정 

(C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v9.0)

 

 

③ Anaconda 가상환경 생성

 

1) Anaconda prompt 실행 : Windows 검색기에 anaconda prompt 검색

2) conda create -n MaskRCNN python=3.6 pip (*사용할 가상환경 이름 설정 )

3) proceed ([y]/n) ? -> y 선택

4) conda activate MaskRCNN 

5) MaskRCNN 폴더로 이동 -> cd C:\Users\user\anaconda3\envs\MaskRCNN

 

④ Dependency file 설치

 - 아래 requirements.txt 파일 내의 라이브러리 모두 설치

Mask_RCNN 'requirements.txt' 파일 내용

 -  tensorflow, keras, h5py, scikit-image 의 경우 버전을 아래와 같이 특정 버전을 명시해서 설치해야 오류없이 프로그램 구동 가능함

  • pip install tensorflow-gpu==1.5 (*python 3.8 버전에선 tensorflow 1.x대 버전 지원 X, Anaconda 가상환경 생성 시 반드시 python 3.6 버전으로!) 
  • pip install keras==2.2.0
  • pip install h5py==2.10.0
  • pip install scikit-image==0.16.2

- 그 외 라이브러리는 버전 명시 없이 설치

  • pip install numpy scipy cython Matplotlib Pillow jupyter pandas
  • pip install opencv-python ipython

⑤ Mask R-CNN 깃허브 파일 로드

 

1) Github 내 파일을 로드하기 위해 pip git 명령어를 통해 git 설치

  • conda install -c anaconda git

2) Mask_RCNN.git 다운로드

 

GitHub - matterport/Mask_RCNN: Mask R-CNN for object detection and instance segmentation on Keras and TensorFlow

Mask R-CNN for object detection and instance segmentation on Keras and TensorFlow - GitHub - matterport/Mask_RCNN: Mask R-CNN for object detection and instance segmentation on Keras and TensorFlow

github.com

3) Pycocotools 다운로드: Visual C++ 2017 Build tools 없으면 설치 필요 (https://visualstudio.microsoft.com/ko/thank-you-downloading-visualstudio/?sku=BuildTools&rel=15)

 

4) imgaug (이미지 처리를 위한 라이브러리) 다운로드

 

GitHub - aleju/imgaug: Image augmentation for machine learning experiments.

Image augmentation for machine learning experiments. - GitHub - aleju/imgaug: Image augmentation for machine learning experiments.

github.com

  • pip install imgaug

 

5) 완료! 


<Mask R-CNN 환경 구성 가이드 - 코랩(Colab)>

 

코랩을 통한 환경 구성은 로컬 PC에 환경 구성 하는 것보다 훨씬 간단하다. 대신 매번 환경 구성을 해주어야 하고, 코랩 연결이 얼마 안 가 끊어져서 학습을 오래 시킬 수 없다는 단점이 있지만 로컬 PC의 그래픽 카드 성능이 좋지 않은 경우 괜찮은 것 같다. 

 

※ 경로 부분은 각자 경로에 맞게 수정해서 사용해주세요! 

 

① 구글 드라이브 접속 -> Mask R-CNN 환경을 구성할 폴더를 생성한 뒤, 우클릭 혹은 ‘내 드라이브’ 클릭을 통해 .ipynb 파일 생성

② colab에 Mask R-CNN Git clone 하기

 - colab에 위 명령어를 입력해서 Mask R-CNN git clone을 진행합니다. 

 - 위 명령어를 입력하면 아래 이미지와 같이 'MaskRCNN' 폴더가 생성됩니다. 

③ Mask R-CNN 구동에 필요한 라이브러리 설치(Tensorflow 1.x 버전 사용) 

 

 - Mask R-CNN git clone을 완료했으면 Mask R-CNN 실행에 필요한 라이브러리를 설치합니다. 

 - 텐서플로 2.x 버전은 작동하지 않아 반드시 위 명령어를 이용해 이미 설치된 텐서플로 2.x 버전을 삭제 후 1.x 버전으로 재설치를 진행해야 'MaskRCNN/samples/' 경로에 있는 코드가 정상 작동합니다. 

  • !pip install tensorboard==1.15.0 tensorflow==1.15.0 tensorflow-estimator==1.15.1 tensorflow-gpu==1.15.2 tensorflow-gpu-estimator==2.1.0 Keras==2.2.5 Keras-Applications==1.0.8 Keras-Preprocessing==1.1.0

 

④ h5py 설치

 

- 학습 모델 저장 및 불러오기를 위한 h5py 2.10.0 버전으로 설치해주어야 오류가 발생하지 않습니다. (3.x 버전은 오류 발생) 

  • pip install h5py==2.10.0

 

⑤ setup.py 파일 설치 

 

- 아래 명령어를 이용해 setup.py 파일을 MaskRCNN 폴더 내에 설치

  • %cd /content/drive/MyDrive/Study/MaskRCNN
  • !python setup.py install
  • %cd ..

 

⑥ cocoapi 설치

 

-아래 명령어를 통해 cocoapi를 설치

-설치 완료 후 cocoapi 폴더는 'MaskRCNN' 폴더 내에 위치해야 함!

 

⑦ colab에 google drive 마운트하기

 

  • from google.colab import drive
  • drive.mount('/content/gdrive')

 

⑧ 완료~!!