का उपयोग कर आईफोन पर नहीं, मैं चित्रों पर चेहरों का पता लगाने के लिए कोरइमेज का उपयोग कर रहा हूं। यह सिम्युलेटर पर बहुत अच्छा काम करता है, लेकिन मेरे आईफोन 5 पर, यह लगभग आईफोन के कैमरे से ली गई तस्वीरों के साथ काम नहीं करता है (यह वेब पर चुने गए चित्रों के साथ काम करता है)।सिम्युलेटर पर चेहरे का पता लगाया गया लेकिन कोरइमेज फ्रेमवर्क
निम्नलिखित कोड दिखाता है कि मैं चेहरों का पता कैसे लगाता हूं। हर चित्रों के लिए, आवेदन लॉग
चरण 1: छवि
कार्रवाई की जाएगी लेकिन ऐसा सिर्फ लॉग
चरण 2: चेहरे का पता लगाया
की कुछ के लिए उन्हें, जबकि सिम्युलेटर पर लगभग हर चेहरे का पता लगाया जाता है या यदि मैं वेब से चित्रों का उपयोग करता हूं।
var context: CIContext = {
return CIContext(options: nil)
}()
let detector = CIDetector(ofType: CIDetectorTypeFace,
context: context,
options: [CIDetectorAccuracy: CIDetectorAccuracyHigh])
let imageView = mainPic
for var index = 0; index < picsArray.count; index++ {
if !(picsArray.objectAtIndex(index).objectAtIndex(1) as! Bool) {
var wholeImageData: AnyObject = picsArray.objectAtIndex(index)[0]
if wholeImageData.isKindOfClass(NSData) {
let wholeImage: UIImage = UIImage(data: wholeImageData as! NSData)!
if wholeImage.isKindOfClass(UIImage) {
NSLog("step 1 : image will be processed")
let processedImage = wholeImage
let inputImage = CIImage(image: processedImage)
var faceFeatures: [CIFaceFeature]!
if let orientation: AnyObject = inputImage.properties()?[kCGImagePropertyOrientation] {
faceFeatures = detector.featuresInImage(inputImage, options: [CIDetectorImageOrientation: orientation]) as! [CIFaceFeature]
} else {
faceFeatures = detector.featuresInImage(inputImage) as! [CIFaceFeature]
}
let inputImageSize = inputImage.extent().size
var transform = CGAffineTransformIdentity
transform = CGAffineTransformScale(transform, 1, -1)
transform = CGAffineTransformTranslate(transform, 0, -inputImageSize.height)
for faceFeature in faceFeatures {
NSLog("step 2 : face detected")
// ...
मैं अब तीन घंटे के लिए समाधान ढूंढ रहा हूं, और मैं काफी हताश हूं :)।
किसी भी सुझाव की वास्तव में सराहना की जाएगी!
अग्रिम धन्यवाद।
छवियां एक ही संकल्प हैं? मुझे यकीन नहीं है कि कौन सा एल्गोरिदम ऐप्पल उपयोग करता है, लेकिन बहु सिस्टम पहचान कुछ प्रणालियों के साथ एक समस्या हो सकती है। क्या आपने उन छवियों को खींचने की कोशिश की है जिनमें फोन चेहरे का पता नहीं लगाता है, इसे सिम्युलेटर में डालता है और फिर देखता है कि यह काम करता है या नहीं? – ABC
हां, यह हमेशा सिम्युलेटर पर काम करता है, यहां तक कि आईफोन के कैमरे – Randy
से ली गई तस्वीरों के साथ भी परिवर्तनीय चेहरे की विशेषताएं मूल रूप से फोन पर चलते समय खाली वेक्टर लौट रही हैं? – ABC