Opencv学习笔记(九):sobel &Laplace
来源:互联网 发布:知达常青藤中学校电话 编辑:程序博客网 时间:2024/06/07 18:06
sobel &Laplace
Last Edit 2013/12/30
主要是简单介绍一点sobel, Laplace 操作的一点不同。
1,sobel
用sobel来求图像中某一点的梯度
1)水平方向 2)垂直方向
在图像中某一点的梯度:,计算过程中利用简化形式:
void Sobel(InputArray src, //单通道 OutputArray dst, int ddepth, //目标图像的深度 int xorder, //x方向求导的阶数 int yorder, //y方向求导的阶数 int ksize=3,//sobel算子的大小,必须是1,3,5,7 double scale=1, double delta=0, //在计算结果后附加的数据 int borderType=BORDER_DEFAULT )
求绝对值函数convertScaleAbs
void convertScaleAbs(InputArray src, OutputArray dst, double alpha=1, double beta=0)
#include "opencv2/imgproc/imgproc.hpp"#include "opencv2/highgui/highgui.hpp"#include <stdlib.h>#include <stdio.h>using namespace cv;/** @function main */int main( int argc, char** argv ){Mat src, src_gray;Mat grad;char* window_name = "Sobel Demo - Simple Edge Detector";int scale = 1;int delta = 0;int ddepth = CV_16S;int c;/// Load an imagesrc = imread( argv[1] );if( !src.data ){ return -1; }GaussianBlur( src, src, Size(3,3), 0, 0, BORDER_DEFAULT );/// Convert it to graycvtColor( src, src_gray, CV_RGB2GRAY );/// Create windownamedWindow( window_name, CV_WINDOW_AUTOSIZE );/// Generate grad_x and grad_yMat grad_x, grad_y;Mat abs_grad_x, abs_grad_y;/// Gradient X//Scharr( src_gray, grad_x, ddepth, 1, 0, scale, delta, BORDER_DEFAULT );Sobel( src_gray, grad_x, ddepth, 1, 0, 3, scale, delta, BORDER_DEFAULT );convertScaleAbs( grad_x, abs_grad_x );/// Gradient Y//Scharr( src_gray, grad_y, ddepth, 0, 1, scale, delta, BORDER_DEFAULT );Sobel( src_gray, grad_y, ddepth, 0, 1, 3, scale, delta, BORDER_DEFAULT );convertScaleAbs( grad_y, abs_grad_y );/// Total Gradient (approximate)addWeighted( abs_grad_x, 0.5, abs_grad_y, 0.5, 0, grad );imshow( window_name, grad );waitKey(0);return 0;}
求二阶导数:
void Laplacian(InputArray src, OutputArray dst, int ddepth, int ksize=1, double scale=1, double delta=0, int borderType=BORDER_DEFAULT )同上。
0 0
- Opencv学习笔记(九):sobel &Laplace
- OpenCV学习笔记(13)OpenCV边缘检测:Canny算子,Sobel算子,Laplace算子,Scharr滤波器合辑
- OpenCV笔记:图像边缘检测Sobel,Laplace,Canny
- 学习OpenCV范例(十四)——sobel,laplace,canny的运用
- opencv学习笔记8 laplace
- opencv学习笔记--Laplace算子
- OpenCV学习笔记-Sobel算子
- opencv学习笔记--sobel算子
- sobel gaussin laplace canny等opencv测试
- 学习【OpenCV入门教程之十二】OpenCV边缘检测:Canny算子,Sobel算子,Laplace算子,Scharr滤波器合辑---思维导图笔记
- Python OpenCV -- Sobel 算子(九)
- opencv学习笔记(二十一) Sobel算子边缘检测
- 【OpenCV】图像变换(二)边缘检测:梯度算子、Sobel算子和Laplace算子
- opencv学习笔记4-sobel算子
- Sobel滤波,Laplace滤波介绍与opencv实现
- 使用OpenCV对图像作边缘检测(Canny、Sobel、Laplace)
- python opencv sobel算子 laplace算子 canny算子
- OpenCV自带例子(九)Sobel运用
- 黑马程序员 IO流(二)
- WebServer如何部署到Tomcat上
- Android开发时候,需要下载完全的GMS谷歌服务包
- 黑马程序员_02_HelloWorld
- Muscle参数一些介绍
- Opencv学习笔记(九):sobel &Laplace
- cocos2d-x之新浪微博平台接入接口
- TRAILING NULLCOLS
- Codeforces Round #222 (Div. 1) ABD
- Shell不需要输入用户密码FTP上传文件
- 取a与b的最大值
- 黑马程序员 递归和正则表达式
- c++与java多态实现的不同
- LPB特征分析