ติดตั้ง OpenCV 3.1.0 บน Raspberry Pi

[*** Updated : การติดตั้ง OpenCV 3.4 บน Raspbian Stretch (released 27-11-2017) ***]

ผมเคยเขียนเรื่องการติดตั้ง OpenCV กับ Raspberry Pi ไปแล้วครั้งหนึ่ง แต่เป็นการติดตั้งเพื่อให้ใช้งานได้กับ Python 2.7.9 เท่านั้น ทั้งที่ Raspbian รุ่นล่าสุด (
Release date: 2016-05-27) มีทั้ง Python2.7.9 และ Python 3.4.2 ให้ได้ใช้งาน 

หลังจากที่ได้ทดสอบด้วยตัวเองแล้วก็พบว่าการติดตั้งครั้งหลังสุดนี้สามารถใช้ OpenCV รุ่น 3.1.0 ได้ทั้ง Python 2.7.9 และ 3.4.2 ครับ  ขั้นตอนมีดังนี้

1. ติดตั้ง Raspbian รุ่นล่าสุดคือ release 2016-05-27 (https://www.raspberrypi.org/downloads/raspbian/) จะใช้ Raspbian Jessie หรือ Raspbian Jessie Lite ก็ตามสะดวก แต่หากเลือกใช้  Raspbian Jessie Lite ต้องทำการติดตั้ง XWindows ก่อน เพราะ OpenCV จะทำบน XWindows

2. ทำการ update 

sudo apt-get update
sudo apt-get upgrade
sudo rpi-update
3. ติดตั้ง Cmake (builder และ compiler)

sudo apt-get install build-essential cmake pkg-config git

4.ติดตั้ง dependencies

4.1 Image และ Video IO  เพื่อให้ OpenCV สามารถบันทึกหรืออ่านแฟ้มข้อมูลภาพหรือวิดิโอได้

sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev

4.2 ติดตั้ง HiGUI

sudo apt-get install libgtk2.0-dev libgtk-3-dev

4.3 ติดตั้ง module ทางคณิตศาสตร์

sudo apt-get install libatlas-base-dev gfortran

4.4 Python 2 และ 3 binder

sudo apt-get install python2.7-dev python3-dev


5. ดาวน์โหลด source code
5.1 OpenCV :

git clone https://github.com/opencv/opencv.git
5.2 OpenCV contribute อันนี้เป็นเป็นทางเลือกสำหรับท่านทีต้องการ module เพิ่มเติม ที่เขาต้องแยกออกมาก็เพราะ module เหล่านี้มีการปรับปรุงบ่อย จึงเป็นไปได้ว่าอาจจะไม่เสถียร เวลาปรับปรุงรุ่นจะได้ไม่กระทบต่อกัน และอีกเหตุผลคือการแยกระหว่าง non-free กับ free algorithm ออกจากกัน ดังนั้นเป็นไปได้ว่าจะมี algorithm ที่มีอยุ่ใน opencv-contribute บางรายการไม่สามารถนำไปใช้ในทางการค้าได้โดยไม่ได้รับอนุญาติจากเจ้าของลิขสิทธิ์ คงใช้ได้แต่เพื่อการศึกษาเท่านั้น ตรงนี้คงต้องตรวจสอบข้อมูลกันเองก่อนนะครับ

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

6 เริ่มทำการติดตั้ง

เข้าไปใน directory ของ opencv


 mkdir build
 cd build
 cmake -D CMAKE_BUILD_TYPE=RELEASE \
    -D CMAKE_INSTALL_PREFIX=/usr/local \
    -D INSTALL_PYTHON_EXAMPLES=ON \
    -D OPENCV_EXTRA_MODULES_PATH=/path/to/opencv_contrib-3.1.0/modules \
    -D BUILD_EXAMPLES=ON \
    -D WITH_OPENGL=ON \
    -D WITH_V4L=ON ..



รอจนเสร็จ ใช้เวลาประมาณ 3 นาที

make -j4 

ขั้นตอนนี้ใช้เวลาประมาณ 1 ชั่วโมง

make clean
make

ขั้นตอนนี้ใช้เวลาประมาณ 4 ชั่วโมง

sudo make install
sudo ldconfig

ขั้นตอนนี้ใช้เวลาประมาณ 5 นาที
 หลังจากนี้ท่านก็น่าจะสามารถทดลองใช้งาน OpenCV จากตัวอย่างทีี่เขาให้มาได้เลยครับ

ปล.
ในกรณีที่ติดตั้ง OpenCV รุ่นก่อนหน้านี้มาแล้วต้องทำการลบการติดตั้งเดิมออกก่อนโดย
1. กรณีที่ติดตั้งโดยการ compile source code ใช้คำสั่ง

sudo make uninstall

2. กรณีที่ติดตั้งด้วยคำสั่ง sudo apt-get install python-opencv มานั้น ตามที่ค้นมามีสองสามคำแนะนำ เช่น
sudo apt-get purgelibopencv* หรือ
sudo find / -name "*opencv*" -exec  rm -i {} \;

Previous
Next Post »

10 ความคิดเห็น

Write ความคิดเห็น
Unknown
AUTHOR
3 กรกฎาคม 2559 เวลา 02:53 delete

make -j4
make: *** No targets specified and no makefile found. Stop.
How t do kub ?

Reply
avatar
Somchai
AUTHOR
7 ธันวาคม 2559 เวลา 19:04 delete

แสดงว่ามี error ในขั้นตอนก่อนหน้าแล้ว

Reply
avatar
Somchai
AUTHOR
7 ธันวาคม 2559 เวลา 19:05 delete

แสดงว่ามี error ในขั้นตอนก่อนหน้าแล้ว

Reply
avatar
Unknown
AUTHOR
17 กันยายน 2560 เวลา 20:54 delete

ตอนที่ ทำขั้นตอน make -j4 แบ้วมีerror
make :*** notargets specified and no makefile found. stop.
เกิดจากขั้นตอนก่อนหน้าใช่ไหมครับ แล้วเราจะรู้ได้ยังไงว่ามันerrorที่ตัวไหน

Reply
avatar
ไม่ระบุชื่อ
AUTHOR
22 พฤศจิกายน 2560 เวลา 16:43 delete

นั่นสิ ผมก็เป็น

Reply
avatar
Somchai
AUTHOR
24 พฤศจิกายน 2560 เวลา 10:03 delete

อยากทราบว่ามี error อะไรบ้าง เข้าไปดูใน build/CmakeFiles/CMakeError.log ครับ

Reply
avatar
ไม่ระบุชื่อ
AUTHOR
28 พฤศจิกายน 2560 เวลา 23:29 delete

ผมลองใช้กับ Raspbian Jessie แล้วได้ครับ

Reply
avatar
noteqr
AUTHOR
11 กันยายน 2561 เวลา 16:14 delete

ผมลองตามก้อไม่ผ่านตอน make -j4

Reply
avatar
24 พฤศจิกายน 2561 เวลา 08:03 delete

ติดตั้งบน Raspbian Jessie ผ่าน แต่บน Raspbian stretch ไม่ได้ครับ ต้องทำยังไง

Reply
avatar
x
AUTHOR
13 พฤศจิกายน 2562 เวลา 09:43 delete

https://riptutorial.com/opencv/example/15781/build-and-install-opencv-from-source

เว็บนี้ใช้ได้

Reply
avatar