openCV学习

在 iOS 上使用 OpenCV##

一 : 添加 OpenCV 到你的工程中####

集成 OpenCV 到你的工程中有三种方法:

  • 使用 CocoaPods 就好:pod "OpenCV"。
  • 下载官方 iOS 框架发行包,并把它添加到工程里。
  • GitHub 拉下代码,并根据教程自己编译 OpenCV 库。

二 : 如何使用openCV####

OpenCV 是一个 C++ 的 API,因此不能直接在 Swift 和 Objective-C 代码中使用,但能在 Objective-C++ 文件中使用。在使用C++的.m文件中修改为.mm即可。

    //使用openCV时常用到的头文件
    #import <opencv2/highgui/ios.h>
    #import <opencv2/highgui/cap_ios.h>
    #import <opencv2/imgproc/types_c.h>
    #import <opencv2/opencv.hpp>
    #import <opencv2/objdetect/objdetect.hpp>
    #import <opencv2/highgui/highgui.hpp>
    #import <opencv2/imgproc/imgproc.hpp>

调用相机,使用openCV进行人脸检测时一般还要添加以下框架

    AssetsLibrary.framework
    CoreMedia.framework
    AVFoundation.framework

关于openCV基础的东西,可以看看这里

三 : 类似LINE CAMERA的人脸识别####

感觉LINE CAMERA这款app挺有意思的,空闲时间利用openCV简单模仿了一下,精度有待提高,后期可以添加眼睛和嘴巴的识别,并利用眼睛和嘴巴的坐标,调整贴图的旋转.
关于mat的感兴趣区ROI一直没研究成功,so 只能利用UIImageView实现贴图,如果能实现感兴趣区域,就能直接操作mat,在上面绘制贴图,这样并不会受限于性能和贴图数量.
最后放上git地址 openCV框架太大了 没有传上去,下载demo自己添加openCV框架.

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容