Laplacian of Gaussian(LOG)算子 - 基于拉普拉斯变换的图像增强已成为图像锐化处理的基本工具

但其缺点是对图像中的某些边缘产生双重响应。

 

这种简单的锐化方法既可以产生拉普拉斯锐化处理的效果,同时又能保留背景信息,将原始图像叠加到拉普拉斯变换的处理结果中去,可以使图像中的各灰度值得到保留,使灰度突变处的对比度得到增强,最终结果是在保留图像背景的前提下,突现出图像中小的细节信息。但其缺点是对图像中的某些边缘产生双重响应。

参考代码
OpenCV版Laplace算子

#include "cv.h"
#include "highgui.h"
 
using namespace cv;
 
int main(int argc, char* argv[])
{
        Mat src = imread("test.jpg");
        Mat dst;
    
        Laplacian(src,dst,src.depth());
        imwrite("laplacian.jpg",dst);
 
        imshow("dst",dst);
        waitKey();
 
        return 0;
}

OpenCV-Python版Laplacian 

#coding=utf-8  
import cv2  
import numpy as np    
  
img = cv2.imread("test.jpg", 0)  
gray_lap = cv2.Laplacian(img,cv2.CV_16S,ksize = 3)  
dst = cv2.convertScaleAbs(gray_lap)  
  
cv2.imshow('laplacian',dst)  
cv2.waitKey(0)  
cv2.destroyAllWindows() 

 

OpenCV-Python版LaplaceOperater

import cv2  
import numpy as np  
      
kernel_size = 3  
scale = 1  
delta = 0  
ddepth = cv2.CV_16S  
      
img = cv2.imread('test.jpg')  
img = cv2.GaussianBlur(img,(3,3),0)  
gray = cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)  
      
gray_lap = cv2.Laplacian(gray,ddepth,ksize = kernel_size,scale = scale,delta = delta)  
dst = cv2.convertScaleAbs(gray_lap)  
      
cv2.imshow('laplaceOperater',dst)
cv2.waitKey(0)  
cv2.destroyAllWindows()  

From: 差分近似图像导数算子之Laplace算子​​​​​​​

你可能感兴趣的:(opencv)