【问题标题】:Which measure indicates a smooth variation of data?哪个度量表明数据的平滑变化?
【发布时间】:2011-05-03 02:06:51
【问题描述】:

我正在尝试根据线条/笔划的粗细来比较文本和非文本区域。使用距离变换和之后的一些摆弄,设法获得了包含图片特征的每个笔划的粗细(实际上是粗细的一半)。

这是一个程序运行的典型结果:

1.文本区域

34444433343554335533553555545544455445533444444344455435553335545556665444445654444444444444444444444444455434554554455444456544444445555445555543355556665544665444535444553354434553444444444444455444445544444454444444444444444444444444455442444444554444444544444444444444554444456444554414454444444444444444444554444445543454445443444544434443344443334442133223332221

  1. 非文字

1111112222212222222213333232111112234444411415445125544126143211123445716422457887433442222991443110103332222113111163124134444312122222222224551313122222222222243455553141432222222232111422222351515513211134161412234411743111111454181813111434555191113145520111322223334554452121204233145433467891011121311732525252524202022213137326252419192112222222335831818204233332222344315625171714334444451111788992225161619334538215151811341234258811414113111223144488242413131711332543444872416135247724113223544356152554433333332666652323151444444336675523151344443335566523881333444552222113344445514141433345555202120141114444444345201433355644454191313322333474351818134322266657342171266672415161131145657419111421316665581447891113151513135555555586745556555588551214145145335557888755141314774333455886555141011111211981417776348524111099814144444556414341181114135447434567845534444334881088891011111213141113477734444379888881414144477437254448998834733764226777753781313577776677654466665753466 712124666645444551124476735456655444432446663254664411476757773464147322222777455332224237738833223378121242311333378583438869913135923222344338101013139943333115533910111111884112155339910101011111111101111111097777778855544553991010111111111111111110999999101111111110777764111113561091097543434552999989998666544436554888778755554455541444465554317777774555555544455556665555564424443356433222345222124422341111312111214411322222223222231221143334424322342222123536411441664431775446548856766655885555664444644665449876444477544227887772

那么,有没有比标准差更复杂的统计方法来表明这两个数据集的差异:一个是逐渐变化的,而第二个是剧烈变化的? (包括可怕的数字来说明我试图量化的内容!)

另外请注意,数据点的数量不会相同,因为我将比较不同的区域与一些实验确定的 SD 阈值(或一些其他度量),而不是它们之间的区域。

【问题讨论】:

  • 您的区域是分开的,有文本内容还是非文本内容,或者您​​是否有要从中提取文本和非文本区域的单个粗细列表?
  • 连通分量分析发现的分离区域,根据统计测量结果分类为文本/非文本。

标签: math image-processing opencv statistics


【解决方案1】:

如果您有兴趣测量平滑度,则文本的相邻厚度之间的差异的标准偏差应该比非文本小得多。

因此您可以简单地转换

34444433343554335533553555545544455445533444444344455435553335545556665444445654444444444444444444444444455434554554455444456544444445555445555543355556665544665444535444553354434553444444444444455444445544444454444444444444444444444444455442444444554444444544444444444444554444456444554414454444444444444444444554444445543454445443444544434443344443334442133223332221

进入

1000(-1)000…

(1 = 4-3、0 = 4-4 等)。对于文本区域,此差异列表的标准偏差很小(在您的示例中,此列表包含许多零)。

如果您需要继续使用 0 到 9 之间的数字来表示厚度 t1 和厚度 t2 之间的厚度差,您可以执行重新缩放:round((t2-t1+9)/2)

【讨论】:

  • 非常感谢。将尝试所有建议,然后决定哪一个效果最好,尽管这看起来更简单。
【解决方案2】:

我想到的想法是,您可以对一个块进行小波变换,然后查看与高频小波相关的平均能量。

如果您不熟悉小波,最简单的描述是Haar wavelet。假设你采样的点数是 2n,你可以计算如下:

  1. 将数据分成点对。
  2. 取差值的 1/2。这就是细节小波的系数。
  3. 取每对的平均值。这会给你 2n-1 分。递归地对它们进行小波变换。

对于 Haar 小波的每一级,取系数平方的平均值。如果您的数据确实与您所描述的一样,那么前几个级别的统计数据将非常不同。实验,确定你的阈值在哪里,你可能会有一个非常可靠的测试。 (我建议您从测试中获得 3 个可能的答案,“Text”、“Not text”、“unclear”。查看“unclear”示例,然后改进您的测试。)

【讨论】:

  • 我正在阅读 Haar 小波。将与其他建议的方法一起尝试此方法,看看哪种方法最合适。
  • 能否请您解释一下 Haar 小波的“级别”是什么意思。是我在第 3 步之后得到的值吗?在下一次递归运行点之前?此外,网络上的大多数资源都按 sqrt(2) 而不是 2 来划分数据点 - 在这个实现中会有什么不同吗?
  • @AruniRC:考虑到我对上一次看到的东西是在 90 年代中期的记忆,请随意使用“网络上的大多数资源”。尽管无论哪种方式它都会对您有用。至于level,你第一次通过2**n分的结果就是第一个detail level。第二遍通过 2**(n-1) 个平均点的结果是第二个细节级别。以此类推。
猜你喜欢
  • 2020-06-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-03-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多