2012-04-21 14 views
5

मैं https://github.com/niw/iphone_opencv_test क्लोन और OpenCVTestViewController.m फ़ाइल मेंOpenCV परियोजना - opencv.hpp इमारत मुद्दा

#import <opencv2/opencv.hpp> 

साथ

#import <opencv2/imgproc/imgproc_c.h> 
#import <opencv2/objdetect/objdetect.hpp> 

को बदलने के लिए कोशिश की है। लेकिन XCode त्रुटि निम्नलिखित फेंक दिया:

iphone_opencv_test/opencv_device/include/opencv2/opencv.hpp:55:10: fatal error: 'opencv2/calib3d/calib3d.hpp' file not found [2] 
#include "opencv2/calib3d/calib3d.hpp" 

तो, मैं opencv.hpp फ़ाइल से लाइन #include "opencv2/calib3d/calib3d.hpp" दूर करने के लिए कोशिश की है। नीचे फेंक दिया गया था त्रुटि:

iphone_opencv_test/opencv_device/include/opencv2/ml/ml.hpp:2075:10: fatal error: 'map' file not found [2] 
#include <map> 

मैं भी मीटर बदलने के लिए .mm करने की कोशिश की है, लेकिन यह व्यर्थ लग रहा था। मैं कहाँ गलत हूँ?

+0

आप इस ढांचे को आजमा सकते हैं ... http://aptogo.co.uk/2011/09/opencv-framework-for-ios/ – Aravindhan

+0

@ अरविंदनर्ववी उत्तर के लिए धन्यवाद। मैं पहले से ही इस परियोजना के दृष्टिकोण का उपयोग कर रहा हूं, लेकिन मैं सिर्फ यह जानना चाहता हूं कि प्रोजेक्ट (मैंने पोस्ट किया है) दृष्टिकोण काम नहीं करता है। – user961912

उत्तर

3

ओपनसीवी के MAX/MIN मैक्रोज़ और कोको के MAX/MIN के बीच एक संघर्ष है। यह संकलन समय पर इस तरह की अजीब त्रुटियों की ओर जाता है। इस समस्या को बाईपास करने के लिए, आप या तो: 1. प्री-डिफ़ाइंड हेडर फ़ाइल के शीर्ष पर जोड़ें 2. पूरी तरह से opencv और obj-c कोड decouple, ताकि कोई .m/.mm फ़ाइल शामिल न हो। यह उदाहरण के लिए कोको फ्रेमवर्क से ओपनसीवी सी ++ छवि प्रसंस्करण कक्षाओं में छवि डेटा पास करने के लिए कस्टम वैनिला सी ++ कक्षाओं के बीच में बढ़ावा देने के लिए या जीओएल का उपयोग करके किया जा सकता है।

+0

धन्यवाद, मैं यही चाहता था! – user961912

+0

क्या आपके पास बूस्ट जीआईएल का उपयोग करने का कोई ट्यूटोरियल है? –

+0

यह एक मुश्किल है, मुझे लगता है कि आपको स्टैक ओवरफ्लो पर सवाल पूछना चाहिए। संक्षिप्त उत्तर: यदि आप डेटा फ़ील्ड में पॉइंटर्स पास करते हैं, तो आपको इसकी आवश्यकता नहीं है, और यदि आप .pch फ़ाइल में #import से पहले #import पंक्ति जोड़ते हैं। – sansuiso