一、目标
学习如何使用opencv中的函数,学习对图像进行边缘检测的操作,学习Laplacian()函数的使用
二、函数说明
函数原型:
void Laplacian(InputArray src,OutputArray dst, int ddepth, int ksize=1, double scale=1, double delta=0, int borderType=BORDER_DEFAULT )
参数详解:
src:源图像
dst:目标图像。
ddepth:输出图像的深度。
ksize:用于计算二阶导数的滤波器的孔径尺寸,大小必须为正奇数,且有默认值1。
scale:计算导数值时可选的缩放因子,默认值是1。
delta:有默认值可忽略。
borderType:有默认值可忽略。
三、程序代码
#include "cv.h" // OpenCV 文件头
#include "highgui.h"
#include "opencv2/opencv.hpp"
#include "opencv2/imgproc.hpp"
#include <iostream>
#include <string>
using namespace cv;
using namespace std;
int main(int argc, char *argv[])
{
Mat m_SrcImg;
m_SrcImg = imread("C:\\Users\\lidabao\\Desktop\\image\\1\\LENA1.bmp", -1);
namedWindow("原图像", 1);
imshow("原图像", m_SrcImg);
Mat m_ResImg;
//Laplacian边缘检测
Laplacian(m_SrcImg, m_ResImg, m_SrcImg.depth());
namedWindow("Laplacian边缘检测", 1);
imshow("Laplacian边缘检测", m_ResImg);
waitKey(0);
}
四、结果
程序运行如下图:
五、注意
正确的配置opencv
正确使用Laplacian()函数