OpenCV 4.5.1 설치하기 (with CUDA, cuDNN)

Jaehyun Jang·2024년 1월 12일
0

Ubuntu 환경 세팅

목록 보기
3/3
post-thumbnail

OpenCV란?

OpenCV는 "Open Source Computer Vision Library"의 약자로, 오픈 소스 컴퓨터 비전 라이브러리이다. 실시간 컴퓨터 비전을 처리하기 위한 다양한 알고리즘과 도구를 제공한다. OpenCV는 C++, Python, Java 및 MATLAB과 같은 여러 프로그래밍 언어에서 사용할 수 있다.

또한 OpenCV는 이미지 및 비디오 처리, 객체 검출, 얼굴 인식, 기계 학습, 카메라 캘리브레이션, 모션 추적 등과 같은 다양한 컴퓨터 비전 작업을 수행할 수 있다. 이미지 및 비디오 데이터를 읽고 쓰는 기능, 이미지 변환 및 필터링, 특징 추출 및 기술자(descriptors) 계산 등을 지원한다.

OpenCV는 학계와 산업계에서 널리 사용되며, 개발자들은 이 라이브러리를 활용하여 컴퓨터 비전 관련 프로젝트를 구현하고 최적화할 수 있다.

컴퓨터 비전을 위해서 OpenCV는 필수이다.


OpenCV 4.5.1 버전 설치방법

1. 의존성 패키지 설치

Opencv를 사용하기 위해선 그에 의존하는 많은 패키지들을 설치해주어야 한다.

sudo apt-get install build-essential cmake -y
sudo apt-get install pkg-config -y
sudo apt-get install libjpeg-dev libtiff5-dev libpng-dev -y
sudo apt-get install ffmpeg libavcodec-dev libavformat-dev libswscale-dev libxvidcore-dev libx264-dev libxine2-dev -y
sudo apt-get install libv4l-dev v4l-utils -y
sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev -y
sudo apt-get install libgtk-3-dev -y
sudo apt-get install mesa-utils libgl1-mesa-dri libgtkgl2.0-dev libgtkglext1-dev -y
sudo apt-get install libatlas-base-dev gfortran libeigen3-dev -y
sudo apt-get install python3-dev python3-numpy -y

2. OpenCV파일 다운로드 (4.5.1버전)

OpenCV를 다운로드 받기위해 임시 디렉토리인 third_party를 만들어주고, wget을 이용하여 OpenCV를 다운로드 받는다.

mkdir ~/third_party -p && cd ~/third_party
mkdir opencv -p && cd opencv

wget -O opencv.zip https://github.com/opencv/opencv/archive/4.5.1.zip
unzip opencv.zip

wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.5.1.zip
unzip opencv_contrib.zip

3. CMake

이 게시글은 CUDA(11.6 버전)cuDNN(8.5.0 버전)이 이미 설치되었다는 가정하에 진행한다. 아직 CUDAcuDNN이 설치되지 않았다면 해당 게시글을 참고하여 CUDAcuDNN을 설치 후 진행하는 것을 추천한다. 물론, 원래 OpenCV 자체는 CUDAcuDNN이 설치되어있지 않더라도 설치가 가능하다.
하지만 요즘 컴퓨터 비전의 특성상 GPU를 사용하는 경우가 매우 많기 때문에, CUDAcuDNN을 이용할 경우가 많게 되고, CMake를 진행하는 과정에서 컴파일 설정을 진행하기 때문에 미리 CUDAcuDNN이 설치되어 있는것이 좋다.

cd ~/third_party/opencv/opencv-4.5.1
mkdir build && cd build

cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_C_COMPILER=/usr/bin/gcc-9 \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D INSTALL_PYTHON_EXAMPLES=OFF \
-D INSTALL_C_EXAMPLES=OFF \
-D BUILD_DOCS=OFF \
-D BUILD_PERF_TESTS=OFF \
-D BUILD_TESTS=OFF \
-D BUILD_PACKAGE=OFF \
-D BUILD_EXAMPLES=OFF \
-D WITH_TBB=ON \
-D ENABLE_FAST_MATH=1 \
-D CUDA_FAST_MATH=1 \
-D CUDA_TOOLKIT_ROOT_DIR=/usr/local/cuda-11.6 \
-D WITH_CUDA=ON \
-D WITH_CUBLAS=ON \
-D WITH_CUFFT=ON \
-D WITH_NVCUVID=ON \
-D WITH_IPP=OFF \
-D WITH_V4L=ON \
-D WITH_1394=OFF \
-D WITH_GTK=ON \
-D WITH_GTK_2_X=ON \
-D WITH_QT=OFF \
-D WITH_OPENGL=ON \
-D WITH_EIGEN=ON \
-D WITH_FFMPEG=ON \
-D WITH_GSTREAMER=ON \
-D BUILD_JAVA=OFF \
-D BUILD_opencv_python3=ON \
-D BUILD_opencv_python2=ON \
-D BUILD_NEW_PYTHON_SUPPORT=ON \
-D OPENCV_SKIP_PYTHON_LOADER=ON \
-D OPENCV_GENERATE_PKGCONFIG=ON \
-D OPENCV_ENABLE_NONFREE=ON \
-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.5.1/modules \
-D WITH_CUDNN=ON \
-D OPENCV_DNN_CUDA=ON \
-D CUDA_ARCH_BIN=8.6 \
-D CUDA_ARCH_PTX=8.6 \
-D CUDNN_LIBRARY=/usr/local/cuda/lib64/libcudnn.so.8.5.0 \
-D CUDNN_INCLUDE_DIR=/usr/local/cuda/include  ..

# 컴파일
time make -j$(nproc)

컴파일이 완료되면 다음과 같은 화면을 볼 수 있다.


4. 컴파일 결과물 설치

임시 디렉토리에 컴파일 된 결과물을 컴퓨터에 설치한다.

sudo make install

설치가 완료되면 다음과 같은 화면을 볼 수 있다.

설치가 잘 되었는지 확인하기 위해 명령어를 입력하여 설치된 OpenCV의 버전을 확인한다.

pkg-config --modversion opencv4

다음과 같이 4.5.1버전이 잘 설치된 것을 확인할 수 있다.


Reference

profile
그냥 내가 공부하는거 안까먹으려고 만든 벨로그

0개의 댓글