事例集 Photoshop画像の量子化テーブル破損例 Back
下記の破損画像を修復します。
Address Length Message
00000000 ****** SOI :Start Of Image ******
00000002 [0010] APP0 :JPEG File Interchange Format Ver 1.2 (JFIF)
         密度 72:72 dots/inch
00000014 [130A] APP13:Photoshop Image Resource Block(IRB) Count = 11
         00000192-0000130A Thumbnail Block 4,473 bytes
000001AE ****** SOI :Start Of Image < Thumbnail > ******
000001B0 [0010] APP0 :JPEG File Interchange Format Ver 1.2 (JFIF)
         密度 72:72 dots/inch
000001C2 [0026] COM :Comment
         File written by Adobe Photoshopィ 5.0
000001EA [000E] APP14:Adobe segment Ver.100 Flags [80000000]
         Transform = 1 YCbCr色空間
000001FA [0084] DQT :Define Quantization Table 【Photoshop 画質5 小】
         000001FE QT0-8bit Photoshop輝度 画質5 小
         0000023F QT1-8bit Photoshop色差 画質5 小
00000280 [0011] SOF0 :Start Of Frame 0 - Baseline DCT
         76[4] x 112[0] pixel - 24bit color (YCbCr 4:2:0)
         ComponentID-01 Y 2x2 QT0
         ComponentID-02 Cb 1x1 QT1
         ComponentID-03 Cr 1x1 QT1
00000293 [0004] DRI :Define Restart Interval (MCU blocks=5)
00000299 [013F] DHT :Define Huffman Table 【Photoshop 画質3-5(IR11-40)】
         0000029D HT0-DC Photoshop輝度DC HT 低画質 
         000002BA HT1-DC Photoshop色差DC HT 低画質
         000002D7 HT0-AC Photoshop輝度AC HT 低画質
         0000035A HT1-AC Photoshop色差AC HT 低画質
000003DA [000C] SOS :Start Of Scan 0-63[00]
         HT Selector[DC/AC] Y[0/0] Cb[1/1] Cr[1/1]
000003E8 ****** Image Data ******
         Data Size 3,873 bytes
00001309 ****** EOI :End Of Image < Thumbnail > ******

00001320 [0C58] APP2 :ICC Profiles Draft Version 3.4 Tag = 17
00001F7A [000E] APP14:Adobe segment Ver.100 Flags [00000000]
         Transform = 1 YCbCr色空間
00001F8A [0084] DQT :Define Quantization Table
         00001F8E QT0-8bit CRC-C3286ED9
         00001FCF QT11-[0] 量子化テーブル番号異常
        ▲ データ不足 1 bytes <DQT>

0000200F [0011] SOF0 :Start Of Frame 0 - Baseline DCT
         130[6] x 191[1] pixel - 24bit color (YCbCr 4:4:4)
         ComponentID-01 Y 1x1 QT0
         ComponentID-02 Cb 1x1 QT1
         ComponentID-03 Cr 1x1 QT1
00002022 [0004] DRI :Define Restart Interval (MCU blocks=17)
00002028 [00B0] DHT :Define Huffman Table
         0000202C HT0-DC CRC-99EBF78B
         00002046 HT1-DC CRC-6ECCED2B
         0000205F HT0-AC CRC-6283A8A8
         000020A2 HT1-AC CRC-214CAFE0
000020DA [000C] SOS :Start Of Scan 0-63[00]
         HT Selector[DC/AC] Y[0/0] Cb[1/1] Cr[1/1]
000020E8 ****** Image Data ******
         Data Size 8,638 bytes
000042A6 ****** EOI :End Of Image ******

        ◆ テーブル ( QT1 ) が有りません ◆
        ◆ DQTセグメントに異常な部分が有ります ◆


     Analyze End.




































←テーブル名を表示していない
←範囲外のテーブル番号
←1バイト抜け



末尾のエラーメッセージからDQTに異常がある事がわかります。
DQT部分では1バイト欠落しており、有り得ないテーブル番号のテーブルが有ります。
この場合、DQTを正常なものに差し替えれば修復出来ます。

APP13やAPP14が有ることからPhotoshopで出力したものと推測出来ます。
Photoshop画像のDQTは画質設定で決まったものが出力され、JpegAnalyzerでは全ての画質設定を登録しており、テーブル名を表示します。
QT0の部分はエラーにはなっていないですが、CRCが表示されPhotoshopの量子化テーブル名が出力されていません。
これらの状況から、QT0のいずれかの部分で1バイト抜けが発生し、後に続くQT1が1バイトづつずれるので有り得ない番号のテーブルとして表示されていると考えられます。

試しにQT0のデータ部分に1バイト挿入してどうなるかを見てみます。
DQTはマーカ2バイト、レングス2バイトの次に1バイトの精度とテーブル番号を記録したインデックスデータ、通常64バイトのテーブルデータが続きます。
よって、ダンプ画面を出し、DQTの先頭から5バイト以降に適当に1バイト挿入してやります。


00001F8A [0084] DQT :Define Quantization Table
         00001F8E QT0-8bit CRC-B6ADB108
         00001FCF QT1-8bit Photoshop色差 画質7 小


←テーブル名を表示した

テーブル名が表示されましたので、出力した画質が判りました。
同じ画質設定のJPEGファイルからDQTを持ってくれば直せます。

また、APP13のIRB情報の中にPhotoshopの出力画質設定が記録されています。
これを見ることでも出力画質が判ります。


Address ID  Len Message
00000032 03ED 0010 解像度情報 (72dpi×72dpi)
0000004E 040D 0004 Global Angle
0000005E 03F3 0008 プリントフラグ (0000 0000 0000 0000)
00000072 040A 0001 著作権フラグ (OFF)
00000080 2710 000A プリントフラグ情報 (0001 0000 0000 0000 0002)
00000096 03F5 0048 カラー中間調情報
000000EA 03F8 0070 カラー変換設定
00000166 0408 0010 GridGuides情報
00000182 0414 0004 ドキュメントスペックID (00000003)
00000192 040C 1179 サムネイル (kJpegRGB 76x112 000001AE-0000130A)
00001318 0406 0007 JPEG画質設定 (画質7 最適化圧縮)

Photoshop IRB Information end.











←ここでも出力画質が判る

このように出力ソフトによって特徴があり、それらを知っていることで修復出来る場合も有ります。
代表的なソフトの特徴を画質・圧縮率についてで解説しています。




一応修復手順を記載しておきます。

以下の画質7小のDQTを使った画像を探します。

DQT :Define Quantization Table 【Photoshop 画質7 小】
QT0-8bit Photoshop輝度 画質7 小
QT1-8bit Photoshop色差 画質7 小


見つかったらDQTを選択し右クリックで表示するポップアップメニューからコピーを選びます。

破損ファイルを読み出し、破損部分のDQTを選択、領域貼り付けを選びます。
破損したDQTが下にずれるので、破損したDQTを選択し直し、領域切り取りを選びます。


プレビューで確認した後、メニューやボタン操作で保存します。

Top