首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

这个使用OpenCV中的GaussianBlur函数的subtract_gaussian_blur函数做了什么?

subtract_gaussian_blur函数使用了OpenCV中的GaussianBlur函数,它的作用是对图像进行高斯模糊处理,并将原始图像与模糊后的图像进行相减操作。具体步骤如下:

  1. 首先,subtract_gaussian_blur函数会调用OpenCV中的GaussianBlur函数,该函数使用高斯核对图像进行模糊处理。高斯模糊是一种常用的图像处理技术,通过对图像中的每个像素点周围的像素值进行加权平均,使得图像中的噪声被模糊掉,从而达到平滑图像的效果。
  2. GaussianBlur函数接受输入图像和模糊核的大小作为参数,根据模糊核的大小和标准差来计算每个像素点的新值。模糊核的大小决定了模糊的程度,标准差则决定了模糊核的权重分布。
  3. 模糊后的图像会被保存下来,作为subtract_gaussian_blur函数的中间结果。
  4. 接下来,subtract_gaussian_blur函数会将原始图像与模糊后的图像进行相减操作。这个操作可以用来突出图像中的细节或者检测图像中的边缘。相减操作会将原始图像中的每个像素值减去对应位置上模糊后图像的像素值,得到的结果图像中,边缘和细节部分的像素值会相对较大,而平滑区域的像素值会接近于零。

通过使用subtract_gaussian_blur函数,可以实现对图像的高斯模糊和边缘检测等效果。在实际应用中,该函数可以用于图像处理、计算机视觉、图像分析等领域。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云图像处理(Image Processing):https://cloud.tencent.com/product/img
  • 腾讯云计算机视觉(Computer Vision):https://cloud.tencent.com/product/cv
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

OpenCVcreateTrackbar函数

OpenCV,我们常常需要调节卷积核大小(邻域大小)或者是亮度,对比度调整。这时候如果我们通过手动修改是非常麻烦。...这时候使用OpenCV提供createTrackbar函数就方便了许多。 createTrackbar函数 createTrackbar函数创建一个滑动条,并且当你滑动时候可以触发回调函数。...这个机制其实类似与Windows下消息回调机制或者是Qt提供信号槽机制。当你滑动这个时候,回调函数才会被调用。其实就是一种软件中断技术。...; 参数3:滑块位置,创建时,滑块初始位置就是这个变量当前值; 参数4:轨迹最大值; 参数5:回调函数; 参数6:默认0,用户传给回调函数数据,如果第三个值为全局变量,忽略这个值....;如果使用第6个参数,则作为参数传给回调函数usrdata。 我们来看一段具体代码。

1.5K10
  • opencv remap matlab,如何使用OpenCVremap函数

    这只是对文件一个简单误解,我不怪你——我也花了几次摸索才明白。文档很清楚,但是这个函数可能没有按您预期方式工作;事实上,它在与我最初预期相反方向工作。...remap()没有做是获取源图像坐标,变换点,然后插值。remap()所做是,对于目的地图像每个像素,查找它来自源图像位置,然后分配一个插值值。...在新目标图像像素(0, 0)处,我查看map_x和map_y,它们告诉我源图像相应像素位置,然后通过查看源图像接近值,可以在目标图像(0, 0)处分配插值。...完整用例示例 下面是一个完整代码示例,使用地面真值单应,手动扭曲像素位置,然后使用remap()从转换点映射图像。注意,这里我单应式将true_dst转换为src。...因此,我建立了一个任意多个点集合,然后通过用单应变换计算这些点在源图像位置。然后使用remap()查找源图像这些点,并将它们映射到目标图像

    1.2K20

    OpenCV消除高亮illuminationChange函数使用

    ——《微卡智享》 本文长度为1129字,预计阅读4分钟 导语 上一篇《OpenCV极坐标变换函数warpPolar使用》中介绍了极坐标变换使用,文中提到过因为手机拍照片,部分地方反光厉害。...OpenCV本身也有一个消除高亮函数,今天这篇就是来了解一下消除高亮函数使用,就结果来说,有效果,但不多。...02 查找高光区域 查找高光区域这里我也写成了一个函数,里面加了一步直方图均衡化,主要是本身图像清晰度也不高,所以使用直方图均衡化把图像对比度进行调整了一下,增强局部对比度,更好进行查找。...二值化后就是掩膜效果,为什么还要查找轮廓?...A 看到这里可能有人会提问,代码threshold二值化找到高光部分是不是直接可以当掩膜了,这个我开始也想直接这样,省去了查找轮廓部分,不过测试过程中直接报错了,也就是说去高光函数掩膜区域里面只能是矩形

    1.2K10

    【从零学习OpenCV 4】namedWindow函数&imshow函数使用

    代码清单2-25给出了创建窗口函数原型。...该函数第一个参数是声明窗口名称,用于窗口唯一识别,第二个参数是声明窗口属性,主要用于设置窗口大小是否可调、显示图像是否填充满窗口等,具体可选择参数及含义在表2-4给出,默认情况下,函数加载标志参数为...] 如果图像时32位或64位浮点类型,则将像素乘以255,即将范围由[0,1]映射到[0,255] 函数第一个参数为图像显示窗口名称,第二个参数是需要显示图像Mat类矩阵。...这里需要特殊说明是,我们看到第二个参数并不是常见Mat类,而是InputArray,这个OpenCV定义一个类型声明引用,用作输入参数标识,我们在遇到它时可以认为是需要输入一个Mat类数据。...注意 此函数运行后会继续执行后面程序,如果后面程序执行完直接退出的话,那么显示图像有可能闪一下就消失了,因此在需要显示图像程序,往往会在imshow()函数后跟有cv::waitKey()函数

    4.4K22

    浅谈OpenCV函数connectedComponentsWithStats用法

    主要内容:对比新旧函数,用于过滤原始图像轮廓分析后较小区域,留下较大区域。...关键字:connectedComponentsWithStats 在以前,常用方法是”是先调用 cv::findContours() 函数(传入cv::RETR_CCOMP 标志),随后在得到连通区域上循环调用...cv::drawContours() “ 比如,我在GOCVHelper这样进行了实现 //寻找最大轮廓 VP FindBigestContour(Mat src){ int imax =...有了新专门函数 cv::connectedComponents() 和函数 cv::connectedComponentsWithStats() 定义: int cv::connectedComponents...而labels ? 完全对上号,结果为 ? 以上这篇浅谈OpenCV函数connectedComponentsWithStats用法就是小编分享给大家全部内容了,希望能给大家一个参考。

    5.6K31

    OpenCV极坐标变换函数warpPolar使用

    ,直接截取图片进行OCR没法识别,需要经过图像处理后再识别,所以这篇就是学习一下OpenCV极坐标变换函数。...实现效果 源图像 查找出骨钉后用极坐标变换生成图像 图像本来就是手机拍,反光也比较厉害,所以本篇主要就是介绍极坐标变换,最后OCR识别就不在这个范围内了。..., —输出图像,与原图像具有相同数据类型和通道数 Size dsize, —目标图像大小,如图不填这个值或dsize两个值某个值...,如果最后一个参数你不指定,默认使用这种方法 INTER_AREA -区域插值 INTER_CUBIC - 4x4像素邻域内双立方插值 INTER_LANCZOS4...- 8x8像素邻域内Lanczos插值 这个我们一般都默认为INTER_LINEAR - 双线性插值即可。

    40110

    OpenCVMat类型以及基本函数使用

    OpenCVMat类型以及基本函数使用 Mat和IplImage区别 Mat和IplImage主要区别 在OpenCVIplImage是表示一个图像结构体,也是从OpenCV1.0到目前最为重要一个结构...Mat Mat这个数据结构定义在opencv\build\include\opencv2\core\core.hpp这个文件。...其中有一个构造函数可以很方便直接将IplImage转化为Mat Mat(const IplImage* img, bool copyData=false); 基本函数使用 imread 功能:从一个文件载入图片...很多时候,遇到函数原型InputArray类型,我们把它简单地当做Mat类型就行了。 imshow 函数用于在指定窗口中显示图像。...具体变换代码参见:opencv\build\include\opencv2\imgproc\types_c.h文件第87行,枚举类型。

    1.5K10

    Lua函数使用

    这个函数被调用时,Lua内部会把它所有参数收集起来,我们把这些被收集起来参数称为函数额外参数。当函数要访问这些参数时仍需用到三个点,但不同是此时这三个点是作为一个表达式来使用。...该函数像表达式{…}一样保存所有的参数,然后将其放在一个表返回,但是这个表还有一个保存了参数个数额外字段”n”。...例如,在IOS C,我们无法编写泛型调用代码,只能声明可变长参数函数使用函数指针来调用不同函数。...在一些语言实现,例如Lua语言解释器,就利用了这个特点,是的进行尾调用时不使用任何额外栈空间。我们就将这种实现称为尾调用消除。...例如,下例调用g就不是尾调用: function f(x) g(x) end 这个示例问题在于,当调用完g后,f在返回前还不得不丢弃g返回所有结果。

    1.7K20

    Golang函数使用

    函数 函数调用:函数调用时需要传递函数定义要求参数,并根据需要接收返回值。 匿名函数:匿名函数没有函数名,可以直接定义并调用。常用于函数内部作为闭包使用。...函数使用 函数定义 Go语言中函数定义使用 func 关键字,其基本语法格式如下: func 函数名(参数列表) (返回值列表) { 函数体 } 其中: 函数名 表示函数名称,遵循标识符命名规则...函数变量作用域 函数声明变量作用域是该函数内部,在函数外部是不可见。如果函数使用了全局变量,则在函数可以直接使用函数递归调用 函数可以递归调用,递归调用必须有一个终止条件。...在这个例子,当 main 函数执行到 defer 语句时,"deferred" 被压入一个栈。...} 在这个例子,timeTrack 函数用来记录函数执行时间。

    16630

    C++ OpenCV去燥函数fastNlMeansDenoising使用

    ——《微卡智享》 本文长度为1857字,预计阅读5分钟 前言 在使用OpenCV进行图像处理时,一般都使用高斯滤波或是中值滤波进行去噪,原理也是选取像素周围一个小邻域铂高斯或中值平均取代中心像素。...上图中右边为使用fastNlMeansDenoising去燥后效果,可以看出来,整张图片清晰度和原图基本无变化 ,标红框地方可以看到平滑了好多。如果使用高斯或是中值滤波,图像会变模糊些。...h 值高可以很好去除噪声,但也会把图像细节抹去。(取 10 效果不错) //hColor 与h相同,使用于彩色图像 //templateWindowSize 奇数。...(推荐值为 21) 完整代码 #include #include #include "CvUtils.h" using namespace...src.cols+70, 50); imshow("denoising", denoisingdst); waitKey(0); return 0; } 1 简单美颜 在找不同图片进行测试时,发现了用这个函数可以实现一个简单美颜效果

    2.9K40

    opencv2.4.13.7resize函数使用(c++)

    先来看一下resize函数原型,如下。...通常使用时,像笔者都是计算好输出图片尺寸,然后直接在dsize里面设置。比如输入图片是1280*960分辨率,输出图片要设置为640*480,那么dsize就是Size(640,480)。...输出图片类型和尺寸不由输入图片dst这个变量来决定,而是,类型保持跟src类型一致,尺寸由输入图片src尺寸和dsize(或者fx和fx)共同决定。...参数类型有五种,具体可以参考opencv官方文档,默认是双线性插值。 下面说下笔者犯一个错误,可以给同学们借鉴下。...这就有点奇怪了,这是双线性插值结果,不应该是最近邻插值结果。 后来看到resize函数声明,才突然明白过来。 resize函数声明在hpp里面如下。

    1.2K20
    领券