xujiayuan1992 2015-01-09 11:48 采纳率: 0%
浏览 1714

opencv下面滤波程序最后两行没看懂什么意思,望各路前辈解答

double D0=30;
void ILPF(CvMat* src, const double D0)
{
int i, j;
int state = -1;
double tempD;

long width, height;
width = src->width;
height = src->height;

long x, y;
x = width / 2;
y = height / 2;

CvMat* H_mat;
H_mat = cvCreateMat(src->height,src->width, CV_64FC2);
for(i = 0; i < height; i++)
{
    for(j = 0; j < width; j++)
    {
        if(i > y && j > x)
        {
            state = 3;
        }
        else if(i > y)
        {
            state = 1;
        }
        else if(j > x)
        {
            state = 2;
        }
        else
        {
            state = 0;
        }

        switch(state)
        {
        case 0:
            tempD = (double)  (i * i + j * j);tempD = sqrt(tempD);break;
        case 1:
            tempD = (double)  ((height - i) * (height - i) + j * j);tempD = sqrt(tempD);break;
        case 2:
            tempD = (double)  (i * i + (width - j) * (width - j));tempD = sqrt(tempD);break;
        case 3:
            tempD = (double)  ((height - i) * (height - i) + (width - j) * (width - j));tempD = sqrt(tempD);break;
        default:
            break;
        }

        //二维高斯低通滤波器传递函数
        tempD = exp(-0.5 * pow(tempD / D0, 2));
   ((double*)(H_mat->data.ptr + H_mat->step * i))[j * 2] = tempD;
     ((double*)(H_mat->data.ptr + H_mat->step * i))[j * 2 + 1] = 0.0;
  • 写回答

1条回答 默认 最新

  • shiter 人工智能领域优质创作者 2015-01-09 13:42
    关注

    http://blog.csdn.net/WINCOL/article/details/6103884
    高斯滤波器就是抑制服从正太分布的噪声么

    评论

报告相同问题?

悬赏问题

  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向