OpenGL油画效果
shader油画效果
代码参考网络上的Unity Shader脚本,将其转换为glsl语法进行GL渲染。glsl代码如下,可以使用shadertoy直接运行:
#iChannel1"file://./dusk.jpg"#define Res iResolution.xyvoid mainImage(out vec4 fragColor,in vec2 fragCoord)
{// size 和 _Radius是两个超参数,可以提供我们修改。建议_Radius为2到10之间vec2 size = 2.0/Res;float _Radius = 2.0;vec2 uv = fragCoord/Res;float n = (_Radius + 1.0)*(_Radius + 1.0);vec3 m0 = vec3(0.0);vec3 m1 = vec3(0.0);vec3 s0 = vec3(0.0);vec3 s1 = vec3(0.0);vec3 color = vec3(0.0);for (float j = -_Radius;j <= 0.0;++j) {for (float k = -_Radius;k <= 0.0; ++k) {color = texture2D(iChannel1, uv+vec2(k,j)*size).rgb;m0 += color;s0 += color * color;}}for (float j = 0.0;j <= _Radius; ++j) {for (float k = 0.0;k <= _Radius; ++k) {color = texture2D(iChannel1, uv + vec2(k, j)*size).rgb;m1 += color;s1 += color * color;}}vec4 finalColor = vec4(0.0);float min_sigma2 = 100.0;m0 /= n;s0 = abs(s0 / n - m0 * m0);float sigma2 = s0.r + s0.g + s0.b;if (sigma2 < min_sigma2) {min_sigma2 = sigma2;finalColor = vec4(m0, 1.0);}m1 /= n;s1 = abs(s1 / n - m1 * m1);sigma2 = s1.r + s1.g + s1.b;if (sigma2 < min_sigma2) {min_sigma2 = sigma2;finalColor = vec4(m1, 1.0);}fragColor = finalColor;
}
原图如下:
效果图如下:
OpenGL油画效果相关推荐
- Java中实现六种图像处理的效果(灰度化、马赛克效果、去背景实现、珠纹化实现、黑白版画效果、油画效果)
** Java中实现六种图像处理的效果(灰度化.马赛克效果.去背景实现.珠纹化实现.黑白版画效果.油画效果) ** 本文的编程的思想: 先将实现这六种效果的方法写入一个名为pic_performanc ...
- OpenCV油画效果
OpenCV油画效果 油画效果 介绍 代码 结果 油画效果 介绍 图像在颜色空间默认颜色空间COLOR_BGR2GRAY中转换.对于图像中的每个像素,程序都会计算尺寸为2 * size + 1的相邻像 ...
- Photoshop 油画效果
4.11 油画效果 案例效果 油画的最大特点就是笔触鲜明,整体感觉厚重,有质感.在本节中,将学习如何将普通照片处理成油画效果.如图4-301所示,为制作前后效果对比. 图4-301 制作前后效果对 ...
- Java 简单图片 马赛克,黑白画,珠纹化,油画效果等处理技术 原理及实现 (简单UI)
Java 图片马赛克,黑白画,珠纹化,油画效果等处理技术 原理及实现 1. 需要用到的包 java.awt // 用于创建用户界面和绘制图形图像的所有类 javax.swing // 提供一组&quo ...
- 图像处理之仿油画效果
基于像素权重实现图像的像素模糊从而达到近似油画效果模糊 其实卷积的变种,不是基于Stroke维诺图算法与采样moment算法 模拟实现.不想跟多的废话了,先看效果: 说实话,货是干货,但是不想再多写罗 ...
- Python OpenCV绘画实现 油画效果、水彩效果
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:代码医生 OpenCV是功能强大的计算机视觉库,具有强大的图像处理工 ...
- 用python将图片变为油画_Python OpenCV绘画完成 油画效果、水彩效果
序言 文中的文本及图片来自互联网,仅作学习培训.沟通交流应用,不具备一切商业行为,著作权归著作人全部,如不太好请立即在线留言以作解决. 创作者:编码医师 OpenCV是功能齐全的人工智能算法库,具备强 ...
- opencv学习17——油画效果
一.算法描述 图像油画效果 1.类似于马赛克及毛玻璃效果,也是卷积操作的一种 2.基本原理:将在计算某点像素值时,通过计算周围区域的某些像素值得到本点像素值 1)分别读取彩色图.灰度图,将灰度全值(0 ...
- 【C#】图片处理——浮雕、黑白、油画效果源码
本例应用场合:对图片进行基本的翻转操作,图片浮雕.黑白.油画效果的实现. 本例编译环境:VS2010及以上版本编译通过. 运行效果: 运行动态效果 主要功能: 图片浮雕.黑白.油画效果处理: 图片翻转 ...
最新文章
- 无需成对示例、无监督训练,CycleGAN生成图像简直不要太简单
- Android studio 使用心得(六)---android studio 如何加载.so文件
- 【转】接口测试Session/Cookie笔记(二)
- 真人3D Avatar
- 免费软件做的不错的,这里要说一个叫《飞秋》的软件
- 【有容云案例系列】基于Jenkins和Kubernetes的CI工作流
- 通过代码学 Sutton 强化学习:SARSA、Q-Learning 时序差分算法训练 CartPole
- 配置普通,长得丑,OPPO R11凸显OPPO创新乏力
- python selenuim使用代理的方式
- html div 球形,CSS3球形
- 通达OA的一些资源地址,持续更新
- d3开发Svg编辑器
- 120、华为9300交换机配置命令手册
- 黑道圣徒3如何去掉马赛克
- 计算机密码无法输完整,笔记本电脑键盘失灵无法输入密码怎么解决
- 利用matlab实现AM调制解调
- httpsclient 自动获取证书 无证书访问 验证过能直接用
- 中介模式(python实现2)
- 入门学习MNIST手写数字识别
- 零基础学python-2.24 一些常用函数
热门文章
- 数据结构(严蔚敏)之一——顺序表之c语言实现
- android输入法中的imeoption
- scrapy-redis 分布式学习记录
- 一种高效快速的内存池实现(附源码)
- [leetcode] Restore IP Addresses
- 根据工作年限预测工资python代码实现
- YUM更换源(1)--yum找不到安装包 2013-01-18 20:08 8687人阅读 评论(1) 收藏 举报 分类: linux(70) 公司提供的CentOS VM中,/etc/yum.r
- 用freeze.py打包python程序成可执行程序(linux)
- 一台服务器最多能创建多少个 TCP 连接?
- 概率论的一些基本问题