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

opencv学习记录3

sobel算子

用来计算图像灰度的近似梯度,梯度越大越有可能是边缘。
Soble算子的功能集合了高斯平滑和微分求导,又被称为一阶微分算子,求导算子,在水平和垂直两个方向上求导,得到的是图像在X方法与Y方向梯度图像。
img

sobelx = cv2.Sobel(img,cv2.CCV_64F,1,0,ksize = 3)  #img:图像,cv2.ccv_64F图像深度,dx,dy:方向,ksize:核大小
sobelx = cv2.convertScaleAbs(sobelx)
sobely = cv2.Sobel(img,cv2.CCV_64F,0,1,ksize = 3)
sobely = cv2.convertScaleAbs(sobely)
sobelxy = cv2.addWeighted(sobelx,0.5,sobelx,0.5,0)sobelxy = cv2.Sobel(img,cv2.CCV_64F,1,1,ksize = 3)#错误
sobelxy = cv2.convertScaleAbs(sobelxy)

Scharr算子和laplacian算子

当内核大小为3时, 以上Sobel内核可能产生比较明显的误差(毕竟,Sobel算子只是求取了导数的近似值)。 为解决这一问题,OpenCV提供了 Scharr 函数,但该函数仅作用于大小为3的内核。该函数的运算与Sobel函数一样快,但结果却更加精确,不怕干扰,其内核为:
img

#scharr算子代码
scharrx = cv2.Scharr(img,cv2.CV_64F,1,0)
scharry = cv2.Scharr(img,cv2.CV_64F,0,1)
scharrx = cv2.convertScaleAbs(scharrx)
scharry = cv2.convertScaleAbs(scharry)
scharry = cv2.addWeighted(scharrx,0.5,scharry,0.5,0)
#laplacion算子代码
laplacian = cv2.Laplacian(img,cv2.CV_64F)
laplacian = cv2.convertScaleAbs(laplacian)

三个算子效果图:
img

http://www.gsyq.cn/news/9710.html

相关文章:

  • 统计分析神器 NCSS 2025 功能亮点+图文安装教程
  • Gentoo安装配置
  • 3 网络基础知识+web基础知识+部署Server
  • 简单理解java虚拟机
  • 洛谷题单指南-进阶数论-P1516 青蛙的约会
  • electron中的几个概念
  • 保护眼睛小程序
  • 001_string操作
  • hbase 面试题
  • mall项目学习笔记
  • 存储多边形网格的文件格式:OBJ、FBX、RenderMan、glTF、USD 等。
  • 实用指南:Unity 游戏引擎中 HDRP(高清渲染管线) 的材质着色器选择列表
  • 安防监控中常见的报警类型有哪些?国标GB28181平台EasyGBS的报警能力解析
  • LAMP 环境一键部署脚本(Apache+MySQL+PHP) - 实践
  • 【ubuntu24.04】NFS机械硬盘无法挂载成功 - 实践
  • VTable-Sheet:重新定义Web电子表格的开源解决方案
  • Coolmuster Android Assistant:Windows架构下的Android设备管理专家
  • Linux服务器单网卡如何配置多个的IP地址?
  • day38大模型程序开发-GraphRAG实操
  • 深入解析MS12-020关键漏洞CVE-2012-0002:远程桌面协议的安全风险与缓解方案
  • 鸿蒙项目实战(九):get请求参数的处理
  • 20250806_信安一把梭_test
  • 专业 RAW 图像处理利器!DxO PhotoLab 让你的照片质感飙升
  • mysql时间转字符串,自定义格式将日期时间值转换为字符串
  • 其他与其它的区别
  • 实用指南:数据库造神计划第十七天---索引(2)
  • 指令流水线
  • nuget控制台乱码的解决办法
  • WPF TextBlock effect DropShadrowEffect,BlurEffect
  • 在控制台执行这段代码可以列出所有::selection规则