当前位置:   article > 正文

SwiftUI人工智能之基于人眼识别做个替换眼神的App

换眼睛的app

本文价值与收获

看完本文后,您将能够作出下面的界面

Jietu20200523-111054@2x.jpg
Jietu20200523-110954.gif

基础知识

CIDetector 是什么

CIDetector是图像处理器,用于识别静止图像或视频中的显着特征(例如人脸和条形码)。

CIDetector使用图像处理技术来搜索和识别静止图像或视频中的显着特征(面部,矩形和条形码)。检测到的功能由CIFeature对象表示。

CIDetector可以维护许多可能影响性能的状态变量。因此,为了获得最佳性能,请重用CIDetector实例,而不要重复创建新实例。

CIDetector能够识别什么内容

- CIDetectorTypeFace 人脸识别

CIDetectorTypeFace是人脸检测器,用于搜索静止图像或视频中的面部,并返回提供有关检测到的面部信息的CIFaceFeature对象。

- CIDetectorTypeRectangle

CIDetectorTypeRectangle是矩形检测器,用于搜索静止图像或视频中的矩形区域,并返回提供有关检测到的区域信息的CIRectangleFeature对象。矩形检测器查找可能表示在图像透视图中出现的矩形对象的区域,例如在桌面上看到的纸或书。

- CIDetectorTypeQRCode 条形码识别

CIDetectorTypeQRCode是条形码检测器,它在静止图像或视频中搜索快速响应代码(一种二维条形码),并返回提供有关检测到的条形码信息的CIQRCodeFeature对象。

- CIDetectorTypeText

CIDetectorTypeText是文本检测器,用于搜索静止图像或视频中的文本,并返回提供有关检测到的区域信息的CITextFeature对象。
文本检测器查找可能包含直立文本但不执行光学字符识别的区域。

- CIDetectorAccuracy

用于指定检测器所需精度​​的键。

- CIDetectorTracking

用于启用或禁用检测器的面部跟踪的键。当您要跟踪视频中各帧的脸部时,请使用此选项

- CIDetectorEyeBlink

CIDetectorEyeBlink Core Image是否将执行其他处理以识别检测到的面部中的闭眼的选项。

- CIDetectorSmile

Core Image是否将执行其他处理以识别检测到的面部中的笑容的选项

检测器的一般流程

1、 定义CIDetector

  1. let detector = CIDetector(ofType: CIDetectorTypeFace,
  2. context: nil, options: [CIDetectorAccuracy: CIDetectorAccuracyHigh])
  • 设置类型CIDetectorTypeFace
  • 设置监测精度,我们设置为高精度
    2、 将图像转化为CIImage
   let newImage = CIImage(cgImage: image.cgImage!)

3、监测属性

  let features = detector!.features(in: newImage) as! [CIFaceFeature]

我们设置人脸检测属性CIFaceFeature

4、转化一下坐标系统(左上)

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/229360
推荐阅读
相关标签
  

闽ICP备14008679号