Time information in TIFF files

10 次查看(过去 30 天)
Eric
Eric 2011-1-26
评论: Xiaoli 2017-2-9
I am using "imwrite" and "WriteMode" "Append" to create a multi-tif file (a movie). I would like to include information about the time that each tif image was created in the multi-tif file. How do I add time information to the tif files?

采纳的回答

John
John 2011-2-18
There is a tag called 'DateTime' that is intended for this purpose, but IMWRITE can only write a limited subset of TIFF tags, and 'DateTime' is not in that subset.
The Tiff object (introduced in R2009b) can manipulate a much broader set of tags, so it may suit your purposes better than IMWRITE. For example, to write out a multi-page TIFF consisting of the first through the 12th eigenfunctions of the L-shaped membrane, one could do something like the following:
t = Tiff('myfile.tif','w');
tagstruct.ImageWidth = 31;
tagstruct.ImageLength = 31;
tagstruct.Photometric = Tiff.Photometric.MinIsBlack;
tagstruct.BitsPerSample = 64;
tagstruct.SampleFormat = Tiff.SampleFormat.IEEEFP;
tagstruct.RowsPerStrip = 31;
tagstruct.PlanarConfiguration = Tiff.PlanarConfiguration.Chunky;
for k = 1:12
data = membrane(k);
tagstruct.DateTime = datestr(now,31);
t.setTag(tagstruct);
t.write(data);
t.writeDirectory();
end
t.close();
The 'DateTime' tag is limited to 20 characters, so if you need more temporal resolution than that, you might have to hijack another tag for your purposes, such as 'ImageDescription' or 'XMP'.
  4 个评论
Angelina
Angelina 2012-9-4
I see, oversight on my part. Thank you for clarifying!
Xiaoli
Xiaoli 2017-2-9
To write in append mode change 'w' to 'a'

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Low-Level File I/O 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by