【问题标题】:Matlab tiff setTag number not recognizedMatlab tiff setTag号无法识别
【发布时间】:2013-12-24 00:14:09
【问题描述】:

我正在尝试从我的 matlab 代码中的 TIFF 对象更改标记的值。我不断收到此错误:

Error using tifflib
Tag number (273) is unrecognized by the TIFF library.

Error in Tiff/setTag (line 1146)
                    tifflib('setField',obj.FileID, ...

我使用的代码如下:

fname='C:\FileLocation\pcd144_012.tif';
t=Tiff(fname,'r+');
t.getTag('StripOffsets')
t.setTag('StripOffsets',[8, 16392])

为什么我可以获取标签并看到它,但不能将标签设置为不同的值?

这是我正在使用的 tiff 的链接:

Tiff Data

【问题讨论】:

    标签: matlab tags tiff


    【解决方案1】:

    我认为您对这种方法不走运。 setTag 方法主要用于从头开始构建 TIFF。我的猜测是 'StripOffsets' 字段不可修改。请记住,这些工具是为正常情况下未损坏的图像文件而设计的,在这种情况下更改此字段会损坏文件或在大多数情况下需要重新编码数据。该函数应该提供更好的反馈(TIFF 的文档通常会更好),因此您仍可以联系 The MathWorks 让他们知道这一点。

    就找到编辑这些标签/字段的方法而言,您可以寻找并尝试一些 TIFF 标签查看器/编辑器程序,看看它们是否可以做到。否则可能归结为自己解析标头以查找相关字节。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-02-25
      • 2016-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多