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图像锐化...你介意帮我找出错误吗?
发布于 2013-10-07 17:28:30
一个明显的错误是:
*output++;应该是:
output++;也就是说,你只需要增加指针,而不是取消引用它。但我不认为这是你唯一的缺陷。
https://stackoverflow.com/questions/19221076
复制相似问题