【问题标题】:Error correction with small data小数据纠错
【发布时间】:2014-08-11 04:08:47
【问题描述】:

我正在阅读一些嘈杂的图像,并从中获取一些位(21 位)。

我只需要使用其中的 15 个,剩下的 21 - 15 = 6 位可以使用。

我打算将它用于校验和和纠错,但是,我开始挖掘网络,发现Reed-Solomon 是最常用的(或不是?)。

我的问题是:由于我正在处理少量数据,是否有一个好的算法可以使用,这样它的处理成本就不会(那么)昂贵,并且可以用作校验和和纠错? (它将与 Node.js 一起运行)

谢谢,

伊万

【问题讨论】:

  • 您可以在 Node.js 中使用reed-solomon 进行纠错。不过,您需要自己处理校验和。

标签: javascript node.js algorithm checksum reed-solomon


【解决方案1】:

有好消息也有坏消息。

好消息是,Reed-Solomon 等方案中的大部分复杂性都是为了支持您不需要的巧妙解码方法。只需 5 个校验位,http://en.wikipedia.org/wiki/Decoding_methods#Syndrome_decoding 就可以完美运行。本质上,您从数据位重新计算校验位,并与您收到的校验位进行异或。这为您提供了一个位模式,如果没有错误,则该位模式为零,否则仅取决于错误的模式而不是数据位。通过考虑您要对准备处理的所有错误模式做什么(例如,对于小 k 的所有错误模式,最多 k 个错误),您可以构建一个查找表,将您从位模式转换为位图错误位置。

坏消息是这些方案是为了支持大型线性代码而开发的,因为更大的代码效率更高。仅使用 21 位就不会那么好。

有 15 个数据位和 21 个总位,我将从 http://en.wikipedia.org/wiki/Hamming_code 中描述的汉明码开始,它有 15 个数据位和 21 个总位,并在额外的 21 日对 15 个数据位进行任意线性检查少量。您可以使用综合症解码对其进行解码。

【讨论】:

    猜你喜欢
    • 2014-11-09
    • 1970-01-01
    • 2012-10-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多