【问题标题】:RaptorQ FEC Implementation ObstacleRaptorQ FEC 实施障碍
【发布时间】:2011-06-28 10:03:35
【问题描述】:

我正在尝试在 java 中实现 RaptorQ 前向纠错方案,如下所示:

https://datatracker.ietf.org/doc/html/draft-ietf-rmt-bb-fec-raptorq-04#section-5.3.3

问题的核心其实是对矩阵A进行高斯消元以一种聪明的方式来快速。

矩阵 A 由子矩阵组成,其中包括 G_LDPC,1 和 G_LDPC,2。 (用于低密度奇偶校验的生成器矩阵)

在第 22 页的“5.3.3.3. 预编码关系”部分中指出,该矩阵可以从同一页面上的代码 sn-p 推导出来。

我的问题:我无法从截断的代码中推导出这两个子矩阵的结构。

有人知道如何做到这一点,或者结构是什么样的吗?

感谢您的任何帮助!

最大

【问题讨论】:

  • 我相信您无法从 IETF 尤其是 Java 中实现它。通常人们认为这些代码可以通过 IETF 轻松实现,但我向您保证不存在这样的事情。我相信你必须使用 Matlab 来解决这个问题,但在此之前,你需要开始学习多种代码几个月,直到你对 Raptor 代码有正确的认识。

标签: linear-algebra codec forwarderrorcorrection


【解决方案1】:

我也在尝试实现 RaptorQ,但遇到了同样的问题。我的建议是这本书:

Raptor 代码(通信和信息理论中的基础和趋势(R))[平装本] Amin Shokrollahi(作者)、Michael Luby(作者)

在第 3.3.3 节中对构造约束矩阵有更好的解释(我会引用它,但我没有数字)。

@Max 无论如何我们可以聊天,或者您可以分享您的 RFC5053 实现?我真的可以找熟悉这些困难的人交谈并分享一些疑问/想法。

【讨论】:

  • Java 中 RaptorQ (RFC6330) 的实现已完成。这似乎是可能的,但有时真的不得不把我的头撞到墙上。
  • 它是开源的吗?包括我在内的很多人都会对此非常感兴趣。由于您已经用 Java 实现了它,因此可以轻松地将其移植到 Android。
  • @tcboy88 是的,它将在接下来的几个月内开源和公共领域。顺便说一句,你知道那里有任何其他公共领域的实现吗?
  • sazr,你在任何地方发过帖子吗?我对这样的开源项目很感兴趣。
  • @tcboy88,你可以找到项目的网页here。我们有一个文档齐全的 API 恕我直言,但我们仍在努力推出一个 wiki(带有一些代码 sn-ps)。关于 API,您可以使用简单的字节数组方法,进行快速而肮脏的集成;或者您可以使用我们的 NIO 方法,它们将为您提供最佳性能。
【解决方案2】:

在遇到问题后,我决定按照 RFC 5053 实现 Raptor 编解码器,如下所述: https://www.rfc-editor.org/rfc/rfc5053

这实际上是 RaptorQ 的前身版本。 一般的工作原理似乎是一样的,但优化程度较低,因此性能较差,特别是在接收效率方面。 但另一方面,它对我来说不那么复杂而且更直观,因此我能够用 Java 编写一个有效的实现。 毕竟,我不得不承认,我对所创建的编解码器的功能感到非常惊讶!

随着在编码 RFC 5053 实现过程中获得更深入的了解,我现在可能也能够实现 RaptorQ 编解码器了。

【讨论】:

  • 你尝试在matlab中实现raptorQ吗?可以分享一下吗?
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-15
  • 2017-10-01
  • 2015-07-28
  • 2011-10-16
  • 2018-01-16
相关资源
最近更新 更多