Linear algebra RaptorQ FEC实现障碍

Linear algebra RaptorQ FEC实现障碍,linear-algebra,codec,forwarderrorcorrection,Linear Algebra,Codec,Forwarderrorcorrection,我正在尝试用java实现RaptorQ前向纠错方案,如下所述: 问题的核心实际上是以一种智能的方式对矩阵a执行高斯消去以加快速度 矩阵A由子矩阵组成,其中包括G_LDPC,1和G_LDPC,2。 (用于低密度奇偶校验的生成器矩阵) 在第22页的“5.3.3.3.预编码关系”一节中,说明可以从同一页的代码段中删除该矩阵 我的问题是:我无法从截取的代码推导出这两个子矩阵的结构 有人知道怎么做吗,或者结构是什么样子的 谢谢你的帮助 Max在遇到这个问题后,我决定根据RFC 5053实现Raptor编

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

问题的核心实际上是以一种智能的方式对矩阵a执行高斯消去以加快速度

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

在第22页的“5.3.3.3.预编码关系”一节中,说明可以从同一页的代码段中删除该矩阵

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

有人知道怎么做吗,或者结构是什么样子的

谢谢你的帮助


Max

在遇到这个问题后,我决定根据RFC 5053实现Raptor编解码器,如下所述:

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


随着对RFC 5053实现编码过程的深入理解,我现在可能也能够实现RaptorQ编解码器。

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

Raptor代码(通信和信息理论基础和趋势)(R)[平装本] 阿明·肖克罗拉希(作者)、迈克尔·鲁比(作者)

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


@我们可以聊天,或者你可以分享你的RFC5053实现?我真的可以找一个熟悉这些困难的人谈谈,分享一些疑问/想法。

RaptorQ(RFC6330)在Java中的实现完成了。这似乎是可能的,但有时我真的不得不把头撞到墙上。它是开源的吗?包括我在内的许多人都会对它非常感兴趣。因为您已经用Java实现了它,所以它可以很容易地移植到Android。@tcboy88是的,它将在未来几个月内成为开源和公共领域。顺便问一下,你知道还有其他的公共域实现吗?sazr,你在哪里发布过吗?我对这样的开源项目非常感兴趣。@tcboy88,你可以找到该项目的网页。我们有一个文档丰富的API imho,但我们仍在努力开发一个wiki(带有一些代码片段)。在API方面,您可以使用简单的字节数组方法,以实现快速而肮脏的集成;或者您可以使用我们的NIO方法,它将为您提供最佳性能。您是否尝试在matlab中实现raptorQ?你能分享一下吗?我相信你不能从IETF实现它,特别是用Java。通常人们认为这些代码可以很容易地通过IETF实现,但我向你们保证,并没有这样的事情。我相信你必须使用Matlab来克服这个问题,但在此之前,你需要在几个月内开始学习多种代码,直到你对Raptor代码有了正确的认识。