IOS – OpenGL ES 调节图像色彩替换 GPUImageFalseColorFilter

目录

  • 一.简介
  • 二.效果演示
  • 三.源码下载
  • 四.猜你喜欢

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 基础

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 转场

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 特效

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 函数

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES GPUImage 使用

零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES GLSL 编程

一.简介

GPUImage 共 125 个滤镜, 分为四类

1、Color adjustments : 31 filters , 颜色处理相关
2、Image processing : 40 filters , 图像处理相关.
3、Blending modes : 29 filters , 混合模式相关.
4、Visual effects : 25 filters , 视觉效果相关.

GPUImageFalseColorFilter 属于 GPUImage 颜色处理相关,用来处理图片色彩替换,分别指定用什么颜色代替图像的暗部和亮色区域。默认值为(0.0,0.0,0.5)和(1.0,0.0,0.0),shader 源码如下:

/******************************************************************************************/
//@Author:猿说编程
//@Blog(个人博客地址): www.codersrc.com
//@File:IOS – OpenGL ES 调节图像色彩替换 GPUImageFalseColorFilter
//@Time:2022/03/19 07:30
//@Motto:不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
/******************************************************************************************/#if TARGET_IPHONE_SIMULATOR || TARGET_OS_IPHONE
NSString *const kGPUFalseColorFragmentShaderString = SHADER_STRING
(precision lowp float;varying highp vec2 textureCoordinate;uniform sampler2D inputImageTexture;uniform float intensity;uniform vec3 firstColor;uniform vec3 secondColor;const mediump vec3 luminanceWeighting = vec3(0.2125, 0.7154, 0.0721);void main(){lowp vec4 textureColor = texture2D(inputImageTexture, textureCoordinate);float luminance = dot(textureColor.rgb, luminanceWeighting);gl_FragColor = vec4( mix(firstColor.rgb, secondColor.rgb, luminance), textureColor.a);}
);
#else
NSString *const kGPUFalseColorFragmentShaderString = SHADER_STRING
(varying vec2 textureCoordinate;uniform sampler2D inputImageTexture;uniform float intensity;uniform vec3 firstColor;uniform vec3 secondColor;const vec3 luminanceWeighting = vec3(0.2125, 0.7154, 0.0721);void main(){vec4 textureColor = texture2D(inputImageTexture, textureCoordinate);float luminance = dot(textureColor.rgb, luminanceWeighting);gl_FragColor = vec4( mix(firstColor.rgb, secondColor.rgb, luminance), textureColor.a);}
);
#endif

二.效果演示

使用 GPUImageFalseColorFilter 来检测图片的暗部和亮色区域,分别使用红色和绿色替换,效果如下:

三.源码下载

下载地址 : IOS – OpenGL ES 调节图像色彩替换 GPUImageFalseColorFilter

四.猜你喜欢

  • IOS – OPenGL ES 设置图像亮度 GPUImageBrightnessFilter
  • IOS – OPenGL ES 调节图像曝光度 GPUImageExposureFilter
  • IOS – OpenGL ES 调节图像对比度 GPUImageContrastFilter
  • IOS – OPenGL ES 调节图像饱和度 GPUImageSaturationFilter
  • IOS – OPenGL ES 调节图像伽马线 GPUImageGammaFilter
  • IOS – OpenGL ES 调节图像反色 GPUImageColorInvertFilter
  • IOS – OpenGL ES 调节图像褐色 GPUImageSepiaFilter
  • IOS – OpenGL ES 调节图像灰色 GPUImageGrayscaleFilter
  • IOS – OpenGL ES 调节图像 RGB 通道 GPUImageRGBFilter
  • IOS – OpenGL ES 调节图像不透明度 GPUImageOpacityFilter
  • IOS – OpenGL ES 调节图像阴影 GPUImageHighlightShadowFilter
  • IOS – OpenGL ES 调节图像色彩替换 GPUImageFalseColorFilter

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/524587.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

K8S精华问答 | Kubernetes集群不能正常工作,难道是防火墙问题?

作为是Google开源的容器集群管理系。在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性。今天,我们就来看看关于k8s的精华问答吧。1Q: Kubernetes集群不能正…

React之受控组件

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>2_受控组件</title> </head> <body> <!-- 准备好一个容器 --> <div id"test"></div> <!-- 核心库 --> <scri…

GPUImage – 色彩直方图 GPUImageHistogramFilter

目录 一.简介二.猜你喜欢 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 基础 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 转场 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES…

小团队的微服务之路

戳蓝字“CSDN云计算”关注我们哦&#xff01;作者 | Dean文章转载自Docker微服务是否适合小团队是个见仁见智的问题。回归现象看本质&#xff0c;随着业务复杂度的提高&#xff0c;单体应用越来越庞大&#xff0c;就好像一个类的代码行越来越多&#xff0c;分而治之&#xff0c…

PUImage – 色彩直方图 GPUImageHistogramGenerator

目录 一.简介二.猜你喜欢 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 基础 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 转场 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES…

React之高阶函数_函数柯里化

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>高阶函数_函数柯里化</title> </head> <body> <!-- 准备好一个容器 --> <div id"test"></div> <!-- 核心库 -->…

5G精华问答 | 什么是5G?5G与LTE有什么关系?

从2016年以来&#xff0c;5G热度逐步攀升。作为下一代移动通信网络&#xff0c;如果用一个关键词来形容5G&#xff0c;那就是“快”。5G不仅会极大地改变人们现有的生活和工作方式&#xff0c;提升通信效率&#xff0c;还可以加大很多前沿技术和产品落地的可能性。今天&#xf…

内置注解讲解

package com.wuming.annotation;import java.util.ArrayList; import java.util.List;//什么是注解 SuppressWarnings("all") public class Test01 extends Object{Override//重写注解public String toString() {return super.toString();}//Deprecated 不推荐使用&a…

GPUImage – 像素平均色值 GPUImageAverageColor

目录 一.简介二.猜你喜欢 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 基础 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 转场 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES…

React之不用函数柯里化的实现

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>2_不用函数柯里化的实现</title> </head> <body> <!-- 准备好一个容器 --> <div id"test"></div> <!-- 核心库 --&…

GPUImage – 亮度平均 GPUImageLuminosity

目录 一.简介二.猜你喜欢 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 基础 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 转场 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES…

React之引出生命周期

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>2_不用函数柯里化的实现</title> </head> <body> <!-- 准备好一个容器 --> <div id"test"></div> <!-- 核心库 --&…

IOS – OpenGL ES 调节图像色度 GPUImageHueFilter

目录 一.简介二.效果演示三.源码下载二.猜你喜欢 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 基础 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 转场 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目…

中国开发者真实现状:40 岁不做开发,算法工程师最稀缺!

戳蓝字“CSDN云计算”关注我们哦&#xff01;互联网的 2018 年&#xff0c;注定是不平凡的一年。浩浩荡荡的美国制裁中兴事件唤醒了科技界对芯片产业的重视&#xff0c;倒逼了一系列芯片方面的布局和投资&#xff1b;互联网人口红利不断消耗&#xff0c;推动百度、腾讯、阿里巴…

react之生命周期(旧)组件挂载流程代码+图片

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>2_react生命周期&#xff08;旧&#xff09;</title> </head> <body> <!-- 准备好一个容器 --> <div id"test"></div>…

GPUImage – 色阶 GPUImageLevelsFilter

目录 一.简介二.猜你喜欢 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 基础 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 转场 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES…

React之生命周期-setState

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>2_react生命周期-setState</title> </head> <body> <!-- 准备好一个容器 --> <div id"test"></div> <!-- 核心库 -…

GPUImage – 纯色 GPUImageSolidColorGenerator

目录 一.简介二.猜你喜欢 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 基础 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES 转场 零基础 OpenGL (ES) 学习路线推荐 : OpenGL (ES) 学习目录 >> OpenGL ES…

微服务精华问答 | 在使用微服务架构时,您面临哪些挑战?

戳蓝字“CSDN云计算”关注我们哦&#xff01;过去几年来&#xff0c;“微服务架构”这个术语出现了&#xff0c;它描述了一种将软件应用程序设计为可独立部署的服务套件的特定方式。尽管这种架构风格没有确切的定义&#xff0c;但围绕业务能力&#xff0c;自动化部署&#xff0…

React之生命周期-forceUpdate

<!DOCTYPE html> <html> <head> <meat charset"UTF-8"> <title>2_react生命周期-forceUpdate</title> </head> <body> <!-- 准备好一个容器 --> <div id"test"></div> <!-- 核心库…