우분투 OpenCV 3.1.0 및 Python 3.5 설치
Ubuntu 16.04
OpenCV 3.1.0 버전 Python 3 이상과 호환.
Python2.7.12 버전: 터미널 파이썬 실행 버전(우분투 기본 설치 버전)
Python3.5.2 버전: python3 명령을 통해 접근 할 수 있음.
두개를 동시에 사용해야 하므로, 동작 안하는 프로그램이 있을 수 있다.
이 문제는 env 환경 구성에서 python 정보를 직접 입력해 해결 하면된다.
1 단계 : opencv 의존성 패키지 설치
터미널 열기 ctrl + art + t
sudo apt-get update
sudo apt-get upgrade
개발 도구 설치
sudo apt-get install build-essential cmake git pkg-config
pkg-config: 패키지 설정 파일.
git : GitHub OpenCV 프로젝트 사이트 소스 코드 다운로드
cmake: 빌드 구성
OpenCV는 JPEG, PNG, TIFF등 디스크에 있는 이미지 파일을 로드 할 수 있다.
디스크에 있는 이미지 파일을 로드 하려면 이미지 I/O 패키지가 필요함.
sudo apt-get install libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev
로드 된 후 모니터 화면에 보여주기 위해서는 highgui 모듈, GUI에 의존하는 GTK 개발 라이브러리 필요.
sudo apt-get install libgtk-3-dev
OpenCV 비디오 스트림 처리, 개별 프레임 접근 하기 위해 다음 라이브러리 설치
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
OpenCV 내부의 메트릭스 기능과 같은 다양한 기능을 최적화하는 라이브러리 설치
sudo apt-get install libatlas-base-dev gfortran
파이썬 버전 설치
sudo apt-get install python2.7-dev python3.5-dev
2 단계: OpenCV 소스코드 다운로드
https://github.com/Itseez/opencv/archive/3.1.0.zip
https://github.com/Itseez/opencv_contrib/archive/3.1.0.zip
cd ~
wget -O opencv.zip https://github.com/Itseez/opencv/archive/3.1.0.zip
unzip opencv.zip
opencv_contrib repo 설치, 설치 안 할 경우 표준 키보드의 키 위치를 감지 및 OpenCV 2.4.x 버전에서 사용한 SIFT, SURF 접근 할 수 없다.
또한 자연 스러운 이미지 텍스트 감지와 같은 OpenCV 3.0 새로운 기능을 사용하지 못함.
wget -O opencv_contrib.zip https://github.com/Itseez/opencv_contrib/archive/3.1.0.zip
unzip opencv_contrib.zip
동일한 버전 다운로드
3 단계: Python 환결 설정.
파이썬 패키기 관린 pip 설치
cd ~
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
https://virtualenv.pypa.io/en/latest/ 및 https://virtualenvwrapper.readthedocs.io/en/latest/ 를 설치한다.
이 두개의 패키지는 별도의 파이썬 버전과 개발 환경을 생성할 수 있게 한다.
sudo pip install virtualenv virtualenvwrapper
sudo rm -rf ~/get-pip.py ~/.cache/pip
사용자 환경 설정.
vi /home/username/.bashrc
# virtualenv 및 virtualenvwrapper
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
:wq
cat 명령으로 환경 설정
echo -e "\n# virtualenv and virtualenvwrapper" >> ~/.bashrc
echo "export WORKON_HOME=$HOME/.virtualenvs" >> ~/.bashrc
echo "source /usr/local/bin/virtualenvwrapper.sh" >> ~/.bashrc
둘 중 편한 방법을 선택해 적용한다.
로그아웃 또는 재부팅, 아니면 source /home/username/.bashrc
OpenCv 3.1 + Python 2.7 버전 개발을 위해, 가상 cv 환경 구축
mkvirtualenv cv -p python2
3.x 버전으로 만들 경우
mkvirtualenv cv -p python3
어떤 버전을 사용해도 상관은 없다.
최졍 cv python 가상 환경을 만드는게 목적이다.
cv 가상 환경 확인
workon cv
(cv) username:~$
OpenCV 이미지 다차원 처리 NumPy 배열로 표현하며 최종 단계 숫자로 처리함.
pip install numpy
4 단계: python 3.5 + OpenCV 컴파일.
가상 환경 접근
workon cv
컴파일
cd ~/opencv-3.1.0/
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D INSTALL_C_EXAMPLES=OFF \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.1.0/modules \
-D PYTHON_EXECUTABLE=~/.virtualenvs/cv/bin/python \
-D BUILD_EXAMPLES=ON ..
stdlib 관련된 오류 발생시 stdlib.h: No such file or
CMake : -D ENABLE_PRECOMPILED_HEADERS=OFF
이 경우에는 빌드 디렉토리를 삭제하고, 다시 빌드, 위의 옵션이 포함 된 CMake를 다시 실행하는 것이 좋다.
이렇게하면 stdlib.h 오류가 해결.
CMAKE 출력 파일 확인
Cmake 파일이 파이썬3 버전 인터프리터 등록 확인.
Python 2:
Interpreter : /home/username/.virtualevns/cv/bin/python (ver 2.7.12)
Libraries : /usr/lib/x86_64-linux-gnu/libpython2.7.12~~~
numpy: /home/username/.virualenvs/cv/lib/python2.7.12/site.packages/numpy/core~~~~
packages path: lib/python2.7.12/site-packages
1. 컴파일 2.7 버전으로 가상환경 구축
2. 라이브러는 2.7 사용
3. NumPy 2.7 가상환경
4. 패키지 경로 cv2.so lib/python2.7/site-packages /usr/local/lib/python2.7/site-packages/
3.5 버전으로 컴파일 했을 경우
CMAKE 의 출력 내용은 3.5로 나타난다.
컴파일
make -j4
컴파일 속도를 높이려면 현재 사용되는 컴퓨터의 프로세서 코어수를 넣어준다.
실패시 기본 프로세서 정보로 컴파일
make clean
make
설치
sudo make install
sudo ldconfig
5 단계: 설치 확인.
Python2.7: 컴파일시.
ls -l /usr/local/lib/python2.7/site-packages/
심볼 링크
cd ~/.virtualenvs/cv/lib/python2.7/site-packages/
ln -s /usr/local/lib/python2.7/site-packages/cv2.so cv2.so
Python3.5: 컴파일시.
ls -l /usr/local/lib/python3.5/site-packages/
동적 라이브러리가 이름이 변경되 고생 함.
cd /usr/local/lib/python3.5/site-packages/
sudo mv cv2.cpython-35m-x86_64-linux-gnu.so cv2.so
심볼 링크
cd ~/.virtualenvs/cv/lib/python3.5/site-packages/
ln -s /usr/local/lib/python3.5/site-packages/cv2.so cv2.so
6 단계 : OpenCV 테스트
python 3.5 구성시
cd /home/username/
workon cv
python
Python 3.5.2
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'3.1.0'
>>>
python 2.7 구성시
cd /home/username/
python
>>> import cv2
>>> cv2.__version__
'3.1.0'
>>>
어떤한 파있너 버전을 사용해도 상관이 없다 cs2를 파이썬이 호출 하면된다.
댓글 없음:
댓글 쓰기