라즈베리파이를 이용한 프로젝트를 진행하던 중 인물의 정면사진이 필요하게 되었다.
이 과정에서 알게된 인물의 정면사진 얻는 법을 포스팅 하도록 하겠다.
이번 포스팅은 openface docker가 우분투에 이미 설치되었다는 가정하에 시작한다.
이번 포스팅에서 진행하는 과정은 아래 사진의 Input Image ~ Crop 까지이다.
(정확히는 Crop한 사진을 Ubuntu에 저장하는 것까지)
(source : https://cmusatyalab.github.io/openface/)
1. docker로 raw image dataset 이동시키기
가장 먼저 이전 포스팅을 참고하여 Ubuntu에서 openface docker로
정면사진을 얻고자 하는 raw image 폴더를 이동시켜 준다.
참고 : http://jayharvey.tistory.com/9
나의 경우 openface 디렉토리는 위와같이 구성되어 있고
/openface/KangHoDong 폴더 내에는 위와 같이 30여장의 사진을 복사시켜 놓았다.
그런 다음 raw image를 변환시켜 얻은 aligned image를 저장할 Kang2라는 폴더를 만든다.
/openface/Kang2/
2. openface script를 이용하여 aligned image dataset 얻기
openface usage에 따라 다음과 같은 명령을 입력한다.
명령어를 간단히 까보면 다음과 같다.
./util/align-dlib.py ./KangHoDong/. align outerEyesAndNose ./Kang2/ --size 96
./util/align-dlib.py ==> . 은 현재 디렉토리(openface) 내의 util/align-dlib.py를 실행한다는 의미.
./KangHoDong/. ==> 앞의 . 은 현재디렉토리를 의미하고 뒤의 . 은 KangHoDong 폴더 내의 "모든 이미지 파일들"을 의미.
./Kang2/ ==> . 은 현재 디렉토리를 의미하고 Kang2는 aligned images를 저장할 폴더를 의미.
확인해보면 다음과 같이 Kang2 폴더에 aligned images가 저장된 것을 확인할 수 있다.
docker내에서 aligned images를 까보고 싶어서 다음과 같이 여러 명령을 실행하였지만 듣지를 않는다.
찾아보니 docker내에서는 image파일들을 열어볼 수 없는듯 하다.
eog -f User.1.1.png
feh User.1.1.png
등등 여러명령어를 실행해봤지만 다 안먹힘....;
아시는 분은 댓글 부탁드립니다 ㅠ
3. openface docker 내의 폴더를 host ubuntu로 옮기기
docker 내에서 image 파일들을 열어볼 수 없어 ubuntu로 옮겨서 확인해보기로 한다.
1. 에서 실행한 명령어를 위치만 바꿔주어 실행하면 된다.
(단, docker내에서가 아닌 ubuntu terminal에서 실행해야 함)
이전 포스팅 참고 : http://jayharvey.tistory.com/9
우분투에서 이미지 폴더를 열어본 결과이다.
내가 뭘 잘못한 것일수도 있으나 원본사진이 측면을 바라보고 있는 얼굴 사진의 경우
100% 정면으로 위치하도록 할 수는 없나보다.
(중간 중간 이미지 전처리를 잘못하여 송지효, 유민상의 얼굴도 보인다..;)
openface의 자세한 원리는 공식 document를 참조하길 바람.
https://cmusatyalab.github.io/openface/
Ubuntu 에서 Docker 로 폴더 or 파일 옮기기(복사하기) (1) | 2018.05.06 |
---|---|
어떻게 이미지 데이터를 모을 것인가? (Data Gathering) (0) | 2018.05.05 |
댓글,
jayharvey
머신러닝/딥러닝 관련 글을 포스팅할 예정입니다 :)