8

その場でJPEG画像のサムネイルを作成するプログラムに取り組んでいます。今、私は考えていました.JPEG画像は8x8ピクセルのブロックから構築されているので(ウィキペディアには素晴らしい説明があります)、デコードの一部をスキップすることは可能でしょうか?

私のサムネイルが元の画像の少なくとも 8 倍小さいとしましょう。次に、離散コサイン変換の定数項のみを含めることで、入力ファイルの各 8x8 ブロックをデコード出力の 1 ピクセルにマッピングできます。ほとんどの画像データはすぐに破棄でき、処理する必要はありません。さらに、メモリ使用量は 64 分の 1 に削減されます。

これを最初から実装したくありません。簡単に1週間かかります。これを行うことができるコードはありますか?

そうでない場合、これはこのアプローチが価値がないからですか、それとも単に誰もまだ考えていないからですか?

4

3 に答える 3

4

djpegのスケール機能はこんな感じだと思います。

8x8 ブロックを 1 ~ 16 ピクセルの任意のサイズにスケーリングできます。

「これは興味深いことです。異なる空間サイズの出力を JPEG (DCT) データから直接取得できるため、完全なデコードと空間リサンプルを個別に行う必要はありません。」

于 2010-03-23T14:29:49.843 に答える
2

この回答によると、Enlightenment のEPEGは、DCT 係数を収集して画像を 8 分の 1 に縮小することにより、まさにこれを行いました。これが EPEG の現在のホームです

于 2010-03-23T14:39:46.900 に答える
0

私が現在取り組んでいるプロジェクトでは、あらゆる種類の画像のサイズ変更をオンザフライで行うImageGenを使用しています。それ以外の場合は、画像に非可逆ファイル圧縮を実装しようとしていると思いますが、これは以前に行われたに 違いありません!

于 2010-03-23T14:33:15.487 に答える