JPEGのEXIFデータ編集をUbuntuでやってみる

今作っているものの写真をアップロードしようかと思っているのだが、JPEGにはEXIFデータという撮影日時やGPSに基づく撮影場所などが併せて記録されていて、注意しないと自宅の場所を全世界に大公開、ということになってしまう。

そこで、Linux(Ubuntu)でEXIFデータの編集方法を調べてみると、jhead というのが比較的一般的なようである。例によって Synapticパッケージマネージャで検索すると、パッケージとして存在しているので、インストール指定をすると、依存するlibjpeg-progsというのも併せてインストールするか聞いてきたので、チェックマークをつけて、インストールを行う。インストールはあっという間に終わる。

コンソールを開いて、

$ jhead -h

とすると、簡単な使い方が出てくる。
自分が狙う使い方は、

$ jhead [options] files

で自分が使いそうなオプションとしては、

  • -mkexif
    新しい最小限のEXIFセクションを作成する(既存のEXIFは上書きされる)
  • -purejpg
    全ての不要なデータをJPEGから削除する
    (ここで言っているJPEGがEXIFを含まないJPEG規格そのものを指しているのだろうか??)

だけだろう。

早速、試してみることにする。まず、適用前の写真のうちの1枚のEXIFは以下のようになっている。(ファイルブラウザを右クリックしてプロパティを表示した)

ごらんの通り、デジカメはDSC-HX5Vで2010年9月21日に撮影したということがわかる。画像のサイズは、撮影時は最大解像度で撮影しているのだが、写真を探したりPCで見たりする場合には大きすぎて遅いので、irfanviewで一括解像度変換をかけて縦横の長辺が1200画素になるようにしてある。ツールによってはこの時にEXIFデータが落ちるものもあるようだが、irfanviewはEXIFデータはGPSデータを含めて保存されるので、GoogleEarthなどで撮影場所などの表示ができて自分で楽しむ分には非常に楽しい。一方で、余計な情報を含んでいるので、このままWebに使うには危険なのである。

そこで、写真が保存されているディレクトリにて、

$ jhead -mkexif *

とすると、フォルダ内の画像ファイルの余計なEXIFをすべて初期化してくれる。消去後の同じファイルの情報を確認すると以下のようにすっきりしたものになっていることが確認できる。

ただ、すべて消えるのかと思っていたが、それでも撮影日時だけは残っている。
そこで、

$ jhead -purejpg *

とすると、

となって、日付情報もなくなった。これで安心してアップロードができる。
アップロードするファイルが集めてある素材候補のフォルダがあれば、上位ディレクトリなどで、

$ jhead -purejpg */*
などとすると、一つ下の階層のディレクトリのJPEGファイルが一気に処理できるので楽ちん。

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)