मैं आईओएस पर CoreImage
उपयोग कर रहा हूँ पर आईओएस CoreImage चेहरे का पता लगाने के लिए एक छवि में चेहरे का पता लगाने के। यह ठीक काम करता है जब वहाँ कई चेहरे हैं, लेकिन इस तरह के इस एक के रूप में सरल चेहरों के लिए काम नहीं करता:सभी झुकाव
चेहरा वास्तव में बड़ी और स्पष्ट है, लेकिन CoreImage
यह पता नहीं लगा सकते हैं। मैं इसे अपने kCGImagePropertyOrientation
की वजह से हो सकता है सोच रहा हूँ।
मैं 5 के लिए सेट, बस क्योंकि क्या एक ऑनलाइन ट्यूटोरियल किया है कि। हालांकि, छवियों जो मैं कर रहा हूँ प्रसंस्करण उपयोगकर्ता अपलोड किए जाते हैं, तो मैं पहले से चेहरे के उन्मुखीकरण पता नहीं है। वहाँ एक रास्ता सभी झुकाव कोशिश करने के लिए है? CoreImage
चेहरे का पता लगाने को लागू जब छवियों पहले से नहीं जाना जाता है के समुचित तरीका क्या है?
यह मेरा कोड है:
var imageOptions = Dictionary<String,Any>()
imageOptions[CIDetectorImageOrientation] = 5
imageOptions[CIDetectorSmile] = true
let image = CIImage(cgImage: imageView.image!.cgImage!)
let accuracy = [CIDetectorAccuracy: CIDetectorAccuracyHigh]
let faceDetector = CIDetector(ofType: CIDetectorTypeFace, context: nil, options: accuracy)
let faces = faceDetector?.features(in: image, options: imageOptions as? [String : AnyObject])
की तरह यह कर सकते हैं चेहरे का पता लगाने अगर तुम होने के लिए झुकाव के किसी भी प्रकार की अनुमति देना चाहते संसाधित हो सकता है आपको छवि मेटाडेटा से अभिविन्यास को पढ़ना पड़ सकता है, फिर उस फ़िल्टर को अपने फ़िल्टर में पास कर दें। – Pochi