高斯

在OpenCV里生成图像金字塔

匆匆过客 提交于 2019-12-06 17:39:30
今天介绍图像处理邻域中比较常用的一种方法,image pyramid, 也叫图像金字塔。就是将图像进行一层一层的下采样,图像金字塔是为了构建图像的多尺度,让模型能够更好的适应图像的尺度变化,图像金字塔可以广泛应用于图像识别,目标检测,还有光流配准,块匹配都能看到它的身影。图像金字塔主要有两种,一种是高斯金字塔,gaussian pyramid,另外一种是拉普拉斯金字塔,Laplacian Pyramids。 图像金字塔是一种以多分辨率来解释图像的结构,通过对原始图像进行多尺度像素采样的方式,生成N个不同分辨率的图像。把具有最高级别分辨率的图像放在底部,以金字塔形状排列,往上是一系列像素(尺寸)逐渐降低的图像,一直到金字塔的顶部只包含一个像素点的图像,这就构成了传统意义上的图像金字塔。 获得图像金字塔一般包括二个步骤: 1. 利用低通滤波器平滑图像 2. 对平滑图像进行抽样(采样) 有两种采样方式——上采样(分辨率逐级升高)和下采样(分辨率逐级降低) 在OpenCV定义这两个函数: 这个函数主要采用下面高斯平滑算子: 这个函数实现向下高斯平滑和采样,另外一个函数cv.pyrUp向上高斯平滑和采样。可以采用下面的例子来演示: #python 3.7.4,opencv4.1 #蔡军生 https://blog.csdn.net/caimouse/article/details

R || 高斯混合模型GMM

好久不见. 提交于 2019-12-06 01:51:08
GMM模型的R实现 预备知识: EM算法原理 GMM算法原理 友情提示:本代码配合GMM算法原理中的步骤阅读更佳哦! 本文分为一元高斯分布的EM算法以及多元高斯分布的EM算法,分别采用两本书上的数据《统计学习方法》和《机器学习》。 一元高斯混合模型 步骤: 1、设置模型参数的初始值,以及给出测试的数据 data <- c(- 67 ,- 48 , 6 , 8 , 14 , 16 , 23 , 24 , 28 , 29 , 41 , 49 , 56 , 60 , 75 ) a = c( 0.5 , 0.5 ) #系数 u = c( 0 , 1 ) #初始均值 sigma2 =c( 9 , 9 ) #初始方差 data数据来自《统计机器学习》 2:E步 迭代计算gamma值,也就是响应度 首先利用 dnorm() 计算高斯公式的密度值, sapply() 来向量化带入函数计算 p <- t(sapply( data ,dnorm,u,sigma)) amatrix <- matrix(rep(a, N ),nrow= N ,byrow = T ) #便于计算 r = (p * amatrix) / rowSums(p * amatrix) #r(gamma):分模型k对观测数据data的响应度 M步 迭代更新均值、方差和模型系数 u <- colSums( data *r)

用EM算法求解高斯混合模型

喜夏-厌秋 提交于 2019-12-06 01:45:48
本文从高斯混合模型出发,引出EM算法,最后回归到利用EM算法求解高斯混合模型。理论部分力求详尽不留证明疑点,所以略显冗长。实验部分给出了生成高斯混合分布样本和利用EM算法求解高斯混合模型的matlab代码。 理论部分 高斯混合模型(GMM) 顾名思义,高斯混合模型就是由多个高斯分布混合构成的模型。 K K K 高斯混合分布的概率密度为: p ( x ) = ∑ k = 1 K ϕ k N ( x ∣ μ k , Σ k ) . p(\mathbf{x})=\sum_{k=1}^K \phi_k\mathcal{N}(\mathbf{x}|\boldsymbol{\mu}_k,\boldsymbol{\Sigma}_k). p ( x ) = k = 1 ∑ K ​ ϕ k ​ N ( x ∣ μ k ​ , Σ k ​ ) . 这里, ∑ k = 1 K ϕ k = 1 \sum_{k=1}^{K}\phi_k=1 ∑ k = 1 K ​ ϕ k ​ = 1 为混合系数, N ( x ∣ μ , Σ ) = 1 ( 2 π ) D / 2 1 ∣ Σ ∣ 1 / 2 exp ⁡ { − 1 2 ( x − μ ) T Σ − 1 ( x − μ ) } \mathcal{N}(\mathbf{x}|\boldsymbol{\mu},\boldsymbol{\Sigma})=

python3 || 高斯混合模型GMM

坚强是说给别人听的谎言 提交于 2019-12-06 01:42:36
GMM模型的python实现 预备知识: EM算法原理 GMM算法原理 友情提示:本代码配合GMM算法原理中的步骤阅读更佳哦! 本文分为一元高斯分布的EM算法以及多元高斯分布的EM算法,分别采用两本书上的数据《统计学习方法》和《机器学习》。 一元高斯混合模型 python未完成,可以看R实现的。 R || 高斯混合模型GMM 多元高斯混合模型 多元高斯混合模型采用的是《机器学习》中的西瓜数据集。 多元高斯分布中的密度值python中没有直接函数,需要自己编写 import numpy as np # 高斯分布的概率密度函数 def dnorm (x,u,sigma2) : """ x:样本 u:均值 sigma2:方差或协差阵 """ if not isinstance(sigma2,np.matrix): sigma2 = np.mat(sigma2) if not isinstance(x,np.matrix): x=np.mat(x) n = np.shape(x)[ 1 ] expOn = float(- 0.5 * (x-u) * sigma2.I * (x-u).T) #python中一维矩阵默认为行向量,所以和书上公式有差异 divBy = np.sqrt(pow( 2 *np.pi,n)) * pow(np.linalg.det(sigma2), 0.5 )

高斯分布的采样

强颜欢笑 提交于 2019-12-05 11:33:17
高斯分布的采样 任意高斯分布都可以由正态分布通过拉伸和平移得到,所以这里只考虑标准正态分布 逆变换法 产生 \([0, 1]\) 上的均匀分布随机数 \(\mu\) 令 \(z = \sqrt{2} erf^{-1}(2\mu - 1)\) ,则 \(z\) 服从标准正态分布。其中erf是高斯误差函数,它是标准正态分布的累积分布函数经过简单平移和拉升变换后的形式,定义如下 \[erf(x) = \frac{2}{\sqrt{\pi}} \int_0^x e^{-t^2}dt\] erf的逆函数不好求解 Box-Muller算法 考虑两个独立的高斯分布的联合分布 假设 \(x,y\) 是两个服从标准正态分布的独立随机变量 具体采样过程如下: 产生 \([0, 1]\) 上的两个独立的均匀分布随机数 \(\mu_1, \mu_2\) 令 \(\begin{cases} x = \sqrt{-2\ln(\mu_1)}\cos2\pi \mu_2 \\ y = \sqrt{-2\ln(\mu_1)}\sin2\pi \mu_2 \end{cases}\) ,则 \(x,y\) 服从标准正态分布,并且是相互独立的 需要计算三角函数,比较耗时 Marsaglia polar method 在单位圆盘上产生均匀分布随机数对 \((x,y)\) 令 \(s = x^2 + y^2\) ,则 \(x

高斯混合模型

走远了吗. 提交于 2019-12-05 11:26:50
假设每个簇的数据都符合高斯分布,当前数据呈现的分布就是各个簇的高斯分布叠加在一起的结果 用多个高斯分布函数的线性组合来对数据分布进行拟合 生成式模型 核心思想 每个单独的分模型都是标准高斯模型,其均值 \(\mu_i\) 和方差 \(\sum_i\) 是待估计的参数。此外,每个分模型还有一个权重参数 \(\pi_i\) 。公式为: \[p(x) = \sum \limits_{i=1}{K} \pi_i N(x|\mu_i, \sum_i)\] 生成过程:先选择一个高斯分布,再生成一个样本点 求解方法 EM算法 与K均值比较 相同点 需要指定K值 EM算法求解 局部最优 不同点 可以给出属于某类的概率 概率密度的估计 生成新的样本点 来源: https://www.cnblogs.com/weilonghu/p/11922376.html

EM 算法(三)-GMM

人走茶凉 提交于 2019-12-04 21:01:18
高斯混合模型 混合模型,顾名思义就是几个概率分布密度混合在一起,而高斯混合模型是最常见的混合模型; GMM,全称 Gaussian Mixture Model,中文名高斯混合模型,也就是由多个高斯分布混合起来的模型; 概率密度函数为 K 表示高斯分布的个数,α k 表示每个高斯分布的系数,α k >0,并且 Σα k =1, Ø(y|θ k ) 表示每个高斯分布,θ k 表示每个高斯分布的参数,θ k =(u k ,σ k 2 ); 举个例子 男人和女人的身高都服从各自的高斯分布,把男人女人混在一起,那他们的身高就服从高斯混合分布; 高斯混合模型就是用混合在一起的身高数据,估计男人和女人各自的高斯分布 小结 GMM 实际上分为两步,第一步是选择一个高斯分布,如男人数据集,这里涉及取到某个分布的概率,α k , 然后从该分布中取一个样本,等同于普通高斯分布 GMM 常用于聚类,也就是把每个概率密度分布聚为一类;如果概率密度分布为已知,那就变成参数估计问题 EM 解释 GMM EM 的核心是 隐变量 和 似然函数 求导结果如下 GMM 的 EM 算法 算法流程 参考资料: https://blog.csdn.net/jinping_shi/article/details/59613054 《统计学习方法》李航 来源: https://www.cnblogs.com/yanshw/p

使用高斯混合模型建立更精确的聚类

笑着哭i 提交于 2019-12-04 16:19:30
介绍 我很喜欢研究无监督学习问题。它们为监督学习问题提供了一个完全不同的挑战,用我拥有的数据进行实验的发挥空间要比监督学习大得多。毫无疑问,机器学习领域的大多数发展和突破都发生在无监督学习领域。 无监督学习中最流行的技术之一就是聚类。这是一个我们通常在机器学习的早期学习的概念,它很容易理解。我相信你曾经遇到过,甚至参与过顾客细分、购物篮分析等项目。 但问题是聚类有很多方面。它并不局限于我们之前学过的基本算法。它是一种强大的无监督学习技术,我们可以在现实世界中准确地使用它。 > 高斯混合模型就是我想在本文中讨论的一种聚类算法。 想预测一下你最喜欢的产品的销售情况吗?或许你想通过不同客户群体的视角来理解客户流失。无论用什么方法,你都会发现高斯混合模型非常有用。 在本文中,我们将采用自下而上的方法。因此,我们首先来看一下聚类的基础知识,包括快速回顾一下k-means算法。然后,我们将深入讨论高斯混合模型的概念,并在Python中实现它们。 目录 聚类简介 k-means聚类简介 k-means聚类的缺点 介绍高斯混合模型 高斯分布 期望最大化EM算法 高斯混合模型的期望最大化 在Python中实现用于聚类的高斯混合模型 聚类简介 在我们开始讨论高斯混合模型的实质内容之前,让我们快速更新一些基本概念。 注意:如果你已经熟悉了聚类背后的思想以及k-means聚类算法的工作原理

几何-正十七边形:百科

筅森魡賤 提交于 2019-12-04 09:25:41
ylbtech-几何-正十七边形:百科 正十七边形是指几何学中 有17条边及17只角的 正多边形 。正十七边形的每个内角约为158.823529411765°,其 内角 和为2700°,有119条对角线。最早发现其形状可用尺规作图法作出的是 高斯 。 1. 返回顶部 1、 正十七边形是指几何学中有17条边及17只角的 正多边形 。正十七边形的每个内角约为158.823529411765°,其 内角 和为2700°,有119条对角线。最早发现其形状可用尺规作图法作出的是 高斯 。 中文名:正十七边形 外文名:Heptadecagon 类 别:形状的一种 适用范围:几何学 对角线:119条 内角和:2700° 目录 1 起源 2 作法 3 简易作法 起源 最早的十七边形 画法 创造人是高斯【1801年数学家高斯证明:如果费马数k为质数,那么就可以用直尺和圆规将圆周k等分。但是,高斯本人并没有用尺规做出正十七边形,事实上,完成证明之后正十七边形的做法对数学研究者是显而易见的。第一个真正的正十七边形 尺规作图 法是在1825年由约翰尼斯·厄钦格(Johannes Erchinger)给出.】。 高斯(1777─1855年)德国数学家、物理学家和天文学家。 高斯在童年时代就表现出非凡的数学天才 。 年仅三岁,就学会了算术,八岁因运用 等差数列求和公式 而深得老师和同学的钦佩

OpenCv 026---高斯双边滤波

霸气de小男生 提交于 2019-12-04 07:58:03
1 前备知识 此前的图像卷积处理无论是均值还是高斯都是属于模糊卷积,它们都有一个共同的特点就是模糊之后图像的边缘信息不复存在或者受到了破坏。而高斯双边滤波可以通过卷积处理实现图像模糊的同时减少图像边缘破坏,滤波之后的输出完整的保存了图像整体边缘(轮廓)信息,我们称这类滤波算法为边缘保留滤波算法(EPF)。最常见的边缘保留滤波算法有以下几种: - 高斯双边模糊:高斯模糊是考虑图像空间位置对权重的影响,但是它没有考虑图像像素分布对图像卷积输出的影响,双边模糊考虑了像素值分布的影响,对像素值空间分布差异较大的进行保留从而完整的保留了图像的边缘信息。 - Meanshift均值迁移模糊:TODO - 局部均方差模糊:TODO - OpenCV中对边缘保留滤波还有一个专门的API:下文 2 所用到的主要OpenCv API /** @brief Applies the bilateral filter to an image. The function applies bilateral filtering to the input image, as described in http://www.dai.ed.ac.uk/CVonline/LOCAL_COPIES/MANDUCHI1/Bilateral_Filtering.html bilateralFilter can reduce