OpenCV图像锐化(在我的代码中找不到MISTAKE)

时间:2013-10-07 09:22:16

标签: opencv

void sharpen(IplImage *in,IplImage *out)
{
    int r=in->height;
    int c=in->width;
    int st=in->widthStep;
    int i,j;
    for(i=1;i<r-1;i++)
    {
        uchar *cur=(uchar *)(in->imageData+i*st);
        uchar *pre=(uchar *)(in->imageData+(i-1)*st);
        uchar *next=(uchar *)(in->imageData+(i+1)*st);
        uchar *output=(uchar *)(out->imageData+i*st);
        for(j=3;j<c*3-3;j++)
        {
            *output=uchar(5*cur[j]-cur[j-3]-cur[j+3]-pre[j]-next[j]);
            *output++;
        }
    }

}

使用拉普拉斯算法的OpenCV图像锐化... 你介意为我找出错误吗?

1 个答案:

答案 0 :(得分:0)

一个明显的错误是:

        *output++;

应该是:

        output++;

即。你只需要增加指针,而不是取消引用它。但我认为这不是你唯一的错误。