(轉)iOS GPUImage研究總結

 

Part one: 關於GPUImage

這裏直接引用官方描述:ios

The GPUImage framework is a BSD-licensed iOS library that lets you apply GPU-accelerated filters and other effects to images, live camera video, and movies. In comparison to Core Image (part of iOS 5.0), GPUImage allows you to write your own custom filters, supports deployment to iOS 4.0, and has a simpler interface. However, it currently lacks some of the more advanced features of Core Image, such as facial detection. git

內容大意爲:GPUImage是使用GPU處理圖像的、他能夠對圖片、實時畫面、視頻進行處理。他容許你自定義濾鏡、支持iOS4.0。然而,目前缺少核心形象的一些更高級的功能,好比面部檢測。github

這裏寫圖片描述


附一張GPUImage的結構圖:算法

這裏寫圖片描述


圖片來自: 
http://blog.csdn.net/qq_29846663/article/details/53707482chrome

Part two: 有關GPUImage的研究成果

圖像處理之GPUImage圖片濾鏡 
http://blog.csdn.net/xoxo_x/article/details/53507016markdown

圖像處理之CPU圖片濾鏡  
http://blog.csdn.net/xoxo_x/article/details/53518322app

圖像處理之CoreImage圖片濾鏡  
http://blog.csdn.net/xoxo_x/article/details/53518529ssh

iOS GPUImage研究序一:內置濾鏡:  
http://blog.csdn.net/Xoxo_x/article/details/57082804ide

iOS GPUImage研究二:捕獲圖像stillCamera寫入相冊  
http://blog.csdn.net/Xoxo_x/article/details/57086446

iOS GPUImage研究三:視頻採集並添加實時濾鏡 
http://blog.csdn.net/xoxo_x/article/details/58357978

iOS GPUImage研究四:爲視頻文件添加濾鏡 
http://blog.csdn.net/Xoxo_x/article/details/58818703

iOS GPUImage研究五:短視頻拍攝(濾鏡、文件寫入) 
http://blog.csdn.net/Xoxo_x/article/details/70198469

iOS GPUImage研究六:爲視頻添加圖片水印 
http://blog.csdn.net/xoxo_x/article/details/71055867

iOS GPUImage研究七:動態相冊初探(水印) 
http://blog.csdn.net/xoxo_x/article/details/71076584

將圖片保存到本地 
http://blog.csdn.net/xoxo_x/article/details/53517878

基於IM實現直播禮物效果 
http://blog.csdn.net/xoxo_x/article/details/52044388

GPUImage之爲視頻添加10種原生濾鏡 
http://blog.csdn.net/xoxo_x/article/details/52749033

GPUImage–流行的美顏濾鏡GPUImageBeautifyFilter 
http://blog.csdn.net/xoxo_x/article/details/52743107

GPUImage基於OpenGL ES 2.0,比基於CPU的圖形和視頻處理更快速.

GPUImage把OpenGL ES封裝爲簡潔的Objective-C接口.


Part Three: 有關GPUImage的導入方式

iOS GPUImage研究序二:更簡單GPUImage導入方式 
http://blog.csdn.net/xoxo_x/article/details/60323297

Part Four: 相關參考資料

https://github.com/Guikunzhi/BeautifyFaceDemo 
已經沒辦法運行,須要cd 文件夾 pod install 

http://download.csdn.net/detail/xoxo_x/9642503 
我整理過的,去除不須要的東西2016.09.28

二、 
http://www.cnblogs.com/salam/p/4980992.html 文章不錯

http://blog.csdn.net/jcp312097937/article/details/45849341 文章不錯

http://www.ios122.com/2015/08/gpuimage/很是好的文章

三、 
http://developer.apple.com/library/ios/samplecode/RosyWriter/RosyWriter.zip

Apple官方對視頻流的處理,GPUImage中的VideoCamera部分代碼就是根據這個寫的

四、http://blog.csdn.net/Xoxo_x/article/details/52523466 
我寫的不怎麼樣有時候會蹦,基於coreImage在GPU渲染,圖像處理的很差,但能正常運行。

五、http://blog.csdn.net/Xoxo_x/article/details/52523912 
coreImage圖片處理,看這個就能夠,我也是借鑑別人的,但很全

六、 
原文連接:http://nshipster.com/gpuimage/ 英文CPU與GPU的比較

https://leafduo.com/articles/2013/05/13/gpuimage/ 中文翻譯

七、這個也不錯哦https://github.com/loyinglin/GPUImage

GPUImage詳細解析(一)  
http://url.cn/2FwjqIr 
GPUImage詳細解析(二)  
http://url.cn/2GsW2qg 
GPUImage詳細解析(三)- 實時美顏濾鏡  
http://url.cn/2F0SKgR 
GPUImage詳細解析(四)模糊圖片處理  
http://url.cn/2GX6JEQ 
GPUImage詳細解析(五)濾鏡視頻錄製  
http://url.cn/2GHCo71 
GPUImage詳細解析(六)-用視頻作視頻水印  
http://url.cn/2JrhR7V 
GPUImage詳細解析(七)文字水印和動態圖像水印  
http://url.cn/2IzRshs 
GPUImage詳細解析(八)視頻合併混音  
http://url.cn/2DmUYiA 
GPUImage詳細解析(九)圖像的輸入輸出和濾鏡通道  
http://url.cn/2EFjlGp 收起 
** 
下載GPUImage,地址:https://github.com/BradLarson/GPUImage 
共125個濾鏡, 分爲四類

一、Color adjustments: 31 filters, 顏色處理相關
    二、Image processing: 40 filters, 圖像處理相關.
    三、Blending modes: 29 filters, 混合模式相關.
    四、Visual effects: 25 filters, 視覺效果相關.
#import <Foundation/Foundation.h> #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 - 圖像處理 Handle Image #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 - 視覺效果 Visual Effect #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" //一般用於建立兩個圖像之間的動畫變暗模糊效果
相關文章
相關標籤/搜索