GPUImage的簡單使用

簡述:

        GPUImage是一個基于GPU圖像和視頻處理的iOS框架,提供各種各樣的圖像處理濾鏡,并且支持照相機和攝像機的實時濾鏡;

基于GPU的圖像加速,因此可以加速對實時攝像頭視頻、電影以及image的濾鏡和其它效果處理,并且能夠自定義圖像濾鏡.

GPUImage 并不像一般的第三方庫可以直接拖入到工程中使用,而是需要先在本地編譯,然后將編譯后的文件拖入到工程中使用。

配置步驟如下:

(1):首先下載GPUImage https://github.com/BradLarson/GPUImage

QQ20160216-0.png

(2):解壓后,在framework 目錄下,打開
GPUImage.xcodeproj 工程

![Uploading QQ20160216-2_263644.png . . .]

(3):把Headers文件夾下 Project中的頭文件,全部拖到 Public文件夾下面

拖動前:

QQ20160216-2.png

拖動后:

QQ20160216-3.png

(4):運行該工程

(5)點擊Products下的 libGPUImage.a,右鍵, show in finder

QQ20160216-4.png

(6)把該目錄下的libGpuImage.a 和 User文件夾拖到我們的工程下面

QQ20160216-5.png

(7)然后就可以使用
GPUImage了。

示例代碼:

import"GLProgram.h"

// Base classes

import"GPUImageOpenGLESContext.h"

import"GPUImageOutput.h"

import"GPUImageView.h"

import"GPUImageVideoCamera.h"

import"GPUImageStillCamera.h"

import"GPUImageMovie.h"

import"GPUImagePicture.h"

import"GPUImageRawDataInput.h"

import"GPUImageRawDataOutput.h"

import"GPUImageMovieWriter.h"

import"GPUImageFilterPipeline.h"

import"GPUImageTextureOutput.h"

import"GPUImageFilterGroup.h"

import"GPUImageTextureInput.h"

import"GPUImageUIElement.h"

import"GPUImageBuffer.h"

// Filters

import"GPUImageFilter.h"

import"GPUImageTwoInputFilter.h"

pragma mark - 調整顏色 HandleColor

import"GPUImageBrightnessFilter.h" //亮度

import"GPUImageExposureFilter.h" //曝光

import"GPUImageContrastFilter.h" //對比度

import"GPUImageSaturationFilter.h" //飽和度

import"GPUImageGammaFilter.h" //伽馬線

import"GPUImageColorInvertFilter.h" //反色

import"GPUImageSepiaFilter.h" //褐色(懷舊)

import"GPUImageLevelsFilter.h" //色階

import"GPUImageGrayscaleFilter.h" //灰度

import"GPUImageHistogramFilter.h" //色彩直方圖,顯示在圖片上

import"GPUImageHistogramGenerator.h" //色彩直方圖

import"GPUImageRGBFilter.h" //RGB

import"GPUImageToneCurveFilter.h" //色調曲線

import

"GPUImageMonochromeFilter.h" //單色

import"GPUImageOpacityFilter.h" //不透明度

import"GPUImageHighlightShadowFilter.h" //提亮陰影

import"GPUImageFalseColorFilter.h" //色彩替換(替換亮部和暗部色彩)

import"GPUImageHueFilter.h" //色度

import"GPUImageChromaKeyFilter.h" //色度鍵

import"GPUImageWhiteBalanceFilter.h" //白平橫

import"GPUImageAverageColor.h" //像素平均色值

import"GPUImageSolidColorGenerator.h" //純色

import"GPUImageLuminosity.h" //亮度平均

import"GPUImageAverageLuminanceThresholdFilter.h" //像素色值亮度平均,圖像黑白(有類似漫畫效果)

import"GPUImageLookupFilter.h" //lookup 色彩調整

import

"GPUImageAmatorkaFilter.h" //Amatorka lookup

import

"GPUImageMissEtikateFilter.h" //MissEtikate lookup

import"GPUImageSoftEleganceFilter.h" //SoftElegance lookup

pragma mark - 圖像處理 HandleImage

import"GPUImageCrosshairGenerator.h" //十字

import

"GPUImageLineGenerator.h" //線條

import"GPUImageTransformFilter.h" //形狀變化

import"GPUImageCropFilter.h" //剪裁

import"GPUImageSharpenFilter.h" //銳化

import"GPUImageUnsharpMaskFilter.h" //反遮罩銳化

import"GPUImageFastBlurFilter.h" //模糊

import"GPUImageGaussianBlurFilter.h" //高斯模糊

import"GPUImageGaussianSelectiveBlurFilter.h" //高斯模糊,選擇部分清晰

import"GPUImageBoxBlurFilter.h" //盒狀模糊

import"GPUImageTiltShiftFilter.h" //條紋模糊,中間清晰,上下兩端模糊

import"GPUImageMedianFilter.h" //中間值,有種稍微模糊邊緣的效果

import"GPUImageBilateralFilter.h" //雙邊模糊

import"GPUImageErosionFilter.h" //侵蝕邊緣模糊,變黑白

import"GPUImageRGBErosionFilter.h" //RGB侵蝕邊緣模糊,有色彩

import"GPUImageDilationFilter.h" //擴展邊緣模糊,變黑白

import"GPUImageRGBDilationFilter.h" //RGB擴展邊緣模糊,有色彩

import"GPUImageOpeningFilter.h" //黑白色調模糊

import"GPUImageRGBOpeningFilter.h" //彩色模糊

import"GPUImageClosingFilter.h" //黑白色調模糊,暗色會被提亮

import"GPUImageRGBClosingFilter.h" //彩色模糊,暗色會被提亮

import"GPUImageLanczosResamplingFilter.h" //Lanczos重取樣,模糊效果

import"GPUImageNonMaximumSuppressionFilter.h" //非最大抑制,只顯示亮度最高的像素,其他為黑

import"GPUImageThresholdedNonMaximumSuppressionFilter.h" //與上相比,像素丟失更多

import "GPUImageSobelEdgeDetectionFilter.h" //Sobel邊緣檢測算法(白邊,黑內容,有點漫畫的反色效果)

import"GPUImageCannyEdgeDetectionFilter.h" //Canny邊緣檢測算法(比上更強烈的黑白對比度)

import"GPUImageThresholdEdgeDetectionFilter.h" //閾值邊緣檢測(效果與上差別不大)

import "GPUImagePrewittEdgeDetectionFilter.h" //普瑞維特(Prewitt)邊緣檢測(效果與Sobel差不多,貌似更平滑)

import"GPUImageXYDerivativeFilter.h" //XYDerivative邊緣檢測,畫面以藍色為主,綠色為邊緣,帶彩色

import"GPUImageHarrisCornerDetectionFilter.h" //Harris角點檢測,會有綠色小十字顯示在圖片角點處

import"GPUImageNobleCornerDetectionFilter.h" //Noble角點檢測,檢測點更多

import"GPUImageShiTomasiFeatureDetectionFilter.h" //ShiTomasi角點檢測,與上差別不大

import"GPUImageMotionDetector.h" //動作檢測

import"GPUImageHoughTransformLineDetector.h" //線條檢測

import"GPUImageParallelCoordinateLineTransformFilter.h" //平行線檢測

import"GPUImageLocalBinaryPatternFilter.h" //圖像黑白化,并有大量噪點

import"GPUImageLowPassFilter.h" //用于圖像加亮

import"GPUImageHighPassFilter.h" //圖像低于某值時顯示為黑

pragma mark - 視覺效果 VisualEffect

import"GPUImageSketchFilter.h" //素描

import"GPUImageThresholdSketchFilter.h" //閥值素描,形成有噪點的素描

import"GPUImageToonFilter.h" //卡通效果(黑色粗線描邊)

import"GPUImageSmoothToonFilter.h" //相比上面的效果更細膩,上面是粗曠的畫風

import "GPUImageKuwaharaFilter.h" //桑原(Kuwahara)濾波,水粉畫的模糊效果;處理時間比較長,慎用

import"GPUImageMosaicFilter.h" //黑白馬賽克

import"GPUImagePixellateFilter.h" //像素化

import"GPUImagePolarPixellateFilter.h" //同心圓像素化

import"GPUImageCrosshatchFilter.h" //交叉線陰影,形成黑白網狀畫面

import"GPUImageColorPackingFilter.h" //色彩丟失,模糊(類似監控攝像效果)

import"GPUImageVignetteFilter.h" //暈影,形成黑色圓形邊緣,突出中間圖像的效果

import"GPUImageSwirlFilter.h" //漩渦,中間形成卷曲的畫面

import"GPUImageBulgeDistortionFilter.h" //凸起失真,魚眼效果

import"GPUImagePinchDistortionFilter.h" //收縮失真,凹面鏡

import"GPUImageStretchDistortionFilter.h" //伸展失真,哈哈鏡

import"GPUImageGlassSphereFilter.h" //水晶球效果

import"GPUImageSphereRefractionFilter.h" //球形折射,圖形倒立

import"GPUImagePosterizeFilter.h" //色調分離,形成噪點效果

import"GPUImageCGAColorspaceFilter.h" //CGA色彩濾鏡,形成黑、淺藍、紫色塊的畫面

import"GPUImagePerlinNoiseFilter.h" //柏林噪點,花邊噪點

import"GPUImage3x3ConvolutionFilter.h" //3x3卷積,高亮大色塊變黑,加亮邊緣、線條等

import "GPUImageEmbossFilter.h" //浮雕效果,帶有點3d的感覺

import"GPUImagePolkaDotFilter.h" //像素圓點花樣

import "GPUImageHalftoneFilter.h" //點染,圖像黑白化,由黑點構成原圖的大致圖形

pragma mark - 混合模式 Blend

import"GPUImageMultiplyBlendFilter.h" //通常用于創建陰影和深度效果

import"GPUImageNormalBlendFilter.h" //正常

import "GPUImageAlphaBlendFilter.h" //透明混合,通常用于在背景上應用前景的透明度

import

"GPUImageDissolveBlendFilter.h" //溶解

import "GPUImageOverlayBlendFilter.h" //疊加,通常用于創建陰影效果

import "GPUImageDarkenBlendFilter.h" //加深混合,通常用于重疊類型

import "GPUImageLightenBlendFilter.h" //減淡混合,通常用于重疊類型

import

"GPUImageSourceOverBlendFilter.h" //源混合

import

"GPUImageColorBurnBlendFilter.h" //色彩加深混合

import

"GPUImageColorDodgeBlendFilter.h" //色彩減淡混合

import "GPUImageScreenBlendFilter.h" //屏幕包裹,通常用于創建亮點和鏡頭眩光

import

"GPUImageExclusionBlendFilter.h" //排除混合

import "GPUImageDifferenceBlendFilter.h" //差異混合,通常用于創建更多變動的顏色

import "GPUImageSubtractBlendFilter.h" //差值混合,通常用于創建兩個圖像之間的動畫變暗模糊效果

import "GPUImageHardLightBlendFilter.h" //強光混合,通常用于創建陰影效果

import"GPUImageSoftLightBlendFilter.h" //柔光混合

import"GPUImageChromaKeyBlendFilter.h" //色度鍵混合

import"GPUImageMaskFilter.h" //遮罩混合

import"GPUImageHazeFilter.h" //朦朧加暗

import"GPUImageLuminanceThresholdFilter.h" //亮度閾

import"GPUImageAdaptiveThresholdFilter.h" //自適應閾值

import"GPUImageAddBlendFilter.h" //通常用于創建兩個圖像之間的動畫變亮模糊效果

import"GPUImageDivideBlendFilter.h" //通常用于創建兩個圖像之間的動畫變暗模糊效果

pragma mark - 尚不清楚

import "GPUImageJFAVoroniFilter.h"

import "GPUImageVoroniConsumerFilter.h"

原圖:

QQ20160216-6.png

處理后的圖:

QQ20160216-7.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 230,563評論 6 544
  • 序言:濱河連續發生了三起死亡事件,死亡現場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發現死者居然都...
    沈念sama閱讀 99,694評論 3 429
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 178,672評論 0 383
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,965評論 1 318
  • 正文 為了忘掉前任,我火速辦了婚禮,結果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,690評論 6 413
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發上,一...
    開封第一講書人閱讀 56,019評論 1 329
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 44,013評論 3 449
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 43,188評論 0 290
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當地人在樹林里發現了一具尸體,經...
    沈念sama閱讀 49,718評論 1 336
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 41,438評論 3 360
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發現自己被綠了。 大學時的朋友給我發了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,667評論 1 374
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 39,149評論 5 365
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質發生泄漏。R本人自食惡果不足惜,卻給世界環境...
    茶點故事閱讀 44,845評論 3 351
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 35,252評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,590評論 1 295
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,384評論 3 400
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,635評論 2 380

推薦閱讀更多精彩內容