1
1
在仅包含更改的图像上(可以对PNG使用透明背景或某种统一颜色),对现有的无损压缩程序(png、无损jpeg等)进行一点实验。这些算法在压缩一个基本不变的图像时非常有效,如果你不是专家的话,你将无法打败它们。 |
2
1
如果矩形的数目通常很小,而矩形本身也很小,则可以绘制出有差异的行和列,并使用它们来生成可能不同的矩形… 想象一下具有以下像素值的图像…
…还有…
首先,您会想出一个蒙版,其中像素行、行和列有差异…
行和列数据为我们提供了关于哪里可能有矩形的指导…
迭代每个可能的矩形,确定是否有更改,然后对其进行编码。如果需要,可以添加其他哈希轴而不是行和列…就像可以将图片细分为区域并散列区域是否有任何更改一样,然后使用散列来决定是否需要对区域进行编码。你可以做任意次数,并有一个相当快速的算法,也可以产生小文件。 不管是什么情况,我认为你最好的选择是建立一个已经改变的地图,并使用聚合来告诉你是否已经改变了块来指导你的决策。如果你收集了足够多的这些,你甚至可以创建几个不同的算法,在不同的环境下做得很好,然后把它们放在一个责任链中,根据你构建的地图和散列的特性决定使用哪种算法。 |
3
0
如果更改保持矩形,可以单独保存这些部分,即原始图像加上更改及其位置。 |