66.利用梯度结构张量对图像进行各向异性分割-OpenCV从零开始到图像识别

本文作者:小嗷

微信公众号:aoxiaoji

链接:https://f600lt.github.io/2018/08/06/xiaoaoderichang/

在本篇中,您将学习:

梯度结构

张量

是什么?

如何用梯度结构张量估计各向异性图像的方向和相干性?

如何用梯度结构张量分割具有单一局部方向的各向异性图像?

本文你会找到以下问题的答案:

梯度结构张量是什么?

2.1 梯度结构张量是什么?

简介:在数学中,梯度结构张量(也称为二阶矩矩阵、二阶矩张量、惯性张量等)是由函数梯度导出的矩阵。它总结了一个点在指定邻域内梯度的主要方向,以及这些方向的相干程度。梯度结构张量在图像处理和计算机视觉中广泛应用于二维/三维图像分割、运动检测、自适应滤波、局部图像特征检测等领域。

各向异性图像的重要特征包括局部各向异性的方向和相干性。本文将介绍如何估计方向和相干性,以及如何用梯度结构张量分割具有单一局部方向的各向异性图像。

图像的梯度结构张量是一个2x2对称矩阵。梯度结构张量的特征向量表示局部方向,而特征值表示相干性(一种各向异性度量)。

一张图像Z的梯度结构张量J可以写成:

在这里

都是结构张量,M[]是数学期望的一个符号(我们可以将此操作视为窗口w中的平均值),Zx和Zy是图像Z对x和y的偏导数。

张量的特征值如下式所示:

在这里λ1 --- 最大特征值,λ2 --- 最小特征值

如何用梯度结构张量估计各向异性图像的方向和相干性?

各向异性图像的方向:

一致性(相干性):

相干性范围从0到1。对于理想的局部定位(λ2= 0, λ1>0)它是1,对于各向同性灰度值结构( λ 1 = λ 2 > 0)它是0

该解释基于

Bernd Jahne。计算机视觉和应用:学生和实践者的指南。2000年。

Bigun. Vision with direction. Springer, 2006.

Lucas J Van Vliet和Piet W Verbeek。数字图像中方向和各向异性的估计量。在ASCI, 95卷,第16-18页,1995。

梯度结构张量有很好的物理解释

杨光忠,Peter Burger, David N Firmin, and SR Underwood。结构自适应各向异性图像滤波。图像与视觉计算,14(2):135-145,1996。

另外,小伙伴也可以参考维基百科的结构张量。

https://en.wikipedia.org/wiki/Structure_tensor

所有使用到API都在前面60章写过,如果忘了可以查查小嗷的文章

https://f600lt.github.io/2018/08/06/xiaoaoderichang/

本篇文章的代码如下所示。

下面是单方向各向异性的真实图像::

单向各向异性图像

下面你可以看到各向异性图像的方向和相干性:

定位

相干性

下面你可以看到分割效果图:

分割结果

计算结果w = 52, C_Thr = 0.43, LowThr = 35, HighThr = 57。我们可以看到算法只选择了一个方向的区域。

解释一下:

各向异性图像分割算法由梯度结构张量计算、方向计算、相干计算和方向与相干阈值组成:

函数calcGST()使用梯度结构张量计算方向和相干性。输入参数w定义窗口大小:

下面的代码将阈值LowThr和HighThr应用于图像方向,将阈值C_Thr应用于由前一个函数计算的图像相干性。低thr和高thr定义方向范围:

最后结合阈值化结果:

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181128G01ID300?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券