本文所有示例代码或Demo可以在此获取:https://github.com/WillieWangWei/SampleCode_GPUImage2_FilterList.git
如果本文对你有所帮助,请给个Star????
相关文章
GPUImage2(一)集成与使用
GPUImage2(二)滤镜大全:图像生成
GPUImage2(三)滤镜大全:色彩调校
GPUImage2(五)滤镜大全:混合模式
GPUImage2(六)滤镜大全:视觉特效
##概述
本篇枚举GPUImage2内置滤镜中的所有的图像处理类别,并对其效果及参数进行简要说明,供选择参考。
##图像处理
共35类
- TransformOperation
- Crop
- LanczosResampling
- Sharpen
- Histogram
- HistogramDisplay
- MotionBlur
- ZoomBlur
- GaussianBlur
- BoxBlur
- SingleComponentGaussianBlur
- BilateralBlur
- Dilation
- Erosion
- MedianFilter
- Convolution3x3
- SobelEdgeDetection
- PrewittEdgeDetection
- ThresholdSobelEdgeDetection
- LocalBinaryPattern
- ColorLocalBinaryPattern
- UnsharpMask
- iOSBlur
- TiltShift
- HistogramEqualization
- CannyEdgeDetection
- HarrisCornerDetector
- NobleCornerDetector
- ShiTomasiFeatureDetector
- OpeningFilter
- ClosingFilter
- LowPassFilter
- HighPassFilter
- MotionDetector
- ColourFASTFeatureDetection
#####TransformOperation
对图像进行2-D或3-D变换。transform:Matrix4x4 指定的Matrix4x4值,它可以从CATransform3D或CGAffineTransform转换得到,或者通过其他方式生成。
#####Crop
裁剪图像的特定位置。cropSizeInPixels: Size? 裁剪的尺寸。locationOfCropInPixels: Position? 裁剪区域左上角的位置。
#####LanczosResampling
使用Lanczos重采样对图像进行上采样或下采样,产生比标准线性或三线性更好的质量。可以设置overriddenOutputSize将图像重新采样为新的大小。
#####Sharpen
锐化图像。sharpness:Float 锐度,取值[-4.0, 4.0],默认0.0。
#####UnsharpMask
反锐化。blurRadiusInPixels:Float 底层高斯模糊的模糊半径,默认4.0。intensity:Float 锐化强度,取值[0.0, ∞),默认1.0。
#####GaussianBlur
一种硬件优化,可变半径高斯模糊。blurRadiusInPixels:Float 模糊的半径(以像素为单位),默认2.0。
#####BoxBlur
一种硬件优化,可变半径高斯模糊。blurRadiusInPixels:Float 模糊的半径(以像素为单位),默认2.0。
#####SingleComponentGaussianBlur
单一分量修改的GaussianBlur。blurRadiusInPixels:Float 模糊的半径(以像素为单位),默认2.0。
#####iOSBlur
仿iOS 7在控制中心等地方使用的背景模糊。blurRadiusInPixels:Float 模糊的半径(以像素为单位),默认48.0。saturation:Float 饱和度,取值[0.0, 2.0],默认0.8。rangeReductionFactor 降低图像亮度的范围,默认0.6。
#####Median
在3x3区域取三个颜色分量的中值。
#####BilateralBlur
双边模糊,它模糊相似的颜色值,同时保留锐利的边缘。distanceNormalizationFactor:Float 中心颜色和样本颜色之间的距离,默认8.0。
#####TiltShift
一种模拟倾斜移位的透镜效果blurRadiusInPixels:Float 底层模糊的半径,以像素为单位。默认7.0。topFocusLevel:Float 图像中对焦区域顶部的位置,此值应低于bottomFocusLevel,默0.4。bottomFocusLevel:Float 图像中对焦区域底部的位置,此值应高于topFocusLevel,默0.6。focusFallOffRate:Float 图像变得离开对焦区域的速率,默认0.2。
#####Convolution3x3
对图像使用3x3卷积内核。convolutionKernel:Matrix3x3 应用于像素及其8个周围像素的值的3×3矩阵。矩阵以行为主的顺序指定,左上角的像素为m11,右下角的m33。如果矩阵中的值不等于1.0,则图像可以变亮或变暗。
#####SobelEdgeDetection
Sobel边缘检测,边缘以白色突出显示。edgeStrength:Float 调整滤镜的动态范围。值越高,边缘越强,但可以使强度色空间饱和。默认1.0。
#####PrewittEdgeDetection
Prewitt边缘检测,边缘以白色突出显示。edgeStrength:Float 调整滤镜的动态范围。值越高,边缘越强,但可以使强度色空间饱和。默认1.0。
#####ThresholdSobelEdgeDetection
使用阈值而不是渐进强度值进行Sobel边缘检测。edgeStrength:Float 调整滤镜的动态范围。值越高,边缘越强,但可以使强度色空间饱和。默认1.0。threshold:Float 高于此阈值的任何边将为黑色,低于为白色,取值[0.0, 1.0],默认0.8。
#####Histogram
它分析传入的图像,并创建表现每个颜色值出现的频率的直方图。其输出是3像素高,256像素宽的图像,其中心(垂直)像素包含出现各种颜色值的频率的像素。每个颜色值占据256个宽度位置中的一个,从左边的0到右边的255。该直方图可以针对各个颜色通道(.Red,.Green,.Blue),图像的亮度(.Luminance)或所有三个颜色通道(.RGB)生成。downsamplingFactor:UInt 标记图像的哪个部分被采样。取值[1, 32],默认16。
#####HistogramDisplay
它生成Histogram的图像,也可以用于显示其他类型的值。
#####HistogramEqualization
分析一个图像的直方图,并补偿出新图。
#####CannyEdgeDetection
使用完整的Canny过程来突出显示一个像素宽的边缘。blurRadiusInPixels:Float 高斯模糊的基础模糊半径。默认2.0。upperThreshold:Float 高于此阈值的任何边将显示在最终结果中,默认0.4。lowerThreshold:Float 低于此阈值的任何边将从最终结果中删除,默认值为0.1。
#####HarrisCornerDetector
对输入图像运行哈里斯角点检测算法,并生成一个图像。blurRadiusInPixels:Float 高斯模糊的基础模糊半径。默认2.0。sensitivity:Float 调整生成的角点图的缩放系数,默认5.0。threshold:Float 检测的阈值,默认0.2。cornersDetectedCallback:(([Position]) -> ())? 检测回调,包含一个存储所有检测点位置的数组。
#####NobleCornerDetector
继承自HarrisCornerDetector,在其基础上运行Noble变量。
#####ShiTomasiFeatureDetector
Shi-Tomasi特征检测器,继承自HarrisCornerDetector。
#####Dilation
执行图像扩张操作,其中矩形邻域中的颜色通道的最大强度用于该像素的强度。radius:UInt 采样的矩形区域的半径,取值[1, 4],默认1。
######Erosion
执行图像侵蚀操作,其中矩形邻域中的颜色通道的最小强度用于该像素的强度。radius:UInt 采样的矩形区域的半径,取值[1, 4],默认1。
#####OpeningFilter
对图像的颜色通道执行侵蚀。radius:UInt 采样的矩形区域的半径,取值[1, 4],默认1。
#####ClosingFilter
对图像的颜色通道执行扩张。radius:UInt 采样的矩形区域的半径,取值[1, 4],默认1。
#####LocalBinaryPattern
将8个周围像素的红色通道的强度与中心像素的红色通道的强度的比较,作为该像素强度的位串编码比较结果。最低有效位是右上角比较,逆时针转向以正确的比较结束作为最高有效位。
#####ColorLocalBinaryPattern
将8个周围像素的红色通道的强度与中心像素的红色通道的强度的比较,作为该像素强度的位串编码比较结果,其变为每个颜色通道的强度。最低有效位是右上角比较,逆时针转向以正确的比较结束作为最高有效位。
#####LowPassFilter
对输入视频帧应用低通滤镜。它可以用于去噪,添加运动模糊或用于创建高通滤镜。strength:Float 前一个累加帧与当前帧的混合程度,取值[0.0, 1.0],默认0.5。
#####HighPassFilter
对输入视频帧应用高通滤镜,对于运动检测最有用。strength:Float 从当前的累加帧中减去先前累加的帧被混合的程度。取值[0.0, 1.0],默认0.5。
#####MotionDetector
基于HighPassFilter的运动检测。lowPassStrength:Float 从当前的累加帧中减去先前累加的帧被混合的程度。取值[0.0, 1.0],默认0.5。motionDetectedCallback:((Position, Float) -> ())? 运动检测回调。包含一个检测到运动的位置以及场景的运动强度。
#####MotionBlur
对图像使用定向运动模糊。blurSize:Float 模糊的系数,取值[0.0, ∞),默认1.0。blurAngle:Float 模糊的角度,以度为单位,默认0。
#####ZoomBlur
对图像使用定向运动模糊。blurSize:Float 模糊的系数,取值[0.0, ∞),默认1.0。blurCenter:Position 模糊的中心,默认(0.5, 0.5)。
#####ColourFASTFeatureDetection
提供图像的ColourFAST特征描述符。blurRadiusInPixels:Float 模糊半径,默认3.0。
本文所有示例代码或Demo可以在此获取:https://github.com/WillieWangWei/SampleCode_GPUImage2_FilterList.git
如果本文对你有所帮助,请给个Star????
相关文章
GPUImage2(一)集成与使用
GPUImage2(二)滤镜大全:图像生成
GPUImage2(三)滤镜大全:色彩调校
GPUImage2(五)滤镜大全:混合模式
GPUImage2(六)滤镜大全:视觉特效