2017-11-20 4 views
0

JPEGファイルを作成すると損失のある圧縮が行われ、ロスレスなJPEG形式が存在することに気付いていますが、実際には標準のJPEG形式を非圧縮のピクセルを格納できるように「ハッキング」できますか?標準のJPEGファイル形式を悪用して、可逆ファイルまたは非圧縮ファイルを作成できますか?

私が見つけた一見可能な方法は、MCUのサイズを8x8から1x1に減らすことです。フォーマット自体にそのような変更が許されていれば、画像全体の色情報は変更されませんか?

+0

カラーサブサンプリング(4:4:4)を無効にして、すべて1の量子化テーブルを使用することはできますが、DCTの精度が限られていることや色空間変換の可能性があるため、これは巨大なファイルを生成し、基本的にJPEG圧縮の目的を無効にします。これはあなたの後のことですか? – BitBank

+0

@BitBank基本的に、ソースビットマップの色空間がDCT精度と一致していれば、画像はこの方法で損失なく保存できますか?私はY'CBCRへの変換を無効にすることができると思います。そして、はい、これは私が探しているものです。ただの好奇心。 – IllidanS4

+0

Lossless JPEG 2000(.jp2)があります。https://en.wikipedia.org/wiki/Lossless_JPEG Paint.netはこの形式で保存できます。しかし、それが基本的なものであれば基本的なJPGではありません。 – borisdj

答えて

0

あなたがどんなことをしていても、圧縮と "標準" jpegでの損失のいくつかの試みをしようとしています。すべての量子化テーブルを{1、1、....}に設定してサブサンプルしなかった場合でもそうです。

RGB => YCbCr変換中に "損失"が発生します。あなたはDCTの追加の損失を得るつもりです。

+0

RGB => YCbCr変換はスキップできるようです。もしそうなら、あなたはDCTにおける損失の性質について詳しく述べることができますか?個々のピクセルのみに影響を及ぼしますか?つまり、色の数が制限されますか? – IllidanS4

+0

どちらの場合も、浮動小数点演算を行い、整数値で結果を格納します.YCbcr変換では、色空間の1:1マッピングがないという問題もあります。 – user3344003

関連する問題