web-dev-qa-db-ja.com

JPG画像の作成日を一括でタイムシフトするにはどうすればよいですか? (OS X)

休暇後、不幸な状況になりました。要点は次のとおりです。2台のカメラ。カメラ#1の時計はカメラ#2より2日進んでいます。したがって、(ここに写真管理アプリケーションを挿入)では、写真はインターリーブされてお​​り、適切な時系列ではありません。カメラ#2でこれらの画像の作成日を十分に前に進めることができれば、これらすべての写真を実際に整理するための戦いのチャンスがあります。

誰かがこの経験を共有したり、何かアイデアがありますか?ありがとう!

14
Justin Searls

JPEGEXIFフィールドで動作するツールはかなりたくさんあります。
Phil Harveyの EXIFTool は素晴らしいといつも思っています。

Mac OS Xパッケージ: ExifTool-7.98.dmg (1.4 MB)
OS Xパッケージは、ExifToolコマンドラインアプリケーションとライブラリを/ usr/binにインストールします。
インストール後、ターミナルウィンドウに「exiftool」と入力してexiftoolを実行し、アプリケーションのドキュメントを読みます。

あなたが今探しているのは、

日付/時刻シフト機能
たくさんの写真を撮る前に、デジタルカメラで日付/時刻を設定するのを忘れたことがありますか? ExifToolには、画像のタイムスタンプにバッチ修正を簡単に適用できるタイムシフト機能があります(つまり、Windowsエクスプローラーによって報告される「撮影日」を変更します)。

たとえば、カメラの時計が2000:01:0100:00:00にリセットされたとします。
2005:11:03 10:48:00
に新しいバッテリーを入れたとき。
その後に撮影したすべての写真のタイムスタンプが間違っています
5年、10か月、2日、10時間、48分。

これを修正するには、すべてのイメージを同じディレクトリ( "DIR")に置き、exiftoolを実行します。

 exiftool "-DateTimeOriginal + = 5:10:2 10:48:0" DIR 
 ================= ^^^^^^ ^^^^^^^^^^ 

誤ってスタンプされたバッチを2日先に調整する必要があります。


更新:iPhotoの作成時間と変更時間の操作に向けて、
EXIFToolのメモは 日付/時刻シフト機能 セクションに続きます。

上記の例では、DateTimeOriginalタグのみが変更されています。
ただし、書き込み可能な日付または時刻タグはシフトできますが、
および複数のタグを1つのコマンドラインで書き込むことができます。

通常、JPEG画像では、DateTimeOriginalCreateDate、およびModifyDateの値はすべて変更する必要があります。

便宜上、これら3つのタグを表すためにAllDatesというショートカットタグが定義されています。
たとえば、秋の夏時間の終わりにカメラの時計を1時間戻すのを忘れた場合、次の方法で画像を修正できます。

 exiftool "-AllDates- = 1" DIR 
 ========= ^^^ 

これにより、すべてのタイムスタンプが1時間ロールバックされます。
うまくいけば、あなたの元のファイルがこれを行うために利用可能です...

最後に、元のメタデータを修正した場合、
ただし、ファイル時間が正しくありません

次のことができます、

 exiftool "-DateTimeOriginal> FileModifyDate" DIR 
 ^ 

これにより、修正されたEXIFタイムスタンプがファイルの変更時刻にプッシュされます。

23
nik

これにより、Sony-Camで取得したすべてのEXIF日付(+ = 24時間)が変更されました。

exiftool "-AllDates+=24 -SonyDateTime+=24" DIR

2番目のステップで、exif-datesと一致するようにfile-modify-dateを変更しました。

exiftool "-DateTimeOriginal>FileModifyDate" DIR

DateTimeOriginalはSonyDateTimeから値を取得しているようです。

1
user44826

nikの回答は、ファイル内のEXIFデータに対して確実に機能しました(回答を探しているこのスレッドを見つけた人の情報については、問題の写真のEXIFデータをインプレースで更新するために使用したコマンドを次に示します)。

~/Pictures/iPhoto Library/Originals/2009$ exiftool -P -AllDates+='0:0:1 2:00:00' - overwrite_original_in_place -if '$make eq "Canon"' "My Import Name Here"

もちろん、これでは問題は解決しませんでした。iPhotoはEXIFの日付を無視し、作成日またはデータベースにあるものを介して整理しているからです。

新しい解決策:私はばかで、iPhoto '08以降、実際に時間調整機能が追加されました。メニュー項目Photo -> Adjust Date and Time。実際には新しいファイルが作成され、元のEXIFデータのほぼすべてが台無しになりますが、少なくとも写真は最終的にiPhotoで適切に整理されます。

1
Justin Searls

IPhotoがファイルシステムの日付/時刻を使用する場合は、これを実行してEXIF情報から設定します。

exiftool "-filemodifydate<datetimeoriginal" DIR

iPhotoにインポートする前に

メタデータを台無しにする必要はありません

1
Phil Harvey

Graphic Converterは、大量の画像を管理するための優れたツールでもあります。それはある種の名前変更redate関数を持っています。ピクセル数、正確なピクセルサイズ、ファイルサイズなどに変換します。thumb.dbファイルを残す代わりにプレビュー(柔軟なサイズ/アイコンスタイル)を埋め込みます。また、Finderよりも優れたFinderです。逆ライトルームの外観のオプションを備えたWindowsのエクスプローラーに似ています。画像だけでなく、もっとたくさん閲覧しています!

0
bert