版本記錄
版本號 | 時間 |
---|---|
V1.0 | 2018.01.27 |
前言
Core Image是IOS5中新加入的一個框架,里面提供了強(qiáng)大高效的圖像處理功能,用來對基于像素的圖像進(jìn)行操作與分析。還提供了很多強(qiáng)大的濾鏡,可以實(shí)現(xiàn)你想要的效果顾腊,下面我們就一起解析一下這個框架。感興趣的可以參考上面幾篇傻唾。
1. Core Image框架詳細(xì)解析(一) —— 基本概覽
2. Core Image框架詳細(xì)解析(二) —— Core Image濾波器參考
關(guān)于 Core Image
Core Image是一種圖像處理和分析技術(shù)投慈,旨在為靜止和視頻圖像提供接近實(shí)時的處理。 它使用GPU或CPU渲染路徑對來自Core Graphics
冠骄,Core Video
和Image I / O
框架的圖像數(shù)據(jù)類型進(jìn)行操作伪煤。 Core Image通過提供易于使用的應(yīng)用程序編程接口(API)來隱藏低級圖形處理的細(xì)節(jié)。 您不需要了解OpenGL
凛辣,OpenGL ES
或Metal
的細(xì)節(jié)以利用GPU的強(qiáng)大功能抱既,您也不需要了解有關(guān)Grand Central Dispatch(GCD)
的任何信息,以獲得多核處理的好處扁誓。 Core Image處理你的細(xì)節(jié)防泵。
At a Glance
Core Image框架提供了:
- 內(nèi)置的圖像處理濾波器
- 特征檢測功能
- 支持自動圖像增強(qiáng)
- 將多個過濾器鏈接在一起以創(chuàng)建自定義效果的功能
- 支持創(chuàng)建在GPU上運(yùn)行的自定義過濾器
- 基于反饋的圖像處理功能
在macOS上,Core Image還提供了打包自定義過濾器供其他應(yīng)用程序使用的方法蝗敢。
1. Core Image is Efficient and Easy to Use for Processing and Analyzing Images - Core Image是有效的和易于使用的用于處理和分析圖像
Core Image提供了數(shù)以百計(jì)的內(nèi)置過濾器捷泞。您可以通過為過濾器的輸入?yún)?shù)提供鍵值對來設(shè)置過濾器。一個濾波器的輸出可以作為另一個濾波器的輸入寿谴,使得將多個濾波器鏈接在一起可以產(chǎn)生驚人的效果锁右。如果您創(chuàng)建了要再次使用的復(fù)合效果,則可以繼承CIFilter
以捕捉recipe
效果。
有十幾個類別的過濾器咏瑟。有些設(shè)計(jì)是為了達(dá)到藝術(shù)效果拂到,如風(fēng)格化和半色調(diào)濾鏡stylize and halftone
類別。其他對于修復(fù)圖像問題(例如顏色調(diào)整和銳化濾鏡)是最佳的码泞。
Core Image可以分析圖像的質(zhì)量兄旬,并提供一套最佳設(shè)置的過濾器,用于調(diào)整色調(diào)余寥,對比度和色調(diào)等色彩领铐,以及糾正閃爍偽像(如紅眼)。它通過一個方法調(diào)用你所做的一切劈狐。
Core Image可以檢測靜態(tài)圖像中的人臉特征罐孝,并隨著時間在視頻圖像中跟蹤它們。知道面孔在哪里可以幫助您確定在哪里放置一個小插曲或應(yīng)用其他特殊的過濾器肥缔。
相關(guān)文章: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有內(nèi)部過濾器參考文檔。 您可以查詢系統(tǒng)以找出哪些過濾器可用汹来。 然后续膳,對于每個過濾器,可以檢索包含其屬性的字典收班,例如其輸入?yún)?shù)坟岔,默認(rèn)參數(shù)值,最小值和最大值摔桦,顯示名稱等社付。
相關(guān)章節(jié):Querying the System for Filters
3. Core Image Can Achieve Real-Time Video Performance - Core Image可以實(shí)現(xiàn)實(shí)時視頻性能
如果您的app需要實(shí)時處理視頻,則可以通過幾個方面來優(yōu)化性能邻耕。
相關(guān)章節(jié):Getting the Best Performance
4. Use an Image Accumulator to Support Feedback-Based Processing - 使用圖像累加器來支持基于反饋的處理
CIImageAccumulator
類是專為有效的基于反饋的圖像處理而設(shè)計(jì)的鸥咖,如果您的App需要圖像動態(tài)系統(tǒng),您可能會發(fā)現(xiàn)它很有用兄世。
相關(guān)章節(jié):Using Feedback to Process Images
5. Create and Distribute Custom Kernels and Filters - 創(chuàng)建和分發(fā)定制的內(nèi)核和過濾器
如果沒有任何內(nèi)置過濾器適合您的需求啼辣,即使在鏈接在一起,考慮創(chuàng)建一個自定義過濾器御滩。 您需要了解內(nèi)核 - 在像素級別運(yùn)行的程序 - 因?yàn)樗鼈兪敲總€濾波器的核心鸥拧。
在macOS中,可以將一個或多個自定義過濾器打包為圖像單元削解,以便其他應(yīng)用程序可以加載和使用它們富弦。
相關(guān)章節(jié):What You Need to Know Before Writing a Custom Filter, Creating Custom Filters, Packaging and Loading Image Units
See Also - 也可參考
其他關(guān)于Core Image的重要文檔:
- Core Image Reference Collection 提供了Core Image框架中可用的類的詳細(xì)描述。
- Core Image Filter Reference 描述了Apple提供的內(nèi)置圖像處理過濾器氛驮,并顯示了在使用過濾器處理之前和之后如何顯示圖像腕柜。
- Core Image Kernel Language Reference 描述了為自定義過濾器創(chuàng)建內(nèi)核例程的語言。
后記
本篇已結(jié)束,后面更精彩~~~~