Exif IFD
Exif固有の付属情報を記載するためのタグの集合で、Exifプライベートタグの値で示されるTIFFヘッダからのオフセットでポイントされる。
同じ例で見てみよう。TIFFヘッダは$000Cから始まり、Exif IFDタグ (0x8769)が$008Eで見つかる。続くデータ形式は0x0004でunsigned long、データ数(4 bytes)は1、Exif SubIFDは$000C+0x00000148=$0154から始まる。$0154からの2バイトは親IFD同様にエントリ数を表わし、ここでは0x001F=31の付属情報がある。続く0x829AはExposureTime(露出時間)、データ形式は0x0005でunsigned rational、データ個数は1、データは8バイト必要なので続く4バイトはポインタである。$000C+0x02C2=$02CEには0x0000000A, 0x00001900が格納されており、分子(4 bytes)が10、分母が6400、つまり全体で1/640秒となる。続く0x829DはFNumber(F値)、データ形式は0x0005でunsigned rational、データ個数は1、$000C+0x02CA=$02D6に0x0000003F, 0x0000000Aが分数として記録され、値は63/10=6.3である。
以下、こうして各付属情報について読み取っていく。
GPS IFD
GPS情報を記載するためのタグの集合で、GPSプライベートタグの値で示されるTIFFヘッダからのオフセットでポイントされる。
付属情報の辿り方は先のExif IFDと同様で、GPS IFDタグ (0x8825)を見つければよい。前ページのExif IFDの例で使用した図で$009Aから始まるタグがGPS IFDタグである。データ形式は0x0004でunsigned long、データ数(4 bytes)は1、GPS SubIFDは$000C+0x0000034A=$0356から始まる(下図)。$0356からの2バイトは親IFD同様にエントリ数を表わし、ここでは0x0004=4の付属情報がある。続く0x0001がGPSLatitudeRefタグであることを表わし、次の0x0002がデータ形式がASCII Stringsで、続く0x00000002がデータ個数が2で、その次の2 bytes (0x4E 00 (‘N’, 0))がデータである。残りの0x00 00 (0, 0)は残り2 bytesを埋めるダミーである。つまり、この次のタグで表わされる“緯度”は「北緯(‘N’)」で表現していることを示す。続く0x0002はGPSLatitudeタグで、データ形式は0x0005でunsigned rational、データ個数は3、つまり4バイトを超えるので次のデータはポインタである。$000C+0x00000380=$038Cからのデータを読むと、0x00000023=35、0x00000001=1により35/1、0x00000025=37、0x00000001=1により37/1、0x00006852=26706、0x000003E8=1000により26.706となり、結局、緯度は北緯35°37’ 26.706” である。続く0x0003はGPSLongitudeRefタグで、データ形式は0x0002 (ASCII Strings)、データ個数が2、その次の2 bytes (0x45 00 (‘E’, 0))がデータである。残りの0x00 00 (0, 0) は残り2 bytesを埋めるダミーである。これは次の経度が「東経(‘E’)」で表現していることを示す。続く0x0004はGPSLongitudeタグで、データ形式は0x0005でunsigned rational、データ個数は3、次のオフセットだけ先のアドレス$000C+0x00000398=$03A4にデータがある。0x0000008B=139、0x00000001=1により139/1、0x0000002E=46、0x00000001=1により37/1、0x00001DF1=7665、0x000003E8=1000により7.665となり、結局、経度は東経139°46’ 7.665” である。
各ディレクトリ・エントリのタグ番号について示す。
TAGID | タグ名 | 説明 | ||||
256 | 0x0100 | ImageWidth | 画像の幅(ピクセル) | |||
257 | 0x0101 | ImageLength | 画像の高さ(ピクセル) | |||
258 | 0x0102 | BitsPerSample | 画像のビット深さ(ビット/RGB毎) | |||
259 | 0x0103 | Compression | 圧縮の種類、'1'が非圧縮、'6':JPEG | |||
262 | 0x0106 | PhotometricInterpretation | 画素構成の種類、'2'はRGBカラーモデル | |||
270 | 0x010E | ImageDescription | 画像タイトルや説明。漢字等の2バイト文字の使用は禁止。 | |||
271 | 0x010F | Make | 画像入力機器のメーカー名 | |||
272 | 0x0110 | Model | 画像入力機器のモデル名 | |||
273 | 0x0111 | StripOffsets | 画像データのオフセット | |||
274 | 0x0112 | Orientation |
画像方向。 画像データがどこを起点として、どの向きで格納されているかを示す。 格納されている「0行目」(0th Row)と「0桁目」(0th Column)が画面上のどの位置に配置されるかを表す。 デフォルト値は'1':左上から描画。 |
値 | 0th Row | 0th Col. |
1 | top | left | ||||
2 | top | right | ||||
3 | bottom | right | ||||
4 | bottom | left | ||||
5 | left | top | ||||
6 | right | top | ||||
7 | right | bottom | ||||
8 | left | bottom | ||||
277 | 0x0115 | SamplesPerPixel | ピクセル毎のコンポーネント数 | |||
278 | 0x0116 | RowsPerStrip | ストリップ中のライン数 | |||
279 | 0x0117 | StripByteCounts | 各ストリップのサイズ(バイト) | |||
282 | 0x011A | XResolution | 画像の幅方向の解像度(ピクセル) |
デフォルト値は 1/72 inch(72dpi) |
||
283 | 0x011B | YResolution | 画像の高さ方向の解像度(ピクセル) | |||
284 | 0x011C | PlanarConfiguration | 画像データの並び | |||
296 | 0x0128 | ResolutionUnit |
画像の幅と高さの解像度の単位。 1は単位なし、2はインチ、3はcm。デフォルトは'2'(inch) |
|||
301 | 0x012D | TransferFunction | 再生階調カーブ特性 | |||
305 | 0x0131 | CreatorTool | 使用ソフトウェア名 | |||
306 | 0x0132 | ModifyDate |
ファイル変更日時。 形式は"YYYY:MM:DD HH:MM:SS"+0x00で、合計20バイト。 |
|||
315 | 0x013B | Artist | 作者名 | |||
318 | 0x013E | WhitePoint | 参照白色点の色度座標値 | |||
319 | 0x013F | PrimaryChromaticities | 原色の色度座標値 | |||
513 | 0x0201 | JPEGInterchangeFormat | JPEGサムネイルのSOIへのオフセット | |||
514 | 0x0202 | JPEGInterchangeFormatLength | JPEGサムネイルデータのサイズ(バイト) | |||
529 | 0x0211 | YCbCrCoefficients | 色変換マトリクス係数 | |||
530 | 0x0212 | YCbCrSubSampling | YCCの画素構成(Cの間引き率) | |||
531 | 0x0213 | YCbCrPositioning | YCCの画素構成(YとCの位置) | |||
532 | 0x0214 | ReferenceBlackWhite | 参照黒色点値と参照白色点値 | |||
33432 | 0x8298 | Copyright | 撮影著作権者/編集著作権者 | |||
34665 | 0x8769 | ExifIFDPointer | Exif sub IFDへのポインタ | |||
34852 | 0x8824 | SpectralSensitivity | スペクトル感度 | |||
34853 | 0x8825 | GPSInfoIFDPointer | GPS情報IFDへのポインタ | |||
34856 | 0x8828 | OECF | 光電変換関数 | |||
37396 | 0x9214 | SubjectArea | 被写体エリア | |||
41483 | 0xA20B | FlashEnergy | フラッシュ強度 | |||
41484 | 0xA20C | SpatialFrequencyResponse | 空間周波数応答 | |||
41486 | 0xA20E | FocalPlaneXResolution | 焦点面の幅の解像度 | |||
41487 | 0xA20F | FocalPlaneYResolution | 焦点面の高さの解像度 | |||
41488 | 0xA210 | FocalPlaneResolutionUnit | 焦点面解像度単位 | |||
41492 | 0xA214 | SubjectLocation | 被写体位置 | |||
41493 | 0xA215 | ExposureIndex | 露出インデックス | |||
41495 | 0xA217 | SensingMethod | センシング方式 | |||
41730 | 0xA302 | CFAPattern | CFAパターン | |||
42016 | 0xA420 | 0xa420 | ユニーク画像ID | |||
42240 | 0xA500 | 0xa500 | ガンマ値 | |||
50706 | 0xC612 | DNGVersion | DNGバージョン(DNG: Digital Negative) | |||
50707 | 0xC613 | DNGBackwardVersion | DNG backward version | |||
50708 | 0xC614 | DNGUniqueCameraModel | カメラ機種名 | |||
50709 | 0xC615 | DNGLocalizedCameraModel | カメラ機種名 | |||
50710 | 0xC616 | DNGCFAPlaneColor | CFA plane color | |||
50711 | 0xC617 | DNGCFALayout | CFAレイアウト | |||
50712 | 0xC618 | DNGLinearizationTabel | Linearization table | |||
50713 | 0xC619 | DNGBlackLevelRepeatDim | Black level repeat dim | |||
50714 | 0xC61A | DNGBlackLevel | Black level | |||
50715 | 0xC61B | DNGBlackLevelDeltaH | Black level delta H | |||
50716 | 0xC61C | DNGBlackLevelDeltaV | Black level delta V | |||
50717 | 0xC61D | DNGWhiteLevel | White level | |||
50718 | 0xC61E | DNGDefaultscale | Default scale | |||
50719 | 0xC61F | DNGDefaultCropOrigin | Default crop origin | |||
50720 | 0xC620 | DNGDefaultCropSize | Default crop size | |||
50721 | 0xC621 | DNGColorMatrix1 | Color matrix1 | |||
50722 | 0xC622 | DNGColorMatrix2 | Color matrix2 | |||
50723 | 0xC623 | DNGCameraCalibration1 | Camera calibration1 | |||
50724 | 0xC624 | DNGCameraCalibration2 | Camera calibration2 | |||
50725 | 0xC625 | DNGReductionMatrix1 | Reduction matrix1 | |||
50726 | 0xC626 | DNGReductionMatrix2 | Reduction matrix2 | |||
50727 | 0xC627 | DNGAnalogBalance | Analog balance | |||
50728 | 0xC628 | DNGAsShotNeutral | As shot neutral | |||
50729 | 0xC629 | DNGAsShotWhiteXY | As shot white XY | |||
50730 | 0xC62A | DNGBaselineExposure | Baseline exposure | |||
50731 | 0xC62B | DNGBaselineNoise | Baseline noise | |||
50732 | 0xC62C | DNGBaselineSharpness | Baseline sharpness | |||
50733 | 0xC62D | DNGBayerGreenSplit | Bayer green split | |||
50734 | 0xC62E | DNGlinearResponseLimit | Linear response limit | |||
50735 | 0xC62F | DNGCameraSerialNumber | シリアルナンバー | |||
50736 | 0xC630 | DNGLensInfo | レンズ情報 | |||
50737 | 0xC631 | DNGChromaBlurRadius | Chroma blur radius | |||
50738 | 0xC632 | DNGAntiAliasStrength | Anti-alias strength | |||
50739 | 0xC633 | DNGShadowScale | Shadow scale | |||
50740 | 0xC634 | DNGPrivateData | プライベートデータ | |||
50741 | 0xC635 | DNGMakerNoteSafety | MakerNote safety | |||
50778 | 0xC65A | DNGCalibrationIlluminant1 | Calibration illuminant1 | |||
50779 | 0xC65B | DNGCalibrationIlluminant2 | Calibration illuminant2 | |||
50780 | 0xC65C | DNGBestQualityScale | Best quality scale | |||
50781 | 0xC65D | DNGRawDataUniqueID | Raw data unique ID | |||
50827 | 0xC68B | DNGOriginalRawFileName | オリジナルRAWファイル名 | |||
50828 | 0xC68C | DNGOriginalRawFileData | オリジナルRAWファイルデータ | |||
50829 | 0xC68D | DNGActiveArea | Active area | |||
50830 | 0xC68E | DNGMaskedArea | Masked area | |||
50831 | 0xC68F | DNGAsShotICCProfile | As shot ICC profile | |||
50832 | 0xC690 | DNGAsShotPreProfileMatrix | As shot pre-profile matrix | |||
50833 | 0xC691 | DNGCurrentICCProfile | Current ICC profile | |||
50834 | 0xC692 | DNGCurrentPreProfileMatrix | Current pre-profile matrix |