Python 얼굴 인식 을 위한 라이브러리 설치 

지극히 개인적인 호기심으로 python을 사용해서 이미지 분석을 해 보도록 하겠습니다. 그 처음으로 얼굴 인식에 대해서 살펴보겠습니다. 

오늘은 그 처음으로 기본 설치를 해 보겠습니다. 


windows 설치를 기반으로 작성했습니다.


개발 환경 설정

개발환경은 

Python 3,6 (Anaconda3), OpenCV, Dlib 가 기준이고 그 외에 부가적으로 필요한 라이브러리 입니다. 

솔직히 대부분의 설치는 블로그를 통해서 따라한 것 뿐이라 다른 분의 블로그를 고대로 옮겨 적는 것은 의미가 없다 생각해서 가장 많이 참고한 부분의 링크를 정리할 것이며, 그 이외에 설치를 하면서 잘 안된 부분 및 오류 해결부분 중심으로 기록할 것입니다. 

사전에 좋은 글을 써 주신 능력자 분들, 이자리를 빌어 다시한 번 감사드립니다. 



사실 anaconda 만 설치를 잘 하면 나머지는 아주 쉽게 설치를 할 수 있습니다. 


anaconda란?

간단하게 python의 특성화된 패키지라고 정의하고 싶습니다. python을 기반으로 머신러닝, 데이터 사이언스 를 위해 가장 많이 사용되는 패키지들을 묶어서 배포하고 있으며 conda라는 의존성 패키지는 다양한 패키지를 제공하고 있어 python 기반 개발시 많이 사용하고 있는 플랫폼 입니다. 


아나콘다 설치 사이트, 원도우용 파일을 다운받은 후에 설치하면 된다. 
https://anaconda.org/


만약 기존에 python이 설치되어 있다면, 관련 환경변수를 변경해야 한다.

\Anaconda3, 
\Anaconda3\Scripts, 
\Anaconda3\Library\bin 


출처: http://dwfox.tistory.com/67 [DWFOX]
\Anaconda3, 
\Anaconda3\Scripts, 
\Anaconda3\Library\bin 

위 세 개의 경로를 환경변수에 추가해 준다.

conda 업데이트 명령 

> conda update conda
* anaconda에 python이 포함되어 있으므로 따로 python을 설치할 필요는 없다. 


virtualenv 설정 

로컬 PC를 사용하는 개발자는 프로젝트의 특성에 따라서 설치되는 라이브러리들을 구분할 필요가 있다. 타 프로젝트와 충돌되는 상황을 방지하고 프로젝트를 위해 설치한 라이브러리를 관리할 수 있다. 

* 작업을 위한 방을 하나 만든다고 생각하면 된다. 


새로운 개발환경 생성
> conda create -n yourenvname python=x.x anaconda

현재 활성화되어 있는 개발환경이 무엇인지 확인 
 > conda info -e

개발환경 삭제
 > conda remove envname

개발환경으로 들어가기
 > activate envname
 (반대) deactivate


* 윈도우 환경에서 새 개발환경에 들어가면 아래처럼 보인다.

* 파이썬을 처음 개발하는 사람 (나같은)은 알겠지만 개발의 반은 라이브러리 설치이다. 이번 이미지 학습도 어마어마하게 많은 라이브러리를 설치하게 되므로 개발 환경 관리를 잘 하는 게 중요하다 



윈도우 환경에서 opencv 3, Dlib 설치하는 방법 

opencv란?

Open Source Computer Vision Library
영상 처리 및 컴퓨터 비전 관련 오픈 소스, 기계 학습과 관련된 전통적인 알고리즘 뿐 아니라 최첨단 알고리즘까지 갖추고 있다. 이것은 얼굴 인식, 객체의 3D모델 추출, 좌표 생성, 이미지 스티칭 영상 검색, 안구 운동 추적 등 다양한 응용 분야에 이용된다. 

공식 사이트 
https://opencv.org/


dlib 란?

이미지 처리 및 기계 학습, 얼굴인식 등을 할 수 있는 c++ 로 개발된 고성능의 라이브러리 

opencv 와 dlib 는 듣기엔 같은 기능 같으나 두 가지 라이브러리를 함께 사용하는 것이 좋다. 얼굴인식에 관한 dlib 가 강력한 기능을 보이고 있으며 (99% 이상이라 한다..) dlib 의 기능을 사용하기 위한 이미지 처리에 대해서는 opencv 가 많은 역할을 한다. 
(어디까지 필자의 생각이다) 



scikit-image 추가 설치 

이것은 파이썬에서 이미지를 가지고 다양한 처리를 할 수 있는 도구이다. 
예를들어 명함, 밝기를 바꾼다는지 하는 간단한 것부터 매우 심호하고 정교한 부분까지 포함한다.

* anaconda 설치시 기본으로 제공된다. 


설치 관련 링크
https://www.learnopencv.com/install-opencv-3-and-dlib-on-windows-python-only/


conda 를 통해서 opencv 설치

이렇게 명령어를 주면 패키지 다운 명령어가 뜬다.
> anaconda show menpo/opencv3

가능한 패키지를 설치하자
> conda install --channel https://conda.anaconda.org/menpo opencv3



dlib 설치

dlib 는 c++ 로 개발된 라이브러리이다. 그래서 일반적으로 install 을 통한 설치는 되지 않는다. 그래서 해당 파일을 다운받은 뒤에 컴파일 후 설치하는 방법으로 해야한다.

사전 설치 
cmake, visual studio 2015 

cmake ?
c언어 프로그램을 빌드해 주는 프로그램, 설치 후에 cmd 창에서 cmake 명령어가 실행될 수 있도록 환경변수 등록을 반드시 해야 한다. 

visual studio 2015
c 프로그램을 빌드하는 프로그램 (cmake가 vs2015를 사용해서 컴파일한다.) dlib는 현재 버전으로 2015 이상의 버전 사용시 설치가 되지 않는다. 

사전 설치 이후 dlib 파일을 github에서 다운받은 뒤에 해당 폴더에서 
> python setup.py install



conda 로 설치시 권한문제가 발생할 경우 (Permission denied)

>conda config --set ssl_verify false



opencv 관련 배포사이트, 예제를 볼 수 있는 곳

http://opencv-python-tutroals.readthedocs.io/en/latest/py_tutorials/py_objdetect/py_face_detection/py_face_detection.html

dlib 관련 공식 사이트, 예제가 많이 있다.

http://dlib.net/

+ Recent posts