iOS人脸识别(检测)

iOS的CoreImage已经内建了人脸检测的接口,检测准确率一般,尤其是侧脸,基本上就检测不到。不过跟其他同类产品比较,也还算是不相上下吧。用起来很简单:

    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];

最后的features中就是检测到的全部脸部数据,可以用如下方式计算位置:

    for (CIFaceFeature *f in features)
    {
        CGRect aRect = f.bounds;
         NSLog(@"%f, %f, %f, %f", aRect.origin.x, aRect.origin.y, aRect.size.width, aRect.size.height);

         //眼睛和嘴的位置
         if(f.hasLeftEyePosition) NSLog(@"Left eye %g %g\n", f.leftEyePosition.x, f.leftEyePosition.y);
         if(f.hasRightEyePosition) NSLog(@"Right eye %g %g\n", f.rightEyePosition.x, f.rightEyePosition.y);
         if(f.hasMouthPosition) NSLog(@"Mouth %g %g\n", f.mouthPosition.x, f.mouthPosition.y);
    }

注意,检测到的位置是脸部数据在图片上的坐标(在uiimage上的,不是uiimageview上的),如果需要在视图上绘制范围,则需要进行坐标转换(y轴方向相反),并且也要注意图片在视图上的缩放等。

时间: 2024-11-16 14:18:56

iOS人脸识别(检测)的相关文章

[CV]人脸识别检测数据集

[CV]人脸识别检测数据集 做了一段时间的人脸识别和检测,在这里列一下用过的数据集.基本上,大家近期也都是在这几个数据集上检测自己的算法.网上这方面的总结虽然不少,但是一则有些是多年前的数据,或是规模太小或是链接已经失效,再则是数据集的测试协议定义不明,不尽适合用来和其它方法做比较. 1. Labeled Faces in the Wild:做人脸识别,准确的说是人脸验证(Face Verification),UMass的LFW估计是最近被用的最多的了,LFW采用的测试协议也已经被几个新的数据集

iOS人脸识别(CoreImage)

1.从初始UIImage获取一个CIImage对象. 2.创建一个用于分析对象的CIContext. 3.通过type和options参数创建一个CIDetector实例. type参数指定了要识别的特征类型.options参数可以设置识别特征的精确度,低精确度速度快,高精确度更准确. 4.创建一个图像数组,里面放对象的实例. 5.通过imageByCroppingToRect:方法结合原始图像以及在图像中找到的最后一个实例对象中指定的边界创建一个CIImage.这些边界表示人脸所在的CGRec

iOS人脸识别核心代码(备用)

for (int i = 0; i < 1; i++) { //< [arr count]; i++) { CIFaceFeature *feature = [arr objectAtIndex:i]; double xPosition = (feature.leftEyePosition.x + feature.rightEyePosition.x+feature.mouthPosition.x)/(3*image.size.width) ; double yPosition = (feat

通过人脸活体检测技术,解决了实名认证环节存在的风险与漏洞

人脸活体检测技术背景 由于现在各行业对客户真实性.安全性和可信度的要求较为严格,怎样在线上证明"你是你"成了各行各业发展线上业务的关键问题.随着深度学习方法的应用,基于Android.iOS人脸识别技术的识别率已经得到质的提升,人脸活体检测技术与其他生物特征识别技术相比,在实际应用中具有天然独到的优势:通过摄像头直接获取,可以非接触的方式完成识别过程,方便快捷.目前人脸活体检测技术已应用在金融.教育.景区.旅运.社保等领域. 下面简单介绍一下人脸活体检测技术 目前,人脸活体检测技术主要

人脸识别精准营销解决方案

方案背景 随着科技的发展,人工智能.大数据.云计算等先进技术逐渐应用到零售连锁行业中,促进传统的零售模式转变为新零售模式,而如何做到精准营销与精细化管理成了现代商家运营的难题.人脸识别精准营销解决方案,结合识别人脸属性,数据分析,以及销售系统一体化,为新零售商家提供轻量化门店智能服务. 方案简介 人脸识别精准营销解决方案,基于高性能开源平台,融合人脸识别检测技术,实时捕捉进入门店的顾客人脸,准确识别多种人脸属性信息,如年龄.性别.颜值.到店次数等属性特征,实现个性化精准推送,与销售系统一体化,通

结合活体检测,人脸识别在Android、IOS、服务器中的应用

随着深度学习方法的应用,人工智能的发展,人脸识别技术的识别率已经得到质的提升,通过反复开发试验,目前我司的人脸识别技术率已经达到99%.人脸识别技术与其他生物特征识别技术相吃比,在实际应用中具有天然独到的优势:通过摄像头直接获取,在非接触的方式完成识别过程.通过人脸识别与证件识别的比对,目前我司的人脸识别技术已应用在金融.教育.景区.旅运.社保等领域. 人脸识别技术简介 人脸识别技术主要分为两部分: 第一部为前端人脸活体检测技术,主要支持android.ios平台,在前端通过眨眼.张嘴.摇头.点

uniapp安卓ios百度人脸识别、活体检测、人脸采集APP原生插件

插件亮点 1 支持安卓平板(横竖屏均可),苹果的iPad.2 颜色图片均可更换. 特别提醒 此插件包含 android 端和 iOS 端,考虑到有些同学只做其中一个端的 app,特意分为 2 个插件,减小安装包体积.android 端请点击这里.iOS 端请点击这里. 1.前言 最近在使用 uniapp 开发项目,有刷脸实名认证的需求,最终使用百度人脸识别实现了需求.自己做了个 APP 原生插件,给大家介绍下用法.本插件主要功能是通过动作检测活体,采集人脸返回.其他功能需要自主实现,如刷脸登录,

IOS 通过摄像头读取每一帧的图片,并且做识别做人脸识别(swift)

最近帮别人做一个项目,主要是使用摄像头做人脸识别 github地址:https://github.com/qugang/AVCaptureVideoTemplate 要使用IOS的摄像头,需要使用AVFoundation 库,库里面的东西我就不介绍. 启动摄像头需要使用AVCaptureSession 类. 然后得到摄像头传输的每一帧数据,需要使用AVCaptureVideoDataOutputSampleBufferDelegate 委托. 首先在viewDidLoad 里添加找摄像头设备的代

支持Android、iOS系统的人脸识别技术

随着深度学习方法的应用,支持Android.iOS系统的人脸识别技术的识别率已经得到质的提升,目前我司的支持Android.iOS系统的人脸识别技术率已经达到99%.支持Android.iOS系统的人脸识别技术与其他生物特征识别技术相比,在实际应用中具有天然独到的优势:通过摄像头直接获取,可以非接触的方式完成识别过程,方便快捷.目前我司的支持Android.iOS系统的人脸识别技术已应用在金融.教育.景区.旅运.社保等领域. 支持Android.iOS系统的人脸识别技术主要分为两部分: 第一部为