본문 바로가기

Programming

OpenPose로 motion estimation, 모션인식

728x90
반응형

얼마 전 야구계에 있는 동생이 AI로 선수의 동작분석에 관심이 있다는 이야기를 했고,

나는 AI 모션인식에 관심이 있다고 했더니, 프로그램 만들어볼 수 있겠냐고 했다.

... 나도 완전 쌩 초보이지만...  그래도 관심이 있으니 해보겠다는 도전적인 자세로!!

시작해본다.!!

내가 시도해본 라이브러리는 openpose를 사용했다.

 

그런데! 환경설정하는데만 이틀 밤을 꼬박 새웠다는... 인터넷 웹사이트 검색만 100개 넘게 한 거 같은데.

이번 포스팅은 내가 찾았던 그 포스팅을 정리해 놓은 것이다.

본격 포스팅에 앞서 나는 Mac 유저이다. 즉, Mac을 활용하여 OpenPose motion estimation을 했던 것임

 

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다." 

1. 아나콘다(Anaconda), 텐서플로우(Tensorflow) 환경 설정

(1) 방법 1

 

Anaconda에 Tensorflow 설치, 사용하기

# Anaconda에 Tensorflow 설치하기 지난 시간에 이어서 써보는 아나콘다 입문 2단계! 텐서플로우를 설치해보면서 아나콘다의 사용법을 익혀보는 시간을 가져봅시다. 1. 가상 환경 생성하기 아나콘다를

zvi975.tistory.com

(2) 방법 2

 

[Mac] 아나콘다 환경에서 텐서플로 설치하기

아나콘다 환경에서 텐서 플로를 설치하는 방법입니다. 아나콘다 설치하는 방법은 아래 링크에서 참고하실 수 있습니다. https://lhh3520.tistory.com/369 Mac에서 아나콘다 설치하는 방법 머신 러닝을 배�

lhh3520.tistory.com

 

2. Openpose 환경 구성

Openpose 환경구성을 위한 youtube 영상 링크

 - 여기까지 하면, 아나콘다 가상 환경이 필요할 것이다. 가상 환경 들어가는 방법은 별도로 아래에 기록해둔다.

$ conda activate tfpose

$ conda deactivate

 

 

3. OpenCV 환경 구성

 

opencv3 install anaconda

opencv  설치가 항상 여러곳에서 문제가 된다... 이번에  mac 설치 + anaconda opencv3 install in anaconda : MacOSX Sierra REF : http://stackoverflow.com/questions/41873941/cant-install-opencv3-on-ana..

windowx.tistory.com

 

4. C++ & Swig 설치

 

ildoonet/tf-pose-estimation

Deep Pose Estimation implemented using Tensorflow with Custom Architectures for fast inference. - ildoonet/tf-pose-estimation

github.com

 

여기까지 하면, Pose extimation의 환경 구성은 된 건데, 실행해보면 에러 메시지가 뜬다. 

그 이유는 Tensorflow 2.0버전이 깔려있기 때문이다. 여러 사이트를 검색해본 결과 Tensorflow 1.4 버전으로

시도해보라고 해서 아래 링크와 같이 Tensorflow를 제거 후 다시 설치했다.

 

5. Tensorflow 재설치 방법

 

python - about openpose execution

I want to run OpenPose on Mac I browsed various sites and built an environment, but I got an error and I can not execute it ModuleNotFoundError: No module named 'tensorflow.contrib' Tried I tried installing tensorflow with pip install, but I can't solve it

www.tutorialfor.com

 

6. Tensorflow 버전 확인 방법

$ python

> import tensorflow as tf

> tf.__version__

 

최종 실행 방법

모든 설치와 환경 구성이 완료되면, 바탕화면(나는 바탕화면에 설치했음)에서 tf-openpose폴더에서 run.py를 실행하여 구동한다.

실행은 Terminal에서 하면 된다.

아래를 따라 해 보시라.

https://coupa.ng/b2oBsr

 

Apple 2020년 맥북 에어 13

COUPANG

www.coupang.com

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다." 

 

<실행방법>

terminal에서 아래 입력

cd Desktop/tf-openpose 로 이동 run.py 있는 디렉토리에서 실행

conda activate tfpose 로 가상 환경에 들어감

아래를 입력하고 엔터 치고 잠시 기다리면 아래 그림과 같은 결과가 나옴

($ 이후부터 입력해야 하는 거 아시죠? 혹시 모르셨다면, 저도 처음에는 $부터 작성했었음... ㅋ)

$ python run.py --model=mobilenet_thin --resize=432x368 --image=./images/p1.jpg

 

<결과 화면>

3D pose estimation (2차원 화면으로 3차원 추정)
3차원 추정 데이터 값
Openpose를 이용한 투구 자세 motion추출

나는 3차원으로 데이터를 뽑아내는 라이브러리를 추가했다.

이것도 추후에 별도 포스팅하기로 하겠다. 

이 라이브러리를 쓰지 않고 2차원 화면에 대한 데이터만 추출하겠다고 하면

마지막 사진의 결과가 바로 나온다.

사진의 해상도에 따라서 결과에 영향이 있는데 사진을 자세히 보면 팔 부분에 해상도가 떨어져서

결과도 좋지 않게 나왔으나, 일단 결과는 나온다는 것을 본 것이니 시작할 수 있는 환경 구성은 됐다고 봐도 되겠다.

 

일단 이틀 밤을 꼬박 새우면서 필요한 정보의 링크를 기록해둔 것이다.

다음에 기회가 되면 하나하나 짚어가면서 포스팅할 기회가 오겠지.

 

 

728x90
반응형