20 มีนาคม 2558

Published มีนาคม 20, 2558 by with 0 comment

ติดตั้ง OpenCV ใน Python 3 บน Debian/Ubuntu

สวัสดีผู้อ่านทุกท่านครับ ปัจจุบัน OpenCV ได้รองรับ Python 3 มาระยะหนึ่งแล้ว ในรุ่น OpenCV 3 ที่กำลังอยู่ในช่วงพัฒนา บทความนี้จะพาผู้อ่านไปใช้ OpenCV ใน Python 3 บน Debian/Ubuntu กันครับ

คำเตือน บทความนี้เหมาะสำหรับผู้ที่เคย make โปรแกรมบน Debian/Ubuntu
มาก่อน และเครื่องที่ใช้งานควรมีสเปคที่สูงครับ และ OpenCV 3 ที่โหลดมายังเป็นเวชั่นสำหรับนักพัฒนา หากมีการปล่อยเวชั่นเสถียนโปรดทำการอัพเดท  OpenCV 3 ด้วยครับ

อย่างแรกให้ทำการติดตั้ง Python 3 ก่อนครับ http://doubuntu.wannaphong.com/?p=55
แล้วใช้คำสั่งล็อกค่าคำสั่ง python ให้เป็นของ Python 3 ไม่ใช่ Python 2 (ไม่จำเป็นต้องทำก็ได้)
$ alias python=python3
$ sudo ln -fs /usr/local/bin/python3.4 /usr/bin/python

ทำการกำหนดค่า Python 3 แล้วทำการติดตั้งไลบรารีที่จำเป็น
$ sudo apt-get install build-essential cmake git libgtk2.0-dev
pkg-config libavcodec-dev libavformat-dev libswscale-dev python3-dev
python3-tk python3-numpy

และให้ทำการลง ffmpeg กับ gstreamer ก่อนลงมือ make ด้วยครับ เพื่อไม่ให้มีปัญหาเกี่ยวกับ videoio ตามมาภายหลังครับ
ขอขอบคุณท่าน Thanathip Limna ที่แจ้งเข้ามาครับ

ในการติดตั้ง ffmpeg สามารถทำการติดตั้งได้ตามลิงค์นี้ครับ http://doubuntu.wannaphong.com/?p=368

ส่วน gstreamer สามารถติดตั้งได้ดังนี้ครับ
sudo add-apt-repository ppa:mc3man/trusty-media
sudo apt-get update
sudo apt-get install gstreamer0.10-ffmpeg

เสร็จแล้วโหลดโค้ด OpenCV จาก https://github.com/Itseez/opencv/archive/master.zip ใช้คำสั่ง
$ wget https://github.com/Itseez/opencv/archive/master.zip

แล้วแตกไฟล์
$ unzip master.zip

เสร็จแล้วใช้คำสั่ง cd เข้าไปยังโฟลเลอร์ opencv-master
$ cd opencv-master

แล้วใช้คำสั่ง
$ mkdir release
$ cd release

เราจะสร้างโฟลเลอร์ release สำหรับใช้เก็บไฟล์ make opencv ครับ แล้วลงมือ make opencv กันครับ
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=$(python3
-c "import sys; print(sys.prefix)") -D PYTHON_EXECUTABLE=$(which
python3) ..
$ make -j4
$ sudo make install

หลังจากนั้นเรามาลองเรียกใช้ OpenCV ใน Python กันดูครับ
$ python3
Python 3.4.0 (default, Apr 11 2014, 13:05:18)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__file__
'/usr/local/lib/python3.4/dist-packages/cv2.cpython-34m.so'
>>> cv2.__version__
'3.0.0-dev'

หากผู้อ่านใช้ Python 2 ให้เปลี่ยนคำสั่งจากคำสั่งเดิม
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=$(python3
-c "import sys; print(sys.prefix)") -D PYTHON_EXECUTABLE=$(which
python3) ..

เป็น
$ cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=$(python2
-c "import sys; print sys.prefix") -D PYTHON_EXECUTABLE=$(which
python2) ..

ติดตามบทความต่อไปนะครับ
ขอบคุณครับ

0 ความคิดเห็น:

แสดงความคิดเห็น

แสดงความคิดเห็นได้ครับ :)