سیستم عامل

در این آموزش نصب اوپن سی وی را بر روی سیستم عامل لینوکس توزیع اوبونتو انجام می دهیم، دلیل این انتخاب سادگی توسعه ی نرم افزار ها در سیستم عامل لینوکس نسبت به ویندوز است. البته اوپن سی به صورت مشترک در چهار نسخه ی ویندوز، لینوکس، آندروید و IOS ارائه می شود. آدرس گیت هاب OpenCV منبع رسمی توسعه ی سورس کد آن می باشد.

لینوکس توزیع اوبونتو

اوبونتو یک توزیع لینوکس کاربرپسند است و توانسته رشد بالایی در جذب کاربران ویندوز و تازه‌کار داشته باشد و پشتیبانی نسبتاً خوبی از تمام زبان‌های زنده دنیا از جمله زبان فارسی دارد.[ویکی‌پدیا] توزیع اوبونتو دارای منابع غنی نرم افزاری و پکیج های آماده است که به صورت متن باز و رایگان از طریق این سیستم عامل در دسترس هستند.

مینی PC ها

در صورتی که از بورد های توسعه ای نظیر رسپری پای و کوبی برد استفاده می کنید مراحل نصب زمان بر خواهد بود (استفاده از هت سینک الزامی می باشد)، البته پیشنهاد می شود در چنین برد هایی نصب از طریق مخزن به جای کامپایل و نصب از طریق سورس استفاده شود. همچنین برای تست برنامه ها و مثال های اجرا شده می توانید از لینوکس نصب شده بر روی ماشین مجازی و یا بر روی پارتیشن جداگانه ی PC استفاده کنید. آموزش زیر با سیستم عامل اوبونتوی ماشین مجازی راه اندازی و تست شده است.

یکی از دلایل کار توسعه دهنده ی نرم افزار ها با لینوکس این است که برد های مینی PC تنها از لینوکس بعنوان سیستم عامل فعال و پایدار پشتیبانی می کنند. البته نسخه ای از ویندوز برای برخی برد ها توسعه داده شده است اما این نسخه در مقابل معادل لینوکس آن کار زیادی در پیش دارد.

معرفی OpenCV

اوپن سی وی یا همان Open Computer Vision Library مجموعه ای از کتابخانه‌های برنامه‌نویسی پردازش تصویر و یادگیری ماشین است اوپن سی وی کتاب‌خانه‌ای چندسکویی است و توسط سیستم عامل‌های ویندوز، لینوکس، مک اواس، آی او اِس و اندروید پشتیبانی می‌شود. همچنین دارای رابط برنامه‌نویسی به زبان‌های سی، سی++، پایتون، جاوا و متلب می‌باشد [ویکی‌پدیا]. اوپن سی وی در کابرد های بینایی ماشین و تسریع در ادارک ماشین یک ساختار متدوال برای محصولات تجاری است.

نسخه های OpenCV

در ۲۰ نوامبر ۲۰۱۸ پس از تقریباً ۳.۵ سال از زمان انتشار نسخه ی اول ۳.۰، باعث خوشحالی است که نسخه ی پایدار ۴.۰ ارائه شد. با این انتشار شاخه ی ۳.۴ به حالت نگهداری تغییر پیدا کرد، تنها تعمیرات خطاها و ویژگی های سبک برای آن مورد انتظار خواهند بود. از این رو این نسخه می تواند سکوی مناسبی برای توسعه ی کم عیب و پایدار توسعه دهنده ها برگزیده شود ولی نسخه های ۴.۰ و انتشار های بعد از آن بیشتر برای ویژگی های نوین و تست آخرین دستآورد های حوزه ی بینایی ماشین تمرکز خواهند داشت. از نسخه ی ۴.۰ به بعد بیشتر بستر های نرم افزاری OpenCV 1.x که به زبان C هستند حذف شده اند.

پیش نیاز های OpenCV

  • GCC 4.4.x و یا نسخه های بالاتر
  • CMake 2.6 و یا نسخه بالاتر
  • Git
  • GTK+2.x و یا نسخه های بالاتر (شامل libgtk2.0-dev)
  • pkg-config
  • Python 2.6 و Numpy 1.5 و یا نسخه های جدید تر به همراه بسته های توسعه ی (python-dev, python-numpy)
  • بسته های توسعه ی ffmpeg و libav و بسته های libavcodec-dev, libavformat-dev, libswscale-dev
  • اختیاری  libdc1394 2.x
  • اختیاری  libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev

تمام پیش نیاز ها به راحتی توسط بخش سیناپتیک و یا ترمینال لینوکس (دستور apt-get) قابل نصب هستند. در این مرحله برای نصب اقدام نکنید در ادامه ی آموزش تمام پیش نیاز ها نصب خواهند شد.

دانلود OpenCV

به کتابخانه ی OpenCV از دو طریق می توانید دسترسی داشته باشید. کاربران عادی و حتی حرفه ای برای اینکه به مشکلات و خطا های احتمالی در حین نصب و استفاده برخورد نکنند از نسخه ی پایدار این کتابخانه استفاده می کنند.

نسخه پایدار OpenCV

سایت OpenCV لیستی از نسخه های ارائه شده به همراه توضیحات لازم منتشر کرده است و کاربران می توانند با مراجعه به این لینک نسخه های مورد نظر را دانلود نمایند، بعنوان نمونه:

4.0.0  لینک  تگ گیت هاب| Documentation | Sources | Win pack | iOS pack

کاربران برای دسترسی مستقیم به نسخه های موجود در مخزن می توانند به لینک گیت هاب OpenCV مراجعه نمایند.

نسخه ی ناپایدار Upstream

این نسخه به علت اینکه دائما در حال توسعه است هیچ گاه برای دانلود و نصب توصیه نمی شود، برای دسترسی به مخزن و دانلود می توانید به مخزن OpenCV مراجعه نمایید، همچنین توسط دستور Clone دانلود کنید:

cd ~/
git clone https://github.com/opencv/opencv.git

استخراج OpenCV

بعد از دانلود کتابخانه آن را در پوشه ای از شاخه ی Home استخراج کنید:

آموزش نصب opencv در لینوکس

نصب پیش نیاز ها

پیش نیاز ها بسته ها و نرم افزار هایی هستند که برای نصب و پیکربندی OpenCV ضروری هستند. نصب پیش نیاز ها توسط ترمینال یا محیط سیناپتیک قابل انجام است.

تست شده در تمامی نسخه های اوبونتو، در نسخه ی اوبونتو 16.04 از apt به جای apt-get استفاده کنید.

نصب بسته ها به صورت تکی دقت زیادی می خواهد و برای کاربرانی که قصد آشنایی با همه ی پیش نیاز ها به صورت تکی دارند مفید است.

معمولا نصب متوالی بسته ها پیشنهاد می شود، همه ی دستورات در سه خط ترمینال خلاصه شده وتنها کافیست نصب موفقیت آمیز بسته ها در انتهای هر مرحله بررسی شود.

نصب متوالی بسته ها

برای نصب متوالی و یکجا، در سه مرحله خطوط دستورات زیر را در ترمینال کپی و Enter بزنید، تا انتهای دانلود و نصب منتظر بمانید و سراغ خط بعدی بروید.

sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev li

نصب تکی بسته ها

در هر مرحله می توانید نام بسته مورد نظر را به جای کپی در ترمینال، در سیناپتیک جستجو و نصب کنید. در ادامه آموزش تنها دستورات را در ترمینال کپی و نصب می کنیم.

در صورتی که نصب متوالی بسته ها را انجام داده اید نیازی به نصب تکی بسته ها ندارید.

نصب پیش نیاز های opencv، مانند build_essential و cmake و pkg در لینوکس

بسته های build-essential و cmake برای انجام مراحل نصب ضروری هستند:

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

و کتابخانه ی های مرتبط با I/O تصویر:

sudo apt-get -y install libjpeg62-dev
sudo apt-get -y install libtiff4-dev libjasper-dev

و کتابخانه ی های مرتبط با GTK:

sudo apt-get -y install  libgtk2.0-dev

و کتابخانه ی های مرتبط با I/O ویدئو:

sudo apt-get -y install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev

و بسته های اختیاری، پشتیبانی از Video Camera:

sudo apt-get -y install libdc1394-22-dev

و بسته های اختیاری، کتابخانه Video Streaming:

sudo apt-get -y install libxine-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev

و بسته های اختیاری، کتابخانه Python  و Python Numerical:

sudo apt-get -y install python-dev python-numpy

و بسته های اختیاری، کتابخانه Parallel Code Processing:

sudo apt-get -y install libtbb-dev

و بسته های اختیاری، کتابخانه Qt :

sudo apt-get -y install libqt4-dev

ساخت فایل ها و نصب

خطوط انتهایی اجرای هر دستور را برای بررسی خطا های احتمالی چک کنید. اکنون تمام پیش نیاز ها نصب شده و می توانید ساخت فایل ها و نصب را شروع کنید.

نسخه ای که دانلود کرده اید، از حالت فشرده خارج کرده و در مسیر Documents قرار دهید. این آموزش با نسخه ی ۲.۴ انجام شده است.

محتویات پوشه ی سورس OpenCV

اجرای دستور Cmake

با دستور cd داخل پوشه ی OpenCV بروید(در اینجا نسخه ی ۲.۴ مد نظر است)، سپس پوشه ی build را در آنجا ساخته و با دستور cd داخل پوشه build بروید، خط بعدی دستور cmake است که می توانید با کپی به ترمینال و فشردن کلید Enter دستور را اجرا کنید.

cd OpenCV-2.4.*
mkdir build
cd build

cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -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 ..
ساخت پوشه ی Build OpenCV

معمولا اجرای دستور Cmake با خطا مواجه می شود و علت آن نبود پیش نیاز های دینامیک وابسته به نسخه ی OpenCV می باشد. بنابرین پیشنهاد می شود از رابط کاربری Cmake برای پیکربندی راحت تر استفاده کنید.

در صورت بروز خطا در مراحل نصب، بسته های پیش نیاز را دوباره چک کرده و در صورت لزوم می توانید نسخه ی سورس OpenCV را تغییر دهید. برخی نسخه های OpenCV در مراحل نصب با خطا هایی همراه می شوند، معمولا در نسخه های Upstream بیشتر به چشم می خورد.

در صورت خطا به جای دستور Cmake می توانید از دستور زیر استفاده کنید:

 cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

دو نقطه ی انتهایی دستور Cmake را حذف نکنید.

در مواردی در حین مراحل نصب، به بسته ی ippicv به عنوان ماژول افزودنی برای OpenCV نیاز خواهید داشت. برای دانلود این بسته توسط دستور Cmake باید ارتباط اینترنت شما مجهز به پروکسی باشد تا در صورت نیاز بسته های لازم توسط Cmake دانلود و نصب شوند.
اجرای cmake برای OpenCV

اجرای دستور make

sudo make
مراحل اجرای cmake در OpenCV

اجرای دستور make install

sudo make install

جمع بندی

این آموزش نصب از طریق سورس را آموزش داد، این نصب زمان بر است ولی شما می توانید با نصب از طریق سورس آخرین نسخه ی OpenCV یا نسخه ی مد نظر خود را بر روی سیستم نصب کنید. روش دیگری با عنوان نصب از طریق مخازن (repository) وجود دارد که سریع تر است ولی در این روش نسخه ای از اپن سی وی نصب خواهد شد که در مخزن موجود است. شما میتوانید با جستجوی کلید واژه ی OpenCV در نرم افزار سیناپتیک نسخه ی موجود در مخزن را بررسی و نصب نمایید.

0 پاسخ

دیدگاه خود را ثبت کنید

تمایل دارید در گفتگوها شرکت کنید؟
در گفتگو ها شرکت کنید.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *