วิธีการติดตั้ง OpenCV บน Raspberry Pi 4 Model B

 

1. ติดตั้ง Packages สำหรับ OpenCV

1.1 อันดับแรกเราควรที่จะ Update packages ให้เป็นเวอร์ชั่นปัจจุบันก่อน ให้ใช้คำสั่งนี้ เพื่อ Update ตัว packages

sudo apt update
sudo apt upgrade

1.2 คำสั่งนี้จะติดตั้ง packages ที่มีเครื่องมือที่จำเป็นในการเข้ารหัส OpenCV

sudo apt install cmake build-essential pkg-config git

1.3 ติดตั้ง packages ที่จะเพิ่มการ Support สำหรับรูปภาพและวิดีโอที่แตกต่างจากตัว OpenCV

sudo apt install libjpeg-dev libtiff-dev libjasper-dev libpng-dev libwebp-dev libopenexr-dev    
sudo apt install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libxvidcore-dev libx264-dev libdc1394–22-dev libgstreamer-plugins-base1.0-dev libgstreamer1.0-dev 

 1.4 ต่อไปคือการติดตั้งแพคเกจทั้งหมดที่จำต่อ OpenCV โดยใช้คำสั่งด้านล่าง

sudo apt install libgtk-3-dev libqtgui4 libqtwebkit4 libqt4-test python3-pyqt5

1.5 แพ็คเกจถัดไปมีความสำคัญสำหรับ OpenCV ในการ Run ด้วยความเร็วที่เหมาะสมบน Raspberry Pi

sudo apt install libatlas-base-dev liblapacke-dev gfortran

1.6 ติดตั้งแพ็คเกจ HDF5

sudo apt install libhdf5-dev libhdf5–103

1.7 แพ็กเกจนี้จะช่วยให้ตัว OpenCV Support กับตัว Python ใน Raspberry Pi

sudo apt install python3-dev python3-pip python3-numpy

2. เตรียม Raspberry Pi สำหรับ Compiling OpenCV

2.1 เริ่มแก้ไขการกำหนดค่าไฟล์ โดยใช้คำสั่งนี้

sudo nano /etc/dphys-swapfile

2.2 หาบรรทัดของ

CONF_SWAPSIZE=100

2.3 เปลี่ยนเป็น

CONF_SWAPSIZE=2048

2.4 หลังจากเปลี่ยนเรียบร้อยทำการ Save ไฟล์ 

โดยกดปุ่ม Ctrl + X หลังจากนั้นกด Y และ Enter

2.5 เนื่องจากเราได้เปลี่ยนแปลงค่าของ swapfile เราต้อง Restart swapfile โดยใช้คำสั่งนี้

sudo systemctl restart dphys-swapfile

2.6 ต่อไปมาทำ Clone OpenCV ใน Github เพื่อมาใช้ใน Raspberry Pi

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

3. Compiling OpenCV บน Raspberry Pi

3.1 เริ่มต้นด้วยการสร้าง directory ที่ชื่อว่า “build” ภายในโฟลเดอร์ “opencv” ที่ Clone แล้วเปลี่ยน directory การทำงาน

mkdir ~/opencv/build
cd ~/opencv/build

3.2 ตอนนี้เราอยู่ในโฟลเดอร์ build ที่สร้างขึ้นใหม่เราสามารถใช้ cmake เพื่อเตรียม OpenCV สำหรับการคอมไพล์บน Raspberry Pi

cmake -D CMAKE_BUILD_TYPE=RELEASE \-D CMAKE_INSTALL_PREFIX=/usr/local \-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \-D ENABLE_NEON=ON \-D ENABLE_VFPV3=ON \-D BUILD_TESTS=OFF \-D INSTALL_PYTHON_EXAMPLES=OFF \-D OPENCV_ENABLE_NONFREE=ON \-D CMAKE_SHARED_LINKER_FLAGS=-latomic \-D BUILD_EXAMPLES=OFF ..

3.3 การแบบนี้จะช่วยเพิ่มความเร็วในการ คอมไพล์และอนุญาตให้แต่ละ Core ของ Raspberry Pi ช่วยในการคอมไพล์ OpenCV

make -j$(nproc)

3.4 เมื่อคอมไพล์เสร็จเรียบร้อยแล้วให้ใช้คำสั่งนี้

sudo make install

3.5 Raspberry Pi จะไม่พบการติดตั้ง OpenCV ของเราถ้าไม่เรียกใช้คำสั่งต่อไปนี้

sudo ldconfig

4. คืนค่าของไฟล์ swapfile

4.1 ตอนนี้เรา Compiling OpenCV เสร็จแล้ว เราต้องคืนค่ากลับให้เป็นเหมือนเดิม เพื่อที่่จะไม่ให้ไฟล์ swapfile มีขนาดใหญ่เกินไป

sudo nano /etc/dphys-swapfile

4.2 หาบบรรทัดของ

CONF_SWAPSIZE=2048

4.3 เปลี่ยนเป็น

CONF_SWAPSIZE=100

4.4 หลังจากเปลี่ยนเรียบร้อยทำการ Save ไฟล์ 

โดยกดปุ่ม Ctrl + X หลังจากนั้นกด Y และ Enter

4.5 เมื่อเปลี่ยนค่าเรียบร้อยแล้วให้ Restart ไฟล์ swapfile อีกครั้ง

sudo systemctl restart dphys-swapfile

5. ทดสอบ OpenCV บน Raspberry Pi

5.1 เปิด Terminal บน Raspberry Pi และใช้คำสั่งนี้

python3

5.2 Import โมดูล OpenCV โดยใช้คำสั่งด้านล่าง

import cv2

5.3 เมื่อ Import ไปแล้วไม่มี Erorr แสดงว่าสามารถลง โมดูล OpenCV ได้เสร็จเรียบร้อยแล้ว ใช้คำสั่งนี้เพื่อตรวจสอบ เวอร์ชั่นของ OpenCV

cv2.__version__

 

เพียงเท่านี้เราก็ได้ โมดูล OpenCV บน Raspberry Pi มาใช้แล้วครับ

แหล่งอ้างอิงมาจากคุณ Emmet

 

 

 

 

 

 

 


 

 

ความคิดเห็น

บทความที่ได้รับความนิยม