Core Image框架详细解析(三) —— 关于Core Image

版本记录

版本号 时间
V1.0 2018.01.27

前言

Core Image是IOS5中新加入的一个框架,里面提供了强大高效的图像处理功能,用来对基于像素的图像进行操作与分析。还提供了很多强大的滤镜,可以实现你想要的效果,下面我们就一起解析一下这个框架。感兴趣的可以参考上面几篇。
1. Core Image框架详细解析(一) —— 基本概览
2. Core Image框架详细解析(二) —— Core Image滤波器参考

关于 Core Image

Core Image是一种图像处理和分析技术,旨在为静止和视频图像提供接近实时的处理。 它使用GPU或CPU渲染路径对来自Core GraphicsCore VideoImage I / O框架的图像数据类型进行操作。 Core Image通过提供易于使用的应用程序编程接口(API)来隐藏低级图形处理的细节。 您不需要了解OpenGLOpenGL ESMetal的细节以利用GPU的强大功能,您也不需要了解有关Grand Central Dispatch(GCD)的任何信息,以获得多核处理的好处。 Core Image处理你的细节。

Core Image框架详细解析(三) —— 关于Core Image_第1张图片
Figure I-1 Core Image in relation to the operating system

At a Glance

Core Image框架提供了:

  • 内置的图像处理滤波器
  • 特征检测功能
  • 支持自动图像增强
  • 将多个过滤器链接在一起以创建自定义效果的功能
  • 支持创建在GPU上运行的自定义过滤器
  • 基于反馈的图像处理功能

在macOS上,Core Image还提供了打包自定义过滤器供其他应用程序使用的方法。

1. Core Image is Efficient and Easy to Use for Processing and Analyzing Images - Core Image是有效的和易于使用的用于处理和分析图像

Core Image提供了数以百计的内置过滤器。您可以通过为过滤器的输入参数提供键值对来设置过滤器。一个滤波器的输出可以作为另一个滤波器的输入,使得将多个滤波器链接在一起可以产生惊人的效果。如果您创建了要再次使用的复合效果,则可以继承CIFilter以捕捉recipe效果。

有十几个类别的过滤器。有些设计是为了达到艺术效果,如风格化和半色调滤镜stylize and halftone类别。其他对于修复图像问题(例如颜色调整和锐化滤镜)是最佳的。

Core Image可以分析图像的质量,并提供一套最佳设置的过滤器,用于调整色调,对比度和色调等色彩,以及纠正闪烁伪像(如红眼)。它通过一个方法调用你所做的一切。

Core Image可以检测静态图像中的人脸特征,并随着时间在视频图像中跟踪它们。知道面孔在哪里可以帮助您确定在哪里放置一个小插曲或应用其他特殊的过滤器。

相关文章:Processing Images, Detecting Faces in an Image, Auto Enhancing Images, Subclassing CIFilter: Recipes for Custom Effects

2. Query Core Image to Get a List of Filters and Their Attributes - 查询Core Image获取过滤器及其属性列表

Core Image有内部过滤器参考文档。 您可以查询系统以找出哪些过滤器可用。 然后,对于每个过滤器,可以检索包含其属性的字典,例如其输入参数,默认参数值,最小值和最大值,显示名称等。

相关章节:Querying the System for Filters

3. Core Image Can Achieve Real-Time Video Performance - Core Image可以实现实时视频性能

如果您的app需要实时处理视频,则可以通过几个方面来优化性能。

相关章节:Getting the Best Performance

4. Use an Image Accumulator to Support Feedback-Based Processing - 使用图像累加器来支持基于反馈的处理

CIImageAccumulator类是专为有效的基于反馈的图像处理而设计的,如果您的App需要图像动态系统,您可能会发现它很有用。

相关章节:Using Feedback to Process Images

5. Create and Distribute Custom Kernels and Filters - 创建和分发定制的内核和过滤器

如果没有任何内置过滤器适合您的需求,即使在链接在一起,考虑创建一个自定义过滤器。 您需要了解内核 - 在像素级别运行的程序 - 因为它们是每个滤波器的核心。

在macOS中,可以将一个或多个自定义过滤器打包为图像单元,以便其他应用程序可以加载和使用它们。

相关章节:What You Need to Know Before Writing a Custom Filter, Creating Custom Filters, Packaging and Loading Image Units


See Also - 也可参考

其他关于Core Image的重要文档:

  • Core Image Reference Collection 提供了Core Image框架中可用的类的详细描述。
  • Core Image Filter Reference 描述了Apple提供的内置图像处理过滤器,并显示了在使用过滤器处理之前和之后如何显示图像。
  • Core Image Kernel Language Reference 描述了为自定义过滤器创建内核例程的语言。

后记

本篇已结束,后面更精彩~~~~

Core Image框架详细解析(三) —— 关于Core Image_第2张图片

你可能感兴趣的:(Core Image框架详细解析(三) —— 关于Core Image)