【 imgproc 模块. 图像处理】Laplace算子

本文介绍了一种图像锐化方法,通过高斯平滑降噪、转换为灰度图,然后利用拉普拉斯算子进行边缘检测,最后将图像转换为CV_8U格式,以增强图像细节并提升清晰度。

主要步骤:

(1)高斯平滑降噪

GaussianBlur(src, src, Size(3, 3), 0, 0, BORDER_DEFAULT);

(2)转换为灰度图

cvtColor(src, src_gray, CV_RGB2GRAY);

(3)使用拉普拉斯算子并将图像转换为 CV_8U

    Laplacian(src_gray, dst, ddepth, kernel_size, scale, delta, BORDER_DEFAULT);
    convertScaleAbs(dst, abs_dst);

函数接受了以下参数:

  • src_gray: 输入图像。
  • dst: 输出图像
  • ddepth: 输出图像的深度。 因为输入图像的深度是 CV_8U ,这里我们必须定义 ddepth = CV_16S 以避免外溢。
  • kernel_size: 内部调用的 Sobel算子的内核大小,此例中设置为3。
  • scaledelta 和 BORDER_DEFAULT: 使用默认值。

转载于:https://www.cnblogs.com/Vince-Wu/p/10115508.html

#include<opencv2/imgcodecs.hpp> #include<opencv2/highgui.hpp> #include<opencv2/imgproc.hpp> #include<iostream> using namespace cv; using namespace std; int main() { string path = "D:谢嘉俊.JPG"; // 图片路径 Mat img = imread(path); // 读取图片 Mat A,B,C,D,E; ////////////// cvtColor(img, A, COLOR_BGR2GRAY);//灰度图像处理 GaussianBlur(A, A, Size(3, 3), 0, 0, BORDER_DEFAULT);// 高斯滤波去噪 ////////////// Canny(A, B, 25 , 75); // Canny算子 //////////////Laplace算子 Laplacian(A, C, CV_16S, 3, 1, 0, BORDER_DEFAULT); convertScaleAbs(C, C);// 转换到 8-bit 图像范围 ///////////////Sobel算子 // 初始化x和y方向的梯度 Mat grad_x, grad_y; Mat abs_grad_x, abs_grad_y; // 计算x方向的梯度 Sobel(A, grad_x, CV_16S, 1, 0, 3, 1, 0, BORDER_DEFAULT); convertScaleAbs(grad_x, abs_grad_x); // 计算y方向的梯度 Sobel(A, grad_y, CV_16S, 0, 1, 3, 1, 0, BORDER_DEFAULT); convertScaleAbs(grad_y, abs_grad_y); // 合并梯度 addWeighted(abs_grad_x, 0.5, abs_grad_y, 0.5, 0, D); // 创建一个图像窗口 namedWindow("Test4_灰白", WINDOW_NORMAL); namedWindow("Test_Canny算子", WINDOW_NORMAL); namedWindow("Test_Laplace算子", WINDOW_NORMAL); namedWindow("Test_Sobel算子", WINDOW_NORMAL); // 显示图像 imshow("Test_Canny算子", B); // 显示图片Canny算子 imshow("Test_Laplace算子", C); // 显示图片Laplace算子 imshow("Test_Sobel算子", D); // 显示图片Sobel算子 imshow("Test4_灰白", A); // 显示图片灰白 // 等待用户操作 waitKey(0); // 释放窗口 destroyAllWindows(); return 0; } 重新写一遍,不要完全一样,但是功能不能变
最新发布
03-22
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值