반응형
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 |
댓글