MMSEG

설치

설치 환경

  • OS: Ubuntu-22.04 LTS (WSL)
  • CPU: Intel i9-9900k
  • GPU: RTX 2080 8G
  • RAM: 32G
  • CUDA: 11.8
  • cuDNN: v8.9.7
  • 날짜: 2024.05.14.

MMSeg 설치

  1. Conda 환경 생성
conda create --name mmseg python=3.8 -y
conda activate mmseg
  1. pytorch 설치
  • pytorch 설치 참고: Start Locally | PyTorch

  • GPU: conda install pytorch torchvision -c pytorch

  • CPU: conda install pytorch torchvision cpuonly -c pytorch

# pytorch 2.1 버전 설치
conda install pytorch==2.1.0 torchvision==0.16.0 torchaudio==2.1.0 pytorch-cuda=11.8 -c pytorch -c nvidia
# 설치 확인
$ python
import torch
torch.cuda.is_available()
>> True
  1. MMCV 설치 mmcv 설치 참고: Installation — mmcv 2.2.0 documentation mim 을 사용하여 mmcv 설치
pip install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0"
 
# 설치확인
mim list
>>
Package    Version    Source
---------  ---------  --------------------------------------
mmcv       2.2.0      https://github.com/open-mmlab/mmcv
mmengine   0.10.4     https://github.com/open-mmlab/mmengine

+ MMCV 설치 이슈

  • error: MMCV==2.2.0 is used but incompatible. Please install mmcv>=2.0.0rc4.
  • mim uninstall mmcv 설치된 mmcv를 삭제
  • mim install mmcv==2.1.0 설치
  • 이슈관련

  1. MMSegmentation 설치 git 다운로드 및 설치
git clone -b main https://github.com/open-mmlab/mmsegmentation.git
cd mmsegmentation
pip install -v -e .

설치 확인

Inference Test

사전 weight 네트워크 구성 파일을 다운로드

mim download mmsegmentation --config pspnet_r50-d8_4xb2-40k_cityscapes-512x1024 --dest .

아래 명령어를 통해 Inference Demo 코드 실행

python demo/image_demo.py demo/demo.png pspnet_r50-d8_4xb2-40k_cityscapes-512x1024.py pspnet_r50-d8_512x1024_40k_cityscapes_20200605_003338-2966598c.pth --device cuda:0 --out-file result.jpg

+ 데모 실행 이슈 추가 라이브러리 설치 필요

pip install ftfy
pip install regex

+grid+grid

Video Test

사전 준비한 비디오와 아래 명령어를 통해 실행

python demo/video_demo.py sample_video.MP4 pspnet_r50-d8_4xb2-40k_cityscapes-512x1024.py pspnet_r50-d8_512x1024_40k_cityscapes_20200605_003338-2966598c.pth --device cuda:0 --output-file result.mp4 --output-width 640 --output-height 480

+ video_demo.py 파일 수정

# video_demo.py
 
# 실시간 결과 안보이게
# show=False 파라미터 추가
94:: draw_img = show_result_pyplot(model, frame, result, show=False)
 

참고


DeepLearningSegmentation