一种编译码方法、通信装置以及系统与流程

文档序号:32208140发布日期:2022-11-16 05:16阅读:23来源:国知局
一种编译码方法、通信装置以及系统与流程

1.本技术涉及通信技术领域,尤其涉及一种编译码方法、通信装置以及系统。


背景技术:

2.目前,在数据传输过程中通常采用两步骤的编码方案。即,首先利用信源编码算法对待传输数据进行压缩,以去除待传输数据的内在冗余,减少需要传输的信息量;然后利用纠错码对压缩后的比特流进行编码,该纠错码用以增强数据在信道中传输时抵御干扰的能力,如图1所示。编码装置对原始数据进行编码得到编码数据,该编码数据中包括原始数据的完整信息,译码装置需要完整的接收该编码数据,才能译码得到原始数据的完整信息,这就要求承载编码数据所需的带宽资源小于或等于编码装置与译码装置之间的带宽资源。
3.编码装置可以将编码数据发送给一个或多个译码装置。当译码装置的数量为多个时,每个译码装置配置的带宽资源可能不一样,这就可能出现承载编码数据所需的带宽资源大于一个或多个译码装置配置的带宽资源,导致该一个或多个译码装置无法接收该编码数据,也就不能获取原始数据的完整信息。因此,如何实现编码数据的带宽自适应是需要解决的问题。


技术实现要素:

4.本技术的目的在于提供了一种编译码方法、通信装置以及系统,该方法用以实现编码数据的带宽自适应。
5.第一方面,本技术提供一种编码方法,该方法可以由编码装置执行,或者由编码装置中的部件(如芯片或芯片系统等)执行。在该方法中,编码装置可以通过编码模型对第一数据进行编码,得到n份编码数据,编码模型的输出层包括n个节点,其中每个节点输出一份编码数据,n为大于2的整数;对n份编码数据进行去相关,得到n份去相关的编码数据,其中,n份去相关的编码数据中的部分或全部用于确定第二数据,第二数据用于恢复第三数据,第三数据为第一数据,或者与第一数据的近似度大于设定阈值;以及发送n份去相关的编码数据。
6.传输每份编码数据需要带宽资源,通常传输的编码数据的份数越多,或者传输的编码数据的数据量越大,译码装置可使用的带宽资源就需要越多,但往往译码装置的带宽资源是预先配置好的(如运营商预先配置的)或者当前空闲的带宽资源不足时,译码装置不能接收全部的编码数据,导致译码装置数据接收失败。在本技术的上述实施例中,编码装置对n份编码数据进行去相关,得到n份去相关的编码数据,该n份去相关的编码数据间相互独立、不相关,也就是说该n份去相关的编码数据中的部分可以得到与第一数据的近似度大于或等于设定阈值的第三数据。这样,即便译码装置因其带宽资源不支持接收全部的n份去相关的待译码数据,而接收了该n份去相关的待译码数据中的部分,也可以获取到与第一数据的近似度大于设定阈值的第三数据,从而提高数据接收的成功率,以及提高编码数据的带宽自适应能力。
7.在一种可能的设计中,该方法还可以包括:编码装置接收来自译码装置的第一参数,第一参数用于确定损失函数,损失函数用于更新编码模型和/或去相关的处理中所使用到的参数,第一参数是译码装置根据第一数据与第三数据之间的峰值信噪比确定的。进一步,编码装置可以根据第一信息,更新编码模型和/或去相关的处理中所使用到的参数,其中,第一信息是根据第一参数和/或设定的带宽资源确定的。示例性的,第一参数可以满足:lm=e[wm*pm],其中,lm为第一参数,e[
·
]为期望值运算,pm为第一数据与第三数据之间的峰值信噪比,m为用于确定第二数据的去相关的编码数据的份数,wm为不同带宽资源对应的权重,m为大于0且小于或等于n的整数。
[0008]
通过上述设计,编码装置可以接收译码装置根据原始数据和重构数据之间的峰值信噪比确定的第一参数,并根据第一参数,和/或设定的带宽资源更新编码模型,或者更新去相关的处理中所使用到的参数,或者更新编码模型和去相关的处理中所使用到的参数。峰值信噪比度量了原始数据的最大可能功率与重构数据的噪声功率之间的比率,能够很好的反映重构数据的真实情况,进而编码装置根据该峰值信噪比更新编码模型和去相关的处理中所使用到的参数,能够优化编码模型的编码性能和编码装置的去相关处理,如减少去相关程度过度,或去相关程度不足等问题。设定的带宽资源可以进一步提高编码数据的带宽自适应能力。
[0009]
在一种可能的设计中,在发送n份去相关的编码数据之前,编码装置还可以发送n份去相关的编码数据的导频信号。
[0010]
通过上述设计,编码装置将n份去相关的编码数据的导频信号发送给译码装置,可以使得译码装置根据导频信号获取去相关的编码数据传输过程中的信道状态信息,并根据该信道状态信息与接收的去相关的编码数据进行去噪处理,从而可以提高编码数据的信道自适应能力。
[0011]
在一种可能的设计中,编码装置对n份编码数据进行去相关,得到n份去相关的编码数据,可以为:编码装置对n份编码数据的特征信息进行非线性变换,得到n份非线性变换后的特征信息;根据n份非线性变换后的特征信息和n份编码数据的特征信息,确定n份编码数据的相关系数矩阵;以及根据n份非线性变换后的特征信息、n份编码数据的特征信息和相关系数矩阵,确定n份去相关的编码数据。
[0012]
在一种可能的设计中,编码装置根据n份非线性变换后的特征信息、n份编码数据的特征信息和相关系数矩阵,确定n份去相关的编码数据,可以为:编码装置可以对相关系数矩阵进行掩模运算,得到掩模后的相关系数矩阵;根据n份非线性变换后的特征信息和掩模后的相关系数矩阵,确定n份编码数据的相关特征信息;以及,对n份编码数据的特征信息和n份编码数据的相关特征信息进行差值运算,得到n份去相关的编码数据。
[0013]
在一种可能的设计中,n份编码数据由第一编码数据和第二编码数据组成;编码装置对n份编码数据进行去相关,得到n份去相关的编码数据,可以为:编码装置可以根据第一编码数据的特征信息和第二编码数据的特征信息,确定第一编码数据和第二编码数据之间的相关特征信息;对第一编码数据的特征信息与第一编码数据和第二编码数据之间的相关特征信息进行差值运算,得到去相关的第一编码数据。
[0014]
在一种可能的设计中,编码装置根据第一编码数据的特征信息和第二编码数据的特征信息,确定第一编码数据和第二编码数据之间的相关特征信息,可以为:编码装置分别
对第一编码数据的特征信息和第二编码数据的特征信息进行卷积运算,得到卷积运算后的第一编码数据的特征信息和卷积运算后的第二编码数据的特征信息;对卷积运算后的第一编码数据的特征信息和卷积运算后的第二编码数据的特征信息进行内积运算,得到第一编码数据和第二编码数据之间的相关系数矩阵;以及,对相关系数矩阵和第二编码数据的特征信息进行卷积运算,得到第一编码数据和第二编码数据之间的相关特征信息。
[0015]
第二方面,本技术提供一种译码方法,该方法可以由译码装置执行,或者由译码装置的部件(如芯片或芯片系统等)执行。该方法中,译码装置根据数据接收能力,接收来自编码装置的n份去相关的待译码数据中的m份,n份去相关的待译码数据为:编码装置通过编码模型对第一数据进行编码得到n份编码数据后,对n份编码数据进行去相关得到的,编码模型的输出层包括n个节点,其中每个节点输出一份编码数据,n为大于2的整数,m为大于0且小于或等于n的整数;根据m份去相关的待译码数据,获取重构的n份待译码数据;以及,通过译码模型对重构的n份待译码数据进行译码,得到第二数据,第二数据用于恢复第三数据,第三数据为第一数据,或者与第一数据的近似度大于设定阈值。
[0016]
在一种可能的设计中,数据接收能力包括译码装置能够使用的带宽资源。
[0017]
在一种可能的设计中,该方法还可以包括:译码装置使用第二数据恢复第三数据;以及,根据第一数据与第三数据之间的峰值信噪比确定第一参数,第一参数用于确定损失函数,损失函数用于更新译码模型和/或获取重构的n份待译码数据的处理中所使用到的参数。
[0018]
在一种可能的设计中,译码装置还可以向编码装置发送第一参数。
[0019]
在一种可能的设计中,译码装置还可以根据第二信息,更新译码模型和/或获取重构的n份待译码数据的处理中所使用到的参数,其中,第二信息是根据第一参数和/或设定的带宽资源确定的。示例性的,第一参数可以满足:lm=e[wm*pm]。其中,lm为第一参数,e[
·
]为期望值运算,pm为第一数据与第三数据之间的峰值信噪比,wm为不同带宽资源对应的权重。
[0020]
在一种可能的设计中,在获取重构的n份待译码数据之前,译码装置还可以接收来自编码装置的m份去相关的待译码数据的导频信号;根据导频信号,确定信道状态信息;以及,通过反卷积神经网络模型和信道状态信息,得到m份去噪、去相关的待译码数据。
[0021]
在一种可能的设计中,译码装置根据m份去相关的待译码数据,获取重构的n份待译码数据,可以为:译码装置根据m份去相关的待译码数据的特征信息,得到初始化的n份去相关的待译码数据的特征信息;获取初始化的n份去相关的待译码数据的特征信息之间的相关系数,得到重构的相关系数矩阵;以及,根据初始化的n份去相关的待译码数据的特征信息和重构的相关系统矩阵,获取重构的n份待译码数据。
[0022]
在一种可能的设计中,译码装置根据初始化的n份去相关的待译码数据的特征信息和重构的相关系统矩阵,获取重构的n份待译码数据,可以为:译码装置对初始化的n份去相关的待译码数据的特征信息和重构的相关系数矩阵进行乘法运算,得到重构的n份待译码数据的相关特征信息;对初始化的n份去相关的待译码数据的特征信息和重构的n份待译码数据的相关特征信息进行求和运算,得到重构的n份待译码数据。
[0023]
第三方面,本技术提供一种通信装置,该通信装置包括编码器和收发器。其中,编码器可以用于通过编码模型对第一数据进行编码,得到n份编码数据,编码模型的输出层包
括n个节点,其中每个节点输出一份编码数据,n为大于2的整数;对n份编码数据进行去相关,得到n份去相关的编码数据,其中,n份去相关的编码数据中的部分或全部用于确定第二数据,第二数据用于恢复第三数据,第三数据为第一数据,或者与第一数据的近似度大于设定阈值。收发器可以用于发送n份去相关的编码数据。
[0024]
在一种可能的设计中,收发器进一步用于:接收来自译码装置的第一参数,第一参数用于确定损失函数,损失函数用于更新编码模型和/或去相关的处理中所使用到的参数,第一参数是译码装置根据第一数据与第三数据之间的峰值信噪比确定的。
[0025]
在一种可能的设计中,编码器进一步用于:根据第一信息,更新编码模型和/或去相关的处理中所使用到的参数,其中,第一信息是根据第一参数和/或设定的带宽资源确定的。示例性的,第一参数可以满足:lm=e[wm*pm]其中,lm为第一参数,e[
·
]为期望值运算,pm为第一数据与第三数据之间的峰值信噪比,m为用于确定第二数据的去相关的编码数据的份数,wm为不同带宽资源对应的权重,m为大于0且小于或的等于n的整数。
[0026]
在一种可能的设计中,在发送n份去相关的编码数据之前,收发器进一步用于:发送n份去相关的编码数据的导频信号。
[0027]
在一种可能的设计中,编码器具体用于:编码装置对n份编码数据的特征信息进行非线性变换,得到n份非线性变换后的特征信息;根据n份非线性变换后的特征信息和n份编码数据的特征信息,确定n份编码数据的相关系数矩阵;以及根据n份非线性变换后的特征信息、n份编码数据的特征信息和相关系数矩阵,确定n份去相关的编码数据。
[0028]
在一种可能的设计中,编码器具体用于:对相关系数矩阵进行掩模运算,得到掩模后的相关系数矩阵;根据n份非线性变换后的特征信息和掩模后的相关系数矩阵,确定n份编码数据的相关特征信息;以及,对n份编码数据的特征信息和n份编码数据的相关特征信息进行差值运算,得到n份去相关的编码数据。
[0029]
在一种可能的设计中,n份编码数据由第一编码数据和第二编码数据组成;编码器具体用于:根据第一编码数据的特征信息和第二编码数据的特征信息,确定第一编码数据和第二编码数据之间的相关特征信息;对第一编码数据的特征信息与第一编码数据和第二编码数据之间的相关特征信息进行差值运算,得到去相关的第一编码数据。
[0030]
在一种可能的设计中,编码器具体用于:分别对第一编码数据的特征信息和第二编码数据的特征信息进行卷积运算,得到卷积运算后的第一编码数据的特征信息和卷积运算后的第二编码数据的特征信息;对卷积运算后的第一编码数据的特征信息和卷积运算后的第二编码数据的特征信息进行内积运算,得到第一编码数据和第二编码数据之间的相关系数矩阵;以及,对相关系数矩阵和第二编码数据的特征信息进行卷积运算,得到第一编码数据和第二编码数据之间的相关特征信息。
[0031]
第四方面,本技术提供一种通信装置,该通信装置包括译码器和收发器。其中,收发器可以用于根据数据接收能力,接收来自编码装置的n份去相关的待译码数据中的m份,n份去相关的待译码数据为:编码装置通过编码模型对第一数据进行编码得到n份编码数据后,对n份编码数据进行去相关得到的,编码模型的输出层包括n个节点,其中每个节点输出一份编码数据,n为大于2的整数,m为大于0且小于或等于n的整数。译码器可以用于根据m份去相关的待译码数据,获取重构的n份待译码数据;以及通过译码模型对重构的n份待译码数据进行译码,得到第二数据,第二数据用于恢复第三数据,第三数据为第一数据,或者与
第一数据的近似度大于设定阈值。
[0032]
在一种可能的设计中,数据接收能力包括译码装置能够使用的带宽资源。
[0033]
在一种可能的设计中,译码器具体用于:使用第二数据恢复第三数据;以及,根据第一数据与第三数据之间的峰值信噪比确定第一参数,第一参数用于确定损失函数,损失函数用于更新译码模型和/或获取重构的n份待译码数据的处理中所使用到的参数。
[0034]
在一种可能的设计中,收发器进一步用于向编码装置发送第一参数。
[0035]
在一种可能的设计中,译码器进一步用于根据第二信息,更新译码模型和/或获取重构的n份待译码数据的处理中所使用到的参数,其中,第二信息是根据第一参数和/或设定的带宽资源确定的。示例性的,第一参数可以满足:lm=e[wm*pm]。其中,lm为第一参数,e[
·
]为期望值运算,pm为第一数据与第三数据之间的峰值信噪比,wm为不同带宽资源对应的权重。
[0036]
在一种可能的设计中,在获取重构的n份待译码数据之前,收发器进一步用于接收来自编码装置的m份去相关的待译码数据的导频信号;译码器进一步用于根据导频信号,确定信道状态信息;以及,通过反卷积神经网络模型和信道状态信息,得到m份去噪、去相关的待译码数据。
[0037]
在一种可能的设计中,译码器具体用于:根据m份去相关的待译码数据的特征信息,得到初始化的n份去相关的待译码数据的特征信息;获取初始化的n份去相关的待译码数据的特征信息之间的相关系数,得到重构的相关系数矩阵;以及,根据初始化的n份去相关的待译码数据的特征信息和重构的相关系统矩阵,获取重构的n份待译码数据。
[0038]
在一种可能的设计中,译码器具体用于:对初始化的n份去相关的待译码数据的特征信息和重构的相关系数矩阵进行乘法运算,得到重构的n份待译码数据的相关特征信息;对初始化的n份去相关的待译码数据的特征信息和重构的n份待译码数据的相关特征信息进行求和运算,得到重构的n份待译码数据。
[0039]
第五方面,本技术提供一种通信装置,包括:逻辑电路和输入/输出接口电路。逻辑电路,可以用于通过编码模型对第一数据进行编码,得到n份编码数据,编码模型的输出层包括n个节点,其中每个节点输出一份编码数据,n为大于2的整数;对n份编码数据进行去相关,得到n份去相关的编码数据,执行上述第一方面中任一项所述的方法,其中,n份去相关的编码数据中的部分或全部用于确定第二数据,第二数据用于恢复第三数据,第三数据为第一数据,或者与第一数据的近似度大于设定阈值。输入/输出接口电路,用于发送n份去相关的编码数据。
[0040]
第六方面,本技术提供.一种通信装置,包括:输入/输出接口电路和逻辑电路。输入/输出接口电路,用于根据数据接收能力,接收来自编码装置的n份去相关的待译码数据中的m份,n份去相关的待译码数据为:编码装置通过编码模型对第一数据进行编码得到n份编码数据后,对n份编码数据进行去相关得到的,编码模型的输出层包括n个节点,其中每个节点输出一份编码数据,n为大于2的整数,m为大于0且小于或等于n的整数。逻辑电路,用于根据m份去相关的待译码数据,获取重构的n份待译码数据;以及通过译码模型对重构的n份待译码数据进行译码,得到第二数据,执行上述第二方面中任一项所述的方法,其中,第二数据用于恢复第三数据,第三数据为第二数据,或者与第一数据的近似度大于设定阈值。
[0041]
第七方面,提供一种通信装置,包括:存储器和一个或多个处理器。存储器,用于存
储程序。一个或多个处理器,用于执行存储器存储的程序,当程序被执行时,使得通信装置执行上述第一方面中任一项设计所述的方法,或者执行上述第二方面中任一项设计所述的方法。
[0042]
在一种可能的设计中,处理器包括存储器。
[0043]
在一种可能的设计中,通信装置可以为芯片或集成电路。
[0044]
第八方面,本技术提供一种通信系统,包括用于执行如上述第一方面中任一项设计所述方法的编码装置,和/或,用于执行上述第二方面中任一项设计所述方法的译码装置。
[0045]
第九方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机可读指令,当所述计算机可读指令在通信装置上运行时,使得所述通信装置执行上述第一方面中任一项所述的方法或执行上述第二方面中任一项所述的方法。
[0046]
第十方面,本技术提供一种计算机程序产品,当所述计算机程序产品在通信装置上运行时,使得所述通信装置执行上述第一方面中任一项所述的方法或执行上述第二方面中任一项所述的方法。
[0047]
第十一方面,提供了一种芯片系统,该芯片系统包括处理器,还可以包括存储器,用于实现上述第一方面中任一项所述的方法或实现上述第二方面中任一项所述的方法。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
[0048]
上述第二方面至第十一方面任一项可能的设计所述方法的有益效果请参考第一方面及其可能的设计所述方法的有益效果。
附图说明
[0049]
图1为本技术实施例中编码方案的一种示意图;
[0050]
图2为本技术实施例适用的通信系统的一种示意图;
[0051]
图3为本技术实施例适用的通信系统的又一种示意图;
[0052]
图4为本技术实施例适用的通信系统的再一种示意图;
[0053]
图5为本技术实施例提供一种编译码方法的流程示意图;
[0054]
图6为本技术实施例提供的去相关方法的一种流程示意图;
[0055]
图7为本技术实施例提供的去相关方法的又一种流程示意图;
[0056]
图8为本技术实施例提供的去相关方法的再一种流程示意图;
[0057]
图9为本技术实施例提供的去相关方法的再一种流程示意图;
[0058]
图10为本技术实施例提供的获取重构的n份待译码数据的一种流程示意图;
[0059]
图11为本技术实施例提供的获取重构的n份待译码数据的又一种流程示意图;
[0060]
图12为本技术实施例提供的通信系统的一种结构示意图;
[0061]
图13为本技术实施例提供的通信系统的又一种结构示意图;
[0062]
图14为本技术实施例提供的去噪方法的一种流程示意图;
[0063]
图15为本技术实施例提供的通信系统的再一种结构示意图;
[0064]
图16为本技术实施例提供的通信系统的再一种结构示意图;
[0065]
图17为本技术实施例提供的通信装置的一种结构示意图;
[0066]
图18为本技术实施例提供的通信装置的一种结构示意图。
具体实施方式
[0067]
本技术实施例提供一种编译码方法、通信装置以及系统。其中,方法和装置是基于同一技术构思的,由于方法及装置解决问题的原理相似,因此装置与方法的实施可以相互参见,重复之处不再赘述。本技术实施例的描述中,“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本技术中所涉及的至少一个是指一个或多个;多个,是指两个或两个以上。
[0068]
首先,对本技术实施例涉及的部分术语进行介绍。
[0069]
(1)服务器,也可以称为大数据平台、云端、云服务器、或服务器集群等等,本技术对此名称不作限定。但是这并不构成对其的限定,其他可以用于大数据计算的服务器也是可以的。
[0070]
(2)网络设备也可以称为无线接入网设备,可以是基站(base station)、enodeb、发送接收点(transmission reception point,trp)、gnb、第六代(6th generation,6g)移动通信系统中的下一代基站、未来移动通信系统中的基站或wifi系统中的接入节点等;也可以是完成基站部分功能的模块或单元,例如,可以是集中式单元(central unit,cu),也可以是分布式单元(distributed unit,du)。无线接入网设备可以是宏基站,也可以是微基站或室内站等。网络设备还可以是交换机、或路由器等其他具备转发功能的网络设备,本技术的实施例对网络设备所采用的具体技术和具体设备形态不做限定。
[0071]
(3)终端设备也可以称为终端、用户设备(user equipment,ue)、移动台、移动终端等。终端可以广泛应用于各种场景,例如,设备到设备(device-to-device,d2d)、车物(vehicle to everything,v2x)通信、机器类通信(machine-type communication,mtc)、物联网(internet of things,iot)、虚拟现实、增强现实、工业控制、自动驾驶、远程医疗、智能电网、智能家具、智能办公、智能穿戴、智能交通、智慧城市等。终端可以是手机、平板电脑、带无线收发功能的电脑、可穿戴设备、车辆、无人机、直升机、飞机、轮船、机器人、机械臂、智能家居设备等。本技术的实施例对终端所采用的具体技术和具体设备形态不做限定。
[0072]
以及,除非有相反的说明,本技术实施例提及“第一”、“第二”、“第三”等序数词是用于对多个对象进行区分,不用于限定多个对象的大小、内容、顺序、时序、优先级或者重要程度等。例如,第一信息、第二信息和第三信息等,只是为了区分不同的信息,而并不是表示这三个信息的大小、内容、发送顺序、优先级或者重要程度等的不同。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
[0073]
本技术实施例提供的编译码方法可以应用于第五代(5th generation,5g)通信系统,例如5g新空口(new radio,nr)系统,设备到设备(device to device,d2d)通信系统,蓝牙通信系统,wifi通信系统或应用于未来的各种通信系统。
[0074]
下面对本技术实施例应用的通信系统进行介绍。
[0075]
图2示出了本技术实施例适用的通信系统的一种示意图。如图2所示,通信系统中包括服务器和一个或多个终端设备(图2中以两个终端设备为例)。服务器200与终端300之间建立连接后,服务器可以为终端设备提供网络服务。例如,服务器可以作为编码装置,终
端设备可以作为译码装置。其中关于服务器、终端设备的介绍请参考前文。
[0076]
作为一个示例,服务器中维护有大量的数据,如图片数据、视频数据或音频数据等。例如,服务器可以获取数据1,对数据1进行编码,得到编码数据,然后向一个或多个终端设备发送该编码数据。一个或多个终端设备接收到待译码数据后,对该待译码数据进行译码,得到数据1。
[0077]
作为另一个示例,终端设备可以向服务器发送获取数据1的请求消息。相应的,服务器接收到该请求消息后,获取数据1,并对数据1进行编码,得到编码数据,向终端设备发送响应消息,该响应消息中包括编码数据;终端设备接收到响应消息后,对待译码数据(即服务器侧的编码数据)进行译码,得到数据1。
[0078]
可以理解的是,服务器可以通过单播方式将编码数据发送给一个终端设备,也可以通过多播方式或广播方式将编码数据发送给多个终端设备,本技术实施例对此不作限定。
[0079]
又例如,将本技术实施例提供的技术方案应用于v2x通信场景,那么可参考图3,为本技术实施例的一种应用场景。图3包括终端设备1、终端设备2和终端设备3,终端设备1可通过侧行链路(sidelink,sl)与终端设备2和终端设备3通信。例如,终端设备1可以作为编码装置,终端设备2和终端设备3可以作为译码装置。例如,终端设备1可以将对数据1进行编码,得到编码数据,然后将编码数据发送给终端设备2和终端设备3;终端设备2和终端设备3接收到待译码数据后,可以对该待译码数据进行译码,得到数据1。
[0080]
再例如,将本技术实施例提供的技术方案应用于lte系统或nr系统的uu接口的通信,可参考图4,为本技术实施例的一应用场景。图4包括网络设备和一个或多个终端设备(图4中以两个终端设备为例),网络设备和该一个或多个终端设备可通过uu口通信。例如,网络设备可以作为编码装置,该一个或多个终端设备可以作为译码装置。例如,网络设备可以将对数据1进行编码,得到编码数据,然后将编码数据发送给该一个或多个终端设备;该一个或多个终端设备接收到待译码数据后,可以对该待译码数据进行译码,得到数据1。
[0081]
图2、图3和图4都以终端设备是手机为例,本技术实施例的终端设备不限于此。
[0082]
下面结合附图对本技术实施例提供的技术方案进行介绍。
[0083]
图5示出了本技术实施例提供的一种编译码方法的流程示意图。在下文的介绍过程中,以该方法应用于图2~图4中的任一个附图所示的通信系统为例。
[0084]
为了便于介绍,在下文中,以该方法由编码装置和译码装置执行为例。在可能的场景中,如果将本实施例应用在图2所示的通信系统,则下文所述的编码装置可以是图2所示的服务器;下文所述的译码装置可以是图2所示的终端设备。或者,如果将本实施例应用在图3所述的通信系统,则下文所述的编码装置可以是图3所示的网络设备;下文所述的译码装置可以是图3所示的终端设备;或者,如果将本实施例应用在图4所示的通信系统,则下文所述的编码装置可以是图4所示的终端设备1;下文所述的译码装置可以是图4所示的终端设备2,或终端设备3,或终端设备2和终端设备3。应理解的是,下文由编码装置实现的内容,也可以由该编码装置的部件(如芯片或芯片系统等)实现,类似的,下文由译码装置实现的内容,也可以由该译码装置的部件(如芯片或芯片系统等)实现。
[0085]
s51:编码装置通过编码模型对第一数据进行编码,得到n份编码数据。
[0086]
其中,n为大于2的正整数。第一数据可以是图片数据,也可以是音频数据,还可以
是视频数据等数据,本技术实施例对第一数据的具体形式不作限定。可以理解的是,编码装置的待编码对象可以是数据,也可以是信息等,本技术实施例对待编码对象不作限定。为了便于理解,本技术实施例以待编码对象为数据为例进行描述。
[0087]
示例性的,编码装置可以获取第一数据,再通过编码模型对第一数据进行编码,得到n份编码数据。例如,编码装置可以主动获取第一数据,如数据更新后,编码装置可以主动将更新后的数据推送给译码装置。又例如,编码装置可以在接收到来自译码装置的、用于请求第一数据的请求消息后获取该第一数据。
[0088]
编码模型的数量可以是一个或多个,如根据卷积神经网络构建的一个或多个模型。该编码模型的输入为第一数据,输出为n份编码数据,如每份编码数据对应卷积神经网络的1/n的输出。即,编码模型的输出层可以包括n个节点,其中的每个节点输出一份编码数据,也就是说各个输出层独立输出对应的一份编码数据,从而构成n份编码数据。该n份编码数据可以是对第一数据的编码数据进行均分得到的,即,该n份编码数据的大小是相同的,相应的,该n份编码数据中的每份编码数据需要的带宽资源相同。
[0089]
以第一数据为图片数据为例,编码装置可以对图片数据的像素值进行标准化,如标准化到[0,1]区间,对标准化后的图片数据进行采样和特征提取,并将提取到的特征信息平均分为n份,即得到n份编码数据,例如每份编码数据对应卷积神经网络的1/n输出。
[0090]
s52:编码装置对n份编码数据进行去相关,得到n份去相关的编码数据。
[0091]
编码装置可以对n份编码数据进行去相关,例如,对n份编码数据中的任意两份进行去相关,得到n份去相关的编码数据。其中,对n份编码数据进行去相关,可以理解为去除该n份编码数据之间的相关特征,使得n份去相关的编码数据之间相互独立、不相关。
[0092]
n份去相关的编码数据中的部分或全部可以用于确定第二数据。该第二数据可以用于恢复第三数据,第三数据为第一数据,或者与第一数据的近似度大于或等于设定阈值。其中,第三数据与第一数据的近似度大于或等于设定阈值可以理解为第一数据和第三数据比较接近或者无限接近等。应理解的是,第三数据可以是第二数据,也可以是对第二数据做进一步处理后的数据,如以图像数据为例,译码装置得到译码数据(即第二数据)后,还可以译码数据做图像渲染等图像处理,得到重构的图像数据(即第三数据)。
[0093]
示例性的,当n份去相关的编码数据中的全部用于确定第二数据时,由第二数据恢复出的第三数据可以与第一数据相同,或者与第一数据的近似度大于或等于设定阈值。又例如,当n份去相关的编码数据中的部分用于确定第二数据时,由第二数据恢复出的第三数据与第一数据的近似度大于或等于设定阈值。由于该n份去相关的编码数据之间相互独立,不相关,所以该n份去相关的编码数据中的一份或多份可以恢复出与第一数据的近似度大于或等于设定阈值的第三数据。以第一数据为图像数据(或视频数据)为例,第二数据为n份去相关的编码数据中的部分确定的,在此情况下,由第二数据恢复出的第三数据在图像质量上可能低于第一数据,如图片的分辨率或色彩度等降低,但第三数据中包括第一数据的完整图像信息,不影响用户体验。其中,所述设定阈值可以是预先定义的,或者是经过大量数据获取的,本技术实施例对此不作限定。
[0094]
需要说明的是,用于确定第二数据的去相关的编码数据的份数越多,由第二数据恢复的第三数据在质量上越接近第一数据。第三数据在质量上低于第一数据,但第二数据中包括第一数据的完整信息,不影响用户体验,可以理解为用户的分辨能力(如视觉分辨能
力,或听觉能力等)是有限的,即用户的分辨能力支持一定的误差率,该第三数据中包括第一数据的完整信息,即便第三数据的质量低于第一数据,但第三数据与第二数据之间的误差率在用户的分辨能力所支持的误差率之内,换言之,用户无法直观感受到第一数据与第三数据之间的差距,所以,不影响用户体验。
[0095]
本技术实施例中提供两种去相关的方法,下面分别对这两种方法进行介绍。应理解的是,本技术实施例并不限定于此。
[0096]
示例1
[0097]
图6示出了本技术实施例提供的去相关方法的一种流程示意图。
[0098]
s61:编码装置对n份编码数据的特征信息进行非线性变换,得到n份非线性变换后的特征信息。
[0099]
编码装置可以通过残差块模型对n份编码数据的特征信息进行非线性变换。例如,编码装置将n份编码数据中的每份编码数据的特征信息输入到一个残差块模型中,得到每份编码数据的特征信息的非线性表示,即得到n份非线性变换后的特征信息。其中,n份编码数据的特征信息对应的n个残差块模型之间的卷积层系数相互独立。可选的,残差块模型中可以包括两个卷积层,但本技术实施例并不限定于此。
[0100]
s62:编码装置根据n份非线性变换后的特征信息和n份编码数据的特征信息,确定n份编码数据的相关系数矩阵。
[0101]
例如,编码装置可以将n份非线性变换后的特征信息与n份编码数据的特征信息进行内积运算,得到n份编码数据的相关系数矩阵。示例性的,以n为6为例,该n份编码数据的相关系数矩阵可以满足公式(1)。
[0102][0103]
其中,correlation表示n份编码数据的相关系数矩阵,ρ
ij
表示第i份非线性变换后的特征信息与第j份编码数据的特征信息的相关系数。
[0104]
s63:编码装置根据n份非线性变换后的特征信息、n份编码数据的特征信息和n份编码数据的相关系数矩阵,确定n份去相关的编码数据。
[0105]
编码装置可以根据n份非线性变换后的特征信息、n份编码数据的特征信息和n份编码数据的相关系数矩阵,确定n份去相关的编码数据。例如,编码装置可以按照如下步骤a1至步骤a3,确定n份去相关的编码数据。图7以如下步骤a1至步骤a3为例,示例性的示出了图6所示的去相关方法的另一流程示意图。
[0106]
a1:编码装置可以对n份编码数据的相关系数矩阵进行掩模运算,得到掩模后的相关系数矩阵。通过掩模运算可以保留n份编码数据的相关系数矩阵中的部分相关系数。例如,编码装置可以将掩模矩阵与n份编码数据的相关系数矩阵进行乘法运算,得到掩模后的相关系数矩阵。其中,掩模矩阵可以是右上三角矩阵,即保留右上三角区域的相关系数;也可以是左下三角矩阵,即保留左下三角区域的相关系数;还可以是其它掩模矩阵,本技术实
施例对此不作限定。
[0107]
示例性的,以掩模矩阵是左下三角矩阵为例,该掩模矩阵可以满足如下公式(2),掩模后的相关系数矩阵可以满足如下公式(3)。
[0108][0109][0110]
其中,mask表示掩模矩阵。correlation_mask表示掩模后的相关系数矩阵。
[0111]
a2:编码装置可以根据n份非线性变换后的特征信息和掩模后的相关系数矩阵,确定n份编码数据的相关特征信息。
[0112]
例如,编码装置可以将n份非线性变换后的特征信息与掩模后的相关系数矩阵进行乘法运算,得到n分编码数据的相关特征信息。
[0113]
a3:编码装置对n份编码数据的特征信息和n份编码数据的相关特征信息进行差值运算,得到n份去相关的编码数据。
[0114]
通过步骤a1至步骤a3,编码装置可以根据n份非线性变换后的特征信息、n份编码数据的特征信息和n份编码数据的相关系数矩阵,得到n份去相关的编码数据。应理解的是,编码装置还可以通过其它流程得到n份去相关的编码数据,本技术实施例并不限定于此。例如,编码装置可以将n份编码数据的特征信息记为特征信息1~特征信息n,依次对特征信息2至特征信息n的(n-1)份编码数据进行去相关操作。具体的,编码装置针对特征信息k,可以分别获取与特征信息1至特征信息(k-1)之间的相关系数,得到(k-1)个相关系数,再对特征信息k分别与该(k-1)个相关系数进行差值运算,可以得到特征信息1至特征信息(k-1)对应的(k-1)份去相关的编码数据,其中,k为大于1且小于或等于n的整数。
[0115]
示例2
[0116]
图8示出了本技术实施例提供的去相关方法的另一种流程示意图。
[0117]
s81:编码装置将n份编码数据划分为第一编码数据和第二编码数据。
[0118]
编码装置可以将n份编码数据均分为两份,分别记为第一编码数据和第二编码数据,相应的,该n份编码数据由第一编码数据和第二编码数据组成。例如,n为8,第一编码数据包括8份编码数据中的4份编码数据,第二编码数据包括该8份编码数据中除了第一编码数据之外的剩余4份编码数据。例如,n份编码数据的特征信息采用三维度的方式可以表示为h
×w×
2c,h表示第一维度的特征,如编码数据的三维特征信息矩阵的高度;w表示第二维
度的特征,如编码数据的三维特征信息矩阵的宽度;2c表示第三维度的特征,如编码数据的三维特征信息矩阵的深度。编码装置将n份编码数据均分为两份,可以指在第三维度将n份编码数据的特征信息均分为两份,即第一编码数据的特征信息可以表示为h
×w×
c,第二编码数据的特征信息可以表示为h
×w×
c。
[0119]
s82:编码装置根据第一编码数据的特征信息和第二编码数据的特征信息,确定第一编码数据和第二编码数据之间的相关特征信息。
[0120]
示例性的,编码装置可以通过卷积模型,根据第一编码数据的特征信息和第二编码数据的特征,确定第一编码数据和第二编码数据之间的相关特征信息。其中,卷积模型的数量可以是一个或者多个。例如,编码装置可以按照如下步骤b1至步骤b4确定第一编码数据和第二编码数据之间的相关特征信息,应理解的是,本技术实施例并不限定于此。例如,编码装置还可以通过残差块模型对第一编码数据进行非线性变换,再将非线性变换后的第一编码数据与第二编码数据进行内积运算得到第一编码数据和第二编码数据之间的相关特征信息。图9以如下步骤b1至步骤b4为例,示例性的出了图8所示的去相关方法的另一流程示意图。
[0121]
b1:编码装置可以对第一编码数据的特征信息进行卷积运算,得到卷积运算后的第一编码数据的特征信息。
[0122]
例如,编码装置可以通过卷积模型1确定卷积运算后的第一编码数据的特征信息。该卷积模型1可以是由卷积神经网络构建的,该卷积模型1可以对第一编码数据的特征信息进行通道间卷积运算。例如,卷积模型1的卷积核维度为1
×1×
c,意味着只在第三维度对第一编码的特征信息进行卷积运算,相应的,卷积运算后的第一编码数据的特征信息可以表示为h
×w×
1。
[0123]
b2:编码装置可以对第二编码数据的特征信息进行卷积运算,得到卷积运算后的第二编码数据的特性信息。
[0124]
例如,编码装置可以通过卷积模型2确定卷积运算后的第二编码数据的特征信息。该卷积模型2可以是由卷积神经网络构建的,该卷积模型2可以对第二编码数据的特征信息进行通道间卷积运算。例如,卷积模型2的卷积核维度为1
×1×
c,意味着只在第三维度对第二编码数据的特征信息进行卷积运算,相应的,卷积运算后的第一编码数据的特征信息可以表示为h
×w×
1。
[0125]
b3:编码装置对卷积运算后的第一编码数据的特征信息和卷积运算后的第二编码数据的特征信息进行内积运算,得到第一编码数据和第二编码数据之间的相关系数矩阵。
[0126]
其中,编码装置对卷积运算后的第一编码数据的特征信息和卷积运算后的第二编码数据的特征信息进行内积运算,可以理解为将卷积运算后的第一编码数据的特征信息的第i个h
×
w矩阵取出,得到一个列向量,i为大于或等于1,且小于或等于c的整数;将卷积运算后的第二编码数据的特征信息的第j个h
×
w矩阵取出,得到一个列向量,j为大于或等于1,且小于或等于c的整数;将这两个列向量进行内积运算就可以得到第一编码数据和第二编码数据之间的相关系数矩阵,该第一编码数据和第二编码数据之间的相关系数矩阵可以表示为c
×
c。
[0127]
b4:编码装置对第一编码数据和第二编码数据之间的相关系数矩阵和第二编码数据的特征信息进行卷积运算,得到第一编码数据和第二编码数据之间的相关特征信息。
[0128]
编码装置可以将步骤b3得到的相关系数矩阵与第二编码数据的特征信息进行卷积运算,例如在第三维度相乘,得到第一编码数据和第二编码数据之间的相关特征信息。
[0129]
或者,编码装置可以通过卷积模型3对步骤b3得到的相关系数矩阵进行卷积运算,再将卷积后的相关系数矩阵与第二编码数据的特征信息进行差值运算,得到第一编码数据与第二编码数据之间的相关特征信息。其中,卷积模型3的卷积核维度可以为1
×1×
1,相当于将步骤b3得到的相关系数矩阵与一个常数相乘,该常数的取值可以通过梯度下降法优化得到。
[0130]
至此,编码装置确定出第一编码数据与第二编码数据之间的相关特征信息。
[0131]
s83:编码装置对所述第一编码数据的特征信息与第一编码数据和第二编码数据之间的相关特征信息进行差值运算,得到去相关的第一编码数据。
[0132]
编码装置可以通过对第一编码数据的特征信息与第一编码数据和第二编数据之间的相关特征信息进行差值运算,得到去相关的第一编码数据。
[0133]
进一步,编码装置可以对去相关的第一编码数据执行上述图8和图9所示的步骤;或者,编码装置也可以对第二编码数据执行上述图8和图9所示的步骤;或者,编码装置还可以对去相关的第一编码数据和第二编码数据分别执行上述图8和图9所示的步骤;直至得到n份去相关的编码数据为止。
[0134]
传输每份编码数据需要带宽资源,通常传输的编码数据的份数越多或者传输的编码数据的数据量越大,那么译码装置可使用的带宽资源就需要越多,但往往译码装置的带宽资源是预先配置好的(如运营商预先配置的)或者当前空闲的带宽资源不足时,译码装置不能接收全部的编码数据,导致译码装置数据接收失败。通过本技术的上述示例1或示例2所述的方法,编码装置对n份编码数据进行去相关,得到n份去相关的编码数据,该n份去相关的编码数据中的部分可以得到与第一数据的近似度大于或等于设定阈值的第三数据。也就是说,采用本技术所述的方法,译码装置可以根据自身的数据接收能力来接收编码数据,从而提高编码数据的带宽自适应能力。
[0135]
编码装置对n份编码数据进行去相关,得到n份去相关的编码数据,接下来,编码装置可以执行步骤s53的内容。
[0136]
s53:编码装置发送n份去相关的编码数据。相应的,译码装置根据数据接收能力接收该n份去相关的编码数据中的m份。
[0137]
编码装置发送n份去相关的编码数据。对于译码装置而言,译码装置可以根据自身的数据接收能力接收该n份去相关的编码数据中的部分或全部,记为m份,m为大于0且小于或等于n的正整数。其中,数据接收能力可以包括译码装置能够使用的带宽资源,或者包括译码装置自身的硬件资源,或者包括译码装置能够使用的带宽资源以及其自身的硬件资源等。其中,译码装置能够使用的带宽资源可以为译码装置配置的带宽资源,如网络设备配置的,或运营商配置的等。硬件资源可以为译码装置配置的接收天线的数量、射频链路等。以n为6为例,如果每份去相关的编码数据所需的带宽资源为2兆赫兹(mhz),则接收6份去相关的编码数据需要12mhz的带宽资源;假设译码装置能够使用的带宽资源为6mhz,那么尽管编码装置发送了6份去相关的编码数据,但译码装置根据自身的带宽资源可以接收该6份去相关的编码数据中的3份,或者少于3份。
[0138]
由于n份去相关的编码数据中的部分能够恢复出与第一数据的近似度大于设定阈
值的第三数据,因此,当译码装置的数据接收能力不支持对该n份去相关的编码数据进行全部的接收时,译码装置可以接收该n份去相关的编码数据中的部分,通过该部分编码数据也能获取到第一数据的完整信息,从而可以实现编码数据的带宽自适应。
[0139]
s54:译码装置根据m份去相关的待译码数据,获取重构的n份待译码数据。
[0140]
示例性的,译码装置可以对m份去相关的待译码数据进行重构,以得到重构的n分待遇译码数据。下面结合图10对步骤s54进行介绍。
[0141]
图10示出了本技术实施例提供的获取重构的n份待译码数据的一种流程示意图。
[0142]
s1001:译码装置根据m份去相关的待译码数据的特征信息,得到初始化的n份去相关的待译码数据的特征信息。
[0143]
示例性的,译码装置可以对m份去相关的待译码数据的特性信息进行补齐操作,得到初始化的n份去相关的待译码数据的特征信息。例如,译码装置可以通过残差块算法对m份去相关的待译码数据的特征信息进行补齐操作。其中,残差块算法又可以称为残差块模型,该残差块算法可以用于获取初始化的(n-m)份去相关的待译码数据的特征信息。具体的,译码装置可以将m份去相关的待译码数据的特征信息作为残差块模型的输入,得到与该m份去相关的待译码数据相关的初始化的(n-m)份去相关的待译码数据的特征信息。进一步,译码装置可以将该初始化的(n-m)份去相关的待译码数据的特征信息与m份去相关的待译码数据进行拼接,得到初始化的n份去相关的待译码数据的特征信息。
[0144]
举例而言,n为6,m为2,译码装置将2份去相关的待译码数据的特征信息输入到残差块模型中,得到初始化的4份去相关的待译码数据的特征信息,然后对该初始化的4份去相关的待译码数据的特征信息与2份去相关的待译码数据的特征信息进行拼接,得到初始化的6份去相关的待译码数据的特征信息。
[0145]
s1002:译码装置获取初始化的n份去相关的待译码数据的特征信息之间的相关系数,得到重构的相关系数矩阵。
[0146]
示例性的,译码装置可以获取该初始化的n份去相关的待译码数据的特征信息之间的相关系数,如通过通道注意力算法获取该初始化的n份去相关的待译码数据的特征信息之间的相关系数。其中,通道注意力算法又可以称为通道注意力模型,该通道注意力模型可以用于获取重构的相关系数矩阵。该通道注意力模型可以包括全局平均以及两个全连接层,可以用于获取不同特征信息之间的相关系数(又称为通道注意力系数)。该通道注意力模型的输入可以为初始化的n份去相关的待译码数据的特征信息,输出可以为重构的相关系数矩阵。
[0147]
s1003:译码装置根据初始化的n份去相关的待译码数据的特征信息和重构的相关系数矩阵,获取重构的n份待译码数据。
[0148]
示例性的,译码装置可以根据如下步骤获取重构的n份待译码数据:d1,译码装置可以对初始化的n份去相关的待译码数据的特征信息和重构的相关系数矩阵进行乘法运算,得到重构的n份待译码数据的相关特征信息;d2,译码装置可以对初始化的n份去相关的待译码数据的特征信息和重构的n份待译码数据的相关特征信息进行求和运算,得到重构的n份待译码数据;如图11所示。
[0149]
至此,译码装置获取到重构的n份待译码数据。接下来,译码装置执行步骤s55的内容。
[0150]
s55:译码装置通过译码模型对重构的n份待译码数据进行译码,得到第二数据。
[0151]
译码模型的数量可以是一个或多个,如根据反卷积神经网络构建的一个或多个模型。例如,该译码模型的输入为重构的n份待译码数据,输出为第二数据,如每份重构的待译码数据对应反卷积神经网络的1/n的输入。即,译码模型的输入层包括n个节点,其中的每个节点输入一份重构的待译码数据。该第二数据可用于恢复第三数据,第三数据与第一数据相同,或者与第一数据的近似度大于或等于设定阈值。
[0152]
在图5所示的技术方案中,编码装置对n份编码数据进行去相关,得到独立、不相关的n份去相关的编码数据,该n份去相关的编码数据中的部分可用于恢复第一数据或与第一数据的近似度大于或等于设定阈值的第三数据。这样,即便译码装置因其带宽资源不支持接收全部的n份去相关的待译码数据,而接收了该n份去相关的待译码数据中的部分,也可以获取到与第一数据的近似度大于设定阈值的第三数据,实现了数据的成功接收,提高了编码数据的带宽自适应能力。
[0153]
示例性的,图12示出了通信系统的一种结构示意图。如图12所示,该通信系统包括编码装置和译码装置。其中,编码装置包括编码模块和去相关模块;译码装置包括相关模块以及译码模块。编码模块可以根据编码模型对第一数据进行编码得到n份编码数据,即执行图5所示实施例中的步骤s51。去相关模块可以对n份编码数据进行去相关,得到n份去相关的编码数据,即执行图5所示实施例中的步骤s52等。相关模块可以根据m份去相关的待译码数据,获取重构的n份待译码数据,即执行图5所示实施例中的步骤s54等。译码模块可以通过译码模型对重构的n份待译码数据进行译码得到第二数据,即执行图5所示实施例中的步骤s55。
[0154]
在一种可能的实现方式中,译码装置可以使用第二数据恢复第三数据;以及根据第一数据和第三数据确定第一参数。第一参数可以用于确定损失函数,例如该第一参数用于确定构建损失函数的最优参数集合。该损失函数可以用于更新本技术上述实施例中涉及的多个模型中的一个或多个,和/或各个方法中所使用到的参数。该第一参数可以是根据第一数据和第三数据之间的峰值信噪比确定的,或者,是根据第一数据和第三数据之间的均方误差确定的。
[0155]
需要说明的是,译码装置根据第一数据和第三数据确定第一参数,可以理解为译码装置根据一组或多组第一数据和第三数据确定第一参数。例如,译码装置可以周期性(如每月、或每周等)确定第一参数,具体的,译码装置可以根据一周期内的一组或多组第一数据和第三数据确定第一参数。再例如,译码装置也可以非周期性确定第一参数,如译码装置接收次数达到设定阈值时,根据多组第一数据和第三数据确定第一参数。
[0156]
下面对第一参数进行介绍。
[0157]
(1)第一参数可以是根据第一数据和第三数据之间的峰值信噪比确定的。即,译码装置可以根据第一数据与第三数据之间的峰值信噪比确定第一参数。例如,译码装置可以确定第一数据与第三数据之间的峰值信噪比;进一步,译码装置可以对第一数据与第三数据之间的峰值信噪比进行期望值运算,得到第一参数。
[0158]
示例性的,第一数据与第三数据之间的峰值信噪比可以满足如下公式(4)。第一参数可以满足如下公式(5)。
[0159][0160]
lm=e[wm*pm]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(5)
[0161]
其中,pm为所述第一数据与所述第三数据之间的峰值信噪比。lm为第一参数,e[
·
]为期望值运算。m为用于确定第二数据的去相关的编码数据的份数,m为大于0且小于或等于n的整数。wm表示不同带宽资源对应的权重,即不同m取值对应的权重,可理解为常数。mse为第一数据与第三数据的均方误差。若第一数据为图像数据(或视频数据),则max是图像像素(或每一帧图像的像素)的最大取值;若第一数据为音频数据或其它信息,则max取值为1。以第一数据为24位深度的rgb图像为例,每个色彩像素包括8比特,则max=2
8-1=255。
[0162]
示例性的,由第一参数确定的构建损失函数的最优参数集合可以满足如下公式(6)。
[0163][0164]
其中,θ
*
表示构建损失函数的最优参数集合,argmax表示获得取得极大值的参数的运算,表示对n个不同带宽资源(或者不同去相关的编码数据的份数)对应的第一参数进行求和运算。
[0165]
(2)第一参数可以是根据第一数据和第三数据之间的均方误差确定的。示例性的,第一参数lm和构建损失函数的最优参数集合可以分别满足如下公式(7)、公式(8)。
[0166]
lm=e[wm*mse]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(7)
[0167][0168]
其中,m为用于确定第二数据的去相关的编码数据的份数,m为大于0且小于或等于n的整数。wm表示不同带宽资源对应的权重,即不同m取值对应的权重,可理解为常数。mse表示第一数据与第三数据之间的均方误差。θ
*
表示构建损失函数的最优参数集合。e[
·
]为期望值运算。argmin表示获得取得极小值的参数的运算。
[0169]
作为一个示例,译码装置可以根据第二信息更新译码模型;或者,根据第二信息更新获取重构的n份译码数据的处理中所使用到的参数,例如,更新在步骤s1001所使用到的残差模型的一个或多个参数(如权重系数等与深度神经网络相关的参数),或更新在步骤s1002所使用到的通道注意力模型的一个或多个参数等;或者,根据第二信息更新译码模型和获取重构的n份译码数据的处理中所使用到的参数。其中,第二信息可以包括第一参数,或者包括设定的信噪比,或者包括第一参数和设定的信噪比。例如,该设定的信噪比可以是常用的多个信噪比,如snr0、snr1、snr2、snr3等;或者是常用的信噪比范围,如[snr0,snr1],本技术实施例对此不作限定。该设定的信噪比可以是系统预先定义的,或者是编码装置与译码装置预先约定的等,本技术实施例不作限定。
[0170]
举例而言,译码装置可以将设定的信噪比、第三数据、导频信号作为输入,根据第一参数确定构建损失函数的最优参数集合,如公式(6)所示的最优参数集合或公式(8)所示的最优参数集合,对译码模型进行训练,直至收敛,得到更新后的译码模型。
[0171]
在一种可能的实现方式中,编码装置可以向译码装置发送n份去相关的编码数据的导频信号。相应的,译码装置接收该n份去相关的编码数据的导频信号。其中,导频信息用于确定信道状态信息,如信噪比、噪声功率、信道响应、或信道系数等等。该导频信号例如可以为探测参考信号、解调参考信号等等,本技术实施例对导频信号的具体形式此不作限定。图13示例性的示出了通信系统的又一种结构示意图。如图13所示,译码装置1、译码装置2和译码装置3接收来自编码装置的第一数据。译码装置1根据自身的数据接收能力接收n份去相关的编码数据中的m1份去相关的编码数据,以及来自编码装置的导频信号1。译码装置2根据自身的数据接收能力接收n份去相关的编码数据中的m2份去相关的编码数据,以及来自编码装置的导频信号2。译码装置3根据自身的数据接收能力接收n份去相关的编码数据中的m3份去相关的编码数据,以及来自编码装置的导频信号3。其中,m1、m2、m3皆为大于0且小于或等于n的整数。
[0172]
在另一种可能的实现方式中,译码装置可以根据n份去相关的编码数据的导频信号确定信道状态信息,通过反卷积神经网络模型和该信道状态信息,可以得到m份去噪、去相关的待译码数据。其中,信道状态信息可以包括但不限定于信噪比或噪声功率。
[0173]
图14示出了本技术实施例提供的去噪方法的一种流程示意图。如图14所示,该方法包括:
[0174]
s1401:译码装置对根据导频信号获取的噪声图的特征信息进行反卷积运算,得到反卷积后的噪声图的特征信息。
[0175]
例如,译码装置可以通过导频信号确定信噪比或噪声功率,将信噪比或噪声功率扩展为与m份去相关的待译码数据一样维度的噪声图(noise map);再将噪声图的特征信息输入到反卷积神经网络模型1中,以对该噪声图的特征信息进行反卷积运算,得到反卷积运算后的噪声图的特征信息。
[0176]
s1402:译码装置对m份去相关的待译码数据的特征信息进行反卷积运算,得到反卷积后的m份去相关的待译码数据的特征信息。
[0177]
例如,译码装置可以将m份去相关的待译码数据的特征信息输入到反卷积神经网络模型2中,以对该m份去相关的待译码数据的特征信息进行反卷积运算,得到反卷积运算后的m份去相关的待译码数据的特征信息。
[0178]
其中,步骤s1401和步骤s1402的执行顺序仅为一种示例,本技术实施例对此不作限定。例如,译码装置可以先执行步骤s1401再执行步骤s1402,也可以先执行步骤s1402再执行步骤s1401,还可以同时执行步骤s1401和步骤s1402。
[0179]
s1403:译码装置对反卷积运算后的噪声图的特征信息、以及反卷积运算后的m份去相关的待译码数据的特征信息进行求和运算,得到求和后的m份去相关的待译码数据的特征信息。
[0180]
s1404:译码装置对求和后的m份去相关的待译码数据的特征信息进行反卷积运算,得到m份去噪、去相关的待译码数据。
[0181]
例如,译码装置可以将求和后的m份去相关的待译码数据的特征信息输入到反卷积神经网络模型3中,以对该求和后的m份去相关的待译码数据的特征信息进行反卷积运算,得到m份去噪、去相关的待译码数据。
[0182]
需要说明的是,反卷积神经网络模型1、反卷积神经网络模型2以及反卷积神经网
络模型3可以相同,也可以不同,本技术实施例对此不作限定。进一步,译码装置可以根据第二信息更新反卷积神经网络模型1、反卷积神经网络模型2或反卷积神经网络模型3中的至少一个。
[0183]
通过上述实施例,译码装置可以根据导频信号获取去相关的编码数据传输过程中的信道状态信息,并根据该信道状态信息与接收的去相关的编码数据进行去噪处理,从而可以提高编码数据的信道自适应能力。
[0184]
图15示例性的示出了通信装置的再一种结构示意图。如图15所示,去噪模块可以根据n份去相关的编码数据的导频信号对m份去相关的编码数据进行去噪处理,得到m份去噪、去相关的待译码数据,即执行图14所示实施例中的步骤。进一步,相关模块可以根据m份去噪、去相关的待译码数据的特征信息,重构的n份待译码数据,即执行图5所示实施例中的步骤s54,图10、图11所示实施例中的步骤等。应理解的是,图15的其余模块的作用与图12中相应模块的作用相同,在此不再赘述。
[0185]
在另一种可能的实现方式中,译码装置可以向编码装置发送第一参数,相应的,编码装置可以接收该第一参数。例如,译码装置可以周期性(如每月、每周等)的向编码装置发送第一参数,或者,译码装置也可以非周期性的向编码装置发送第一参数,如译码装置非周期性的确定第一参数,确定出第一参数后,将会第一参数发送给编码装置。图16示例性的示出了通信装置的再一种结构示意图。如图16所示,译码装置可以非周期性的或周期性的向编码装置发送第一参数。
[0186]
作为一个示例,编码装置可以根据第一信息更新编码模型;或者,根据第一信息更新去相关处理中所使用到的参数,例如,更新在步骤s61所使用到的残差块模型中的一个或多个参数,或更新在步骤s82所使用到的卷积模型(如卷积模型1,卷积模型2等)中的一个或多个参数等等;或者,根据第一信息更新编码模型和去相关处理中所使用到的参数。其中,第一信息可以包括第一参数,或者包括设定的带宽资源,或者包括第一参数和设定的带宽资源。该设定的带宽资源的数量可以是多个。例如,编码装置可以将不同的带宽资源、第一数据作为输入,根据由第一参数确定的构建损失函数的最优参数集合,如公式(6)所示的最优参数集合或公式(8)所示的最优参数集合,对编码模型进行训练,直至收敛,得到更新后的编码模型。
[0187]
为了实现上述本技术实施例提供的方法中的各功能,编码装置、译码装置可以包括硬件结构和/或软件模块,以硬件结构、软件模块、或硬件结构加软件模块的形式来实现上述各功能。上述各功能中的某个功能以硬件结构、软件模块、还是硬件结构加软件模块的方式来执行,取决于技术方案的特定应用和设计约束条件。例如,上述方法实施例涉及的各步骤的所有相关内容均可以援引到图12、图15以及图16中对应功能模块的功能描述,在此不再赘述。
[0188]
本技术实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,另外,在本技术各个实施例中的各功能模块可以集成在一个处理器中,也可以是单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。例如,图12、图15或图16所示的编码装置还可以包括收发模块,该收发模块用于实现编码装置与其它装置之间的通信,如发送n份去相关的编码数据,或接收来自译码装置的第一参数等。类似的,图
12、图15或图16所示的译码装置还可以包括收发模块,该收发模块用于实现译码装置与其它装置之间的通信,如接收m份去相关的编码数据,或向编码装置发送第一参数等。
[0189]
图17示出了本技术实施例提供的通信装置1700,其中,通信装置1700可以是图5、图6、图8、图12、图13、图15或图16任一项所示的实施例中的编码装置,能够实现本技术实施例提供的方法中编码装置的功能;通信装置1700也可以是能够支持编码装置实现本技术实施例提供的方法中编码装置的功能的装置。其中,该通信装置1700可以为芯片系统。本技术实施例中,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
[0190]
在硬件实现上,收发器集成在通信装置1700中构成通信接口1710。
[0191]
通信装置1700可以包括至少一个处理器1720,用于实现或用于支持通信装置1700实现本技术实施例提供的方法中译码装置。例如,处理器1720可以为通过编码模型对第一数据编码得到n份编码数据,以及对n份编码数据进行去相关,得到n份去相关的编码数据等,具体参见方法示例中的详细描述,此处不做赘述。
[0192]
通信装置1700还可以包括至少一个存储器1730,用于存储程序指令和/或数据。存储器1730和处理器1720耦合。本技术实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器1720可能和存储器1730协同操作。处理器1720可能执行存储器1730中存储的程序指令。所述至少一个存储器中的至少一个可以包括于处理器中。
[0193]
通信装置1700还可以包括通信接口1710,用于通过传输介质和其它设备进行通信,从而用于通信装置1700中的装置可以和其它设备进行通信。示例性地,通信装置1700为编码装置,该其它设备可以是译码装置。处理器1720可以利用通信接口1710收发数据。通信接口1710具体可以是收发器。
[0194]
本技术实施例中不限定上述通信接口1710、处理器1720以及存储器1730之间的具体连接介质。本技术实施例在图17中以存储器1730、处理器1720以及通信接口1710之间通过总线1740连接,总线在图17中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图17中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0195]
在本技术实施例中,处理器1720可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0196]
在本技术实施例中,存储器1730可以是非易失性存储器,比如硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd)等,还可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,ram)。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
[0197]
图18示出了本技术实施例提供的通信装置1800,其中,通信装置1800可以是图5、图10、图12至图16中任一项所示的实施例中的译码装置,能够实现本技术实施例提供的方
法中译码装置的功能;通信装置1800也可以是能够支持译码装置实现本技术实施例提供的方法中译码装置的功能的装置。其中,该通信装置1800可以为芯片系统。本技术实施例中,芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
[0198]
在硬件实现上,收发器集成在通信装置1800中构成通信接口1810。
[0199]
通信装置1800可以包括至少一个处理器1820,用于实现或用于支持通信装置1800实现本技术实施例提供的方法中的译码装置。例如,处理器1820可以对重构的n份待译码数据进行译码,得到第二数据等,具体参见方法示例中的详细描述,此处不做赘述。
[0200]
通信装置1800还可以包括至少一个存储器1830,用于存储程序指令和/或数据。存储器1830和处理器1820耦合。本技术实施例中的耦合是装置、单元或模块之间的间接耦合或通信连接,可以是电性,机械或其它的形式,用于装置、单元或模块之间的信息交互。处理器1820可能和存储器1830协同操作。处理器1820可能执行存储器1830中存储的程序指令。所述至少一个存储器中的至少一个可以包括于处理器中。
[0201]
通信装置1800还可以包括通信接口1810,用于通过传输介质和其它设备进行通信,从而用于通信装置1800中的装置可以和其它设备进行通信。示例性地,通信装置1800为译码装置,该其它设备可以是编码装置。处理器1820可以利用通信接口1810收发数据。通信接口1810具体可以是收发器。
[0202]
本技术实施例中不限定上述通信接口1810、处理器1820以及存储器1830之间的具体连接介质。本技术实施例在图18中以存储器1830、处理器1820以及通信接口1810之间通过总线1840连接,总线在图18中以粗线表示,其它部件之间的连接方式,仅是进行示意性说明,并不引以为限。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图18中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0203]
在本技术实施例中,处理器1820可以是通用处理器、数字信号处理器、专用集成电路、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0204]
在本技术实施例中,存储器1830可以是非易失性存储器,比如硬盘(hard disk drive,hdd)或固态硬盘(solid-state drive,ssd)等,还可以是易失性存储器(volatile memory),例如随机存取存储器(random-access memory,ram)。存储器是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
[0205]
本技术实施例涉及的通信装置可以是车机、车载扬声器、车载麦克风等车载设备,也可以是手机、平板电脑、桌面型、膝上型、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、手持计算机、上网本、个人数字助理(personal digital assistant,pda)、可穿戴电子设备、虚拟现实设备等电子设备。或者,本技术实施例涉及通信装置也可以是机器智能设备,如无人驾驶(self-driving)设备、运输安全(transportation safety)设备、虚拟现实(virtual reality,vr)终端设备、增强现实(augmented reality,ar)终端设备、mtc设备、工业控制(industrial control)设备、远程
医疗(remote medical)设备、智能电网(smart grid)设备、智慧城市(smart city)设备、可穿戴设备(如智能手表,智能手环,计步器等)、智能家居设备等等。或者,本技术实施例涉及通信装置还可以是支持bt、或ble、或者兼容bt或者ble技术、或者支持其他可能的短距离通信技术等短距离通信类设备。或者,本技术实施例所涉及的通信装置也可以是设置在如上的任一种设备中的功能模块,例如芯片系统。
[0206]
本技术实施例中还提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行前述实施例中编码装置或译码装置执行的方法。
[0207]
本技术实施例中还提供一种计算机程序产品,包括指令,当其在计算机上运行时,使得计算机执行前述实施例中编码装置或译码装置执行的方法。
[0208]
本技术实施例提供了一种芯片系统,该芯片系统包括至少一个处理器和接口电路,该处理器用于通过接口电路执行指令和/或数据的交互,使得该芯片系统所在的装置实现前述实施例中编码装置的功能,或实现前述实施例中译码装置的功能。该芯片系统可以由芯片构成,也可以包含芯片和其他分立器件。
[0209]
本技术实施例提供了一种通信系统,所述通信系统包括前述实施例中的编码装置和/或译码装置。
[0210]
本技术实施例提供了一种终端设备,所述终端设备包括前述实施例中的编码装置和/或译码装置,或者包括实现编码装置的功能的芯片系统和/或实现译码装置的功能的芯片系统。
[0211]
本技术实施例提供的方法中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、网络设备、用户设备或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机可以存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,数字视频光盘(digital video disc,dvd))、或者半导体介质(例如,ssd)等。
[0212]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1