類似画像を可逆圧縮しますか?


10

写真ライブラリのサイズを小さくする必要があるので、自然に圧縮したいと思います。それらの多くはまったく同じではありませんが、それでも非常に似ています(同じシーンの後続のショット)。この事実を利用してこれらの画像を効果的に圧縮する圧縮アルゴリズムはありますか?7zip(LZMA)は無用です。

回答:


11

Paq 8(fp8_v2.zip)を試してみてください。1440の類似したPNG画像と、111の類似したJPG画像で試してみました。結果は次のとおりです。

  • 1440 PNGファイル、28,631,615バイト=> 2,058,653バイト圧縮
  • 111 JPGファイル、15,003,820バイト=> 489,096バイト圧縮

以下を使用する場合、PNGファイルの圧縮には約8分と550 MBのメモリが必要です。

fp8_v2.exe -7 images *.png

以下を使用する場合、JPGファイルの圧縮に約5分と125 MBのメモリが必要です。

fp8_v2.exe -5 images image12*.jpg

参照:jpg可逆画像圧縮テスト


JPGの97%の圧縮は非現実的なようです。リンクする比較テストの数値は、圧縮が約20%であると言います
OneSolitaryNoob 2015年

@OneSolitaryNoob JPEGが似ていることを忘れましたか?110/111 = 99.1%の予想圧縮。彼がリンクした比較テストは、単一のJPEGを圧縮することです。
Navin

@Navinそれは本当にありそうもない。ほとんど同じに見えても、ほとんどのピクセルはわずかに異なります。
OneSolitaryNoob

@OneSolitaryNoobだから何?1秒のビデオ(30フレーム)は、単一フレームとほぼ同じサイズに圧縮できます。わずかな違いがデータのごく一部を構成している限り、問題はありません。
Navin

@Navinそれは不可逆な圧縮であり、多くの詳細はなくなっていますが、ほとんどの人は気付かないでしょう。Paq *はロスレス圧縮です
OneSolitaryNoob 2018

1

算術コーダーを使用したバロウズウィーラー変換は、十分に大きなウィンドウが与えられた場合、これには理想的だと思います。写真の小さな連続に等しいブロックサイズを使用するようにBZIP2を構成するとどうなりますか?それは遅くなり、より多くのメモリを必要としますが、圧縮率は急上昇するはずです。そして、あなたはより大きなブロックサイズでLZMAを試しましたか?


1

これは写真では機能しないが、ピクセルごとに同一の領域が大きい複数の画像がある場合に機能する単純な解決策です:画像をBMP(PNGまたはGIFではなく)などの解凍された形式で保存し、TARして圧縮します。 XZのようなまともなコンプレッサーで、例えばLinuxのようなもので

tar -c myDirectory | xz -9 >myDirectory.tar.xz

TARとXZの代わりに、7-Zipと「ソリッドアーカイブ」オプションを使用して、ほぼ同じパフォーマンスを得ることができます。このようにして、別々のPNGファイルとして保存するときにそれぞれ約900 KBを必要とする同様のスクリーンショットを2 MBアーカイブに圧縮できました。このソリューションの利点は、一般的なファイル形式を使用するため、新しいソフトウェアをインストールしなくても機能することです。(残念ながら、古くより一般的なプログラムであるGZIPとBZIP2はうまく機能しませんでした。おそらく、BZIP2のブロックサイズを900 KBより大きく構成できないためです。)


0

私が見たことはありません。おそらく最も近いものは、いくつかの類似したJPEGを取得してMJPEGムービーに入れることです。APNGまたはアニメーションGIFを同様の目的で使用することもできます。

私はそれがどれほどうまくいくかはわかりません、そしてあなたはすでに映画のスクリーンキャップについて話しているように聞こえるので、それらを映画ファイルに再パックすることは聞こえます...逆効果です。

画面の元のクリップがまだある場合は、より適切な方法は、正確なフレームを抽出できるコマンドラインツールを見つけ、その一意の識別子をテキストファイルにどこかにコピーすることです。必要なときにフレームを簡単に再抽出できます。


GIFは写真の圧縮には適しておらず、アニメーションGIFはさらに少なくなります。写真をMJPEGビデオに圧縮しても、1つの画像を復元するのは難しいため、私の目には役に立たないようです。
マーティン

私はそれが良いアイデアだとは言いませんでした... :-)最終的なアイデアは、写真を元のフォーマットのアニメーション化したバリアントに入れることでした。
afrazier 2012
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.