mmpose 설치

조재훈·2023년 7월 6일

설치

https://mmpose.readthedocs.io/en/latest/installation.html
위 링크를 따라서 진행하는데 나의 경우 도커를 사용할 것이다. conda로 구성하는 가상환경과 설치하는 패키지(python3.8, pythorch 등)은 docker로 대체한다.

  • 아래의 명령어들은 Dockerfile에 이미 설치하도록 명시하여 반영되어있으므로 생략한다
conda create --name openmmlab python=3.8 -y
cond activate openmmlab

# GPU Platform
conda install pytorch torchvision -c pytorch
  • MMEngine, MMCV, MIM 설치
pip3 install -U openmim
mim install mmengine
mim install "mmcv>=2.0.0"
  • MMDetection 설치
mim install "mmdet>=3.0.0"
  • git 설치
    : 컨테이너에는 git이 깔려있지 않다. git부터 설치해주자
apt install git
  • MMPose 설치
git clone https://github.com/open-mmlab/mmpose.git
cd mmpose
pip3 install -r requirements.txt
pip3 install -v -e .
mim install "mmpose>=1.0.0"
  • 설치 확인
mim download mmpose --config td-hm_hrnet-w48_8xb32-210e_coco-256x192  --dest .
python3 demo/image_demo.py \
    tests/data/coco/000000000785.jpg \
    td-hm_hrnet-w48_8xb32-210e_coco-256x192.py \
    td-hm_hrnet-w48_8xb32-210e_coco-256x192-0e67c616_20220913.pth \
    --out-file vis_results.jpg \
    --draw-heatmap

에러발생

https://stackoverflow.com/questions/55313610/importerror-libgl-so-1-cannot-open-shared-object-file-no-such-file-or-directo
일단 아래 명령어를 실행한다.

apt-get update && apt-get install ffmpeg libsm6 libxext6  -y

아예 이미지 빌드할 때 위 문구를 RUN으로 추가하자

RUN apt-get update && apt-get install ffmpeg libsm6 libxext6  -y
  • 다시 시도
python3 demo/image_demo.py \
    tests/data/coco/000000000785.jpg \
    td-hm_hrnet-w48_8xb32-210e_coco-256x192.py \
    td-hm_hrnet-w48_8xb32-210e_coco-256x192-0e67c616_20220913.pth \
    --out-file vis_results.jpg \
    --draw-heatmap

vis_results.jpg 가 생성되었다.

리눅스 GUI 설치

https://techcommunity.microsoft.com/t5/modern-work-app-consult-blog/running-wsl-gui-apps-on-windows-10/ba-p/1493242

export DISPLAY="`grep nameserver /etc/resolv.conf | sed 's/nameserver //'`:0"
export DISPLAY="`sed -n 's/nameserver //p' /etc/resolv.conf`:0"
export DISPLAY=$(ip route|awk '/^default/{print $3}'):0.0
echo $DISPLAY
echo xfce4-session > ~/.xsession
  • Chromium Dev 설치
sudo add-apt-repository ppa:saiarcot895/chromium-dev
sudo apt-get update
sudo apt-get install chromium-browser
  • gedit 설치
sudo apt install gedit
gedit
  • x11-apps 설치
sudo apt install x11-apps
xeyes
xcalc

도커-호스트간 파일 이동

https://losskatsu.github.io/it-infra/docker04/#13-%ED%98%B8%EC%8A%A4%ED%8A%B8---%EC%BB%A8%ED%85%8C%EC%9D%B4%EB%84%88-%ED%8C%8C%EC%9D%BC-%EC%A0%84%EC%86%A1

  • 컨테이너에서 호스트로 이동
    : 아래와 같은 양식으로 입력한다
    : 컨테이너를 실행시킨 상태에서 호스트에서 명령을 입력해야한다
docker cp <컨테이너ID>:<파일경로> <호스트 경로>
docker cp 19893a18fbed:/mmpose/vis_results.jpg ~/develop/mmpose

파일이 잘 옮겨진 것을 볼 수 있다

  • 파일 열어보기
explorer.exe .

데모 실행

  • 2D Human Pose Top-Down Video Demo
python3 demo/topdown_demo_with_mmdet.py \
    demo/mmdetection_cfg/faster_rcnn_r50_fpn_coco.py \
    https://download.openmmlab.com/mmdetection/v2.0/faster_rcnn/faster_rcnn_r50_fpn_1x_coco/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth \
    configs/body_2d_keypoint/topdown_heatmap/coco/td-hm_hrnet-w32_8xb64-210e_coco-256x192.py \
    https://download.openmmlab.com/mmpose/v1/body_2d_keypoint/topdown_heatmap/coco/td-hm_hrnet-w32_8xb64-210e_coco-256x192-81c58e40_20220909.pth \
    --input tests/data/posetrack18/videos/000001_mpiinew_test/000001_mpiinew_test.mp4 \
    --output-root=vis_results/demo --show --draw-heatmap

에러발생

qt.qpa.xcb: could not connect to display
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "/usr/local/lib/python3.8/dist-packages/cv2/qt/plugins" even though it was found.
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: xcb.

일단 컨테이너에서 GUI를 띄우는건 좀 나중에 하고 출력기능을 빼자
: --show 삭제

python3 demo/topdown_demo_with_mmdet.py \
    demo/mmdetection_cfg/faster_rcnn_r50_fpn_coco.py \
    https://download.openmmlab.com/mmdetection/v2.0/faster_rcnn/faster_rcnn_r50_fpn_1x_coco/faster_rcnn_r50_fpn_1x_coco_20200130-047c8118.pth \
    configs/body_2d_keypoint/topdown_heatmap/coco/td-hm_hrnet-w32_8xb64-210e_coco-256x192.py \
    https://download.openmmlab.com/mmpose/v1/body_2d_keypoint/topdown_heatmap/coco/td-hm_hrnet-w32_8xb64-210e_coco-256x192-81c58e40_20220909.pth \
    --input tests/data/posetrack18/videos/000001_mpiinew_test/000001_mpiinew_test.mp4 \
    --output-root=vis_results/demo

  • 호스트로 이동
docker cp 19893a18fbed:/mmpose/vis_results/demo/000001_mpiinew_test.mp4 ~/develop/mmpose


profile
맨땅에 헤딩. 인생은 실전.

0개의 댓글