SC具有以下能力:
1.减轻6G网络的无线数据传输负担。
2.提高6G网络控制和管理效率。
3.利用信息的语义设计有效的网络资源分配方案。
在SC中,需要实时共享通信双方的本地知识,以保证对所有信源数据的理解和推理过程能够很好地匹配。 在物理传输中,即使在没有句法错误的情况下,如果局部知识不能匹配,就会产生语义噪声,导致语义歧义。
对于面向语义的通信,系统的输出是所传输消息的恢复意义。 然后,接收者根据接收到的报文的含义进行下一步,但在通信系统的设计中没有考虑这一过程。
SC被推进解决带宽瓶颈的关键在于它将先传输后理解的通信范式转换为先理解后传输的通信范式。 这样,可以将SE集成到通信模型中,实现SC[8],[20],它只允许接收方感兴趣的信息传输,而不允许原始数据传输,从而减轻带宽压力,并通过减少和隐藏要交换的冗余数据来增强隐私保护。
在语义感知通信中,这里的SI不是从数据源中提取,而是通过分析Agent的行为和执行任务的当前环境来获得的。
如何在不同的无线环境下选择最优的训练方案仍然是一个悬而未决的问题。
虽然SC一直比传统通信系统获得更高的性能,但它们在低信噪比区域的性能都较差。 由于低信噪比环境普遍存在于蜂窝边缘、购物中心或郊区,因此当信噪比较低,解码信号的精度降低时,需要考虑SC的性能。
增强SC模型鲁棒性的方法:
1.将信噪比值添加到信道特征
2.根据不同的信噪比值对信道特征进行缩放
这两种解决方案都是为了解决特定的通信问题而设计的。对于广义SC系统,如何保证训练后的语义模型能够适应可变信噪比的问题仍有待更好的回答。 语义模型泛化能力的界限有待进一步研究。
数据传输需要几种资源,如带宽和发射功率。 传统通信系统中的资源分配框架旨在最小化诸如误码率、分组误码率和中断概率等指标。 然而,SC重视比特流背后信息的重要性。 这促使我们为新型SEMCOM系统开发新的资源分配框架。
将动态带宽分配与语义内容传输相结合的问题还没有得到充分的研究。 在一些不需要训练的SEMCOM系统中,需要设计带宽分配方案,为更重要的传输内容分配更多的带宽,以保证信息质量。
对于越来越多的具有能量收集能力的物联网来说,借助语义来确定信息的重要性是非常重要的。 分配更多的能量来传输包含更丰富SI的数据,确保了能量的高效利用。 此外,语义度量可以用来确定收集能量的质量,这有助于建立一个高效的网络市场。
目前,语义度量在能源资源分配中的应用还处于早期阶段。 许多需要能量收集设备才能工作的SC网络还没有被研究过,例如,一个同时使用无线信息和功率传输协议的无人机辅助网络
由于语义模型的进一步压缩而造成的性能损失需要进行系统的研究。 我们需要考虑网络中不同设备的容量和性能要求。
对于包含多个智能设备的SEMCOM网络,需要根据不同设备的无线链路环境进行网络设计。 一种解决方案是将无线链路视为训练过程中的智能代理。
SC需要考虑传统通信中无线环境带来的传输问题。 然而,由于SEMCOM的特殊特征,例如,不同比特对于原始数据的不同重要性,为传统通信设计的方案不能直接使用。 幸运的是,许多为传统通信系统设计的方案可以启发SEMCOM系统的建设。 例如,端到端的语义模型训练要求系统设计人员使用神经网络层对无线衰落信道进行建模。 与传统通信系统性能分析中使用固定信道模型相比,包含多种经典信道的广义衰落信道作为其特例可以带来更多的洞察力。 同样,生成通道层的引入可以为语义模型的训练提供更多的自由度。
与传统的只考虑比特传输的通信不同,SC中资源分配的目的是保证与任务相关的语义信息的准确传输。 因此,语义信息的考虑为6G网络资源分配方案的设计提供了一个新的视角。 这种新颖的设计要求对任务需求进行深入分析,并进行联合优化设计,以提高系统性能。 正如我们前面所讨论的,一些文献已经尝试使用语义信息来指导资源分配过程,但这种范式的转变仍有很大的研究空间。
网络中网络设备的异构性主要体现在两个方面,即设备容量的差异和各设备通信环境的差异。 如果在训练语义模型时不考虑网络设备中的异构性,则训练的模型不能直接传递给每个设备。 具体来说,为高性能设备训练的语义模型可能很大,不能部署到移动电话等小容量设备上。 此外,端到端语义模型受收发信机设备之间无线信道质量的影响。 因此,通信渠道的差异也影响着语义模型的部署。 此外,在语义通信网络的重要组成部分–编解码方案的设计中,也需要仔细考虑设备异构性的影响。
Seb可以提供一个新的视角来描述语义信息的复杂性,包括应用意图和信息的形式。 从抽象的角度来看,SEB充当了一个表示框架。 它包含多级转换,提取信息的多模态特征,并最终将其转换为语义元素。 更具体地说,SEB可以包含与用户意图相关的背景知识、意图知识映射机制、语义元素提取和表达; Seb的输入可以是通信的意图,Seb输出可以是携带意图相关语义元素的比特序列。 Seb中与意图相关的背景知识可以被看作是一个特定的知识图或其他有组织的表达形式。 以知识图为例,每个顶点表示一个语义元素,每个边表示两个语义元素之间的相关性。 此外,语义元素提取找到了与意图实现过程相对应的所有可能路径。 最后,语义元素表达式是一个合适的位序列,可以唯一识别面向意图的语义信息。
S-AI层,识别和分解用户意图;
S-NP层,实现语义赋能的交互协议,支持智能网;
S-PB层,它在物理层中实现语义授权的消息传输。
语义环境表示: 对内外环境信息进行过滤和语义提取处理;然后,信息在 SI 平面中聚合。语义分类后,形成环境表示。然后将语义信息嵌入到 S-IF 中,它可以流经 SI 平面和不同层的接口。
背景知识管理: 不同网络元素和网络层次的背景知识(如上下文和环境)会影响SAI、S-NP和S-PB层的性能。 因此,SI平面负责协调背景知识的交流。 SI平面能够对语义抽取后的知识进行分类、集成和存储。 然后它通过S-IF共享知识。
语义判定与推理: SI平面能够评估网络能力和综合用户意图。 更具体地说,S-AI层通过S-IF将分解的用户意图馈送到SI平面。 然后,SI平面综合意图和网络功能来评估可实现的性能。 然后,它为所有网络层执行决策。 最后,所述决策被传输到控制平面,以实现意图驱动的传输和网络。
因为语义通信传递的是意义。 为实现这一目标,S-PB层负责用物理信号携带来自上层的语义信息; 应该仔细设计S-PB层中的以下模块。
语义编码/解码: 根据模块化设计方法,信息的编码和恢复过程在语义层面上实现,独立于系统中的其他模块,如信道编码。
语义感知联合信源信道编码/解码: 根据该集成设计方法,可以联合设计信源编码/解码和信道编码/解码来执行语义编码/解码。
信道信息的语义提取/利用: 信道状态信息,如衰落、干扰和信噪比(SNR)被提取和集成,以促进语义信息的传输。
在下图中阐述了语义通信链路的体系结构 . 信源和目标的背景知识一般可能不同。 因此,在信源处提取的语义信息可能会被目标以不同的方式理解,这给语义通信带来了重大挑战。 在接下来的讨论中,我们提供了三个在源-目的背景知识完全同步的S-PB层语义传递的案例。 讨论了语义编/解码和语义感知信源信道联合编/解码的具体解决方案。 在这里,我们主要考虑数据驱动的方法。 模型驱动的语义编码/解码和语义感知的信源信道联合编码/解码有待进一步研究。
S-NP层的主要功能是利用智能网络协议有效地为上层应用服务。 意图与通信的目的有关。 例如,终端和监视器之间的实时交互的目的是检测异常情况,因此交互的目的是“通知”异常或“查询”异常参数。 作为另一个例子,工业网络中两个代理之间的通信目的是协作完成一个特定的任务,因此交互的目的是“交换”数据或“确认”一个事实。 因此,S-NP层的设计主要集中在语义交互机制和策略上。 更具体地说,S-NP层包括几个关键模块:
语义信息计算 从S-IF中提取意图信息,并从对应方中获取知识。
语义协议解析 分析了当前协议的可用功能。
语义协议形成 对原有协议进行优化或形成一个新的协议以满足应用程序的意图。
语义信息转换 根据生成的协议封装语义信息。
我们所说的语义交流系统是指下图中示意性地表示的那种系统 ,它是一个由技术层和语义层组成的层次结构。 具体来说,本系统包括以下几个部分。
在信道传输方面,对于每个(典型的)信道输入序列,可能的y序列的数目取决于条件熵的x,所有这些序列的可能性相等。 看下图a在典型集合方面,我们看到与每一个X相关联的是一个典型的Y序列的“扇子”,这些序列与给定的X共同典型,如下图a所示. 我们希望确保没有两个x序列产生相同的y输出序列。 否则,我们将无法决定发送的是哪个X序列。可能的(典型的)Y序列的总数取决于Y的熵。这个集合必须被划分为对应于不同输入X序列的子集。 因此,我们最多能发送的可分辨序列的数目取决于信道输入和输出之间的互信息[1]。
在语义空间中,源信息的意义被表示为语义特征序列。 正因如此,如下图b所示 ,每个压缩序列x与一个传统的s序列“扇形”相关联,这些序列与给定的x有共同特征。这意味着这个扇形中的所有源序列对应于相同的语义。 从传统信源编码的角度来看,信源典型序列的这种合并过程导致了有损压缩。 然而,由于背景知识的引入,这个过程确实是意义无损的,因为语义可以完美地传递,或者任务可以完全执行。 因此,紧凑语义空间中的序列数明显少于经典压缩信号空间中的序列数。
另一方面,对于语义通信中的信道传输,如图所示 3b,由于语义空间中的特征序列X具有不同的重要性,给定接收者的背景知识,每个X的相关典型“扇子”大小不同。 对于一个更重要的语义特征X,其典型的Y序列“扇形”尺寸较小,即其对接收序列的不确定性相对较小。 而对于一个不太重要的语义特征X,其典型的Y序列“扇形”尺寸较大,对应较大的不确定性。 因此,经典的信道容量定义应该在语义传输中得到扩展。
实际上,由于消息和先验知识之间的差异,语义压缩是为了消除语义不确定性,实现可靠的语义通信。
我们提出了规范条件复杂度(NCC)界的概念,用来度量具有先验知识的序列集的描述复杂度。 一个序列的NCC界度量了在知识库条件下描述它的额外复杂度,然后用序列长度对其进行归一化。 附加复杂度定义为无条件复杂度的两项之差,即联合复杂度和先验知识本身的复杂度。 在此,附加复杂度显然不大于序列本身的无条件复杂度。 最后,通过对所有目标序列的期望,得到序列集的平均NCC界。
所提出的NCC界是语义压缩速率的一个理论下界,它不依赖于任何语义压缩模型。
为了指导实际语义通信系统的设计,已经开发了多套性能评估指标,这些指标按数据源的模态进行分类。 对于文本文件,双语评价欠学习(BLEU)[5]和词错误率(WER)[12]是评价文本传输准确性的直接指标,由人工智能模型导出的潜在表示相似度是区分语义相似度的新指标。 对于语音和音频源[13],常见的度量包括客观度量,如语音质量感知评估(PESQ),主观评分,如平均意见评分(MOS),以及下游任务中涉及的其他度量。 对于图像和视频源,考虑了人类对图像质量的感知[14,15],包括峰值信噪比(PSNR)、结构相似度指数的多尺度扩展(MS-SSIM)、学习的感知图像片相似度模型(LPIPS)和视频多方法评估融合(VMAF)。
考虑一个多用户多输入多输出正交频分复用(MU-MIMO-OFDM)系统,其中配备有 N t x N_{\mathrm{tx}} Ntx个天线的发射机将图像发送到 K K K个用户设备,每个设备具有单个天线。 发送给第 K K K个用户(表示为 U E k \mathrm{UE}_k UEk)的图像是 X k ∈ R M × M \mathrm{X}_k\in \mathbb{R} ^{M\times M} Xk∈RM×M,其中 M M M是图像的宽度和高度。
对于每个用户(例如 U E k \mathrm{UE}_k UEk,首先将 X k \mathrm{X}_k Xk通过语义编码器来压缩数据并提取其语义特征,然后用信道编码器和调制器将 X k \mathrm{X}_k Xk映射为 k k k个复值符号(表示为 s k ∈ C N × 1 \mathrm{s}_k\in \mathbb{C} ^{N\times 1} sk∈CN×1, N < M 2 N
y k = ϕ ( s k , H , V , n k ) ≜ ( h k H v k ) s k + ∑ j = 1 , j ≠ K K ( h k H v j ) s j + n k (1) \begin{aligned} \mathbf{y}_k & =\phi\left(\mathbf{s}_k, \mathbf{H}, \mathbf{V}, \mathbf{n}_k\right) \\ & \triangleq\left(\mathbf{h}_k^{\mathrm{H}} \mathbf{v}_k\right) \mathbf{s}_k+\sum_{j=1, j \neq K}^K\left(\mathbf{h}_k^{\mathrm{H}} \mathbf{v}_j\right) \mathbf{s}_j+\mathbf{n}_k \end{aligned} \tag{1} yk=ϕ(sk,H,V,nk)≜(hkHvk)sk+j=1,j=K∑K(hkHvj)sj+nk(1)其中 ϕ ( ⋅ ) \phi \left( \cdot \right) ϕ(⋅)是一个接收信号模型函数的函数, H = [ h 1 , ⋯ , h K ] ∈ C N t x × K \mathbf{H}=\left[\mathrm{h}_1,\cdots ,\mathrm{h}_K \right] \in \mathbb{C} ^{N_{\mathrm{tx}}\times \mathrm{K}} H=[h1,⋯,hK]∈CNtx×K是信道矩阵, h k = [ h 1 k , ⋯ , h N t x k ] ⊤ \mathrm{h}_k=\left[ h_{1k},\cdots ,h_{N_{\mathrm{tx}}k} \right] ^{\top} hk=[h1k,⋯,hNtxk]⊤是从发射机到 U E k \mathrm{UE}_k UEk的信道向量, n k ∈ C N × 1 \mathrm{n}_k\in \mathbb{C} ^{N\times 1} nk∈CN×1是 U E k \mathrm{UE}_k UEk处的噪声, ( ⋅ ) H \left( \cdot \right) ^{\mathrm{H}} (⋅)H表示矩阵的共轭转置。
每个用户接收到 N N N个符号后,对其进行解调、信道和语义解码,得到 D k \mathbf{D}_k Dk。
我们使用DNNs学习编码器、预编码器和解码器,如下图所示。 有了传输目标的知识(如图像分类或目标检测),系统只需要在 D k \mathbf{D}_k Dk中保存与目标相关的语义信息,而不是像传统通信系统那样正确地传输每一个比特。 为了说明,假设传输的目的是对图像进行分类,那么语义信息就是图像的类别。 我们使用一个FC-DNN来学习从 D k \mathbf{D}_k Dk到 X k \mathbf{X}_k Xk分类输出的映射。
为了强调利用语义信息对预编码的影响,我们使用一个DNN来学习语义编码、信道编码和调制,并使用一个DNN来学习反函数块。 由于要编码的数据是图像,我们采用CNN进行编码和调制,采用CNN进行解码和解调,如文[3]所示。 由于预编码策略具有置换等价方差(PE)性质[11],我们使用GNN进行学习。
编码CNN联合学习语义编码和信道编码以及每个用户的调制方案,包括 L E L_E LE卷积层。 每个编码CNN的输入是每个用户所需的图像(例如, X k \mathbf{X}_k Xk用于 U E k \mathrm{UE}_k UEk)。 在每一层(例如第1层)中,第 ( ℓ − 1 ) \left( \ell -1 \right) (ℓ−1)层的输出用多个卷积核进行卷积,以生成第1层的输出。 卷积层后提取的特征由 C C C矩阵组成,其中 C C C是输出层中卷积核的个数。 将这些矩阵分成两部分,然后分别向量化为 s k R e \mathrm{s}_{k}^{^{\mathrm{Re}}} skRe和 s k I m \mathrm{s}_{k}^{^{\mathrm{Im}}} skIm,组合成复数向量 s k = s k R e + j ⋅ s k I m \mathrm{s}_k=\mathrm{s}_{k}^{^{\mathrm{Re}}}+j\cdot \mathrm{s}_{k}^{^{\mathrm{Im}}} sk=skRe+j⋅skIm。
编码-CNN对所有用户都是相同的。 编码-CNN的输入输出关系可以表示为,
数据集:
训练和测试数据集为 STL-10 十分类数据集,包含 10 类物体的图片,对应 10 个语义概念,每类 1 300 张图片,500 张训练,800 张测试,每张图片分辨率为 96 dpi×96 dpi。训练过程中,首先将图片扩展到 256×256,然后随机裁剪为 224×224,作为网络的输入。
Resnet18 网络。首先考虑到数据集为十分类任务,调整网络结构最后一层输出神经元个数为 10;接着用在 ImageNet 数据集[22]上预训练好的参数初始化特征提取网络参数,进行后续训练。
VGG16 网络。首先调整网络结构最后一层输出神经元个数为 10,并将 VGG16 分类器部分两层全连接神经元个数由 4 096 调整为 1 000;接着用在 ImageNet 数据集上训练好的参数初始化特征提取网络参数,训练过程中,冻结前8个卷积层参数,以加快训练速度。
训练过程:
互信息估计网络和分类网络迭代训练,首先,训练互信息估计网络;其次,固定互信息估计网络参数,训练语义通信网络;再次,固定语义通信网络参数,训练互信息估计网络,如此迭代,直到达到收敛条件。
网络训练均使用交叉熵为损失函数
训练参数 | 参数取值 |
---|---|
Epochs | 32 |
Batchsize | 随机梯度下降 |
优化器 | 0.01 |
学习率 | 0.9 |
仿真参数 | 参数取值 |
---|---|
IoT 设备发送功率/W | 0.01 |
噪声功率谱密度/(dBm.Hz−1) | −174 |
射频带宽资源/MHz | 11~20 |
时延门限/ms | 0~1.5 |
待分类图片总数/张 | 1 000 |
无线信道 | 瑞利信道 |
压缩比例 | [0,0.3,0.6,0.8,0.9,0.98] |
在PyTorch中,可以使用tensor来表示信号。通常情况下,我们可以将一个信号看做是一个一维的向量,其中向量的每个元素代表信号在某个时刻的幅度或者功率。
例如,如果我们有一个包含5个时刻的信号,可以使用以下代码来创建一个PyTorch tensor表示该信号:
下面展示一些 内联代码片
。
import torch
# 创建一个包含5个元素的tensor来表示信号
signal = torch.tensor([0.1, 0.2, 0.3, 0.2, 0.1])
# 打印信号的值
print(signal)
# 输出
tensor([0.1000, 0.2000, 0.3000, 0.2000, 0.1000])
可以看到,这个tensor包含了5个元素,每个元素代表信号在某个时刻的幅度。可以通过索引来访问每个元素,例如 signal[0] 表示信号在第一个时刻的幅度。
添加噪声可以使用PyTorch中的torch.normal函数生成高斯噪声,并将其加到原始信号上,如下所示:
import torch
# 原始信号
signal = torch.tensor([1, 2, 3, 4, 5])
# 添加高斯噪声
noise = torch.normal(mean=0.0, std=0.1, size=signal.shape)
noisy_signal = signal + noise
其中,mean参数表示噪声的均值,std参数表示噪声的标准差,size参数表示噪声的大小(与signal的shape相同)。
添加功率约束可以将信号进行归一化,使其平均功率为特定值,如下所示:
import torch
# 原始信号
signal = torch.tensor([1, 2, 3, 4, 5])
# 归一化信号
avg_power = torch.mean(signal ** 2)
power_constraint = 10 # 设置平均功率为10
normalized_signal = torch.sqrt(power_constraint / avg_power) * signal
其中,torch.mean函数用于计算信号的平均功率,torch.sqrt函数用于计算归一化因子。归一化后的信号平均功率为power_constraint。
非线性变换是指一种将输入信号映射到输出信号的数学函数,不满足线性关系的变换。在信号处理和通信系统中,非线性变换常用于将原始数据转换为更适合在噪声信道上传输的形式。
相比线性变换,非线性变换具有更强的表达能力,可以更好地捕捉数据的特征和语义信息。由于信道噪声和失真等因素的存在,非线性变换通常可以提高数据在信道上传输时的鲁棒性和可靠性。
在语义通信中非线性变换被用于将源编码后的数据进行转换,以提取数据的语义信息并提高数据在信道上传输时的可靠性。通常使用一些非线性函数来实现非线性变换,例如Sigmoid函数、ReLU(修正线性单元)函数和Softmax函数等。这些函数具有不同的特点和应用场景,可以根据实际需要进行选择和调整。
**位置嵌入增强:**在 x = x + self.pos_embed(x) 步骤中,通过将位置嵌入添加到输入特征中,每个位置的特征将包含其在图像中的位置信息,从而帮助模型学习更好的空间关系。
**注意力机制增强:**不同的注意力机制(如双层路由注意力、常规注意力、注意力与位置编码、伪注意力)可以捕获不同尺度的信息和语义相关性。通过在 x = x + self.attn(…) 步骤中使用注意力机制,模型可以聚焦于图像中的重要区域,同时保留更全局的上下文信息。
**MLP增强:**多层感知机(MLP)在 x = x + self.mlp(…) 步骤中用于非线性变换。MLP能够通过多个全连接层和激活函数捕获复杂的特征映射,从而增强模型对输入的表示能力。
**残差连接和DropPath:**在 x = x + self.drop_path(…) 步骤中,通过残差连接和DropPath操作,模型能够从浅层到深层逐渐引入更多的增强信息,避免过拟合,并提高训练的稳定性。
伪注意力(Pseudo Attention)是一种在神经网络中用于替代标准自注意力机制的技术。标准的自注意力机制(如Transformer中的Multihead Attention)在计算过程中需要大量的计算资源和内存,并且计算复杂度随着序列长度的增加而增加。为了降低计算成本,研究人员提出了一种更轻量级的注意力机制,即伪注意力。
伪注意力通过一系列的卷积层和操作来模拟标准自注意力的效果,但计算复杂度较低。它通常包括以下步骤:
伪QKV线性层(Pseudo QKV Linear): 将输入特征通过一层卷积层映射为查询(Q)、键(K)和值(V)向量。这些向量模拟了标准自注意力中的Q、K、V矩阵。
伪注意力层(Pseudo Attention): 通过一系列卷积操作来代替标准的注意力计算。这些卷积操作可以捕捉局部特征和上下文信息,从而模拟了注意力机制。
伪输出线性层(Pseudo Out Linear): 最终,通过另一层卷积层将伪注意力的输出映射回原始特征维度。
维度变换(Rearrange): 由于卷积操作可能会改变特征的维度,所以需要在适当的位置进行维度变换,以保持与原始特征维度一致。
BLEU 最初,BLEU是一种用于机器翻译自动评估的方法,它符合SEMCOM系统中语义测量的需要。
CIDEr CIDER是一种图像描述质量的自动一致性度量,最初用于度量一个生成的句子与一组由人类书写的地面真值句子之间的相似性。 因此,它也可以作为文本传输的语义度量。
语义相似度 句子相似度是为SEMCOM初始化的一个新的度量,它基于来自Transformer(BERT)的双向编码器表示。 BERT是一个最先进的微调词表示模型,它使用了一个庞大的预先训练的模型,包括用于提取SI的数十亿个参数, 在数十亿个句子的喂养下,SI抽取的性能已经得到了证明。 为此,直接基于Bert提取的语义特征的余弦相似度计算句子相似度。
Signal-to-distortion ratio (SDR) 文献将恢复信号作为一种性能指标引入到SEMCOM中,它用传输语音信号与恢复信号之间的 L 2 \mathcal{L} _2 L2误差来表示。
Perceptual evaluation of speech quality (PESQ)
PSNR: PSNR (Peak Signal-to-Noise Ratio) 是一种用于衡量图像或视频质量的指标,通常用于评估图像或视频编码的性能。它的计算公式如下:
P S N R = 10 ⋅ log 10 ( M A X I 2 M S E ) PSNR=10\cdot \log _{10}\left( \frac{MAX_{I}^{2}}{MSE} \right) PSNR=10⋅log10(MSEMAXI2)
其中, M A X I MAX_I MAXI 表示像素值的最大值(例如对于 8 位灰度图像, M A X I = 255 MAX_I=255 MAXI=255), M S E MSE MSE 表示均方误差(Mean Squared Error),即:
M S E = 1 M N ∑ i = 0 M − 1 ∑ j = 0 N − 1 ( I i j − K i j ) 2 MSE=\frac{1}{MN}\sum\nolimits_{i=0}^{M-1}{\sum\nolimits_{j=0}^{N-1}{\left( I_{ij}-K_{ij} \right) ^2}} MSE=MN1∑i=0M−1∑j=0N−1(Iij−Kij)2
其中, I I I 表示原始图像, K K K 表示压缩后恢复的图像, M M M 和 N N N 分别表示图像的宽度和高度。简单来说,PSNR 的计算公式是将原始图像和压缩后的图像之间的均方误差转化为对数尺度,并将结果乘以一个常数因子 10。