OpenCV使用拉普拉斯函数进行梯度图像计算
一、概述
案例:使用拉普拉斯函数及进行梯度图像计算
函数介绍:
Laplacian( InputArray src,//输入图像 OutputArray dst,//输出图像,最后的输出图像需要一个空的新的Mat,不然算子不起作用 int depth, //深度CV_16S int kisze, // 3卷积核大小 double scale = 1, double delta =0.0, int borderType = 4 )
ps:后面三个参数直接默认即可
实现步骤:
1.使用高斯模糊去除图像噪声
2.使用cvtColor将图像转为灰度图像
3.使用拉普拉斯算子计算图像梯度
4.使用convertScaleAbs去图像像素绝对值
5.输出图像
二、代码是里
Mat src = imread(filePath); if(src.empty()){ return; } imshow("src",src); Mat dst,result; //执行高斯模糊去除噪声 GaussianBlur(src,dst,Size(3,3),0); imshow("GaussianBlur",dst); //将彩色图像转灰度图像 cvtColor(dst,dst,COLOR_BGR2GRAY); imshow("gray",dst); //执行拉普拉斯算子 Laplacian(dst,result,CV_16S,3); //像素取绝对值 convertScaleAbs(result,result); //显示图像 imshow("Laplacian",result);

浙公网安备 33010602011771号