Vector 矢量量化中的训练集

Vector 矢量量化中的训练集,vector,quantization,Vector,Quantization,我正在学习图像压缩和重建方面的矢量量化,我想知道为什么我们要从训练集中形成一个初始码本?既然我们只传输码字的索引,那么为什么不将训练集作为最终的码本呢。这将导致更精确的重建,对吗?有什么区别吗?码本不是要传输的图像。码字是k维码本中一行的参考点。注意:码本本质上是一个2D数组,其中行号是码字 例如: 1000个训练图像的大小分别为512x512。 如果我们想要创建一个大小为256的码本,将512x512图像压缩到一个128x128 VQ(矢量量化)索引表中,那么我们的码本需要16个维度(即,原始

我正在学习图像压缩和重建方面的矢量量化,我想知道为什么我们要从训练集中形成一个初始码本?既然我们只传输码字的索引,那么为什么不将训练集作为最终的码本呢。这将导致更精确的重建,对吗?有什么区别吗?

码本不是要传输的图像。码字是k维码本中一行的参考点。注意:码本本质上是一个2D数组,其中行号是码字

例如: 1000个训练图像的大小分别为512x512。 如果我们想要创建一个大小为256的码本,将512x512图像压缩到一个128x128 VQ(矢量量化)索引表中,那么我们的码本需要16个维度(即,原始图像中的每个4x4块(16个值)被压缩成1个值,即一个码字)。 无论您使用哪种聚类算法(如LBG),都会找到最接近的16个值,它们最能代表1000个训练图像中的4x4块。这16个值将被放入代码本中。找到16个值的最佳256个组或簇后,代码本就可以使用了


此码本需要发送到接收器一次。它是一个256行16维结构,与1000个512x512训练图像相比。您向接收器发送一个128x128索引表,然后接收器可以在码本中查找位置并重建512x512图像。由于这种类型的压缩是有损的,所以它将不准确。

码本不是要传输的图像。码字是k维码本中一行的参考点。注意:码本本质上是一个2D数组,其中行号是码字

例如: 1000个训练图像的大小分别为512x512。 如果我们想要创建一个大小为256的码本,将512x512图像压缩到一个128x128 VQ(矢量量化)索引表中,那么我们的码本需要16个维度(即,原始图像中的每个4x4块(16个值)被压缩成1个值,即一个码字)。 无论您使用哪种聚类算法(如LBG),都会找到最接近的16个值,它们最能代表1000个训练图像中的4x4块。这16个值将被放入代码本中。找到16个值的最佳256个组或簇后,代码本就可以使用了

此码本需要发送到接收器一次。它是一个256行16维结构,与1000个512x512训练图像相比。您向接收器发送一个128x128索引表,然后接收器可以在码本中查找位置并重建512x512图像。这将是不准确的,因为这种类型的压缩是有损的