图像的梯度计算的是图像变化的速度,对于边缘部分呢灰度值变换大,梯度值也大,相反则灰度值变化小,梯度值小

Sobel算子是一种离散的微分算子,该算子结合了高斯平滑处理和微分求导运算。 该算子利用局部差寻找边缘

将Sobel算子Gx和原始图像卷积可以得到水平方向的像素值变化,与Gy卷积的到垂直方向的像素值变化。

将sober算子在图中进行平移,当前位置的像素值等于sobel算子与(当前位置与周边位置8个点)进行对应位置相乘并相加操作,作为当前位置的像素点。
如果要计算P5的水平方向,则需要Sobel算子及P5邻域点

公式为:P5x轴 = P3 - P1 + 2 * P6 - 2* P4 + P9 - P7

用P5右侧的像素点减左侧的像素点,因为P4和P6离P5较近,所以权值为2,其他为1垂直方向类似,垂直是下减上。

import cv2
import matplotlib.pyplot as plt
import numpy as np
def cv_show(img,name):cv2.imshow(name,img)cv2.waitKey()cv2.destroyAllWindows()def Sobel():img = cv2.imread('images/pie.png', cv2.IMREAD_GRAYSCALE)cv2.imshow("img", img)# 使用cv2.Sobel(src, cv2.CV_64F, 1, 0, ksize=3)  对x轴方向进行sobel算子相乘操作sobelx = cv2.Sobel(img, cv2.CV_64F, 1, 0, ksize=3)# 由于会出现负值的情况,因此使用cv2.convertScalerAbs() 转换为绝对值的形式sobelx = cv2.convertScaleAbs(sobelx)cv_show(sobelx, 'sobelx')# 计算y轴方向上的sobel算子sobely = cv2.Sobel(img, cv2.CV_64F, 0, 1, ksize=3)sobely = cv2.convertScaleAbs(sobely)cv_show(sobely, 'sobely')# 使用cv2.addWeighted 将x轴方向的sobel算子的结果和y轴方向上的sobel算子的结果结合sobelxy = cv2.addWeighted(sobelx, 0.5, sobely, 0.5, 0)cv_show(sobelxy, 'sobelxy')

OpenCV-Python图像梯度 Sobel算子相关推荐

  1. OpenCV--033_2: 图像梯度--Sobel算子

    索贝尔算子(Sobel operator) 主要用作边缘检测,在技术上,它是一离散性差分算子,用来运算图像亮度函数的灰度之近似值.在图像的任何一点使用此算子,将会产生对应的灰度矢量或是其法矢量. So ...

  2. 12、OpenCV Python 图像梯度

    1 __author__ = "WSX" 2 import cv2 as cv 3 import numpy as np 4 5 def lapalian_demo(image): ...

  3. python怎么计算图像梯度_opencv python图像梯度实例详解

    这篇文章主要介绍了opencv python图像梯度实例详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 一阶导数与Soble算子 二阶导数与拉普 ...

  4. pythonopencv读取图像属性_2、OpenCV Python 图像属性获取

    __author__ = "WSX" import cv2 as cv import numpy as np image = cv.imread("1.JPG" ...

  5. 【OpenCV 例程200篇】64. 图像锐化——Sobel 算子

    [OpenCV 例程200篇]64. 图像锐化--Sobel 算子 欢迎关注 『OpenCV 例程200篇』 系列,持续更新中 欢迎关注 『Python小白的OpenCV学习课』 系列,持续更新中 3 ...

  6. Python+OpenCV:图像梯度

    Python+OpenCV:图像梯度(Image Gradients) 理论 OpenCV提供了三种类型的梯度滤波器或高通滤波器,Sobel, Scharr和Laplacian. 1. Sobel和S ...

  7. OpenCV之图像梯度

    1. Sobel算子 OpenCV系列-本文底页有多个常用方法链接 1.1 Sobel介绍 cv2.Sobel(src, ddepth, dx, dy, ksize) ddepth:图像的深度 dx和 ...

  8. OpenCV 图像梯度 Sobel、Scharr、Laplacian

    概念: 梯度简单来说就是求导,在图像上表现出来的就是提取图像的边缘(不管是横向的.纵向的.斜方向的等等),所需要的无非也是一个核模板,模板的不同结果也不同.所以可以看到,所有的这些个算子函数,归结到底 ...

  9. python-opencv之图像梯度Sobel、Scharr、Laplacian算子边缘检测

    Sobel算子 是离散微分算子(discrete differentiation operator),用来计算图像灰度的近似梯度,梯度越大越有可能是边缘. Soble算子的功能集合了高斯平滑和微分求导 ...

最新文章

  1. 掌握Redis分布式锁的正确姿势
  2. 关于background-*的一些属性
  3. 执行git命令时出现fatal: ‘origin‘ does not appear to be a git repository错误
  4. 如何在CentOS 7上安装Kubernetes Docker群集
  5. VMware SDS 之四: VSAN的技术细节 (含VSAN 6.0、6.1版的新内容)
  6. 谁将掌控中国的金融?(上)
  7. linq4j java8_Linq4j简明介绍
  8. VueDemo-12.加入购物车
  9. 计算机辅助化学教育,在计算机辅助下的化学教学_计算机辅助制造
  10. 美团开源实时监控系统 CAT 3.0 发布:多语言客户端及多项性能提升
  11. KDD CUP 99 数据集解析、挖掘与下载
  12. 找不到工作的测试员一大把,大厂却招不到优秀软件测试员?高薪难寻测试工程师。
  13. linux proftpd mysql_proftpd mysql quota 配置完全指南
  14. 元岛屋日式烤肉,这个夏天你怎可错过!
  15. Web逆向、软件逆向、安卓逆向、APP逆向,关于网络安全这些你必须懂
  16. STM32+ESP8266+MQTT微信小程序SoftAP一键配网接入腾讯物联网平台
  17. ESP32-C3 flash encryption secure boot
  18. virtualbox折腾记
  19. springboot+nodejs+vue工程师售后服务评价管理系统
  20. 上下Div固定,中间div高度自适应(随浏览器高度变化而变化)

热门文章

  1. ppt演示,怎么变看备注,变演示,而投影的屏幕上不显示备注?
  2. NLP04:LSTM原理详解及文本生成
  3. 条件循环input基础总结
  4. 第五章-离散时间LTI系统
  5. C# DataTable 行转列通用方法
  6. 为何他们用了那么多人工智能却做不出一台好电视?
  7. npm i xxxx -D,-S,-g
  8. java-从键盘输入一串字符,输出不同的字符以及每个字符出现的次数。(输出不按照顺序)运用String类的常用方法解题
  9. 【java基础:HashMap】统计字符出现的次数
  10. 超详细【百分百拿offer】的面试教程,集合5000多家软件测试公司面试题。