본문 바로가기
기술팁/라즈베리파이(raspberry)

라즈베리파이 opencv 3.4 설치하기(빌드)

by nyg -i 2019. 7. 27.

opencv 설치시작 해봅니다.(v3.4) PI 3B+ 

$ sudo apt-get update 

$ sudo apt-get upgrade  

업데이트 및 업그레이드

$ sudo apt-get install build-essential cmake    

build-essential- C++컴파일러, make 명령

$ sudo apt-get install cmake

$ sudo apt-get install pkg-config

컴파일하거나 링크 라이브러리를 메타파일로 콜

$ sudo apt-get install libpng12-dev
$ sudo apt-get install libjpeg-dev
$ sudo apt-get install libtiff5-dev
$ sudo apt-get install libjasper-dev

png, jpg, tiff~ 등 이미지포멧기록

$ sudo apt-get install libavformat-dev
$ sudo apt-get install libxvidcore-dev
$ sudo apt-get install libswscale-dev
$ sudo apt-get install libxine2-dev
$ sudo apt-get install libavcodec-dev
$ sudo apt-get install libx264-dev

x264,avcodec ~등등 동영상 파일 포멧 기록

$ sudo apt-get install libv4l-dev
$ sudo apt-get install v4l-utils
 
비디오 캡쳐

$ sudo apt-get install libgstreamer1.0-dev
$ sudo apt-get install libgstreamer-plugins-base1.0-dev

스트리밍

$ sudo apt-get install libqt4-dev

highgui 모듈로 새로운 창으로 이미지 및 비디오를 재생

$ sudo apt-get install mesa-utils
$ sudo apt-get install libgl1-mesa-dri
$ sudo apt-get install libqt4-opengl-dev

opengl 모듈

$ sudo apt-get install libatlas-base-dev
$ sudo apt-get install gfortran
$ sudo apt-get install libeigen3-dev

opencv모듈

$ sudo apt-get install python2.7-dev
$ sudo apt-get install python3-dev
$ sudo apt-get install python-numpy
$ sudo apt-get install python3-numpy

python2.7-dev와 python3-dev 패키지는 파이썬 바인딩을 위해 필요하며 
연산과 다양한 수식을 사용할 수 있게 해주는 numpy 모듈을 python 2.7 버전과 3 버전에 맞게 설치해줍니다.

$ mkdir opencv

opencv폴더를 만듭니다.

$ cd opencv

opencv 폴더로 이동(pi@raspberrypi:~/opencv $  )

$ wget -O opencv.zip https://github.com/opencv/opencv/archive/3.4.0.zip

opencv.zip파일을 다운받는다.

$ unzip opencv.zip 

압축을 푼다.


$ wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/3.4.0.zip

opencv_contrib.zip파일 다운받는다.

$ unzip opencv_contrib.zip

압축을 푼다.

pi@raspberrypi:~/opencv $ ls -d */

폴더확인(opencv-3.4.0 opencv_contrib-3.4.0)

pi@raspberrypi:~/opencv $ cd opencv-3.4.0

opencv-3.4.0폴더로 이동

pi@raspberrypi:~/opencv/opencv-3.4.0 $ mkdir build

opencv-3.4.0폴더 내부에 build 폴더 만들기

pi@raspberrypi:~/opencv/opencv-3.4.0 $ cd build

build 폴더로 진입

pi@raspberrypi:~/opencv/opencv-3.4.0/build $

현재 build 폴더...

$ cmake -D CMAKE_BUILD_TYPE=RELEASE\

타이핑하면(프롬프트가나옴(>))

>-D CMAKE_INSTALL_PREFIX=/usr/local\
>-D WITH_TBB=OFF\
>-D WITH_IPP=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 ENABLE_NEON=ON\
>-D WITH_QT=ON\
>-D WITH_OPENGL=ON\
>-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.4.0/modules\
>-D WITH_V4L=ON\
>-D WITH_FFMPEG=ON\
>-D WITH_XINE=ON\
>-D BUILD_NEW_PYTHON_SUPPORT=ON \
>-D PYTHON2_INCLUDE_DIR=/usr/include/python2.7 \
>-D PYTHON2_NUMPY_INCLUDE_DIRS=/usr/lib/python2.7/dist-packages/numpy/core/include/ \
>-D PYTHON2_PACKAGES_PATH=/usr/lib/python2.7/dist-packages \
>-D PYTHON2_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython2.7.so \
>-D PYTHON3_INCLUDE_DIR=/usr/include/python3.5m \
>-D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3/dist-packages/numpy/core/include/ \
>-D PYTHON3_PACKAGES_PATH=/usr/lib/python3.5/dist-packages\
>-D PYTHON3_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.5m.so\
>../ 

혹은

>-D CMAKE_INSTALL_PREFIX=/usr/local-D WITH_TBB=OFF-D WITH_IPP=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 ENABLE_NEON=ON-D WITH_QT=ON
-D WITH_OPENGL=ON-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-3.4.0/modules-D WITH_V4L=ON-D WITH_FFMPEG=ON-D WITH_XINE=ON-D BUILD_NEW_PYTHON_SUPPORT=ON-D PYTHON2_INCLUDE_DIR=/usr/include/python2.7-D PYTHON2_NUMPY_INCLUDE_DIRS=/usr/lib/python2.7/dist-packages/numpy/core/include/-D PYTHON2_PACKAGES_PATH=/usr/lib/python2.7/dist-packages-D PYTHON2_LIBRARY= /usr/lib/arm-linux-gnueabihf/libpython2.7.so-D PYTHON3_INCLUDE_DIR=/usr/include/python3.5m-D PYTHON3_NUMPY_INCLUDE_DIRS=/usr/lib/python3/dist-packages/numpy/core/include/-D PYTHON3_PACKAGES_PATH=/usr/lib/python3.5/dist-packages-D PYTHON3_LIBRARY=/usr/lib/arm-linux-gnueabihf/libpython3.5m.so../ 

여기서 주의 할것은 신중히 타이핑 할것~ 절대 공백,대문자,소문자 틀리면 안됨, 에러납니다.

-- Configuring done
-- Generating done
-- Build files have been written to: /home/pi/opencv/생략

이상없다면, 1분정도 후 위 같은 메세지를 출력합니다.

pi@raspberrypi:~/opencv/opencv-3.4.0/build $ make -j3
혹은 make


컴파일 시작, 1시간정도 걸립니다. 
끝나면 프롬프트상태로 돌아갑니다. 오류가 있다면 몇개 오류생겼다고 메세지가 나옵니다.

저는 이렇게 에러메세지 발생했어요 ㅠㅠ

에러난 path 에 가보니  cv2.cpp.o 없더라구요... 왜없지 ?  ㅜㅜ  찾아서 복사해서 넣어주니 무사히 컴파일 했어요.

 $ sudo make install

이제 설치합니다.

$ cat /etc/ld.so.conf.d/*



 /usr/local/lib있는지 확인

pi@raspberrypi:~/opencv/opencv-3.4.0/build $ sudo sh -c 'echo '/usr/local/lib' > /etc/ld.so.conf.d/opencv.conf'

pi@raspberrypi:~/opencv/opencv-3.4.0/build $ sudo ldconfig

없다면 위 구문 입력

$python

파이썬 설치 잘됬는지 확인해봅니다.

이렇게 출력됩니다.

exit() 

밖으로 나옴

$python3도 확인해봅니다^^

정상 출력됬다면 설치성공^^

 

아래 출처에서 참고 했어요.  (글작성일 설치성공)

출처: https://deepdeepit.tistory.com/19 [Deep Deep IT]