2014-07-11 2 views
-2

Libtiff는 TIFF 이미지 특성을 조작하는 함수를 제공하지만 내 코드는 이러한 함수를 사용하지만 이러한 함수를 사용하는 데 문제가 있습니다. 이로 인해 TIFF 이미지의 속성 값을 변경하면 실제로 압축을 수행하는 데 도움이되는지 생각하게되었습니다. 내가 맞습니까? 나를 중재해라.추가 압축을 위해 rowsperstrip과 같은 TIFF 이미지 속성을 조작 할 수 있습니까?

+0

제 질문은 TIFF 속성을 수동으로 조작하는 것이 실제 압축으로 재현 될 수 있는지 여부입니다. – harsha217

답변

2

Compression과 같은 속성 (일명 태그)을 변경해도 이미지 압축은 변경되지 않습니다. 그리고 이런 식으로 행동하면 이미지가 손상 될 수 있습니다.

이미지의 압축을 변경하려는 경우 먼저 압축을 풀고 새 압축 스키마로 압축해야합니다. 관련 태그도 복사해야합니다.

tiffcp 유틸리티의 소스 코드를 살펴보십시오. 이 유틸리티는 정확하게 이것을 수행합니다. TIFF 이미지의 압축을 변경합니다 (다른 것들과 함께).

편집 :

다른 태그 StripByteCounts, RowsPerStrip처럼 StripOffset 중 하나, 이미지를 손상없이 변경 될 수 없습니다. 값이 잘못되었다는 것을 확실하게 확신 할 수 있다면 (발전기가 고장 났거나 이와 같은 것 때문에) 이미지를 고치려고하는 경우에만 이것을 변경해야합니다.

+0

답장을 보내 주셔서 감사합니다. 저는 새로운 체계로 TIFF 이미지를 압축한다는 것을 이해합니다. 당신이 말한 것은 절대적으로 옳습니다. 내가 알고 싶은 건, RowsPerStrip, StripByteCounts, StripOffset 같은 이미지 속성을 조작 할 수 있습니까? 이미지를 손상시키지 않고. 이러한 속성에 대한 설명서는 많지 않지만 수정 가능하다고 강력히 생각합니다. – harsha217

+2

@ harsha217 : 아니요. 이미지를 손상시키지 않고 변경할 수 없습니다. 이 태그는 이미지 데이터를 해석하는 방법을 디코더에 지시하기 위해 인코더가 작성하는 중요한 정보이며 [TIFF spec] (https://partners.adobe.com/public/developer/en/tiff/TIFF6)에 잘 설명되어 있습니다. .pdf). 이 값을 변경하려면 Bobrovsky가 말했듯이 이미지를 새 값으로 다시 인코딩해야합니다. – haraldK