Overview

欢迎访问 https://cgabc.xyz/posts/d030e8d5/,持续更新

我们可以将一幅数字图像视为一个 二维函数I(x,y)I(x,y)I(x,y) ,其中x和y是空间坐标,在x-y平面中的任意空间坐标 (x,y)(x,y)(x,y) 上的 幅值 IxyI_{xy}Ixy​ 称为该点 图像的灰度、亮度或强度

Ix,y=I(x,y)I_{x,y} = I(x,y) Ix,y​=I(x,y)

下面以 IxyI_{xy}Ixy​ 作为随机变量,分析二维数字图像的 统计特征。

数学期望

数学期望(Expectation) 就是随机变量 以概率为权数的加权平均值,以 级数 的形式表示为

E(X)=∑k=1∞xkpkE(X) = \sum_{k=1}^{\infty} x_k p_k E(X)=k=1∑∞​xk​pk​

一幅数字图像的数学期望为其 灰度平均值,即所有像元灰度值的算数平均值

Iˉ=1M⋅N∑x=1M∑y=1NI(x,y)\bar{I} = \frac{1}{M \cdot N} \sum_{x=1}^{M} \sum_{y=1}^{N} I(x,y) Iˉ=M⋅N1​x=1∑M​y=1∑N​I(x,y)

方差

方差(variance) 是对随机变量离散程度的度量。

D(x)=E[X−E(X)]2=E(X2)−[E(X)]2D(x) = E[X-E(X)]^2 = E(X^2) - [E(X)]^2 D(x)=E[X−E(X)]2=E(X2)−[E(X)]2

称 D(X)\sqrt{D(X)}D(X)​ 为随机变量的 标准差(standard deviation),或 均方差(mean square deviation),记为 σ(X)\sigma(X)σ(X)

二维数字图像的 灰度方差 反应的是图像中各个像素的灰度值与整个图像平均灰度值的离散程度,与图像的 对比度 有关。如果图片对比度小,那方差就小;如果图片对比度很大,那方差就大。

var(I)=1M⋅N∑x=1M∑y=1N[I(x,y)−Iˉ]var(I) = \frac{1}{M \cdot N} \sum_{x=1}^{M} \sum_{y=1}^{N} \left[ I(x,y) - \bar{I} \right] var(I)=M⋅N1​x=1∑M​y=1∑N​[I(x,y)−Iˉ]

协方差(矩阵)与相关系数

随机变量X、Y的 协方差(covariance)

cov(X,Y)=E{[X−E(X)][Y−E(Y)]}=E[XY]−E(X)E(Y)=∑i∑j[xi−E(X)][yj−E(Y)]pij\begin{aligned} cov(X,Y) &= E \{ [X-E(X)][Y-E(Y)] \} = E[XY] - E(X)E(Y) \\ &= \sum_{i} \sum_{j} [x_i-E(X)] [y_j-E(Y)] p_{ij} \end{aligned} cov(X,Y)​=E{[X−E(X)][Y−E(Y)]}=E[XY]−E(X)E(Y)=i∑​j∑​[xi​−E(X)][yj​−E(Y)]pij​​

协方差矩阵 可表示为

Σ=[σ11σ12…σ1nσ21σ22…σ2n⋮⋮⋱⋮σn1σn2…σnn]\Sigma = \begin{bmatrix} \sigma_{11} & \sigma_{12} & \ldots & \sigma_{1n} \\ \sigma_{21} & \sigma_{22} & \ldots & \sigma_{2n} \\ \vdots & \vdots & \ddots & \vdots \\ \sigma_{n1} & \sigma_{n2} & \ldots & \sigma_{nn} \\ \end{bmatrix} Σ=⎣⎡​σ11​σ21​⋮σn1​​σ12​σ22​⋮σn2​​……⋱…​σ1n​σ2n​⋮σnn​​⎦⎤​

其中,σij=cov(Xi,Xj)\sigma_{ij} = cov(X_i, X_j)σij​=cov(Xi​,Xj​)

随机变量X、Y的 相关系数(correlation coefficient)标准协方差(standard covariance)

ρXY=cov(X,Y)D(X)D(Y)\rho_{XY} = \frac{ cov(X,Y) }{ \sqrt{D(X)} \sqrt{D(Y)} } ρXY​=D(X)​D(Y)​cov(X,Y)​

数字图像 IAI_AIA​ 和 IBI_BIB​ 的协方差为

cov(IA,IB)=1M⋅N∑x=1M∑y=1N[IA(x,y)−IAˉ][IB(x,y)−IBˉ]cov(I_A, I_B) = \frac{1}{M \cdot N} \sum_{x=1}^{M} \sum_{y=1}^{N} [ I_A(x,y) - \bar{I_A} ] [ I_B(x,y) - \bar{I_B} ] cov(IA​,IB​)=M⋅N1​x=1∑M​y=1∑N​[IA​(x,y)−IA​ˉ​][IB​(x,y)−IB​ˉ​]

图像的相关系数表征的是两个不同波段图像的所含信息的重叠程度,相关系数越大,重叠度越高,反之越低。

ρIAIB=∑x=1M∑y=1N[IxyA−IAˉ][IxyB−IBˉ](∑x=1M∑y=1N[IxyA−IAˉ])1/2(∑x=1M∑y=1N[IxyB−IAˉ])1/2\rho_{I_A I_B} = \frac {\sum_{x=1}^{M} \sum_{y=1}^{N} [ I^A_{xy} - \bar{I_A} ] [ I^B_{xy} - \bar{I_B} ]} { \bigg(\sum_{x=1}^{M} \sum_{y=1}^{N} [ I^A_{xy} - \bar{I_A} ]\bigg)^{1/2} \bigg(\sum_{x=1}^{M} \sum_{y=1}^{N} [ I^B_{xy} - \bar{I_A} ]\bigg)^{1/2} } ρIA​IB​​=(∑x=1M​∑y=1N​[IxyA​−IA​ˉ​])1/2(∑x=1M​∑y=1N​[IxyB​−IA​ˉ​])1/2∑x=1M​∑y=1N​[IxyA​−IA​ˉ​][IxyB​−IB​ˉ​]​

下面计算 lena图像 灰度图高斯模糊图 的相关系数

img = Image.open('lena.bmp').convert('L')
im = np.asarray(img)
im_blur = ndimage.gaussian_filter(im, 4)
a = np.corrcoef(im.flatten(), im_blur.flatten())
print a

计算得到其相关系数为 0.95346

  • XXX 的 kkk阶原点矩,简称 kkk阶矩: E[Xk]E[X^k]E[Xk]

  • XXX 的 kkk阶中心矩: E[X−E(X)]kE[X-E(X)]^kE[X−E(X)]k

  • XXX 和 YYY 的 k+lk+lk+l阶混合矩: E[XkYl]E [ X^k Y^l ]E[XkYl]

  • XXX 和 YYY 的 k+lk+lk+l阶混合中心矩: E{[X−E(X)]k[Y−E(Y)]l}E \{ [X-E(X)]^k [Y-E(Y)]^l \}E{[X−E(X)]k[Y−E(Y)]l}

显然,XXX 的数学期望 E(X)E(X)E(X) 是 XXX 的一阶原点矩,方差 D(X)D(X)D(X) 是 XXX的二阶中心矩,协方差 cov(X,Y)cov(X,Y)cov(X,Y) 是 XXX 和 YYY 的 1+1阶混合中心矩

图像矩

图像的矩(Image Moments)主要表征了图像区域的几何特征,又称为 几何矩

Raw Moments

二维灰度图像 III 的矩定义为

Mpq=∑x∑yxpyqI(x,y),p,q∈{0,1,2,…}M_{pq} = \sum_{x} \sum_{y} x^p y^q I(x,y), \quad p,q \in \{ 0,1,2, \ldots \} Mpq​=x∑​y∑​xpyqI(x,y),p,q∈{0,1,2,…}

零阶矩

M00=∑x∑yI(x,y)M_{00} = \sum_{x} \sum_{y} I(x,y) M00​=x∑​y∑​I(x,y)

  • 当图像为二值图时,M00M_{00}M00​ 就是这个图像上白色区域的总和;因此,M00M_{00}M00​ 可以用来求二值图像(轮廓、连通域)的面积

一阶矩

M10=∑x∑yx⋅I(x,y)M_{10} = \sum_{x} \sum_{y} x \cdot I(x,y) M10​=x∑​y∑​x⋅I(x,y)

M01=∑x∑yy⋅I(x,y)M_{01} = \sum_{x} \sum_{y} y \cdot I(x,y) M01​=x∑​y∑​y⋅I(x,y)

  • 当图像为二值图时,III 只有 0 和 1 两个值,M10M_{10}M10​ 就是图像上所有白色区域 x坐标值 的累加
  • 一阶矩可以用来求图像的 质心(Centroid),这种方法对噪声不太敏感:

(xc,yc)=(M10M00,M01M00)(x_c, y_c) = \bigg( \frac{M_{10}}{M_{00}}, \frac{M_{01}}{M_{00}} \bigg) (xc​,yc​)=(M00​M10​​,M00​M01​​)

  • 一阶矩还可以用来求 图像块几何中心的方向,即几何中心 OOO 与 质心 CCC 连接的 方向向量OC⃗\vec{OC}OC 的方向(计算中 x,yx,yx,y 均以几何中心 OOO 为原点):

θ=arctan(M01M10)\theta = arctan( \frac{M_{01}}{M_{10}} ) θ=arctan(M10​M01​​)

通过 取以关键点kp为几何中心的图像块 计算其 一阶矩 进而计算 该点方向,示例代码如下:

int m01 = 0;
int m10 = 0;
for(int y=-half_patch_size; y<half_patch_size; ++y){for(int x=-half_patch_size; x<half_patch_size; ++x){m01 += y * image.at<uchar>(kp.pt.y+y, kp.pt.x+x);m10 += x * image.at<uchar>(kp.pt.y+y, kp.pt.x+x);}
}
kp.angle = std::atan2(m01, m10)/CV_PI*180.0;

二阶矩

M20=∑x∑yx2⋅I(x,y)M_{20} = \sum_{x} \sum_{y} x^2 \cdot I(x,y) M20​=x∑​y∑​x2⋅I(x,y)

M02=∑x∑yy2⋅I(x,y)M_{02} = \sum_{x} \sum_{y} y^2 \cdot I(x,y) M02​=x∑​y∑​y2⋅I(x,y)

M11=∑x∑yx⋅y⋅I(x,y)M_{11} = \sum_{x} \sum_{y} x \cdot y \cdot I(x,y) M11​=x∑​y∑​x⋅y⋅I(x,y)

Central Moments

μpq=∑x∑y(x−xc)p(y−yc)qI(x,y),p,q∈{0,1,2,…}\mu_{pq} = \sum_{x} \sum_{y} (x-x_c)^p (y-y_c)^q I(x,y), \quad p,q \in \{ 0,1,2, \ldots \} μpq​=x∑​y∑​(x−xc​)p(y−yc​)qI(x,y),p,q∈{0,1,2,…}

利用二阶中心矩可以求图像的方向,图像的 协方差矩阵

cov[I(x,y)]=[μ20′μ11′μ11′μ02′]cov[I(x,y)] = \begin{bmatrix} \mu_{20}' & \mu_{11}' \\ \mu_{11}' & \mu_{02}' \end{bmatrix} cov[I(x,y)]=[μ20′​μ11′​​μ11′​μ02′​​]

求得图像方向为

θ=12arctan(2μ11′μ20′−μ02′)\theta = \frac{1}{2} arctan(\frac{2\mu_{11}'}{\mu_{20}'-\mu_{02}'}) θ=21​arctan(μ20′​−μ02′​2μ11′​​)

其中

μ20′=μ20μ00=M20M00−xc2\mu_{20}' = \frac{\mu_{20}}{\mu_{00}} = \frac{M_{20}}{M_{00}} - x_c^2 μ20′​=μ00​μ20​​=M00​M20​​−xc2​

μ02′=μ02μ00=M02M00−yc2\mu_{02}' = \frac{\mu_{02}}{\mu_{00}} = \frac{M_{02}}{M_{00}} - y_c^2 μ02′​=μ00​μ02​​=M00​M02​​−yc2​

μ11′=μ11μ00=M11M00−xcyc\mu_{11}' = \frac{\mu_{11}}{\mu_{00}} = \frac{M_{11}}{M_{00}} - x_c y_c μ11′​=μ00​μ11​​=M00​M11​​−xc​yc​

参考资料

  • 《概率论与数理统计》
  • Image moment (wikipedia)
  • ORB: an efficient alternative to SIFT or SURF

图像空间域分析之图像统计特征相关推荐

  1. 机械故障诊断信号幅域分析- 时域统计特征 | 基于python代码实现,在CWRU和IMF轴承数据集上实战

    最详细的机械故障信号时域特征分析及实战 1.摘要 2.有量纲幅域参数计算公式及物理意义 3.无量纲幅域参数计算公式及物理意义 4.模拟数据代码实战 4.1 导入包 4.2 生成模拟正弦数据 4.3 绘 ...

  2. 图像频率域分析之傅里叶变换

    Overview 欢迎访问 持续更新:https://cgabc.xyz/posts/bcb5a7d3/ 傅里叶变换基础 傅里叶级数 法国数学家傅里叶发现,任何周期函数都可以用正弦函数和余弦函数构成的 ...

  3. python统计图片的纹理信息_python实现LBP方法提取图像纹理特征实现分类

    题目描述 这篇博文是数字图像处理的大作业. 题目描述:给定40张不同风格的纹理图片,大小为512*512,要求将每张图片分为大小相同的9块,利用其中的5块作为训练集,剩余的4块作为测试集,构建适当的模 ...

  4. OpenCV:使用OpenCV3随机森林进行统计特征多类分析

    原文链接:在opencv3中的机器学习算法练习:对OCR进行分类 本文贴出的代码为自己的训练集所用,作为参考.可运行demo程序请拜访原作者. CNN作为图像识别和检测器,在分析物体结构分布的多类识别 ...

  5. matlab程序图像灰度差分,纹理特征描述之灰度差分统计特征(平均值 对比度 熵) 计算和比较两幅纹理图像的灰度差分统计特征 matlab代码实现...

    灰度差分统计特征有: 平均值: ​ 对比度: ​ 熵: ​ i表示某一灰度值,p(i)表示图像取这一灰度值的概率 close all;clear all;clc; % 纹理图像的灰度差分统计特征 J ...

  6. 【阅读论文】基于统计特征的无监督时间序列异常检测方法

    文章目录 摘要 1.介绍 2.相关工作 3.问题描述 4.方法 4.1 统计特征 4.2提取特征总结 4.3 学习阶段算法 4.4测试阶段算法 5.结果 5.1 YOB评价:单变量 5.3对合成数据集 ...

  7. Gabor滤波进行目标图像纹理特征的提取

    1.傅里叶变换 1) 简介 数字图像处理的方法主要分成两大部分:空域分析法和频域分析法.空域分析法就是对图像矩阵进行处理:频域分析法是通过图像变换将图像从空域变换到频域,从另外一个角度来分析图像的特征 ...

  8. MATLAB2016笔记(九):概率统计( 概率密度、统计作图、统计特征、累积概率分布、随机变量产生)

    文章目录 一.产生随机变量 (一)二项分布随机数据的产生 binornd (二)正态分布随机数据的产生 normrnd (三)常见分布随机数据的产生 二.概率密度计算 (一)通用函数概率密度值 pdf ...

  9. 图像基本特征-颜色 纹理 形状

    转载 1 颜色特征 计算机视觉的特征提取算法研究至关重要.在一些算法中,一个高复杂度特征的提取可能能够解决问题(进行目标检测等目的),但这将以处理更多数据,需要更高的处理效果为代价.而颜色特征无需进行 ...

  10. 三种栅格分析方法的区别:邻域分析、局域分析和分区运算

    我们都知道遥感图像的每个波段,其实质就是一个二维矩阵,每个栅格都是一个数值,即DN(Digital Number)值.在栅格数据分析中,使用最多的无疑是邻域分析.局域分析和分区运算了,其中局域运算又分 ...

最新文章

  1. 《C#精彩实例教程》小组阅读09 -- C#数组与集合
  2. Web压力测试系统 nGrinder
  3. mysql5_pn卸载_windows mySql(5.7.30) 卸载及重装
  4. Spring(二)IOC底层实现原理
  5. delphi 手机访问lan_索尼全新“黑科技”,手机秒变PS4,Apex英雄彻底沦为手游?...
  6. css 实现标签切换,CSS_纯CSS实现Tab切换标签效果代码,本文实例讲述了纯CSS实现Tab切 - phpStudy...
  7. ubuntu编译ubus及相关依赖库
  8. 重复类发展手法_正确的护肤手法(动态演示),喜欢就拿去收藏吧!
  9. css3 呼吸的莲花_CSS3制作莲花盛开动画
  10. 只能建立两个虚拟服务器,创建两个虚拟主机
  11. 关于内存的最后一个难点--the paged and the non-paged pool
  12. 哈工大刘铭:开放式知识图谱的自动构建技术
  13. 【Flutter】IOS打包
  14. 自豪地采用WordPress,如何删除链接?
  15. 通过SQL语句建立数据库. 表
  16. zzuli OJ 1047: 对数表
  17. ide中tomcat乱码_彻底解决Intellij IDEA中文乱码问题(亲测成功)
  18. 脚踏实地小组的抓包实验
  19. java中通物流api详解
  20. JAVA基础-50道编程题

热门文章

  1. HTML超链接基本属性
  2. what is the different between Grammar and syntax
  3. SQL Server 数据库之数据完整性
  4. 面板数据分析步骤及流程-R语言
  5. Invisible Backdoor Attack with Sample-Specific Triggers 论文笔记
  6. 由于系统错误 1114:动态连接库(DLL)初始化例程失败。(MySQL ODBC 5.3 Unicode Driver,c:\Program Files(x86)\MySQL\Connector
  7. bzoj4134 ljw和lzr的hack比赛 trie树合并
  8. 大话设计模式之爱你一万年:第三章 创建型模式:工厂模式:我想让你坐在宝马里笑:4.工厂模式之工厂方法模式
  9. 使用Java分割大文件
  10. NC工具的使用说明教程