【发布时间】:2013-04-30 06:22:42
【问题描述】:
我在 iOS 应用程序中对特定照片效果使用高斯方程。
我使用:
double sigmaX = ...; //some value here
for(int i=0;i<height;i++)
{
double F = 0;
double step = -(pos)*width/20;
/*height,width,pos - all predefined, no problem there*/
for(int j=0;j<4*width;j+=4)
{
F = (double) ((1/1)*exp(-sigmaX*(pow((step++)/1, 2.0)))) ;
//do some operation here...
}
}
并且F的值用于确定在其他地方用完的特定强度。
到目前为止一切都很好.... F 是预期的典型钟形曲线。
但是,问题是,我想根据用户输入来缩放这条曲线的标准差。
例如,在下图中,我想将曲线从绿线移到红线(蓝色可能是中间线),希望以线性步骤:
现在,给定标准符号:
并将它与我在代码中实现它的方式进行比较,我得到了改变 1/sqrt(sigmaX) 以改变比例/SD 的想法。我尝试以线性步长增加 1/sqrt(sigmaX)(以获得线性增量)或通过 x^n 来获得 SD 中 n 增量的幂,但这些都不起作用。
我有点坚持这个概念。
您能否告诉我如何按预定义的比率缩放标准偏差,即我可能希望它是原始 SD 的 1.34 或 3.78 倍,它会相应地将 +3sigma 扩展到 -3sigma 跨度。
【问题讨论】:
标签: ios algorithm image-processing gaussian