Как извлечь метаданные изображения с помощью MATLAB? - PullRequest
1 голос
/ 02 апреля 2019

Как я могу извлечь метаданные изображения, такие как экспозиция, ширина, высота или разрядность, используя MATLAB?

До недавнего времени я использовал exifread, но эта функция больше не существует в новейшей версии MATLAB.

Другая функция - imfinfo, но она не может прочитать изображение «ДАННЫЕ ОБ ЭКСПОЗИЦИИ».

Как прочитать изображение «Экспозиция»?

Ответы [ 2 ]

1 голос
/ 02 апреля 2019

exifread() устарела 9 лет назад. Он был заменен на imfinfo

info = imfinfo(filename) вернет всю информацию, которую вы хотите.

Из справочника Matlab

Дополнительные поля, возвращаемые некоторыми форматами файлов:

Только JPEG и TIFF - если имя файла содержит заменяемый файл изображения Форматировать (EXIF) теги, тогда информация может также содержать 'DigitalCamera' или Поля «GPSInfo» (информация о системе глобального позиционирования).

info.Width, info.Height, info.BitDepth. Время экспозиции, а также все остальные параметры камеры сохраняются в структуре 1x1 info.DigitalCamera

Вот пример из

https://de.mathworks.com/matlabcentral/answers/146651-missing-functionality-when-using-imfinfo-instead-of-exifread

>> info = imfinfo('img_1771.jpg')
info = 
            Filename: 'C:\Users\fhempel\Desktop\tmp\img_1771.jpg'
         FileModDate: '07-Aug-2014 12:09:45'
            FileSize: 32764
              Format: 'jpg'
       FormatVersion: ''
               Width: 480
              Height: 360
            BitDepth: 24
           ColorType: 'truecolor'
     FormatSignature: ''
     NumberOfSamples: 3
        CodingMethod: 'Huffman'
       CodingProcess: 'Sequential'
             Comment: {}
                Make: 'Canon'
               Model: 'Canon PowerShot S40'
         Orientation: 1
         XResolution: 180
         YResolution: 180
      ResolutionUnit: 'Inch'
            DateTime: '2003:12:14 12:01:44'
    YCbCrPositioning: 'Centered'
       DigitalCamera: [1x1 struct]
       ExifThumbnail: [1x1 struct]


>> info.DigitalCamera
ans = 
                ExposureTime: 0.0020
                     FNumber: 4.9000
                 ExifVersion: [48 50 50 48]
            DateTimeOriginal: '2003:12:14 12:01:44'
           DateTimeDigitized: '2003:12:14 12:01:44'
     ComponentsConfiguration: 'YCbCr'
      CompressedBitsPerPixel: 5
           ShutterSpeedValue: 8.9688
               ApertureValue: 4.6563
           ExposureBiasValue: 0
            MaxApertureValue: 2.9709
                MeteringMode: 'CenterWeightedAverage'
                       Flash: 'Flash did not fire, no strobe return detection function, auto flash mode, f...'
                 FocalLength: 21.3125
                   MakerNote: [1x450 double]
                 UserComment: [1x264 double]
             FlashpixVersion: [48 49 48 48]
                  ColorSpace: 'sRGB'
            CPixelXDimension: 2272
            CPixelYDimension: 1704
         InteroperabilityIFD: [1x1 struct]
       FocalPlaneXResolution: 8.1143e+03
       FocalPlaneYResolution: 8.1143e+03
    FocalPlaneResolutionUnit: 2
               SensingMethod: 'One-chip color area sensor'
                  FileSource: 'DSC'
              CustomRendered: 'Normal process'
                ExposureMode: 'Auto exposure'
                WhiteBalance: 'Auto white balance'
            DigitalZoomRatio: 1
            SceneCaptureType: 'Standard'
0 голосов
/ 02 апреля 2019

Вся информация, которую, по вашему мнению, вам не хватает, хранится в iminfo, просто по-другому.Большинство параметров, которые вы хотите (включая данные об экспозиции) находятся в

info=iminfo(fname);
info.DigitalCamera
...