2011-06-29 15 views
6

मैं वर्तमान में इस ट्यूटोरियल (http://www.stanford.edu/class/ee368/Android/Tutorial-2-OpenCV-for-Android-Setup-Windows.pdf) पर कैसे करने के लिए अनुसरण कर रही हूं विंडोज़ में एंड्रॉइड के लिए ओपनसीवी सेट अप करें और मुझे कुछ त्रुटियां हैं जो मुझे समझ में नहीं आ रही हैं। असल में, चरण 3. सी पर, जब मैं "मेक" कमांड का उपयोग करके सिग्विन में ओपनसीवी पुस्तकालयों को संकलित करता हूं, तो मुझे ये त्रुटियां मिलती हैं;OpenCV/एंड्रॉयड संकलन त्रुटियों

/home/Ralph/opencv/modules/legacy/src/calibfilter.cpp: In member function `virtual bool CvCalibFilter::SaveCameraParams(const char*)': 
/home/Ralph/opencv/modules/legacy/src/calibfilter.cpp:693: error: `struct CvStereoCamera' has no member named `quad' 
/home/Ralph/opencv/modules/legacy/src/calibfilter.cpp:694: error: `struct CvStereoCamera' has no member named `quad' 
/home/Ralph/opencv/modules/legacy/src/calibfilter.cpp: In member function `virtual bool CvCalibFilter::LoadCameraParams(const char*)': 
/home/Ralph/opencv/modules/legacy/src/calibfilter.cpp:749: error: `struct CvStereoCamera' has no member named `quad' 
/home/Ralph/opencv/modules/legacy/src/calibfilter.cpp:750: error: `struct CvStereoCamera' has no member named `quad' 
make[2]: *** [modules/legacy/CMakeFiles/opencv_legacy.dir/src/calibfilter.o] Error 1 
make[1]: *** [modules/legacy/CMakeFiles/opencv_legacy.dir/all] Error 2 
make: *** [all] Error 2 

अग्रिम में आपकी मदद के लिए धन्यवाद,

राल्फ।

+0

क्या आप कृपया थोड़ा स्वरूपण साफ़ कर सकते हैं? – demongolem

उत्तर

0

विंडोज़ पर ओपनसीवी स्थापित करना आसान है।

इन चरणों का पालन करें।

http://www.developerstation.org/2011/02/using-opencv-21-on-visual-studio-2008.html

लिंक है कि आप उल्लेख किया है आधिकारिक NDK Google द्वारा समर्थित उपयोग नहीं करता। मुझे अतीत में ndk4 के साथ कॉन्फ़िगर करने और काम करने में परेशानी हुई है।

काम कर रहा है या नहीं ndk4 के साथ काम आपके लिए महत्वपूर्ण नहीं है, तो सरकारी लिंक (NDK 5) के साथ ठीक काम करते हैं। उन्हें आज़माएं। वे ज्यादातर एक ही कदम हैं।

http://opencv.itseez.com/doc/tutorials/introduction/android_binary_package/android_binary_package.html

http://opencv.itseez.com/doc/tutorials/introduction/android_binary_package/android_binary_package_using_with_NDK.html

3

मैं एक ही समस्या में पड़ गए हैं। /home/Ralph/opencv/modules/legacy/include/opencv2/legacy/legacy.hpp में देख रहे हैं, struct परिभाषा है:

typedef struct CvStereoCamera 
{ 
    CvCamera* camera[2]; /* two individual camera parameters */ 
    float fundMatr[9]; /* fundamental matrix */ 

    /* New part for stereo */ 
    CvPoint3D32f epipole[2]; 
    CvPoint2D32f quad[2][4]; /* coordinates of destination quadrangle after 
           epipolar geometry rectification */ 
    double coeffs[2][3][3];/* coefficients for transformation */ 
    CvPoint2D32f border[2][4]; 
    CvSize warpSize; 
    CvStereoLineCoeff* lineCoeffs; 
    int needSwapCameras;/* flag set to 1 if need to swap cameras for good reconstruction */ 
    float rotMatrix[9]; 
    float transVector[3]; 
} CvStereoCamera; 

मैं क्यों यह तो काम करने के लिए प्रकट नहीं होता है के रूप में पूरी तरह से हैरान हूँ: quad वहीं परिभाषित किया गया है।

calibfilter.cpp और epilines.cpp में सभी लाइनों का संदर्भ quad विशेषता टिप्पणी करके, मैं OpenCV कम से कम संकलन पाने में कामयाब रहे, लेकिन यह कोई संदेह नहीं है स्टीरियो कैमरा समर्थन टूट गया है।

+0

ये समस्याएं विंडोज़ पर ओपनसीवी संकलित करने के साथ विभिन्न समस्याओं के लक्षण प्रतीत होती हैं। मैंने सिग्विन और मिंगडब्ल्यू के माध्यम से विफलता की विभिन्न डिग्री के साथ इसे करने की कोशिश की है। अंत में मैंने इसे उबंटू में छोड़ दिया और संकलित किया। मैं एक विंडोज निष्पादन योग्य बनाने में सक्षम नहीं होगा, लेकिन यह मेरे लिए कोई समस्या नहीं है। –

6

दोनों calibfilter.cpp और epilines.cpp के शीर्ष पर एक "#undef ट्रैक्टर" नहीं है। अगर मैं इन undefs पर टिप्पणी करता हूं, यह संकलन में सफल होता है।

मुझे के जीवन मैं समझ नहीं क्यों वहाँ एक undef है ... शायद आयात का आदेश गलत या कुछ और है।

0

रूप @Matthew Hemke लिखा है, कि #undef दोषी है। कौन सा अजीब b'coz कोड संकलित करता है, क्योंकि यह उबंटू में है, लेकिन जब मुझे सिग्विन (विंडोज़ -7 पर) के तहत ओपनसीवी संकलित करते समय 'नो सदस्य क्वाड' की इसी तरह की त्रुटि का सामना करना पड़ा। निश्चित रूप से यहां कुछ मौलिक याद आ रही है।

संबंधित मुद्दे