Raspberry pi4 에 OpenCV 가장 빠르게 설치하는 방법
영상 처리에 필수적으로 사용되는 라이브러리 OpenCV
OpenCV (Open Source Computer Vision)에 대하여 간단하게 말씀드리면 인텔에서 제공하는 다양한 영상 처리에 사용할 수 있는 오픈소스 라이브러리입니다. 무려 상업용으로도 사용 가능합니다. C, C++, Java, Python과 같은 다양한 언어를 지원하며 요즘엔 간단한 딥러닝 알고리즘들도 제공하고 있습니다.
가장 빠른 방법으로 OpenCV를 라즈베리파이 4에 설치해보겠습니다.
우선 아래 명령어를 사용하여 라즈베리파이를 업그레이드 합니다.
sudo apt-get -y update && sudo apt-get -y upgrade
sudo apt-get -y install python3-dev
소스를 내려받아 컴파일하고 빌드하는 방법은 시간이 너무 오래 걸립니다. 16시간도 걸리던데 물론 실패했는데 ㅠ.ㅠ... 여기서 사용하는 방법은 파이선을 위한 이미 빌트된 OpenCV 패키지를 설치하는 방법입니다. 10초도 안 걸립니다. ^^ 아래 참고 링크를 확인하세요.
설치하시기 전에 파이선 패키지를 먼저 설치합니다. 안하시면 다음과 같은 에러가 뜹니다. Module Not Found Error: No module named 'cv2'
pip3 install opencv-python
아래 명령어로 설치합니다.
pip3 install opencv-contrib-python==4.1.0.25
아래와 같이 금방 설치합니다.
pi@raspberrypi:~ $ pip3 install opencv-contrib-python==4.1.0.25
Looking in indexes: https://pypi.org/simple, https://www.piwheels.org/simple
Collecting opencv-contrib-python==4.1.0.25
Downloading https://www.piwheels.org/simple/opencv-contrib-python/opencv_contrib_python-4.1.0.25-cp37-cp37m-linux_armv7l.whl (15.7MB)
100% |████████████████████████████████| 15.7MB 28kB/s
Requirement already satisfied: numpy>=1.16.2 in /usr/lib/python3/dist-packages (from opencv-contrib-python==4.1.0.25) (1.16.2)
Installing collected packages: opencv-contrib-python
Successfully installed opencv-contrib-python-4.1.0.25
pi@raspberrypi:~ $
이렇게 설치하고 예제를 실행하는데 다음과 같은 에러 메시지 ImportError: libjasper.so.1: cannot open shared object file: No such file or directory, 혹은 E: Package 'libcblas-dev' has no installation candidate 에러가 난다면 다시 아래 두 개의 명령어를 순서대로 실행합니다.
pip3 install opencv-contrib-python
sudo apt-get install -y libatlas-base-dev libhdf5-dev libhdf5-serial-dev libatlas-base-dev libjasper-dev libqtgui4 libqt4-test
위 명령어는 간단하게 다음 명령어를 사용할 수 있습니다.
sudo apt-get install libatlas-base-dev
여기까지 설치를 재빠르게 하셨다면 테스트를 해야죠? 일단 아래 유명한 이미지를 다운 받으세요, 파일 이름은 lenna.png 입니다.
nano test.py 로 파일 하나를 작성합니다. 코드는 아래와 같습니다.
import cv2
img = cv2.imread("/home/pi/lenna.png")
cv2.imshow("Test",img)
img_canny = cv2.Canny(img, 50, 150)
cv2.imshow("Test img Edge", img_canny)
cv2.waitKey(0)
cv2.destroyAllWindows()
다음 명령어로 실행합니다. python3 test.py 혹은 sudo python3 test.py
정상적으로 실행이 잘 되면 아래 이미지처럼 아주 아름다운 이미지가 보일겁니다. 고생하셨습니다. ^^
참고
'개발자 > 라즈베리파이4' 카테고리의 다른 글
라즈베리파이 Wi-Fi is currently blocked by rfkill. 메시지 없애는 법 (0) | 2021.07.12 |
---|---|
라즈베리파이 부팅과 동시에 영상이나 이미지를 반복 재생하는 코드 (0) | 2021.07.05 |
라즈베리파이 부팅하면서 윈도우에서 자동 시작 (0) | 2021.06.30 |
라즈베리파이 화면 꺼짐 방지, GUI 모드에서 화면 보호기 설정 (0) | 2021.06.30 |
Raspberry Pi B+ Pinout 도표 (0) | 2021.03.24 |
OSMC 사용자 ID와 비밀번호 (0) | 2021.03.17 |
라즈베리파이 SPI 포트 사용 문제점, MAX31855 Interface with Raspberry Pi second SPI Port (0) | 2021.02.22 |
라즈베리파이 센서 데이터 수집 보드 v2.0 (0) | 2021.02.17 |
더욱 좋은 정보를 제공하겠습니다.~ ^^