2012-06-22 4 views
6

का उपयोग कर फेस डिटेक्शन समस्या मैं एक ऐप पर काम कर रहा हूं जिसमें मुझे बाएं आंख, दाहिनी आंख और मुंह की पोस्टिंग का पता लगाना है। मेरे पास एक छवि है मेरे स्वयं। दृश्य और छवि दृश्य में एक चेहरा छवि है, अब मैं दोनों आंखें और मुंह निर्देशांक प्राप्त करना चाहता हूं। मैंने इसके लिए 2-3 नमूना कोड देखे हैं, लेकिन सभी कोडों में लगभग समान हैं जो हमें उन निर्देशांक से मेल खाने के लिए मेरे दृश्य को उलटा करना है, जिन्हें मैं नहीं चाहता क्योंकि मेरे दृश्य में कुछ अन्य नियंत्रण हैं। और एक और बात यह है कि वे सभीCIDetector

UIImageView *imageView = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"image.png"]]; 

परन्तु मेरी छवि दृश्य में फ्रेम है और मैं इसे छवि के साथ शामिल नहीं कर सकता। जब मैं ऐसा करता हूं तो मुझे चेहरा मिलता है फीचर की आंखें और मुंह गलत समन्वय करता है।

मैंने अपना कोड this sample code से शुरू किया था, लेकिन इसमें भी इसके वाई समन्वय को उलटा जा रहा है।

क्या कोई मेरी मदद कर सकता है कि मैं UIImageView की छवि पर चेहरे की आंखों और मुंह की स्थिति का पता कैसे लगा सकता हूं, बिना अपने स्वयं के।

मुझे बताएं कि मेरा प्रश्न पर्याप्त स्पष्ट नहीं है।

किसी भी मदद की सराहना की जाएगी, अग्रिम धन्यवाद!

उत्तर

0

इसे काम किया! - कक्षा को एक चेहरा रखने के लिए संपादित किया गया जिसमें कंटेनर है जिसमें सभी चेहरे की वस्तुएं (मुंह और आंखें) शामिल हैं, फिर यह कंटेनर घुमाया जाता है और यह सब कुछ है। जाहिर है यह बहुत कच्चा है, लेकिन यह काम करता है। यहां एक लिंक है, http://www.jonathanlking.com/download/AppDelegate.m। फिर ऐप प्रतिनिधि को इसके साथ नमूना कोड से प्रतिस्थापित करें।

- पुरानी पोस्ट -

इस Apple Documentation पर एक नज़र डालें, और this apple talk के बाद से 42 स्लाइड। इसके अलावा आपको शायद इस बात को देखना चाहिए क्योंकि आपके पास जो हासिल करने की कोशिश कर रहे हैं उसका एक डेमो है, इसे "आईओएस & मैक ओएस एक्स" पर कोर छवि का उपयोग करना और here है।

+0

आपके उत्तर के लिए धन्यवाद, लेकिन आप क्या समझाने की कोशिश कर रहे हैं? मुझे पता है कि CGImage के साथ चेहरे की आंखों और मुंह की स्थिति का पता लगाने के लिए, मेरा प्रश्न अलग है, मुझे uiimageview की uiimage के साथ समस्या है। – TheTiger

+0

क्षमा करें, पूरी तरह से अपने प्रश्न को गलत समझा! –

+0

बिलकुल नहीं ..... :-) – TheTiger

1

यह चाल यहां अपने दृष्टिकोण को फ़्लिप करने के बजाय, अपने निर्देशांक में लौटे हुए बिंदुओं और सीमाओं को सीडियेटर से बदलना है। CIImage तल पर मूल है छोड़ दिया आप शीर्ष करने के लिए बदलने के लिए की आवश्यकता होगी जो

int height = CVPixelBufferGetHeight(pixelBuffer); 
CGAffineTransform transform = CGAffineTransformMakeScale(1, -1); 
transform = CGAffineTransformTranslate(transform, 0, -1 * height); 

/* Do your face detection */ 

CGRect faceRect = CGRectApplyAffineTransform(feature.bounds, transform); 
CGPoint mouthPoint = CGPointApplyAffineTransform(feature.mouthPosition, transform); 
// Same for eyes, etc 

छोड़ दिया UIImageView के बारे में अपने दूसरे प्रश्न के लिए, तुम सिर्फ

imageview.image = yourImage 

करने के लिए जब आप अपने imageView

प्रारंभ किया है