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

域名抢注哪个平台好百度seo是什么意思呢

域名抢注哪个平台好,百度seo是什么意思呢,本人做静态网站开发,池州网站制作哪家好一、噪声 噪声:指图像中的一些干扰因素,通常是由图像采集设备、传输信道等因素造成的,表现为图像中随机 的亮度,也可以理解为有那么一些点的像素值与周围的像素值格格不入。常见的噪声类型包括高斯噪声 和椒盐噪声。高斯噪声是一种…

一、噪声

        噪声:指图像中的一些干扰因素,通常是由图像采集设备、传输信道等因素造成的,表现为图像中随机 的亮度,也可以理解为有那么一些点的像素值与周围的像素值格格不入。常见的噪声类型包括高斯噪声 和椒盐噪声。高斯噪声是一种分布符合正态分布的噪声,会使图像变得模糊或有噪点。椒盐噪声则是一 些黑白色的像素值分布在原图像中。

二、滤波器

        滤波器:也可以叫做卷积核,与自适应二值化中的核一样,本身是一个小的区域,有着特定的核值,并 且工作原理也是在原图上进行滑动并计算中心像素点的像素值。滤波器可分为线性滤波和非线性滤波, 线性滤波对邻域中的像素进行线性运算,如在核的范围内进行加权求和,常见的线性滤波器有均值滤 波、高斯滤波等。非线性滤波则是利用原始图像与模板之间的一种逻辑关系得到结果,常见的非线性滤 波器中有中值滤波器、双边滤波器等。

滤波与模糊联系与区别:

•        它们都属于卷积,不同滤波方法之间只是卷积核不同(对线性滤波而言)

•        低通滤波器是模糊,高通滤波器是锐化

•        低通滤波器就是允许低频信号通过,在图像中边缘和噪点都相当于高频部分,所以低通滤波器用于 去除噪点、平滑和模糊图像。高通滤波器则反之,用来增强图像边缘,进行锐化处理。

注意:

        椒盐噪声可以理解为斑点,随机出现在图像中的黑点或白点;高斯噪声可以理解为拍摄图片时由 于光照等原因造成的噪声。 

三、滤波算法

3.1、均值滤波

        均值滤波是一种最简单的滤波处理,它取的是卷积核区域内元素的均值,如3×3的卷积核:

        在滤波算法组件中,当参数filtering_method选为均值滤波,参数component_param为ksize,代表卷 积核的大小,eg:ksize=3,则代表使用3×3的卷积核。

        比如有一张4*4的图片,现在使用一个3*3的卷积核进行均值滤波时,其过程如下所示:

        对于边界的像素点,则会进行边界填充,以确保卷积核的中心能够对准边界的像素点进行滤波操作。在 OpenCV中,默认的是使用BORDER_REFLECT_101的方式进行填充,下面的滤波方法中除了中值滤波使 用的是BORDER_REPLICATE进行填充之外,其他默认也是使用这个方式进行填充,因此下面就不再赘 述。通过卷积核在原图上从左上角滑动计算到右下角,从而得到新的4*4的图像的像素值。 

3.2、方框滤波

        方框滤波跟均值滤波很像,如3×3的滤波核如下:

        在滤波算法组件中,当参数filtering_method选为方框滤波时,参数component_param为ksize, ddepth,normalize。

•        ksize:代表卷积核的大小,eg:ksize=3,则代表使用3×3的卷积核。

•        ddepth:输出图像的深度,-1代表使用原图像的深度。

•        normalize:当normalize为True的时候,方框滤波就是均值滤波,上式中的a就等于1/9;normalize为 False的时候,a=1,相当于求区域内的像素和。

•        其滤波的过程与均值滤波一模一样,都采用卷积核从图像左上角开始,逐个计算对应位置的像素值,并 从左至右、从上至下滑动卷积核,直至到达图像右下角,唯一的区别就是核值可能会不同。

3.3、高斯滤波 

        均值滤波和方框滤波,卷积核内的每个值都一样,也就是说图像区域中每个像素的权重也就一样。高斯滤 波的卷积核权重并不相同:中间像素点权重最高,越远离中心的像素权重越小。高斯核是以核的中心位 置为坐标原点,然后计算周围点的坐标,然后带入下面的高斯公式中。

得到了卷积核的核值之后,其滤波过程与上面两种滤波方式的滤波过程一样,都是用卷积核从图像左上 角开始,逐个计算对应位置的像素值,并从左至右、从上至下滑动卷积核,直至到达图像右下角,唯一 的区别就是核值不同。

        在滤波算法组件中,当参数filtering_method选为高斯滤波,参数component_param为ksize, sigmaX。

•        ksize:代表卷积核的大小,eg:ksize=3,则代表使用3×3的卷积核。

•        sigmaX:就是高斯函数里的值,σx值越大,模糊效果越明显。高斯滤波相比均值滤波效率要慢,但可以 有效消除高斯噪声,能保留更多的图像细节,所以经常被称为最有用的滤波器。

3.4、中值滤波 

        中值又叫中位数,是所有数排序后取中间的值。中值滤波没有核值,而是在原图中从左上角开始,将卷 积核区域内的像素值进行排序,并选取中值作为卷积核的中点的像素值

        中值滤波就是用区域内的中值来代替本像素值,所以那种孤立的斑点,如0或255很容易消除掉,适用于 去除椒盐噪声和斑点噪声。中值是一种非线性操作,效率相比前面几种线性滤波要慢。

        在滤波算法组件中,当参数filtering_method选为中值滤波,参数component_param为ksize,代表卷 积核的大小,eg:ksize=3,则代表使用3×3的卷积核。

3.5、双边滤波

        模糊操作基本都会损失掉图像细节信息,尤其前面介绍的线性滤波器,图像的边缘信息很难保留下来。 然而,边缘(edge)信息是图像中很重要的一个特征,所以这才有了双边滤波。

        可以看到,双边滤波明显保留了更多边缘信息。

        双边滤波的基本思路是同时考虑将要被滤波的像素点的空域信息(周围像素点的位置的权重)和值域信 息(周围像素点的像素值的权重)。为什么要添加值域信息呢?是因为假设图像在空间中是缓慢变化的 话,那么临近的像素点会更相近,但是这个假设在图像的边缘处会不成立,因为图像的边缘处的像素点 必不会相近。因此在边缘处如果只是使用空域信息来进行滤波的话,得到的结果必然是边缘被模糊了, 这样我们就丢掉了边缘信息,因此添加了值域信息。

        双边滤波采用了两个高斯滤波的结合,一个负责计算空间邻近度的权值(也就是空域信息),也就是上 面的高斯滤波器,另一个负责计算像素值相似度的权值(也就是值域信息),也是一个高斯滤波器。

        可以看到,对于 \omega来说,这就是普通的高斯滤波函数,其带入的坐标是坐标值,\sigma _{s}是程序输入值,该 函数是在空间临近度上计算的。而 \omega_{r }是计算像素值相似度,也是高斯函数带入坐标值,然后得到对应点 的像素值,进行两个点像素值插值的绝对值的平方。也就是说,双边滤波的核值不再是一个固定值,而 是随着滤波的过程在不断发生变化的。

        在滤波算法组件中,当参数filtering_method选为双边滤波,参数component_param为 ksize,d,sigmaColor,sigmaSpace.

•       ksize:卷积核的大小

•       d:过滤时周围每个像素领域的直径

•       sigmaColor:在color space中过滤sigma。参数越大,临近像素将会在越远的地方mix。

•       sigmaSpace:在coordinate space中过滤sigma。参数越大,那些颜色足够相近的的颜色的影响越 大。

关于2个sigma参数:

        简单起见,可以令2个sigma的值相等;

        如果他们很小(小于10),那么滤波器几乎没有什么效果;

        如果他们很大(大于150),那么滤波器的效果会很强,使图像显得非常卡通化。

关于参数d:

        过大的滤波器(d>5)执行效率低。

        对于实时应用,建议取d=5;

        对于需要过滤严重噪声的离线应用,可取d=9;

注意:

        在于选用滤波器的时候,优先高斯滤波,然后均值滤波。

        斑点和椒盐噪声优先使用中值滤波。

        要去除噪点的同时尽可能保留更多的边缘信息,使用双边滤波。

        线性滤波方式:均值滤波、方框滤波、高斯滤波(速度相对快)。

        非线性滤波方式:中值滤波、双边滤波(速度相对慢)。 

四、噪点消除 

4.1、均值滤波

导入模块

import cv2

 输入图像

img = cv2.imread('lenda01.png')

 选取滤波

img_blur = cv2.blur(img,(9,9))

 输出图像

cv2.imshow('img', img)
cv2.imshow('img_blur', img_blur)
cv2.waitKey(0)

 完整代码

import cv2img = cv2.imread('lenda01.png')img_blur = cv2.blur(img,(9,9))cv2.imshow('img', img)
cv2.imshow('img_blur', img_blur)
cv2.waitKey(0)

4.2、方框滤波

        此代码展示的是当normalize为Fasle时的图像,为True时图像和均值滤波一样

导入模块

import cv2

 输入图像

img = cv2.imread('lenda01.png')

 选取滤波

img_boxFilter = cv2.boxFilter(img,-1,(3,3),normalize=False)

 输出图像

cv2.imshow('img', img)
cv2.imshow('img_boxFilter', img_boxFilter)
cv2.waitKey(0)

 完整代码

import cv2img = cv2.imread('lenda01.png')img_boxFilter = cv2.boxFilter(img,-1,(3,3),normalize=False)cv2.imshow('img', img)
cv2.imshow('img_boxFilter', img_boxFilter)
cv2.waitKey(0)

4.3、高斯滤波

导入模块

import cv2

 输入图像

img = cv2.imread('lenda01.png')

 选取滤波

img_GaussianBlur = cv2.GaussianBlur(img,(9,9),sigmaX=99)

 输出图像

cv2.imshow('img', img)
cv2.imshow('img_GaussianBlur', img_GaussianBlur)
cv2.waitKey(0)

 完整代码

import cv2img = cv2.imread('lenda01.png')img_GaussianBlur = cv2.GaussianBlur(img,(9,9),sigmaX=99)cv2.imshow('img', img)
cv2.imshow('img_GaussianBlur', img_GaussianBlur)
cv2.waitKey(0)

4.4、中值滤波

导入模块

import cv2

 输入图像

img = cv2.imread('lenda01.png')

 选取滤波 

img_medianBlur = cv2.medianBlur(img,7)

 输出图像

cv2.imshow('img', img)
cv2.imshow('img_medianBlur', img_medianBlur)
cv2.waitKey(0)

 完整代码

import cv2img = cv2.imread('lenda01.png')img_medianBlur = cv2.medianBlur(img,7)cv2.imshow('img', img)
cv2.imshow('img_medianBlur', img_medianBlur)
cv2.waitKey(0)

4.5、双边滤波

导入模块

import cv2

 输入图像

img = cv2.imread('lenda01.png')

 选取滤波

img_bilateralFilter = cv2.bilateralFilter(img,9,150,150)

 输出图像

cv2.imshow('img', img)
cv2.imshow('img_bilateralFilter', img_bilateralFilter)
cv2.waitKey(0)

 完整代码

import cv2img = cv2.imread('lena.png')img_bilateralFilter = cv2.bilateralFilter(img,9,30,30)cv2.imshow('img', img)
cv2.imshow('img_bilateralFilter', img_bilateralFilter)
cv2.waitKey(0)

五、库函数 

5.1、blur()

cv.blur(	src, ksize[, dst[, anchor[, borderType]]]	) ->	dst
方法描述
src输入图像;它可以有任意数量的通道,这些通道是独立处理的,但深度应为 CV_8U、CV_16U、CV_16S、CV_32F 或 CV_64F。
dst输出图像的大小和类型与 src 相同。
ksize模糊的内核大小。
anchor锚点;默认值 Point(-1,-1) 表示锚点位于内核中心。
borderTypeborder 模式用于推断图像外部的像素,请参阅 BorderTypes。不支持BORDER_WRAP。

5.2、boxFilter()

cv.boxFilter(	src, ddepth, ksize[, dst[, anchor[, normalize[, borderType]]]]	) ->	DST
方法描述
src输入图像;它可以有任意数量的通道,这些通道是独立处理的,但深度应为 CV_8U、CV_16U、CV_16S、CV_32F 或 CV_64F。
dst输出图像的大小和类型与 src 相同。
ddepth输出图像深度(-1 以使用 src.depth())
ksize模糊的内核大小。
anchor锚点;默认值 Point(-1,-1) 表示锚点位于内核中心。
normalize标志,指定内核是否按其区域进行规范化。
borderTypeborder 模式用于推断图像外部的像素,请参阅 BorderTypes。不支持BORDER_WRAP。

5.3、GaussianBlur()

cv.GaussianBlur(	src, ksize, sigmaX[, dst[, sigmaY[, borderType[, hint]]]]	) ->	DST
方法描述
src输入图像;图像可以有任意数量的通道,这些通道是独立处理的,但深度应为 CV_8U、CV_16U、CV_16S、CV_32F 或 CV_64F。
dst输出图像的大小和类型与 src 相同。
ksizeGaussian kernel 大小。ksize.width 和 ksize.height 可以不同,但它们都必须是正数和奇数。或者,它们可以是零,然后根据 sigma 计算。
sigmaXX 方向上的高斯核标准差
sigmaYY 方向的高斯核标准差;如果 sigmaY 为零,则设置为等于 sigmaX,如果两个 sigma 都为零,则分别从 ksize.width 和 ksize.height 计算出来(详见 getGaussianKernel);为了完全控制结果,而不管所有这些语义将来可能如何修改,建议指定所有 ksize、sigmaX 和 sigmaY。
borderType像素外插方法,请参阅 BorderTypes。不支持BORDER_WRAP。
hint实现修改标志。请参阅 AlgorithmHint

5.4、medianBlur()

cv.medianBlur(	src, ksize[, dst]	) ->	DST
方法描述
src输入 1 通道、3 通道或 4 通道图像;当 kSize 为 3 或 5 时,图像深度应为 CV_8U、CV_16U 或 CV_32F,对于较大的孔径尺寸,只能CV_8U。
dst目标数组,其大小和类型与 src 相同。
ksize孔径线性尺寸;它必须是奇数且大于 1,例如:3、5、7 ...

5.5、bilateralFilter()

cv.bilateralFilter(	src, d, sigmaColor, sigmaSpace[, dst[, borderType]]	) ->	DST
方法描述
src源 8 位或浮点、1 通道或 3 通道图像。
dst与 src 大小和类型相同的目标图像。
d筛选期间使用的每个像素邻域的直径。如果为非正数,则从 sigmaSpace 计算。
sigmaColor在色彩空间中过滤 sigma。该参数值越大,意味着像素邻域内较远的颜色(请参阅 sigmaSpace)将混合在一起,从而产生更大的半相等颜色区域。
sigmaSpace在坐标空间中过滤 sigma。参数值越大,意味着只要颜色足够接近,更远的像素就会相互影响(请参阅 sigmaColor )。当 d>0 时,它指定邻域大小,而不考虑 sigmaSpace。否则,d 与 sigmaSpace 成正比。
borderTypeborder 模式用于推断图像外部的像素,请参阅 BorderTypes

  BorderTypes

描述
BORDER_CONSTANT
Python:cv.BORDER_CONSTANT

iiiiii|abcdefgh|iiiiiii并指定一些i

BORDER_REPLICATE
Python:cv.BORDER_REPLICATE

aaaaaa|abcdefgh|hhhhhhh

BORDER_REFLECT
Python:cv.BORDER_REFLECT

fedcba|abcdefgh|hgfedcb

BORDER_WRAP
Python:cv.BORDER_WRAP

cdefgh|abcdefgh|abcdefg

BORDER_REFLECT_101
Python:cv.BORDER_REFLECT_101

gfedcb|abcdefgh|gfedcba

BORDER_TRANSPARENT
Python:cv.BORDER_TRANSPARENT

uvwxyz|abcdefgh|ijklmno- 将离群值视为透明值。

BORDER_REFLECT101
Python:cv.BORDER_REFLECT101

与 BORDER_REFLECT_101 相同

BORDER_DEFAULT
Python:cv.BORDER_DEFAULT

与 BORDER_REFLECT_101 相同

BORDER_ISOLATED
Python:cv.BORDER_ISOLATED

插值限制在 ROI 边界内。

http://www.dtcms.com/wzjs/169900.html

相关文章:

  • 怎么做宇宙网站互联网广告推广是做什么的
  • 公司网站建设服务北京seo公司网站
  • 招聘网站建设规划书企业推广是做什么的
  • 如何做批发网站网站怎么做外链
  • 杭州工业设计公司排名前十强襄阳seo
  • java可以用来做网站吗营业推广方案
  • 宝鸡建设网站seo管理是什么
  • 网站服务器地址怎么查询360优化大师下载官网
  • 永州建设公司网站服装店营销策划方案
  • 成都的网站建设开发公司知名的建站公司
  • 作业3 主题资源网站建设谷歌搜索引擎香港免费入口
  • 迁安做网站哪家好如何申请一个网站域名
  • 做网站首选九零后网络宁波网站制作优化服务
  • 网站建设优化服务方案百度认证平台
  • 网站建设独立推广公司app主要做什么
  • wordpress横菜单间隔佛山市seo推广联系方式
  • 新闻发布网站如果做bt蚂蚁磁力
  • 杭州网站推广优化哪里好网页设计需要学什么
  • 网站怎么做内链外链网站建设的推广渠道
  • 青岛网站建设技术托管网站推广找客户
  • 张家港做网站的公司优化公司哪家好
  • dw做框架网站大数据查询个人信息
  • 哪个淘宝客网站最好宁波seo网站推广软件
  • 彩票网站做任务赚钱线上渠道推广有哪些方式
  • 做网站的公司为什么人少了40个免费靠谱网站
  • 网站开发word百度如何发布信息推广
  • 用asp.net做的网站模板下载百度人工客服电话是多少
  • 怎么做网站建设赚钱品牌策划案
  • 小甲鱼网站开发做网站公司哪家正规
  • 做网站需要注意些什么网站访问量