
Ubuntu 18.04에 OpenCV 4.2.0을 설치하는 방법
OpenCV 컴파일 전에 필요한 패키지 설치
패키지에는 C/C++ 컴파일러, 관련 라이브러리 및 make와 같은 도구가 포함되어 있습니다.
컴파일 옵션, 빌드된 라이브러리에 포함될 OpenCV 모듈 설정 등에 필요합니다.
sudo apt-get install build-essential cmake
특정 형식의 이미지 파일을 가져오거나 기록하는 데 필요한 패키지
sudo apt-get install libjpeg-dev libtiff5-dev libpng-dev
특정 코덱에서 비디오 파일을 읽거나 녹화하는 데 필요한 패키지입니다.
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libxvidcore-dev libx264-dev libxine2-dev
Video4Linux 패키지에는 Linux에서 실시간 비디오 캡처를 지원하는 장치 드라이버와 API가 포함되어 있습니다.
sudo apt-get install libv4l-dev v4l-utils
GStreamer는 스트리밍 비디오 라이브러리입니다.
sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
OpenCV는 이미지 또는 비디오를 표시하기 위해 highgui 모듈을 사용하여 자체 창을 만들 수 있습니다.
sudo apt-get install libgtk2.0-dev
OpenGL을 지원하려면 라이브러리가 필요합니다.
sudo apt-get install mesa-utils libgl1-mesa-dri libgtkgl2.0-dev libgtkglext1-dev
OpenCV 최적화에 사용되는 라이브러리.
sudo apt-get install libatlas-base-dev gfortran libeigen3-dev
python2.7-dev 및 python3-dev 패키지는 OpenCV-Python 바인딩에 필요합니다.
Numpy는 행렬 연산을 빠르게 처리할 수 있기 때문에 OpenCV에서 사용됩니다.
sudo apt-get install python2.7-dev python3-dev python-numpy python3-numpy
OpenCV 설치(이제 시작)
홈페이지에서 OpenCV 4.2.0 소스 코드를 다운로드하여 압축을 풉니다.
$ wget -O opencv.zip https://github.com/opencv/opencv/archive/4.2.0.zip
$ unzip opencv_contrib.zip
opencv_contrib(extramodules) 소스 코드 다운로드 및 추출
$ wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.2.0.zip
$ unzip opencv_contrib.zip
cd opencv-4.0.1/
mkdir build
cd build
cmake를 사용하여 opencv 컴파일을 설정합니다.
/usr/local 에 opencv4/opencv2 설치
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-4.2.0/modules \
-D WITH_V4L=ON \
-D WITH_FFMPEG=ON \
-D WITH_XINE=ON \
-D BUILD_NEW_PYTHON_SUPPORT=ON \
-D OPENCV_GENERATE_PKGCONFIG=ON ../
다음 메시지가 표시되면 정상입니다.
-- Configuring done
-- Generating done
-- Build files have been written to: -- Configuring done
-- Generating done
-- Build files have been written to: /home/xxxxx/opencv/opencv-4.2.0/build
make를 사용하여 컴파일을 시작합니다(시간이 오래 걸릴 수 있습니다.)
make
컴파일에 성공하면 다음 메시지를 볼 수 있습니다.
[100%] Building CXX object modules/python3/CMakeFiles/opencv_python3.dir/__/src2/cv2.cpp.o
[100%] Building CXX object modules/python2/CMakeFiles/opencv_python2.dir/__/src2/cv2.cpp.o
[100%] Linking CXX shared module ../../lib/python3/cv2.cpython-36m-x86_64-linux-gnu.so
[100%] Linking CXX shared module ../../lib/cv2.so
[100%] Built target opencv_python3
[100%] Built target opencv_python2
이제 컴파일 출력을 설치합니다.
sudo make install
Opencv 설치 결과 확인
$ wget -O opencv.zip https://github.com/opencv/opencv/archive/4.2.0.zip
$ unzip opencv_contrib.zip
$ wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.2.0.zip
$ unzip opencv_contrib.zip
cd opencv-4.0.1/
mkdir build
cd build
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-4.2.0/modules \
-D WITH_V4L=ON \
-D WITH_FFMPEG=ON \
-D WITH_XINE=ON \
-D BUILD_NEW_PYTHON_SUPPORT=ON \
-D OPENCV_GENERATE_PKGCONFIG=ON ../
-- Configuring done
-- Generating done
-- Build files have been written to: -- Configuring done
-- Generating done
-- Build files have been written to: /home/xxxxx/opencv/opencv-4.2.0/build
make
[100%] Building CXX object modules/python3/CMakeFiles/opencv_python3.dir/__/src2/cv2.cpp.o
[100%] Building CXX object modules/python2/CMakeFiles/opencv_python2.dir/__/src2/cv2.cpp.o
[100%] Linking CXX shared module ../../lib/python3/cv2.cpython-36m-x86_64-linux-gnu.so
[100%] Linking CXX shared module ../../lib/cv2.so
[100%] Built target opencv_python3
[100%] Built target opencv_python2
sudo make install
g++ -o Hellow Hellow.cpp $(pkg-config opencv4 --libs --cflags)
python3
Python 3.6.9 (default, Nov 7 2019, 10:44:02)
[GCC 8.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'4.2.0'
>>>