$ cpanm Image::ExifTool
제 경우에는 문제없이 설치 되었습니다.
#!/usr/bin/env perl
use strict;
use warnings;
use Image::ExifTool;
my $exifTool = new Image::ExifTool;
$exifTool->ExtractInfo('a.jpg');
print "Software: ", $exifTool->GetValue('Software'), "\n";
$exifTool->SetNewValue( 'Software', 'Image::ExitTool' );
if ( $exifTool->WriteInfo( 'a.jpg', 'b.jpg' ) ) {
print "success for WriteInfo\n";
$exifTool->ExtractInfo('b.jpg');
print "Software: ", $exifTool->GetValue('Software'), "\n";
}
~/Desktop $ ls -l *.jpg
-rw-r--r-- 1 hshong hshong 87482 7월 23 2008 a.jpg
-rw-r--r-- 1 hshong hshong 87468 6월 14 14:28 b.jpg
WriteInfo
를 사용했을 때 바뀐 메타데이터 입니다.
BlueTRC
FileAccessDate
FileInodeChangeDate
FileModifyDate
FileName <- 제가 바꾼거
GreenTRC
RedTRC
Software <- 제가 바꾼거
Image::ExifTool
에서는 MIME type 이 application/dicom
은 DICOM
은 write
기능이 지원되지 않습니다. 문서에도 그렇고 테스트 결과도
그렇습니다. 다른 write 가 지원되는 포맷과 어떻게 다른지 탐구생활
해보도록 하겠습니다.
파일을 구성하는 object 의 구조에 대해선
PS 3.5: Data Structure and Encoding#Section 7
에 자세하게 나와있습니다. 요약하면,
파일(dcm 파일)의 구조 표현을 'Data Set' 이라고 한다면, 'Data Set'은 'Data
Element'의 집합으로 구성되어 있습니다.
명시적인 VR 을 사용하는지와 어떤 VR 을 사용하느냐에 따라 Data Element
의 구조가 달라질 수 있습니다. (그래서 3개)
OB|OW|OF|SQ|UT|UN
인 것그런데
에서
qr/.{128}DICM/
에 대한 내용은 찾을 수 없었습니다.Standard Data Element 의 Group Number 는
0x00|0x02|0x04|0x06
를 사용한다는 설명은 있습니다.