Iva*_*van 10 memory-leaks ios google-vision google-ios-vision
我正在尝试创建一个应用程序来处理一组框架,jpg使用Google-vision API 存储到应用程序中.
管道很简单.
1)我用一些选项创建了探测器:
_options = @{
GMVDetectorFaceLandmarkType : @(GMVDetectorFaceLandmarkAll),
GMVDetectorFaceClassificationType : @(GMVDetectorFaceClassificationAll),
GMVDetectorFaceTrackingEnabled : @(NO)
};
_faceDetector = [GMVDetector detectorOfType:GMVDetectorTypeFace options:_options];
Run Code Online (Sandbox Code Playgroud)
2)我用这种方法读取了一个框架:
UIImage *image = [UIImage imageWithContentsOfFile:imFile];
Run Code Online (Sandbox Code Playgroud)
imFile中包含的路径是正确的,我可以看到图像表示
3)最后,我处理框架:
NSArray<GMVFaceFeature *> *faces = [_faceDetector featuresInImage:image options:nil];
Run Code Online (Sandbox Code Playgroud)
使用这段代码我可以处理一些帧,但是当分析它们中的很多时,应用程序的内存使用量不断增加,应用程序会自动被杀死.
我试图跟踪内存泄漏,但据我追踪它,它来自最后一部分内部,内部 [detector featuresInImage...]
有什么我做错了,或者里面有内存泄漏?我试图从谷歌找到任何问题,但无法找到它.
编辑:
以下是我对探测器的每个结果所做的事情:
if ([faces count]>0){
GMVFaceFeature *face = [faces objectAtIndex:0];
NSFileHandle *myHandle = [NSFileHandle fileHandleForWritingAtPath:filename];
[myHandle seekToEndOfFile];
NSString* lineToWrite = [NSString stringWithFormat:@"%u",fNumber];
lineToWrite = [lineToWrite stringByAppendingString:[NSString stringWithFormat:@",%f",face.smilingProbability]];
lineToWrite = [lineToWrite stringByAppendingString:@"\n"];
NSError *errorWrite;
[myHandle writeData:[lineToWrite dataUsingEncoding:NSUTF8StringEncoding]];
if(errorWrite){
NSLog(@"%@",errorWrite);
}
}
Run Code Online (Sandbox Code Playgroud)
该方法在那里结束.基本上我所做的就是创建一个文件并在其中书写.
| 归档时间: |
|
| 查看次数: |
283 次 |
| 最近记录: |