پیش نیاز ها
- ابتدا باید کامپایلر Eclipse را همراه با افزودنی CDT نصب کنید، این افزودنی مربوط به C++/C بوده و ما را قادر میسازد کامپایل و خطا یابی را در کامپایلر انجام دهیم. برای نصب کافیست به آموزش کامپایلر اکلیپس مراجعه نمایید.
- قبل از هرگونه پیکر بندی بایستی از نصب کتابخانه های OpenCv اطمینان حاصل فرمایید، برای نصب کافیست به آموزش نصب OpenCv مراجعه نمایید.
ساخت پروژه
هم اکنون با باز کردن اکلیپس، یه پروژه ی جدید بسازید:
File -> New -> C/C++ Project
- با انتخاب نام مناسب برای نوع Empty Project، می توانید مجموعه ی Toolchain دلخواه را انتخاب فرمایید، دقت کنید در لینوکس Linux GCC پیشنهاد می شود.
- موارد باقی را رها کرده و بر روی کلید پایان کلیک کنید.
- در پنجره ی مربوطه به Project Explorer فایل جدیدی به عنوان فایل اصلی برنامه ، به عنوان مثال main.cpp ایجاد کنید، این فایل در زیر شاخه ی مربوط به پروژه ی شما قرار خواهد گرفت.
بارگزاری کد نمونه
main.cpp حاوی کد های مورد نظر شما برای اجرا خواهد بود. با قرار دادن کد نمونه در فایل فوق، ادامه ی پیکربندی را انجام دهید.
#include #include using namespace std; using namespace cv; /* * that OpenCV functions live within a namespace called cv. * To call OpenCV functions, you must explicitly tell the * compiler that you are talking about the cv namespace by * prepending cv:: to each functioncall. */ int main(int argc, char** argv) { // Mat img = imread( argv[1], -1 ); // add image address on command line and press Enter. // Or use Test.jpg on Project Dir .!. Create file then Compile Project Mat img = imread("Test.jpg", -1); namedWindow("Win1", WINDOW_NORMAL); imshow("Win1", img); char a= waitKey(0); cout<<"END"<تذکر: قبل از ادامه روند کار ، گام به گام کد را مورد بررسی قرار دهید، مواردی همچون ورودی در کد بالا پیش فرض فایل Test.jpg در محل اجرای پروژه است، ممکن است با انتقال اشتباه فایل در آدرسی دیگر و یا خطای نام گذاری فایل قادر به اجرای کد نباشید. امکان تغییر به حالت ورودی ترمینال نیز با برداشتن علایم // از ابتدای تعاریف مربوط به (Mat img = imread( argv[1], -1 وجود دارد ( دستور مربوط به ورودی Test.jpg را نیز غیر فعال کنید).
#include using namespace cv; int main( int argc, char** argv ) { Mat image; image = imread( argv[1], 1 ); if( argc != 2 || !image.data ) { printf( "No image data \n" ); return -1; } namedWindow( "Display Image", WINDOW_AUTOSIZE ); imshow( "Display Image", image ); waitKey(0); return 0; }
تنظيمات پروژه
هم اکنون در قسمت Project Explorer بر روی شاخه ی اصلی پروژه کلیک کنید و با راست کلیک Properties را انتخاب کنید و یا مستقیماً در پروژه ی مورد نظر از طریق منوی زیر عمل کنید.
Project–>Properties
در بخش C/C++ Build بر روی Settings رفته و در بخش راست، تب Tool Settings را برگزیده، اطلاعات زیر را وارد کنید.
اضافه کردن مسیر Include
در شاخه ی GCC C++ Compiler به زیر شاخه ی Includes رفته و مسیر نصب OpenCV را در (Include paths(-l وارد کنید. در مثال ما :
-
/usr/local/include/opencv
تذکر: در صورت بی اطلاعی از محل نصب، با باز کردن ترمینال لینوکس دستور زیر را وارد کنید:
pkg-config --cflags opencv
در نتیجه خواهید داشت :
-I/usr/local/include/opencv -I/usr/local/include
به آدرس بعد از I- توجه کنید و در بخش مربوطه وارد کنید (به تصویر دقت کنید).
اضافه کردن مسیر Library
هم اکنون در شاخه ی مربوط به GCC C++ Linker موارد زیر را انجام دهید.
ابتدا در بخش (Library search path (-L آدرس مربوط به کتابخانه های OpenCv را قرار دهید :
/usr/local/lib
سپس در (Libraries(-l مواردی از کتابخانه های OpenCv که نیاز دارید را وارد کنید، برای کاربرد های ساده تنها سه کتابخانه ی Core,HighGUI,ImgProc کافی است.
تذکر: در صورت بی اطلاعی از اسامی کتابخانه ها، با باز کردن ترمینال لینوکس دستور زیر را وارد کنید:
pkg-config --libs opencv
خروجی به ترتیب زیر خواهد بود :
-L/usr/local/lib -lopencv_core -lopencv_imgproc -lopencv_highgui -lopencv_ml -lopencv_video -lopencv_features2d -lopencv_calib3d -lopencv_objdetect -lopencv_contrib -lopencv_legacy -lopencv_flann
اجرای build all
بعد اتمام لیست (به شکل بالا توجه کنید) ، بر روی تایید کلیک کرده و پروژه ی خود را Build all کنید، در صورت خطا در لیست خطا ها، برای کتابخانه ای خاص، میتوانید آنرا از لیست پاک کنید (اگر از موارد ضروری پروژه نباشند) و یا نسبت به نصب دوباره آن اقدام نمایید.
اجرای پروژه
هم اکنون شما میتوانید پروژه ی خود را اجرا کنید، برای اجرای SuperUser بازکردن پوشه ی Debug پروژه توسط ترمینال لینوکس و وارد کردن دستور Sudo su الزامی است، سپس با وارد کردن خط دستور /. قبل از نام پروژه در پوشه ی Debug ( که اکثرا با رنگ سبز به نمایش در می آید) آن را اجرا کنید.
دیدگاه خود را ثبت کنید
تمایل دارید در گفتگوها شرکت کنید؟در گفتگو ها شرکت کنید.