Divide and Conquer
Ubuntu 18.04 Melodic에 OpenCV 4.2.0 설치 본문
728x90
파이썬에서만 opencv 쓸 땐 (nonfree 모듈 못 씀)
pip3 install opencv-contrib-python
# 설치된 opencv 제거(안 나오면 됨)
pkg-config --modversion opencv
#삭제
sudo apt-get purge libopencv* python-opencv
sudo apt-get autoremove
# -i 지우면 안 물어보고 전부 지움
sudo find /usr/local/ -name "*opencv*" -exec rm -i {} \;
# 설치된 패키지 업데이트, 업그레이드
sudo apt-get update
#sudo apt-get upgrade
# 컴파일 전 필요 패키지 설치
# build-essential는 C/C++ 컴파일러와 관련 라이브러리, make 같은 도구들
# cmake는 컴파일 옵션이나 빌드된 라이브러리에 포함시킬 OpenCV 모듈 설정등
sudo apt-get install build-essential cmake
# pkg-config는 프로그램 컴파일 및 링크시 필요한 라이브러리에 대한 정보를 메타파일(확장자가 .pc 인 파일)로부터 가져오는데 사용
sudo apt-get install pkg-config
#특정 포맷의 이미지 파일을 불러오거나 기록하기 위해 필요한 패키지
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
#리눅스에서 실시간 비디오 캡처를 지원하기 위한 디바이스 드라이버와 API를 포함
sudo apt-get install libv4l-dev v4l-utils
#비디오 스트리밍을 위한 라이브러리
sudo apt-get install libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev
#윈도우 생성 등의 GUI를 위해 gtk 또는 qt를 선택해서 사용가능
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
#OpenCV-Python 바인딩
sudo apt-get install python2.7-dev python3-dev python-numpy python3-numpy
#다운로드
cd
mkdir opencv
cd opencv
wget -O opencv.zip https://github.com/opencv/opencv/archive/4.2.0.zip
unzip opencv.zip
wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.2.0.zip
unzip opencv_contrib.zip
cd opencv-4.2.0/
mkdir build
cd build
#cmake를 사용하여 OpenCV 컴파일 설정
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 ../
#안 되면 한줄로 ㄱㄱ
# 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 ../
# Python 2 또는 Python 3 라이브러리 항목 확인
#컴파일 시작(2시간 ㅋㅋ)
time make -j4
#컴파일 결과 설치
# 위치 ~/opencv/opencv-4.2.0/build$
sudo make install
# /usr/local/lib이 나오나 확인
cat /etc/ld.so.conf.d/*
#안나오면
#sudo sh -c 'echo '/usr/local/lib' > /etc/ld.so.conf.d/opencv.conf'
#opencv 라이브러리를 찾을 수 있게 추가
sudo ldconfig
#OpenCV 설치 결과 확인하려고 pkg-config를 실행(이래야 컴파일이 됨)
g++ -o facedetect /usr/local/share/opencv4/samples/cpp/facedetect.cpp $(pkg-config opencv4 --libs --cflags)
# 실행
./facedetect --cascade="/usr/local/share/opencv4/haarcascades/haarcascade_frontalface_alt.xml" --nested-cascade="/usr/local/share/opencv4/haarcascades/haarcascade_eye_tree_eyeglasses.xml" --scale=1.3
Ubuntu 18.04에 OpenCV 4.2.0 설치하는 방법
OpenCV 4.2.0과 opencv_contrib(extra modules)를 컴파일하여 Ubuntu 18.04에 설치하는 방법을 다룹니다. 1. 설치된 OpenCV 제거 2. 기존 설치된 패키지 업그레이드 3. OpenCV 컴파일 전 필요한 패키지 설치 4. OpenCV 설
webnautes.tistory.com
반응형
'2025 > ROS' 카테고리의 다른 글
ydlidar X4 동작 확인 (0) | 2022.06.29 |
---|---|
Ubuntu 18.04 ROS Melodic 설치 (0) | 2022.06.03 |
자율주행 플랫폼 하드웨어 구성 (0) | 2022.05.26 |
ROS 로봇 프로그래밍 /표윤석, 조한철, 정려운, 임태훈 (0) | 2022.05.26 |
E: Sub-process /usr/bin/dpkg returned an error code (2) (0) | 2022.05.06 |
Comments