当前位置: 首页 > news >正文

16 OpenCV Laplance算子

文章目录

  • 图像的二阶导数
  • Laplance算子
  • 代码示例

图像的二阶导数

在这里插入图片描述
在这里插入图片描述
在二阶导数的时候,最大变化处的值为零即边缘是零值。通过二阶
导数计算,依据此理论我们可以计算图像二阶导数,提取边缘。

Laplance算子

在这里插入图片描述

void Laplacian( InputArray src, OutputArray dst, int ddepth,int ksize = 1, double scale = 1, double delta = 0,int borderType = BORDER_DEFAULT );
/*******************************************************************
*			src: 			输入图				
*			dst:	        输出图
*			ddepth:			输出图深度 CV_16S/CV_32F/CV_64F等
*			ksize:  		核大小,必须是正奇数,默认值是1
*			scale:			计算导数值时可选的缩放因子
*			delta:			可选值,默认为0
*			borderType:		边缘处理模式	
*********************************************************************/

代码示例

#include <opencv2/opencv.hpp>
#include <iostream>using namespace cv;
int main(int argc, char** argv) {Mat src, dst;src = imread("D:/vcprojects/images/lena.png");if (!src.data) {printf("could not load image");}char input_title[] = "input image";char output_title[] = "Laplaiance Result";namedWindow(input_title);imshow(input_title, src);Mat gray_src, edge_image;GaussianBlur(src, dst, Size(3, 3), 0, 0);//高斯模糊cvtColor(dst, gray_src, COLOR_BGR2GRAY);//灰度处理Laplacian(gray_src, edge_image, CV_16S, 3);//找图像边缘convertScaleAbs(edge_image, edge_image);//获取边缘绝对值threshold(edge_image, edge_image, 0, 255, THRESH_OTSU | THRESH_BINARY);//增强边缘轮廓namedWindow(output_title, CV_WINDOW_AUTOSIZE);imshow(output_title, edge_image);waitKey(0);return 0;
}

相关文章:

  • 初识Spring MVC
  • 【数据挖掘】练习1:R入门
  • 自然语言处理(NLP)—— 语义关系提取
  • HTML 学习笔记(九)颜色值和长度单位
  • ThingsBoard开源物联网平台介绍
  • python3:No module named ‘pandas‘
  • LeetCode454 四数相加
  • 用Docker Compose实现负载均衡【入门篇】
  • 数据库管理-第160期 Oracle Vector DB AI-11(20240312)
  • STM32外设分类--学习笔记
  • Kotlin Retrofit 网络请求
  • Facebook:连接世界的社交巨人
  • 嵌入式、开发板 智能音响 OpenHarmony GPT 大模型 智能硬件
  • 【读论文】【精读】3D Gaussian Splatting for Real-Time Radiance Field Rendering
  • 手撸nano-gpt
  • 网络传输文件的问题
  • 【跃迁之路】【699天】程序员高效学习方法论探索系列(实验阶段456-2019.1.19)...
  • 07.Android之多媒体问题
  • docker python 配置
  • JDK 6和JDK 7中的substring()方法
  • MaxCompute访问TableStore(OTS) 数据
  • mongo索引构建
  • Redis字符串类型内部编码剖析
  • vue学习系列(二)vue-cli
  • 从 Android Sample ApiDemos 中学习 android.animation API 的用法
  • 关于Android中设置闹钟的相对比较完善的解决方案
  • 力扣(LeetCode)965
  • 如何设计一个比特币钱包服务
  • 软件开发学习的5大技巧,你知道吗?
  • 算法之不定期更新(一)(2018-04-12)
  • Prometheus VS InfluxDB
  • #include
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • #使用清华镜像源 安装/更新 指定版本tensorflow
  • (1)Nginx简介和安装教程
  • (c语言)strcpy函数用法
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (二十一)devops持续集成开发——使用jenkins的Docker Pipeline插件完成docker项目的pipeline流水线发布
  • (附源码)springboot 个人网页的网站 毕业设计031623
  • (机器学习的矩阵)(向量、矩阵与多元线性回归)
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理 第13章 项目资源管理(七)
  • (每日持续更新)信息系统项目管理(第四版)(高级项目管理)考试重点整理第3章 信息系统治理(一)
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • .babyk勒索病毒解析:恶意更新如何威胁您的数据安全
  • .bat批处理(十一):替换字符串中包含百分号%的子串
  • .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter
  • .net 提取注释生成API文档 帮助文档
  • .NET国产化改造探索(一)、VMware安装银河麒麟
  • .net利用SQLBulkCopy进行数据库之间的大批量数据传递
  • .NET业务框架的构建
  • .vue文件怎么使用_vue调试工具vue-devtools的安装
  • /usr/bin/python: can't decompress data; zlib not available 的异常处理
  • @Bean有哪些属性
  • @RunWith注解作用
  • [ 第一章] JavaScript 简史