.pro setting for debugging a simole opencv program with Qt creator
-
p{direction:rtl; text-align: right}. به نظرم مسیر دهی LIBS اشتباهه.
پارامتر -L مسیر رو مشخص میکنه و بعد از اون با -l باید نام lib داده بشه و برای لایبرری های دیگه هم باید همینطور تکرار بشه.@
LIBS += -LC:\OpenCV2.2\lib -lopencv_core220
-LC:\OpenCV2.2\lib -lopencv_highgui220
-LC:\OpenCV2.2\lib -lopencv_imgproc220
-LC:\OpenCV2.2\lib -lopencv_features2d220
-LC:\OpenCV2.2\lib -lopencv_calib3d220
@[quote author="soroush" date="1355162602"] تفاوت جداکنندهٔ مسیر و خط چیه؟[/quote]
p{direction:rtl; text-align:right}. چون qmake فاصله در path رو ساپورت نمیکنه بنابراین \ به عنوان جدا کننده درنظر گرفته میشه. مسیر ها هم برای windows مشکلی نداره ولی با / بهتره.
-
p{direction:rtl; text-align:right}. سلام من تنظمیات زیر رو به کار بردم الان خطاها برطرف شد و فقط یک خطا به خاطر 64 بیتی یا 32 بیتی بودن داره
@
QT += coreQT -= gui
TARGET = aa
CONFIG += console
CONFIG -= app_bundleTEMPLATE = app
SOURCES += main.cpp
INCLUDEPATH += C:/OpenCV2.2/include\
LIBS += -LC:/OpenCV2.2/lib -lopencv_core220 \
-LC:/OpenCV2.2/lib -lopencv_highgui220 \ -LC:/OpenCV2.2/lib -lopencv_imgproc220 \ -LC:/OpenCV2.2/lib -lopencv_features2d220 \ -LC:/OpenCV2.2/lib -lopencv_calib3d220
@
خطایی که مشاهده می شه :
opencv_highgui220.lib(opencv_highgui220.dll):-1: error: LNK1112: module machine type 'X86' conflicts with target machine type 'x64' -
p{direction:rtl; text-align:right}. خوب این که دیگه مشخصه. OpenCV برای x86 کامپایل شده و شما میخواهید با کیوت x64 لینکش کنید.
-
p{direction:rtl; text-align:right}. من لپ تاپ 64 بیتی دارم و وقتی که opencv و qtcreator رو نصب می کنم انتخابی ندارن که کامپیوتر چند بیتی هست ؟ الان چکار می تونم بکنم ؟
دوباره هم که اینا رو نصب کنم باز همین مشکل هست. -
p{direction:rtl; text-align:right}. البته من برای opencv از روشی استفاده کردم که برای 64 بیتی ها کار می کنه
و از فایل زیر استفاده کردم
OpenCV-2.2.0-win32-vs2010_3.exe -
p{direction:rtl; text-align:right}. شما نمیتونید لایبرری هایی که با کامپایلر 32 بیت کامپایل شده باشن رو توسط کامپایلر 64 بیتی لینک کنید. همچنین همونطور که سروش قبلا توضیح داده نمیتونید لایبرری هایی که با کامپایلر دیگری کامپایل شده باشن رو لینک کنید. لایبرری های OpenCV شما حتما باید با همان bitness و کامپایلری که برای کیوت استفاده شده کامپایل شده باشه. در غیر اینصورت قادر به استفاده از اونها نخواهید بود.
این فایلی هم که نوشتید از اسمش مشخصه که برای 32 بیت هست. -
p{direction:rtl; text-align:right}. ببخشید یه سوال شما تا حالا در محیط ویندوز opencv رو با qt creator اجرا کردید ؟ می تونم خواهش کنم که Pdf نصبش رو برای منم بفرستید ؟
-
p{direction:rtl; text-align:right}. !
-
p{direction:rtl; text-align:right}. هدف من از کار با opencv بدست آوردن Homography و استفاده از توابع SIFT و SURF هست.
البته من opencv2.4.3 رو هم در محیط linux ubunto نصب کردم ولی هنوز موفق نشدم که هموگرافی رو بدست بیارم.
از کسی که پرسیدم گفت این کار با ویندوز و استفاده از qt creator راحت تره .
برای همین من اومدم تو ویندوز opencv2.4.3 نصب کنم
اما نشد و در فایل هایی که روی سایت opencv بود خطا وجود داشت چون قدیمی بودن و آپدیت نشده بودن .
برای همین به ناچار از opencv2.2 که قبلا نصب کرده بودم استفاده می کنم.
اگه نظری دارید لطفا توضیح بدین. -
p{direction:rtl;text-align:right}. من خیلی دوست دارم که برای راه اندازی کیوت و OpenCV کمکتون کنم اما فرصت توضیح اونها رو ندارم. اگرچه توضیحاتی که تو این تاپیک داده شد برای راه افتادن کارتون کافیه ولی اگر اینها رو هم نتونید درک کنید باید در اینترنت کمی در مورد لینک کردن در ++c و استفاده از لایببری های static و dynamic مطالعه کنید چون اینها اصلا مربوط به کیوت نمیشه بلکه مربوط به کامپایلر ها و ++c هست.
-
ممنون
-
[quote author="sara_2005" date="1355224754"]p{direction:rtl; text-align:right}. هدف من از کار با opencv بدست آوردن Homography و استفاده از توابع SIFT و SURF هست.
البته من opencv2.4.3 رو هم در محیط linux ubunto نصب کردم ولی هنوز موفق نشدم که هموگرافی رو بدست بیارم.
از کسی که پرسیدم گفت این کار با ویندوز و استفاده از qt creator راحت تره .
برای همین من اومدم تو ویندوز opencv2.4.3 نصب کنم
اما نشد و در فایل هایی که روی سایت opencv بود خطا وجود داشت چون قدیمی بودن و آپدیت نشده بودن .
برای همین به ناچار از opencv2.2 که قبلا نصب کرده بودم استفاده می کنم.
اگه نظری دارید لطفا توضیح بدین.[/quote]p{direction:rtl; text-align:right}. من از OpenCV با کیوت توی لینوکس بهراحتی استفاده میکنم. مشکلی نباید داشته باشی. کیوت برای ویندوز نسخهٔ ۶۴بیتی منتشر نمیکنه اما توی لینوکس میتونی ۶۴ بیتی رو داشته باشی (هم کیوت و هم OpenCV) چون تمام پکیجهای سیستم توی لینوکس از یک سیستم یکپارچه هستن مشکلاتی از این دست پیش نمیاد. من شخصاً تا حد امکان از برنامهنویسی تحت ویندوز مخصوصاً با ابزار متنباز (مثل کیوت و اوپنسیوی) دوری میکنم. چه لزومی داره خودتو با این همه پیچیدگی و دردسر درگیر کنی؟
-
p{direction:rtl; text-align:right}. من الان چند روز هست که به این نتیجه رسیدم و opencv2.4.3 رو تو لینوکس نصب کردم .
الان به دنبال نصب qt و lib هاش در محیط linux و هستم. موقعی که از نرم افزارهای خود لینوکس می خواهم که این چند تا رو نصب کنه اینترنت دچار مشکل می شه . من تو لینوکس هم نتونستم نتیجه اجرای هموگرافی رو ببینم با اینکه از سمبل های خودش هست