ShaderJoy —— “Median Filter效果”的实现 【GLSL】
【摘要】
效果图:
GLSL代码与算法注释:
#define SORT_SIZE 8 float sort[SORT_SIZE];float medians[SORT_SIZE]; // [0., 1.] -> [0, 255]float quant(float x){ x = ...
效果图:
GLSL代码与算法注释:
-
#define SORT_SIZE 8
-
-
float sort[SORT_SIZE];
-
float medians[SORT_SIZE];
-
-
// [0., 1.] -> [0, 255]
-
float quant(float x)
-
{
-
x = clamp(x, 0., 1.);
-
return floor(x * 255.);
-
}
-
-
float pack(vec3 c)
-
{
-
float lum = (c.x + c.y + c.z) * (1. / 3.);
-
-
return lum;
-
}
-
-
vec3 unpack(float x)
-
{
-
return vec3(x);
-
}
-
-
#define SWAP(a,b) { float t = sort[a]; sort[a] = sort[b]; sort[b] = t; }
-
void bubble_sort(int num)// 简单的冒泡排序
-
{
-
// 把最小值移到最左边
-
for(int j = 0; j < num; ++j)
-
{
-
for(int i= num-1; i >j; --i)
-
{
-
if(sort[i]
文章来源: panda1234lee.blog.csdn.net,作者:panda1234lee,版权归原作者所有,如需转载,请联系作者。
原文链接:panda1234lee.blog.csdn.net/article/details/52494920
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)