본문 바로가기

머신러닝&딥러닝/YOLO

4. (YOLO) Ubuntu 18.04에 OpenCV 3.4.0 설치

Ubuntu 18.04에 YOLO를 설치하기 위해 먼저 OpenCV 3.4.0을 설치합니다.

기본(Default) OpenCV 제거


Ubuntu 18.04에 기본으로 설치되어 있는 OpenCV를 제거합니다.


1
2
3
sudo apt-get remove libopencv*
sudo apt-get autoremove
sudo find /usr/local/ -name "*opencv*" -exec rm {} \;
cs

Prerequisites 설치


Update & Upgrade

1
2
sudo apt-get update
sudo apt-get upgrade
cs

개발자 도구 설치

build-essential : c/c++ 컴파일러와 관련 라이브러리, make 같은 도구들이 포함된다. 
cmake : 컴파일 옵션이나 빌드된 라이브러리에 포함시킨다. (OpenCV 모듈 설정을 위해 필요하다.)
unzip : 압축을 풀기위해 필요하다.
pkg-config : 컴파일할 목적으로 설치된 라이브러리 조회하기 위해 설치한다. (나중에 설치가 되었는지 확인을 위해 설치)

1
sudo apt-get install build-essential cmake unzip pkg-config
cs

libraries 설치

이미지 처리/컴퓨터 비전 라이브러리인 JPEG, PNG, TIFF 파일 형식 로드를 위해 이미지 I/O 패키지를 설치한다.
1
sudo apt-get install libjpeg-dev libpng-dev libtiff-dev
cs

카메라 스트림으로 작업하고 비디오 파일을 처리 할 수 있도록 비디오 I/O 패키지를 설치한다.

1
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev v4l-utils libxvidcore-dev libx264-dev libxine2-dev
cs


비디오 스트리밍을 위한 라이브러리를 설치한다.

1
sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
cs

OpenCV의 GUI 작업을 위해 GTK 라이브러리를 설치한다.
1
sudo apt-get install libgtk-3-dev
cs

OpenGL을 지원하기 위한 라이브러리를 설치한다.
1
sudo apt-get install mesa-utils libgl1-mesa-dri libgtkgl2.0-dev libgtkglext1-dev
cs

OpenCV 기능을 최적화 해주는 라이브러리를 설치한다.

1
sudo apt-get install libatlas-base-dev gfortran libeigen3-dev
cs

Python 설치

Python 헤더와 라이브러리를 설치한다.
(Pyhton의 Numpy는 매트릭스 연산 등을 빠르게 처리할 수 있어 OpenCV에서 사용된다.)
1
sudo apt-get install python2.7-dev python3-dev python-numpy python3-numpy
cs

OpenCV 3.4.0 설치


OpenCV 3.4.0 다운로드

저장할 임시 디렉토리를 생성 후 그 폴더에 OpenCV 3.4.0을 다운받는다.
1
2
3
4
mkdir opencv
cd opencv
wget -O opencv.zip https://github.com/opencv/opencv/archive/3.4.0.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/3.4.0.zip
cs

압축을 푼다.
1
2
unzip opencv.zip
unzip opencv_contrib.zip
cs

Build & install OpenCV

working directory를 생성한다.
1
2
3
cd opencv-3.4.0
mkdir build
cd build
cs


Build 구성

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D WITH_TBB=OFF \
-D WITH_IPP=OFF \
-D WITH_1394=OFF \
-D BUILD_WITH_DEBUG_INFO=OFF \
-D BUILD_DOCS=OFF \
-D INSTALL_C_EXAMPLES=ON \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D BUILD_EXAMPLES=OFF \
-D BUILD_TESTS=OFF \
-D BUILD_PERF_TESTS=OFF \
-D WITH_QT=OFF \
-D WITH_GTK=ON \
-D WITH_OPENGL=ON \
-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.4.0/modules \
-D WITH_V4L=ON  \
-D WITH_FFMPEG=ON \
-D WITH_XINE=ON \
-D BUILD_NEW_PYTHON_SUPPORT=ON \
-D PYTHON2_INCLUDE_DIR=/usr/include/python2.7 \
-D PYTHON2_NUMPY_INCLUDE_DIRS=/usr/lib/python2.7/dist-packages/numpy/core/include/ \
-D PYTHON2_PACKAGES_PATH=/usr/lib/python2.7/dist-packages \
-D PYTHON2_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython2.7.so \
-D PYTHON3_INCLUDE_DIR=/usr/include/python3.6m \
-D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3/dist-packages/numpy/core/include/  \
-D PYTHON3_PACKAGES_PATH=/usr/lib/python3/dist-packages \
-D PYTHON3_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.6m.so \
../
cs

컴파일

make 명령을 사용하여 컴파일 시작한다.
-j 뒤에는 cpu 코어 수를 입력한다.
(cpu 코어 수를 확인하는 방법은 cat/proc/cpuinfo | grep processor | wc-;)

1
make -j4
cs
※ 컴파일하는데 오랜 시간이 걸립니다.

Install OpenCV

1
2
3
sudo make install
sudo sh -echo '/usr/local/lib/' > sudo /etc/ld.so.conf.d/opencv.conf
sudo ldconfig
cs


이렇게 해서 Ubuntu 18.04에서 OpenCV 3.4.0을 설치하는 방법을 살펴봤습니다.