2013-12-24 1 views
1

내 MATLAB 코드에서 TIFF 개체의 태그 값을 변경하려고합니다. 내가 태그를 얻고 그것을 볼 수 있습니다Matlab tiff setTag 번호가 인식되지 않습니다.

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

왜이지만, 다른 값으로 태그를 설정할 수 없습니다 : 내가 사용하고 코드는 아래에 포함되어 있습니다

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

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

:이 오류가 계속 ? 나는 당신이이 방법으로 운이있어 생각

Tiff Data

답변

1

: 여기

은 내가 작업하고있는 티파니에 대한 링크입니다. setTag 메서드는 TIFF를 처음부터 만들 때 주로 사용됩니다. 내 생각 엔 'StripOffsets' 필드를 수정할 수 없습니다. 이러한 도구는 손상되지 않은 이미지 파일의 일반적인 경우를 위해 설계되었으며이 경우이 필드를 변경하면 파일을 손상 시키거나 대부분의 시간에 데이터를 다시 인코딩해야 할 수 있습니다. 이 함수는 더 나은 피드백을 제공해야합니다 (일반적으로 TIFF에 대한 문서가 더 좋을 수 있습니다). 따라서 MathWorks에 연락하여 연락 할 수 있습니다.

이러한 태그/필드를 편집하는 방법을 찾으려면 일부 TIFF 태그 뷰어/편집기 프로그램을 찾아서 시도해보십시오. 그렇지 않으면 헤더를 직접 파싱하여 관련 바이트를 찾을 수 있습니다.