#import "ViewController.h"
@interface ViewController ()
@end
@implementation ViewController
- (void)viewDidLoad {
[super viewDidLoad];
UIImage *aImage = [UIImage imageNamed:@"证件照.jpg"];
UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(0, 0, aImage.size.width, aImage.size.height)];
imageView.center = self.view.center;
imageView.layer.borderWidth = 1.0;
imageView.layer.masksToBounds = YES;
//自适应图片宽高比例
imageView.contentMode = UIViewContentModeScaleAspectFit;
imageView.image = aImage;
[self.view addSubview:imageView];
CIImage* image = [CIImage imageWithCGImage:aImage.CGImage];
NSDictionary *opts = [NSDictionary dictionaryWithObject:CIDetectorAccuracyHigh
forKey:CIDetectorAccuracy];
CIDetector* detector = [CIDetector detectorOfType:CIDetectorTypeFace
context:nil
options:opts];
//得到面部数据
NSArray* features = [detector featuresInImage:image];
for (CIFaceFeature *f in features)
{
CGRect aRect = f.bounds;
aRect.origin.y = imageView.bounds.size.height - aRect.size.height - aRect.origin.y;//self.bounds.size
//给?打马赛克
UIView *vv = [[UIView alloc]initWithFrame:CGRectMake(aRect.origin.x-15, aRect.origin.y, aRect.size.width+30, aRect.size.height/2)];
//给整个脸部打马赛克
// UIView *vv = [[UIView alloc]initWithFrame:aRect];
[vv setTransform:CGAffineTransformMakeScale(1, -1)];
vv.backgroundColor = [UIColor redColor];
vv.alpha = 0.6;
[imageView addSubview:vv];
}
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
@end
转载于:https://my.oschina.net/wenchengxu123/blog/756301