锐化空间滤波器

锐化处理主要目的是突出灰度过度部分。
锐化空间滤波器_第1张图片
锐化空间滤波器_第2张图片

二阶微分-拉普拉斯算子锐化

两变量的离散拉普拉斯算子是:
这里写图片描述

void laplaceSharpenl(){
    auto im = imread("/Users/qixiangzhang/Desktop/openCV/jy.png");
    Mat dst;
    Mat kernel = (Mat_<float>(3,3) << 0,-1,0,-1,5,-1,0,-1,0);
    filter2D(im, dst, im.depth(), kernel);
    imshow("Original", im);
    imshow("Sharpenl", dst);
}

结果:

标定的拉普拉斯滤波图像:
拉普拉斯滤波处理后图像中既有正值又有负值,所有负值被修剪为0,很多经过拉普拉斯滤波后的图像大部分是黑色的。典型的标定拉普拉斯图像的方法是对他的最小值加一个新的代替0的最小值。

非锐化掩蔽和高提升滤波

非锐化掩蔽的处理步骤:
1)模糊原图像。
2)从原图中减去模糊的图像得到模板。
3)将模板加到原图像上。
公式描述:

锐化空间滤波器_第3张图片

代码:

void Unsharp(){
    auto im = imread("/Users/qixiangzhang/Desktop/openCV/yq.png");
    Mat dstIm_9;
    blur(im, dstIm_9, Size(9,9));//模糊
    imshow("Original",im);
    imshow("blur9", dstIm_9);
    Mat sub;
    absdiff(im,dstIm_9,sub);//相减
    Mat add;
    scaleAdd(im, 1, sub, add);//相加,非锐化掩蔽
    imshow("k=1",add);
    scaleAdd(im, 2, sub, add);//k=2,高提升滤波
    imshow("k=2",add);
}

梯度图像

梯度图像可理解为突出图像显著变化的地方,变化越大其梯度值越高。
图像函数f(x,y)在点(x,y)的梯度是一个具有大小和方向的矢量,设为Gx 和 Gy 分别表示x方向和y方向的梯度,这个梯度的矢量可以表示为:
锐化空间滤波器_第4张图片
这个矢量的幅度为:

近似为:
这里写图片描述

罗伯特交叉梯度算子
算子:
锐化空间滤波器_第5张图片
由两个2*2模板组成,用卷积模板表示为:
这里写图片描述
结合这里写图片描述可得结果:

Soble算子
算子:
锐化空间滤波器_第6张图片
用上述方法可得:

其中z表示矩阵中该位置的值。
opencv接口:

CV_EXPORTS_W void Sobel( InputArray src, OutputArray dst, int ddepth,  
                         int dx, int dy, int ksize=3,  
                         double scale=1, double delta=0,  
                         int borderType=BORDER_DEFAULT );  

代码

void sobleIM(){
    auto src = imread("/Users/qixiangzhang/Desktop/openCV/yq.png");
    imshow("1",src);
    //用高斯滤波进行模糊
    GaussianBlur( src, src, Size(3,3), 0, 0, BORDER_DEFAULT );

    Mat grad_x,grad_y;
    Mat abs_grad_x,abs_grad_y;
    //计算x梯度
    Sobel(src, grad_x, CV_8U, 1, 0);
    convertScaleAbs( grad_x, abs_grad_x );
    //计算y梯度
    Sobel(src, grad_y, CV_8U, 1, 0);
    convertScaleAbs( grad_y, abs_grad_y );
    //相加并加权。
    addWeighted( abs_grad_x, 1, abs_grad_y, 1, 0, src );
    imshow("soble1",src);

    addWeighted( abs_grad_x, 2, abs_grad_y, 2, 0, src );
    imshow("soble2",src);
}

结果:
锐化空间滤波器_第7张图片

你可能感兴趣的:(锐化空间滤波器)