یکی از بهترین و مجهزترین کتابخانههای پردازش تصویر که متن باز هم باشد، Open CV است. این کتابخانه که به زبان ++C/C نوشته شده است، دارای یک رابط برای زبان Python نیز هست که کار با آن را بسیار سادهتر میکند و البته سرعت پردازشی بالایی را نیز به نسبت بسیاری از کتابخانههایی که به صورت خالص در Python نوشته شده اند، فراهم میکند!
اما نصب آن یک دردسر بسیار بزرگ برای من بود! اما بالاخره موفق شدم تا آن را به صورتی کامل نصب کنم (مثالها به درستی اجرا میشدند! :) ). مراحل نصب در ذیل میآیند.
اما قبل از نصب، من از موتور تکلایو 2012 که به شیوه این پست آن را نصب کرده ام و از توزیع Anaconda Python استفاده میکنم که به صورت دستی و نه با استفاده از مخازن Ubuntu نصب شده اند. شاید یکی از مهمترین دلایل سخت بودن این فرایند برای من، همین دو موضوع بود! بگذریم ...
ابتدا لازم است تا به سایت رسمی OpenCV به آدرس http://opencv.org/downloads.html رفته و از آنجا نسخه مورد نظر خود را دریافت کنیم. در زمانی که این متن را مینویسم، نسخه 3 در مرحله Release Candidate 1 قرار داشت. من از نسخه 2.4.11 استفاده کردم!
سپس نوبت به نصب پیشنیازها میرسد. برای نصب موفق این بسته، این بستهها را نصب کردم:
sudo apt-get install build-essential libgtk2.0-dev libjpeg-dev libtiff4-dev libjasper-dev libopenexr-dev cmake libtbb-dev libeigen3-dev yasm libfaac-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev libx264-dev libqt4-dev libqt4-opengl-dev sphinx-common libv4l-dev libdc1394-22-dev libavcodec-dev libavformat-dev libswscale-dev default-jdk ant libvtk5-qt4-dev qt5-default libqt5x11* libx11-xcb1* pkg-config libxcb1-dev libxcb1 xcb
البته به احتمال خیلی زیاد، تعدادی از این بستهها لازم نیستند، اما این تمام بستههایی است که نصب شدند (در مراحل مختلف که خطایابی نصب انجام میشد) تا مثالها به درستی نصب شدند.
پس از آن، فایل دانلود شده در مرحله اول را از حالت فشرده باز کرده
unzip opencv-2.4.11.zip
و سپس پوشهای برای نگهداری اطلاعات build به نام build میسازیم (نام پوشه اصلا مهم نیست!)
cd opencv-2.4.11
mkdir build
پس از آن به پوشه مربوطه رفته
cd build
و دستور زیر را اجرا میکنیم. دقت کنید که مسیرهای مربوط به پایتون را در این دستور مطابق شرایط نصب خود تغییر دهید
cmake -D CMAKE_BUILD_TYPE=RELEASE -D PYTHON_LIBRARY=/opt/anaconda/lib/python2.7/ -D PYTHON_INCLUDE_DIR=/opt/anaconda/include/python2.7/ -D PYTHON_PACKAGES_PATH=/opt/anaconda/lib/python2.7/site-packages/ -D BUILD_EXAMPLES=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D WITH_VTK=ON ..
پس از اینکه خروجی را کنترل کرده و مطمئن شدیم همه چیز درست است (یعنی رابط پایتون نصب میشود :) )، آنگاه نوبت به فرایند build و سپس نصب میرسد
make -j 4
sudo make install
پس از آن، در فایل (ممکن است فایل وجود نداشت باشد، اگر نبود، یکی بسازید)
/etc/ld.so.conf.d/opencv.conf
آدرس
/usr/local/lib
را درج کرده و فایل را ذخیره میکنیم. سپس، برای پیکربندی کتابخانهها دستور
sudo ldconfig
را اجرا کرده و در فایل bashrc. موارد زیر را قرار میدهیم
export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/lib/x86_64-linux-gnu/qt5/plugins
export PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
با بازکردن یک کنسول جدید، یا خارج و وارد شدن مجدد به محیط کاربری، میتوانیم از صحت نصب با مراجعه به پوشه samples در پوشه opencv-2.4.11 و اجرای موفق مثالها، مطمئن شویم که نصب به درستی صورت پذیرفته است!