본문 바로가기
ROS

ROS - opencv 설치

by winston1214 2020. 12. 3.
반응형

ROS에서 python3로 버전업을 한 후 opencv가 설치되지 않는 문제가 발생하였다.

그래서 간단하게 $ pip3 install python-opencv를 하였더니 setup.bash 오류가...반복 되었다..

이를 해결하기 위해 가장 원초적인 방법이자 가장 귀찮은 방법을 통해 opencv를 설치하였다.

Environment

ROS melodic, Ubuntu 18.04, Jetson AGX Xavier

OpenCV 설치를 위한 패키지를 미리 설치해준다

$ sudo apt install build-essential cmake git pkg-config libgtk-3-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libjpeg-dev libpng-dev libtiff-dev gfortran openexr libatlas-base-dev python3-dev python3-numpy libtbb2 libtbb-dev libdc1394-22-dev

패키지를 설치한 후 opencv 디렉토리를 생성한다.

$ mkdir ~/opencv && cd ~/opencv

$ git clone https://github.com/opencv/opencv.git

$ git clone https://github.com/opencv/opencv_contrib.git

위는 디렉토리 생성 후 git clone을 통해 해당 레퍼지토리를 복제한다.

$ cd ~/opencv/opencv

$ mkdir build && cd build

build 디렉토리로 이동한 다음 마의 cmake를 한다.

그 전에 썼던 cmake 옵션을 주니 계속 cmake error가 나서 가장 간단한 방법을 찾았다.

$ cmake -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr/local \
    -D INSTALL_C_EXAMPLES=ON \
    -D INSTALL_PYTHON_EXAMPLES=ON \
    -D OPENCV_GENERATE_PKGCONFIG=ON \
    -D OPENCV_EXTRA_MODULES_PATH=~/opencv/opencv_contrib/modules \
    -D BUILD_EXAMPLES=ON .. 

이 camke를 하면 정말로 오류가 절대 안난다.. 5번 했는데 5번 다 한 번에 설치되었다.

물론 path 같은 경우는 환경에 맞게 잘 맞춰줘야한다.

그러고 시간이 오래걸리는 make를 한다.

 $ sudo make -j8

j 뒤에 붙는 숫자는 코어의 수를 뜻한다. nprocc 확인하고 숫자를 알맞게 붙이면 된다.

컴퓨터 사양이 좋을수록 빨리 된다.

그러고 마지막에 install 해주면

 $ sudo make install

깔끔하게 끝난다!

test

 $ python3

 >>> import cv2
 >>> print(cv2.__version__)
 4.4.0

버전이 다르게 나와도 가장 최신의 버전이 나온 것이니 놀라지 않아도 된다.

반응형

'ROS' 카테고리의 다른 글

ROS - python3 버전업  (0) 2020.12.03
ros melodic install  (0) 2020.11.24

댓글