使用Matlab确定拍摄照片的确切时间

时间:2013-03-20 14:42:06

标签: matlab

我有一个精确的问题。 我在实验过程中拍摄了许多图像(照片)。我想标记照片拍摄时间的时间。要获取我正在使用的文件信息:

fileinfo = dir('myfile.jpg')

fileinfo = 
   name: 'myfile.jpg'
   date: '16-Mar-2006 13:34:01' %My problem is here!!
  bytes: 251
  isdir: 0
datenum: 7.3275e+005

这些照片是连续快速拍摄的,我希望获得小数精度,但Matlab会将其四舍五入到最接近的秒数。 任何想法如何获得13:34:01.34之类的东西。 datenum更准确吗?感谢

2 个答案:

答案 0 :(得分:0)

一些建议

  1. 绘制所有照片的datenum值并查看是否有意义

    >> fls = dir( '*.jpg' ); % list all files
    >> plot( [fls(:).datenum], '-+'); % see if all images has unique datenum
    
  2. 您可能在exif

    中存储了其他信息
    >> xif = exifread( 'myfile.jpg' )
    

答案 1 :(得分:0)

您是否尝试过使用imfinfo命令而不是dir返回的信息? imfinfo返回包含图像文件的EXIF数据的结构,我相信在ImageModTime字段中包含有关图像拍摄时间的更多详细信息。

在旧版本的MATLAB中,使用命令exifread代替imfinfo