0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

简述图像梯度的基本原理

新机器视觉 来源:CSDN技术社区 作者:saltriver 2021-10-19 16:22 次阅读

当用均值滤波器降低图像噪声的时候,会带来图像模糊的副作用。我们当然希望看到的是清晰图像。那么,清晰图像和模糊图像之间的差别在哪里呢?从逻辑上考虑,图像模糊是因为图像中物体的轮廓不明显,轮廓边缘灰度变化不强烈,层次感不强造成的,那么反过来考虑,轮廓边缘灰度变化明显些,层次感强些是不是图像就更清晰些呢。

那么,这种灰度变化明显不明显怎样去定义呢。我们学过微积分,知道微分就是求函数的变化率,即导数(梯度),那么对于图像来说,可不可以用微分来表示图像灰度的变化率呢,当然是可以的,前面我们提到过,图像就是函数嘛。

在微积分中,一维函数的一阶微分的基本定义是这样的:

4c0e69a4-2fed-11ec-82a8-dac502259ad0.png

而图像是一个二维函数f(x,y),其微分当然就是偏微分。因此有:

4c41bb42-2fed-11ec-82a8-dac502259ad0.png

因为图像是一个离散的二维函数,ϵ 不能无限小,我们的图像是按照像素来离散的,最小的ϵ就是1像素。因此,上面的图像微分又变成了如下的形式(ϵ=1):

4c6bb366-2fed-11ec-82a8-dac502259ad0.png

这分别是图像在(x, y)点处x方向和y方向上的梯度,从上面的表达式可以看出来,图像的梯度相当于2个相邻像素之间的差值。

那么,这个梯度(或者说灰度值的变化率)如何增强图像的清晰度呢?

我们先考虑下x方向,选取某个像素,假设其像素值是100,沿x方向的相邻像素分别是90,90,90,则根据上面的计算其x方向梯度分别是10,0,0。这里只取变化率的绝对值,表明变化的大小即可。

我们看到,100和90之间亮度相差10,并不是很明显,与一大群90的连续灰度值在一起,轮廓必然是模糊的。我们注意到,如果相邻像素灰度值有变化,那么梯度就有值,如果相邻像素灰度值没有变化,那么梯度就为0。如果我们把梯度值与对应的像素相加,那么灰度值没有变化的,像素值不变,而有梯度值的,灰度值变大了。

我们看到,相加后的新图像,原图像像素点100与90亮度只相差10,现在是110与90,亮度相差20了,对比度显然增强了,尤其是图像中物体的轮廓和边缘,与背景大大加强了区别,这就是用梯度来增强图像的原理。

上面只是说了x方向,y方向是一样的。那么能否将x方向和y方向的梯度结合起来呢?当然是可以的。x方向和y方向上的梯度可以用如下式子表示在一起:

4d822898-2fed-11ec-82a8-dac502259ad0.png

这里又是平方,又是开方的,计算量比较大,于是一般用绝对值来近似平方和平方根的操作,来降低计算量:

4dc58ee4-2fed-11ec-82a8-dac502259ad0.png

我们来计算一下月球图像的x方向和y方向结合的梯度图像,以及最后的增强图像。

import cv2 import numpy as np moon = cv2.imread(“moon.tif”, 0) row, column = moon.shape moon_f = np.copy(moon) moon_f = moon_f.astype(“float”) gradient = np.zeros((row, column)) for x in range(row - 1): for y in range(column - 1): gx = abs(moon_f[x + 1, y] - moon_f[x, y]) gy = abs(moon_f[x, y + 1] - moon_f[x, y]) gradient[x, y] = gx + gy sharp = moon_f + gradient sharp = np.where(sharp 《 0, 0, np.where(sharp 》 255, 255, sharp)) gradient = gradient.astype(“uint8”) sharp = sharp.astype(“uint8”) cv2.imshow(“moon”, moon) cv2.imshow(“gradient”, gradient) cv2.imshow(“sharp”, sharp) cv2.waitKey()

来源:CSDN,作者:saltriver。

原文链接:https://blog.csdn.net/saltriver/article/details/78987096

编辑:jq

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 滤波器
    +关注

    关注

    161

    文章

    7811

    浏览量

    178087
  • 函数
    +关注

    关注

    3

    文章

    4331

    浏览量

    62593

原文标题:图像梯度的基本原理

文章出处:【微信号:vision263com,微信公众号:新机器视觉】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    卷积神经网络的基本原理与算法

    ),是深度学习的代表算法之一。 一、基本原理 卷积运算 卷积运算是卷积神经网络的核心,用于提取图像中的局部特征。 定义卷积核:卷积核是一个小的矩阵,用于在输入图像上滑动,提取局部特征。 滑动窗口:将卷积核在输入
    的头像 发表于 11-15 14:47 521次阅读

    RNN的基本原理与实现

    RNN,即循环神经网络(Recurrent Neural Network),是一种特殊类型的人工神经网络,专门设计用于处理序列数据,如文本、语音、视频等。以下是对RNN基本原理与实现的介绍: 一
    的头像 发表于 11-15 09:49 427次阅读

    LSTM神经网络的基本原理 如何实现LSTM神经网络

    广泛应用。 LSTM神经网络的基本原理 1. 循环神经网络(RNN)的局限性 传统的RNN在处理长序列数据时会遇到梯度消失或梯度爆炸的问题,导致网络难以学习到长期依赖信息。这是因为在反向传播过程中,
    的头像 发表于 11-13 09:53 409次阅读

    高斯滤波的基本原理有哪些

    高斯滤波的基本原理可以从以下几个方面进行阐述: 一、定义与性质 定义 :高斯滤波(Gaussian Filter)是一种常见的图像处理技术,实质上是一种信号的滤波器,用于平滑和降噪图像。它采用高斯
    的头像 发表于 09-29 09:27 519次阅读

    3DP工艺基本原理

     3DP工艺,全称Three-Dimensional Printing(三维打印),是一种3D打印技术,其基本原理可以详细阐述如下:
    的头像 发表于 09-16 15:32 787次阅读

    限流保护电路的基本原理

    限流保护电路的基本原理是一个复杂但至关重要的概念,它涉及到电子电路中电流控制的多个方面。这种电路的主要目的是在电流超过预设的安全阈值时,通过一系列机制来限制或切断电流,从而保护电路中的元件和设备免受损坏。以下是对限流保护电路基本原理的详细阐述,包括其工作机制、主要元件、设
    的头像 发表于 08-19 17:55 1999次阅读

    无线充电技术的基本原理和应用领域

    无线充电技术作为近年来快速发展的电力传输方式,其基本原理和应用范围广泛,为人们的生活带来了极大的便利。以下将详细阐述无线充电技术的基本原理、主要类型、技术优势以及在不同领域的应用。
    的头像 发表于 07-26 17:56 2496次阅读

    卷积神经网络的基本原理和应用范围

    卷积神经网络(Convolutional Neural Network,简称CNN)是一种深度学习模型,广泛应用于图像识别、语音识别、自然语言处理等领域。本文将详细介绍卷积神经网络的基本原理
    的头像 发表于 07-02 15:30 1203次阅读

    CNN模型的基本原理、结构、训练过程及应用领域

    CNN模型的基本原理、结构、训练过程以及应用领域。 卷积神经网络的基本原理 1.1 卷积运算 卷积运算是CNN模型的核心,它是一种数学运算
    的头像 发表于 07-02 15:26 3551次阅读

    卷积神经网络的基本原理、结构及训练过程

    卷积神经网络(Convolutional Neural Network,简称CNN)是一种深度学习算法,广泛应用于图像识别、视频分析、自然语言处理等领域。本文将详细介绍卷积神经网络的基本原理、结构
    的头像 发表于 07-02 14:21 2566次阅读

    反向传播神经网络建模的基本原理

    等方面取得了显著的成果。本文将详细介绍BP神经网络的基本原理,包括网络结构、激活函数、损失函数、梯度下降算法、反向传播算法等。 神经网络概述 神经网络是一种模仿人脑神经元结构的计算模型,由大量的神经元(或称为节点)组成。每个神经元接收来自其他神经元的输入
    的头像 发表于 07-02 14:05 296次阅读

    神经网络的基本原理

    神经网络,作为人工智能领域的一个重要分支,其基本原理和运作机制一直是人们研究的热点。神经网络的基本原理基于对人类大脑神经元结构和功能的模拟,通过大量的神经元相互连接、协同工作,实现对信息的处理、分析
    的头像 发表于 07-01 11:47 1141次阅读

    AC/DC电源模块的基本原理与应用

    BOSHIDA AC/DC电源模块的基本原理与应用 AC/DC电源模块是一种将交流电转换为直流电的电子设备,它广泛应用于电子设备、电信设备、工控设备以及家电等领域。本文将介绍AC/DC电源模块
    的头像 发表于 05-21 11:15 849次阅读
    AC/DC电源模块的<b class='flag-5'>基本原理</b>与应用

    激光二极管基本原理介绍

    激光二极管基本原理介绍
    发表于 03-19 10:57

    浪涌抑制器的基本原理和种类?

    浪涌抑制器的基本原理和种类?|深圳比创达电子
    的头像 发表于 01-18 09:59 875次阅读
    浪涌抑制器的<b class='flag-5'>基本原理</b>和种类?