1. 시스템 업데이트 및 필수 의존성 설치
robot@kimsh:~/work/Robot-AI$ sudo apt update && sudo apt upgrade -y [sudo] password for robot: sudo apt install -y build-essential cmake git pkg-config \ libjpeg-dev libpng-dev libtiff-dev \ libavcodec-dev libavformat-dev libswscale-dev \ libv4l-dev libxvidcore-dev libx264-dev \ libgtk-3-dev libatlas-base-dev gfortran \ python3-dev python3-numpy
2. OpenCV 4.10.0 소스 다운로드
robot@kimsh:~/work/Robot-AI$ sudo apt update && sudo apt upgrade -y [sudo] password for robot: sudo apt install -y build-essential cmake git pkg-config \ libjpeg-dev libpng-dev libtiff-dev \ libavcodec-dev libavformat-dev libswscale-dev \ libv4l-dev libxvidcore-dev libx264-dev \ libgtk-3-dev libatlas-base-dev gfortran \ python3-dev python3-numpy
3. 라이브러리 설치
cd ~/opencv-4.10.0 mkdir build && cd build # cmake -D CMAKE_BUILD_TYPE=RELEASE \ -D CMAKE_INSTALL_PREFIX=/usr/local \ -D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.10.0/modules \ -D OPENCV_GENERATE_PKGCONFIG=ON \ -D BUILD_EXAMPLES=OFF .. # nproc을 통해 가용 코어 확인 후 병렬 빌드 make -j$(nproc) # 컴파일 및 링크 sudo make install # 라이브러리를 시스템에 설치 sudo ldconfig # 라이브러리를 캐시에 등록
4. VS Code 개발 환경 세팅 : CMakeLists.txt 작성
# CMake 빌드 시스템의 최소 요구 버전을 3.10으로 설정합니다.
cmake_minimum_required(VERSION 3.10)
# 프로젝트의 이름을 'OpenCVProject'로 정의합니다.
project(OpenCVProject)
# 시스템에 설치된 OpenCV 패키지를 찾습니다. REQUIRED 옵션은 찾지 못하면 구성을 중단(에러 발생)합니다.
find_package(OpenCV REQUIRED)
# main.cpp와 code1.cpp 소스 파일을 컴파일하여 'main'이라는 이름의 실행 파일을 생성합니다.
add_executable(main main.cpp code1.cpp)
# 위에서 찾은 OpenCV 라이브러리 정보(${OpenCV_LIBS})를 'main' 실행 파일에 링크(연결)합니다.
target_link_libraries(main ${OpenCV_LIBS})
5. 빌드 및 실행 팁
mkdir bin && cd bin && cmake .. && make ./main # 실행
- bin 대신 build 폴더를 만들어서 사용해도 무방하다.