반응형

https://qengineering.eu/install-opencv-4.5-on-raspberry-pi-4.html

 

이전에 윈도우에서 실행하는 파이썬으로 OpenCV에 대해서 다뤘다.

https://ansan-survivor.tistory.com/category/%ED%8C%8C%EC%9D%B4%EC%8D%AC%28python%29/Python%20OpenCV

 

'파이썬(python)/Python OpenCV' 카테고리의 글 목록

 

ansan-survivor.tistory.com

 

 

OpenCV는 C언어 또는 Python등의 언어로 카메라에 각종 여러 프로그래밍을 넣어서 사물을 탐지하고 인식하는 등의 비전시스템을 개발 할 수 있는 오픈소스를 제공하는 라이브러리 이다.

 

라즈베리파이의 리눅스OS에서도 역시 이 오픈소스인 OpenCV를 넣어서 개발을 할 수 있다.

그러기 위한 개발환경을 구축하는 방법이다.

 

아래 순서를 따라하면 된다.

 

1. apt-get 최신버전 패치

$ sudo apt-get update -y
$ sudo apt-get upgrade -y

 

2. 컴파일링을 위한 패키지 설치

$ sudo apt-get install -y build-essential cmake

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

// for videos
$ sudo apt-get install -y libavcodec-dev libavformat-dev libswscale-dev libxvidcore-dev libx264-dev libxine2-dev	

// 주의 1(숫자)이 아니고 l(알파벳)임
$ sudo apt-get install -y libv4l-dev v4l-utils										

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

 

3. Opencv GUI 환경 설치 (옵션 패키지)

// tk 2.0 설치
$ sudo apt-get install -y libgtk2.0-dev	

// tk 3.0 설치
$ sudo apt-get install -y libgtk-3-dev	

// qt 4.0 설치
$ sudo apt-get install -y libqt4-dev

 

4. OpenGL 지원패키지 설치

$ sudo apt-get install -y mesa-utils libgl1-mesa-dri libgtkgl2.0-dev libgtkglext1-dev

 

5. 파이썬에 필요한 OpenCV관련 패키지 설치

$ sudo apt-get install -y libatlas-base-dev gfortran libeigen3-dev
$ sudo apt-get install -y python2.7-dev python3-dev python-numpy python3-numpy

 

6. home디렉터리에 새로운 디렉터리 생성 후 이동

// 현재 위치에 opencv 라는 디렉터리 생성
mkdir opencv

// 해당 디렉터리로 이동
cd opencv

 

7. opencv 필요 패키지 다운로드 및 압축해제

// opencv 설치패키지 다운로드
$ wget -O opencv.zip https://github.com/opencv/opencv/archive/4.1.0.zip

//	압축 해제
$ unzip opencv.zip		

// opencv_contrib 설치패키지 다운로드
$ wget -O opencv_contrib.zip https://github.com/opencv/opencv_contrib/archive/4.1.0.zip	

//	압축 해제
$ unzip opencv_contrib.zip

        ( 옵션 ) 압축이 잘 풀렸나 확인. 아래와 같이 디렉터리 2개가 생성되어야 한다.

$ ls

 

8. 압축을 푼 디렉터리로 이동하여 build 디렉터리 생성 후 이동

$ cd opencv-4.1.0
$ mkdir build
$ cd build

 

9. 해당 디렉터리에서 OpenCV 컴파일 설정하기

$ cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTAL_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 ENABLE_NEON=ON  ?\
-D ENABLE_VFPV3=ON  ?\
-D WITH_QT=OFF  ?\
-D WITH_GTK=ON  ?\
-D WITH_OPENGL=ON  ?\
-D OPENCV_EXTRA_MODULES_PATH=../../opencv_contrib-4.1.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 ../

위와 같이 입력하고 엔터.
이렇게 진행한다.
끝날 때 위와같이 나타난다.

 

10. Swap 멀티코어 사용, 메모리 부족 대비

  - nano 편집기로 해당 파일을 연다

sudo nano /etc/dphys-swapfile

 - 기존의 것은 주석처리하고 사이즈를 20배(2048)으로 늘린다.

#...
# CONF_SWAPSIZE=100
CONF_SWAPSIZE=2048		// <= 메모리를 20배 확장
...

Ctrl+X - (Y)눌러서 저장 - 엔터

 

11. 변경한 SWAP 업데이트

// 이전 메모리 확인
$ free 										

// 스왑실행
$ sudo /etc/init.d/dphys-swapfile restart	

// 이후 메모리 확인
$ free

늘어난 것을 확인.

 

12. 컴파일 실행 (여기에서 엄청 오래 걸림 컴퓨터에 따라 몇시간? 도 걸림)

반응형
$ make

100%가 다 차면 완료

 

13. 컴파일 결과물을 설치

$ sudo make install

설치 완료

 

14. OpenCV 라이브러리를 찾을 수 있도록 명령

//  l(알파벳) 임.
$ sudo ldconfig

 

15. 설치가 끝났으니 다시 메모리를 100으로 원상 복귀

$ sudo nano /etc/dphys-swapfile

    아까 주석처리한 100을 해제하고, 2048을 주석처리, 그리고 저장.

 

16. Swap 재시작 변경 확인

// swap 재시작
$sudo /etc/init.d/dphys-swapfile restart

// 확인
$free

 

 

이제 라즈베리파이에 OpenCV를 설치했다.

Python코드를 작성하고, 카메라를 연결하여 사용할 수 있다.

 

 

https://link.coupang.com/a/j3JK2

"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."

 

라즈베리파이 4 4B 비주얼 개발 세트 OpenCV 얼굴인식 Pyth

COUPANG

www.coupang.com

 

https://link.coupang.com/a/j3JNR

 

기존 라즈베리 파이 4 모델 B 2 4 8GB RAM 옵션 9 레이어 아크릴 케이스 32GB TF 카드 스위치 전원 어댑

COUPANG

www.coupang.com

 

 

반응형

+ Recent posts