| 
         
      尼康D70 NEF文件解读(一)图片信息 
      同样是D70的NEF文件,有趣的是发现了2种存储顺序。以MM打头的代表MOTOROLA格式,高位字节在前;以II开头的代表INTEL格式,低位字节在前。 
      首先是8个字节的文件头。 
      前2个字节是"II"或"MM",代表存储顺序。 
      接下来是固定的2字节整数:42。 
      最后的4字节的整数是指向第一个,也是NEF文件内唯一的主IFD(IMAGE FILE DIRECTORY)的绝对偏置量。 
      IFD结构见”20D的CR2文件信息”。 
      D70 NEF文件中有4个IFD:主IFD,内有RGB缩略图;子IFD1,内有JPEG缩略图;子IFD2,主图数据。在makernote中还有一个NEF缩略图的IFD。 
      在IFD中对应tag 0x14A的2个4位整数分别是2个子IFD的偏置地址。 
      在IFD中对应tag 0x8769的4位整数是指向另一个含有EXIF信息的子IFD的偏置量。 
      EXIF子IFD的结构与IFD相同,只有一个。 
      在EXIF子IFD中对应tag 0927c的4位整数是指向另一个含有MAKERNOTE信息的数据块的偏置量。该数据块的结构与IFD类似,只有一个。 
      Makernote数据块的结构如下: 
      前10个字节,为‘NIKON\0‘ 及后续4个字节,含义尚不清楚。以此位置做为makernote的偏置起始点,则makernote内IFD的值代表相对偏置量,需要加上makernote的偏置量才可定位。 
      首先是8个字节的文件头。 
      前2个字节是"II"或"MM",代表存储顺序。 
      接下来是固定的2字节整数:42。 
      最后的4字节的整数是指向第一个也是唯一一个IFD的相对偏置量,故为8。 
      接下来是标准的IFD结构。 
      在makernote内对应tag0x11的4位整数是指向NEF THUMB IFD的相对(于MAKERNOTE)偏置量。这个IFD内的偏置值也要加上makernote的偏置量才可定位。 
      在TIFF和EXIF以及NEF THUMB的IFD中大部分信息可以解读。MAKERNOTE中有些tag意义或解读不清楚。 
      已经解析的信息: 
      --------------------------------------------- 
      File: C:\MATLABR11\work\DSC_0868.NEF 
      order= MM 
        val= 42 
        tiff ifd1 offset= 8 entries= 24  
        RGB thumbnail  
  FE NewSubFileType :Thumbnail Image  
  100 ImageWidth :160  
  101 ImageLength :120  
  102 BitsPerSample :8 8 8  
  103 Compression :1 
  106 PhotometricInterpretation :RGB  
  10F Maker :NIKON CORPORATION  
  110 Model :NIKON D70  
  111 StripOffsets : 32750 
  112 Orientation :Horizontal (normal)  
  115 RGBSamplesPerPixel :3  
  116 RGBRowsPerStrip :120  
  117 StripByteConunts : 57600 
  11A XResolution :300.0000  
  11B YResolution :300.0000  
  11C PlanarConfiguration :Chunky  
  128 ResolutionUnit :inches  
  131 Software :Ver.1.03  
  132 DateTime :2005:08:09 01:00:46  
  14A SubIFDs :90350 883368  
  214 ReferenceBlackWhite :0.0000 255.0000 0.0000 255.0000 0.0000 255.0000  
  8769 ExifOffset :468  
  exif offset: 468 entries: 31 
  829A ExposureTime :830.7000  
  829D FNumber :2.8000  
  8822 ExposureProgram :Manual  
  9003 DateTimeOriginal :2005:08:09 01:00:46  
  9004 DateTimeDigitized :2005:08:09 01:00:46  
  9204 ExposureBiasValue :-0.3  
  9205 MaxApertureValue :1.0000  
  9207 MeteringMode : Center-weighted average  
  9208 LightSource : unknown  
  9209 Flash : No Flash  
  920A FocalLength :50.0000  
  MakerNote offset: 988 Nikon order= MM42 entries: 43 
  1 version :0210  
  2 ISO :0 400  
  4 Quality :RAW  
  5 White Balance :AUTO  
  6 Sharpening :AUTO  
  7 Focus Mode :MANUAL  
  8 Flash Setting :NORMAL  
  9 Flash mode :  
  B White Balance Bias :0  
  NEF thumb IFD offset: 8004 entries: 7 
  103 Compression :JPEG (old-style)  
  11A XResolution :0.9842  
  11B YResolution :0.9847  
  128 ResolutionUnit :inches  
  201 JpegIFOffset :7114  
  202 JpegIFByteCount :24637  
  213 YCbCrPositioning :Datum point(0,0)  
  end of nef thumb ifd 0 
  13 ISO Speed Requested :0 400  
  19 AE bracket compensation applied :0.0  
  81 Tone Compensation :AUTO  
  83 Lens Type : AF-D or AF-S lens 
  84 Lens :50.0000 50.0000 1.4000 1.4000  
  87 Flash Used : None  
  89 Bracketing :160 
  8C Curve 2 offset : 654 
  8D Color Mode :MODE3a  
  90 Light Source :NATURAL  
  92 Hue adjustment :0  
  95 Noise Reduction :OFF  
  96 Curve : length 683 pre:328 328 328 328  
  97 Color balance: red 1.901 blue 1.740 
  99 NEF thumbnail size :1520 1008  
  A0 Series Number :NO= 30003353  
  A7 Shutter counter :992  
  A9 Image optimization :CUSTOM  
  AA Saturation :NORMAL  
  end of makernote 
  9286 UserComment :ASCII  
  9290 SubsecTime :80  
  9291 SubsecTimeOriginal :80  
  9292 SubsecTimeDigitized :80  
  A217 SensingMethod :1 chip color area sensor  
  A300 FileSource :digital still camera  
  A301 SceneType :directly photographed  
  A302 CFAPattern :0 2 0 2 2 1 1 0  
  A401 CustomRendered : Normal  
  A402 ExposureMode : Manual  
  A403 WhiteBalance : Auto  
  A404 DigitalZoomRatio :1.0000  
  A405 FocalLengthIn35mmFilm :75  
  A406 SceneCaptureType :Standard  
  A407 GainControl : None  
  A408 Contrast : Hard  
  A409 Saturation : Normal  
  A40A Sharpness : Normal  
  A40C SubjectDistanceRange : Unknown  
  end of exif 
  9003 DateTimeOriginal :2005:08:09 01:00:46  
  9216 TIFF/EPStandardID :1 0 0 0  
  Next ifd offset: 0 
  tiff ifd2 offset= 90350 entries= 8  
  JPEG thumbnail 
  FE NewSubFileType :Thumbnail Image  
  103 Compression :JPEG (old-style)  
  11A XResolution :300.0000  
  11B YResolution :300.0000  
  128 ResolutionUnit :inches  
  201 JpegIFOffset :131072  
  202 JpegIFByteCount :752295  
  213 YCbCrPositioning :Datum point(0,0)  
  Next ifd offset: 0 
  tiff ifd3 offset= 883368 entries= 18  
  RAW image  
  FE NewSubFileType :Main Image  
  100 ImageWidth :3040  
  101 ImageLength :2014  
  102 BitsPerSample :12  
  103 Compression :34713 
  106 PhotometricInterpretation :32803 
  111 StripOffsets : 883608 
  112 Orientation :Horizontal (normal)  
  115 RGBSamplesPerPixel :1  
  116 RGBRowsPerStrip :2014  
  117 StripByteConunts : 4787027 
  11A XResolution :300.0000  
  11B YResolution :300.0000  
  11C PlanarConfiguration :Chunky  
  128 ResolutionUnit :inches  
  828D CFARepeatPatternDim :2 2  
  828E CFAPattern :2 1 1 0  
  9217 SensingMethod :OneChipColorArea sensor  
  Next ifd offset: 0 
      注意makernote中的’0xA7‘,代表的是快门释放此数。 
       |