
배경
디지털 사진을 일부 백업하고 있었는데 일부 사진이 내 카메라에서 두 개의 다른 폴더로 두 번 가져온 것을 발견했습니다. 그게 문제가 아니예요.
문제는 파일 크기를 비교하던 중 일부 중복 파일이 더 작다는 점입니다(4.6MB 대 5MB). 작은 것들은 Microsoft Photo Viewer
Exif 데이터의 프로그램 이름 필드에 있는 반면, 큰 것들은 해당 필드에 내 카메라 모델이 있다는 것을 알았습니다. 또한 높이와 너비 치수가 바뀌었습니다(이미지가 회전되었습니다).
질문
내 사진이 왜 조작되나요?
파일 크기의 차이는 조작으로 인해 일부 이미지 품질이 손실된다는 것을 의미합니까?
- 아니면 Windows가 내 카메라보다 더 효율적인 JPEG 압축 알고리즘을 사용하는 것이 가능합니까? (둘 다 최소 수준의 JPEG 압축을 사용한다고 가정)
- 아니면 JPEG를 다르게 압축하게 만드는 사진 방향에 대한 뭔가가 있습니까?
답변1
Windows에서는 사진을 회전할 때 Software(Exif)와 CreatorTool(Exif)라는 두 가지 태그를 추가합니다. Windows 탐색기에서는 하나로 표시됩니다.
왜 조작됐나요? 아마도 Windows는 카메라의 회전 태그에 따라 사진을 회전합니다.
사진은 두 가지 방법으로 손실 없이 회전할 수 있습니다(어쩌면 그 이상일까요?). 하나는 Exif 회전 태그입니다. 이미지가 회전되어 표시되어야 하는 것은 이미지 브라우저용 데이터일 뿐입니다. 두 번째는 이미지 데이터("실제" 회전)를 조작하지만 데이터 손실은 없습니다*. 두 사진이 모두 회전된 것을 보면 하나는 Exif 회전 태그가 있고 두 번째 사진은 실제로 Windows에서 회전되었음을 의미합니다. 이미지 브라우저에 Exif 회전 태그가 지원되는 경우 두 사진이 모두 동일하게 표시됩니다.
왜 크기가 변경되었나요? 파일이 없으면 말하기가 어렵습니다. 썸네일이라고 할까요. 일부 카메라는 JPEG 파일에 매우 큰 축소판을 추가하고 Windows에서는 이를 제거하거나 소유로 변경합니다. 이 경우 사진은 건드리지 않지만 메타데이터, 즉 "사진 속 사진"은 건드리지 않습니다. Exiftool 정보( exiftool filename.jpg
)를 보고 메타데이터가 변경되었는지 비교할 수 있습니다. 특히 바이너리 데이터에 대한 정보를 살펴보세요. 아니면 여기로 두 개의 파일(회전된 파일과 원본 파일)을 보내 주시면 확인해 드리겠습니다.
JPEG 압축 - Windows가 JPEG를 다시 압축하는지 의심스럽습니다. 이 경우에는 무손실 작업만 수행하므로 메타데이터만 변경됩니다.
Windows나 카메라 제작자의 도구를 사용하지 않고 직접 사진을 찍는 것이 좋습니다.
그런데 원하는 경우 다음 태그를 제거할 수 있습니다(명령은 현재 디렉터리부터 시작하여 .jpg 확장자를 가진 모든 파일에 대해 반복적으로 작동합니다).
exiftool -preserve -EXIF:Software= -if "$EXIF:Software =~ /(^Microsoft Windows Photo Viewer)/" -r -ext jpg .
exiftool -preserve -XMP:CreatorTool= -if "$XMP:CreatorTool =~ /(^Microsoft Windows Photo Viewer)/" -r -ext jpg .
모든 것이 정상이면 다음을 사용하여 백업을 제거하십시오.
exiftool -delete_originals -r -ext jpg .
*
각각에 8x8픽셀 이미지가 있는 정사각형 타일을 상상해 보십시오. 그런 다음 각 타일을 회전시키십시오. 이것이 바로 Windows가 하는 일입니다. 문제는 타일이 8x8이 아닐 때입니다. 즉, 높이나 너비를 8로 나눌 수 없습니다. 그러면 Windows가 파일을 다시 압축합니다.
답변2
이전 버전의 Microsoft Photo Viewer에서 또 다른 버그를 발견했을 수도 있습니다. EXIF 데이터에 "Microsoft Photo Gallery 6.0.6001.18000"이라는 태그가 붙은 일련의 이미지를 발견했습니다.
XResolution과 YResolution은 96/1이 아닌 1/96으로 잘못 표시되거나 때로는 0/1로, 다른 경우에는 '무한'으로 표시되어 무엇을 표현하려고 했는지 잘 모르겠습니다. 이것은 THUMBNAIL 해상도라고 추가해야 하므로 MS Photo Viewer가 썸네일을 생성하고 있음을 나타낼 수 있습니다.
이로 인해 책을 만들려고 할 때 archive.org에서 문제가 발생했습니다.
이 버전의 Microsoft Photo Gallery는 오래전 버전이므로 버그가 해결된 것으로 추정됩니다.
이러한 잘못된 필드를 수정하려면 'EXIF Pilot' 소프트웨어를 사용해야 했습니다. EXIF 필드에 대량으로 접근할 수 있으면 좋았겠지만 배치 도구는 EXIF Pilot이 포함된 프리미엄 플러그인이고 Total Commander 유료 버전도 없습니다.
이것들은 내 파일이 아니어서 EXIF 데이터가 어떻게 손상되었는지 추측하고 있는데 Microsoft Photo Viewer가 아닐까 의심됩니다.