这个函数的作用是什么?与夹紧值有关
What does this function do? Something to do with clamping values?
我很久以前在某处发现了这个函数。我不知道它在做什么。我用它来处理单工噪声输出(灰度值在0和255之间),但我想更好地理解它。
int ExponentFilter(int value, int cover, double sharpness)
{
int c = value - (255 - cover);
if(c < 0)
c = 0;
return 255 - ((std::pow(sharpness,c)) * 255);
}
我使用它就像:
ExponentFilter(n,140,0.98f)
其中n是介于0和255之间的值。
cover
是信号被完全切断的"屏蔽"方式。cover
140意味着140个最高(最亮)值(116-255)可以导致输出>0。
sharpness
描述了光线衰减的速度。0,98
意味着光的褪色速度大约是原来的两倍,但褪色效果不是线性的,在较暗的区域会减弱。
我希望这个滤镜能使曝光过度的图像变暗并锐化。
Exponentfilter是一个合适的名称,因为锐度函数使用指数(pow是指数函数)。
相关文章:
- "变量":函数中函数作用域不允许初始化的自动或寄存器变量'naked'
- 当变量在多个函数作用域中使用时,我应该在类 private 中声明该变量吗?
- 缩短成员函数作用域说明符(嵌套类)(C++)
- 函数作用域是静态变量还是线程本地变量在C++11中的第一个条目中初始化
- 如何声明在函数作用域中定义的结构
- 我可以在函数作用域中使用定义指令吗?
- 为什么函数作用域不允许类前向声明?
- C++函数作用域中声明的返回引用
- 关于 C++(或 C)中的指针的函数作用域
- 如何在与 c++ 中定义的函数作用域相同的文件中限制函数作用域
- 函数作用域的静态非 Pod 对象初始化
- C++函数作用域
- 正在获取另一个函数作用域中的参数值
- 对临时对象的常量引用在函数作用域(生存期)后被破坏
- 被视为依赖作用域的函数模板的函数作用域结构体的静态成员函数
- 局部作用域和函数作用域的区别
- 实现[B,C]=f(A)语法(函数f作用于具有两个或多个输出数组的数组)
- 函数作用域中的指针崩溃
- 将指针传递给函数只会改变函数作用域中的值
- 友元函数作用域和声明点