位置: IT常识 - 正文

图像边缘检测(图像边缘检测的基本原理)

编辑:rootadmin
图像边缘检测 文章目录前言一、图像边缘检测二、边缘检测算子1. Roberts算子2. Prewitt算子3. Sobel算子三、代码实现总结前言

推荐整理分享图像边缘检测(图像边缘检测的基本原理),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:MATLAB图像边缘检测,python图像边缘检测,图像边缘检测的原理,图像边缘检测实验报告,图像边缘检测实验报告,图像边缘检测方法,图像边缘检测方法,图像边缘检测算子中抗噪性能最好的是,内容如对您有帮助,希望把文章链接给更多的朋友!

  有了图像放大缩小,图像灰度化处理等相关基础知识过后,就可以进行图像边缘检测了。边缘检测最后也会在FPGA上面实现,此处小编已经控制不住要剧透了。也是一样,先从软件的角度来理解这些图像边缘检测算法。

一、图像边缘检测

  边缘检测原理如下动态图所示。假如你有一些别人发明的算子,算子在第二章介绍。使用算子在原图上进行扫描,算子中的值乘以对应的像素值,然后加起来就行了。你可以使用截图工具,截取动态图,计算一下是否正确。

二、边缘检测算子图像边缘检测(图像边缘检测的基本原理)

  算子其实就是滤波器,在深度学习里面又叫卷积,下面3种算子给出了具体的值,而在卷积神经网络里面,卷积核的值是需要训练得到。

1. Roberts算子

Gx=[1−1]Gy=[−11]G_x = \begin{bmatrix} 1 & 0 \\ 0 & -1 \end{bmatrix} \quad\quad\quad G_y = \begin{bmatrix} 0 & -1 \\ 1 & 0 \end{bmatrix}Gx​=[10​0−1​]Gy​=[01​−10​]

2. Prewitt算子

Gx=[−11−11−11]Gy=[−1−1−1111]G_x = \begin{bmatrix} -1 & 0 & 1\\ -1 & 0 & 1\\ -1 & 0 & 1 \end{bmatrix} \quad\quad\quad G_y = \begin{bmatrix} -1 & -1 & -1\\ 0 & 0 & 0\\ 1 & 1 & 1 \end{bmatrix}Gx​=​−1−1−1​000​111​​Gy​=​−101​−101​−101​​

3. Sobel算子

Gx=[−1+1−2+2−1+1]Gy=[+1+2+1−1−21]G_x = \begin{bmatrix} -1 & 0 & +1\\ -2 & 0 & +2\\ -1 & 0 & +1 \end{bmatrix} \quad\quad\quad G_y = \begin{bmatrix} +1 & +2 & +1\\ 0 & 0 & 0\\ -1 & -2 & 1 \end{bmatrix}Gx​=​−1−2−1​000​+1+2+1​​Gy​=​+10−1​+20−2​+101​​

三、代码实现# robert算子robert_x = np.array([[1, 0], [0, -1]])robert_y = np.array([[0, -1], [1, 0]])# prewitt算子 prewitt_x = np.array([[-1, 0, 1], [-1, 0, 1], [-1, 0, 1]])prewitt_y = np.array([[1, 1, 1], [0, 0, 0], [-1, -1, -1]])# sobel算子 sobel_x = np.array([[-1, 0, +1], [-2, 0, +2], [-1, 0, +1]])sobel_y = np.array([[+1, +2, +1], [0, 0, 0], [-1, -2, -1]])# 图像灰度处理 def weight_gray(image): weight_image = image[:, :, 0] * 0.11 + image[:, :, 1] * 0.59 + image[:, :, 2] * 0.3 weight_image = weight_image.astype(np.uint8) return weight_image # 图像边缘检测 def edge_dimage(image, operator): shape = image.shape h, w = shape sh, sw = operator[0].shape sobel_image = np.zeros(image.shape) for i in range(h - sh): for j in range(w - sw): ix = np.multiply(image[i: i + sh, j: j + sw], operator[0]) iy = np.multiply(image[i: i + sh, j: j + sw], operator[1]) ix = np.sum(ix) iy = np.sum(iy) ig = np.sqrt(ix ** 2 + iy ** 2) sobel_image[i, j] = ig sobel_image = sobel_image.astype(np.uint8) return sobel_imageimage = cv2.imread("three_body.jpg") gray = weight_gray(image)roimage = edge_dimage(gray, (robert_x, robert_y)) primage = edge_dimage(gray, (prewitt_x, prewitt_y)) sbimage = edge_dimage(gray, (sobel_x, sobel_y))# 画子图plt.figure(figsize=(10, 7))plt.subplot(221)plt.title("gray")plt.imshow(gray, cmap='gray')plt.subplot(222)plt.title("sobel")plt.imshow(sbimage, cmap='gray')plt.subplot(223)plt.title("roberts")plt.imshow(roimage, cmap='gray')plt.subplot(224)plt.title("prewitt")plt.imshow(primage, cmap='gray')

总结

  这大概就是卷积神经网络的由来,以前叫做算子,现在叫做卷积。小编也迫不及待的想要动手实现卷积神经网络了(numpy),敬请期待。

本文链接地址:https://www.jiuchutong.com/zhishi/299560.html 转载请保留说明!

上一篇:css的rotate3d实现炫酷的圆环转动动画(css设置3d)

下一篇:记一次调试YOLOv5+DeepSort车辆跟踪项目的经过

  • applemusic怎么定时关闭(applemusic怎么定时停止播放)

    applemusic怎么定时关闭(applemusic怎么定时停止播放)

  • qq深色模式如何关闭(qq深色模式怎么开)

    qq深色模式如何关闭(qq深色模式怎么开)

  • 微信聊天记录怎么看(微信聊天记录怎么永久删除)

    微信聊天记录怎么看(微信聊天记录怎么永久删除)

  • 为什么支付宝充不了话费了(为什么支付宝充q币一直显示创建订单失败)

    为什么支付宝充不了话费了(为什么支付宝充q币一直显示创建订单失败)

  • 腾讯直播有安卓版吗(腾讯直播安卓手机可以和苹果电脑连吗)

    腾讯直播有安卓版吗(腾讯直播安卓手机可以和苹果电脑连吗)

  • 指定网络名不再可用什么意思(指定网络名不再可用什么意思共享打印机)

    指定网络名不再可用什么意思(指定网络名不再可用什么意思共享打印机)

  • 抖音粉丝叫已重置是粉丝吗(抖音粉丝重度是啥意思)

    抖音粉丝叫已重置是粉丝吗(抖音粉丝重度是啥意思)

  • 为什么手机电池显示黑色(为什么手机电池充到60%就充不进去了)

    为什么手机电池显示黑色(为什么手机电池充到60%就充不进去了)

  • ps像素低如何变清晰(ps怎么调)

    ps像素低如何变清晰(ps怎么调)

  • 华为相机ai是什么意思(华为相机AI是什么)

    华为相机ai是什么意思(华为相机AI是什么)

  • oppoa57充电呼吸灯亮吗(oppoa57充电呼吸灯怎么设置)

    oppoa57充电呼吸灯亮吗(oppoa57充电呼吸灯怎么设置)

  • 华为软件哪些可以卸载(华为软件哪些可以删除)

    华为软件哪些可以卸载(华为软件哪些可以删除)

  • 如何关闭小米音乐锁屏(如何关闭小米音箱)

    如何关闭小米音乐锁屏(如何关闭小米音箱)

  • 手机上hd1怎么取消(怎么才把手机上的hd去取呢)

    手机上hd1怎么取消(怎么才把手机上的hd去取呢)

  • 抖音极速版怎么发布视频(抖音极速版怎么赚钱 一天能赚多少)

    抖音极速版怎么发布视频(抖音极速版怎么赚钱 一天能赚多少)

  • 快手移除粉丝对方知道吗(快手移除粉丝对方会收到提示吗)

    快手移除粉丝对方知道吗(快手移除粉丝对方会收到提示吗)

  • 关联了qq怎么让对方看不见(关联了qq怎么让对方看不见聊天记录)

    关联了qq怎么让对方看不见(关联了qq怎么让对方看不见聊天记录)

  • 飞猪旅行怎么投诉(飞猪旅行怎么联系客服)

    飞猪旅行怎么投诉(飞猪旅行怎么联系客服)

  • 描述文件为什么一打开是空白(描述文件为什么要输入密码)

    描述文件为什么一打开是空白(描述文件为什么要输入密码)

  • duilib丢失怎么办(duilib.dill丢失)

    duilib丢失怎么办(duilib.dill丢失)

  • 三星s9电池百分比(三星s9电池健康度)

    三星s9电池百分比(三星s9电池健康度)

  • iPhone 14 Pro Max土豪金升级款新增配色古铜金(苹果手机14pro max)

    iPhone 14 Pro Max土豪金升级款新增配色古铜金(苹果手机14pro max)

  • 鸿蒙系统怎么退出纯净模式?鸿蒙系统纯净模式关闭步骤教程(鸿蒙系统怎么退出开发者选项)

    鸿蒙系统怎么退出纯净模式?鸿蒙系统纯净模式关闭步骤教程(鸿蒙系统怎么退出开发者选项)

  • 纳税人办理退税流程
  • 实际退税额怎么算
  • 提前报废的设备
  • 提高资产利用率,增加销售收入
  • 注册公司工贸和商贸区别
  • 机器维修费属于变动成本吗
  • 直接抵免和间接抵免的区别
  • 有没有退股一说
  • 发票代码有误什么意思
  • 应收账款确认无法收回分录
  • 一般存款账户的主要用途
  • 买机票返钱
  • 抵税更正申报需要多久
  • 建设项目检测费
  • 公司账户流水要交税吗
  • 待转销项税额结转分录
  • 小公司发工资怎么做账
  • 公司帮员工买的保险
  • 工会经费漏申报去大厅怎么处理
  • 对方已经认证的红字发票怎么开
  • phppost带cookie提交
  • 怎样改善现金流量比率
  • 金银首饰零售业必须为一般纳税人吗
  • Laravel 5.5官方推荐的Nginx配置学习教程
  • 一文读懂谢娜张杰购房跳单事件始末
  • 应收账款净额可以是负数吗
  • vue3如何使用axios
  • vue子组件获取dom元素的方法
  • vue安装使用
  • php使用正则表达式检测是否包含非数字
  • 利用php将图片转为文字
  • 优先股可转让吗
  • 个税的本期收入是什么意思
  • 固定资产记到什么账本
  • 预付款能不能开票入账
  • 企业确认收入实现的条件有哪些?
  • 应交税金科目应不应该有余额
  • 现金流出包括所有股票吗
  • 帝国cms使用手册
  • 公司先垫付社保会计分录
  • python insert方法
  • 免征文化事业建设费条件的销售额标准
  • 无形资产的税费需要累计摊销吗
  • 转让土地及地上建筑物涉及的税金
  • 计提了坏账准备就要计算递延所得税资产
  • 关于单独计价的规定
  • 普通发票和增值税发票的区别图片
  • 税控盘费用抵扣怎么申报什么表怎么说什么表怎么填报
  • 挂靠收入如何做账处理?
  • 5000元固定资产一次性计提折旧
  • 营业执照代办需要什么手续
  • 固定资产加速折旧纳税调整
  • 私人公司盈利怎么把钱拿出来
  • mysql5.7.21安装教程
  • fedora改密码
  • win8系统打开苹果系统文件
  • linux wk
  • windows怎么将任务栏放大
  • mac怎么保存到桌面
  • centos5.5网络配置
  • mac新版系统
  • windows8任务管理器在哪
  • win1020h2版好不好
  • linux网络设备有哪些
  • win10系统附件在哪里
  • win 10系统怎么查看网络连接
  • jQuery插件实现静态HTML验证码校验
  • shell脚本case语句判断成绩
  • jquery easy ui
  • JavaScript中的数据类型分哪为两大类?
  • 安卓全局替换
  • jquery实现点击按钮
  • java多线程编程实战指南
  • 广东省国家税务局网上办税大厅
  • 如何下载建设工程消防验收备案表格下载
  • 图像信息采集照片
  • 生产税净额包含企业所得税吗
  • 税务注销证明样本
  • 外经证核销在公司所在地还是在项目所在地
  • 公司欠税无力偿还怎么办
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设