写真から映像以外のデータを削除する

写真には Exif(イグジフ or エグジフ)と呼ばれる、映像以外のデータが記録されることがあります。
最近はスマートフォンで写真を取ることが増えたので、自動で Exif が保存されるケースが増えています。

base on Exif(イグジフ)とは - コトバンク

富士フイルムが提唱し、統一規格となった画像保存形式で、ほとんどのデジタルカメラで対応している。
撮影した日時、カメラの型番、撮影条件などを画像ファイルに添付するほか、サムネール画像も保持できる。

目次

良いこと

自動で Exif が保存されていると「いつ・どこ」で写真を撮ったかが分かるため、とても重宝します。
後でスマホを見た時にそれを痛感します。
だって、1年前のことなんて覚えてないですし・・・。

悪いこと

悪いこと、というより "場合により悪くなる" というほうが正解でしょうか。
上述のとおり、Exif が保存されていると「被写体がいつ・どこに居たかが一目瞭然」のため、注意が必要になるシーンが出てきます。
特にインターネットなどに公開する際は(不特定多数の目に触れるのため)気にしたほうが良いでしょう。

Exif 削除

Exif 情報を削除するにはいくつかツールがありますが、今回は exiftool を使うことにしました。

exiftool

exiftool は Perl で書かれた Exif 情報を読み書きするためのツールです。
Exif 情報の参照・変更・削除が可能です。

環境

下記環境で確認しました。

  • Ubuntu 16.04.6 LTS x86
  • Ubuntu 18.04.3 LTS x64

導入

パッケージ libimage-exiftool-perl を導入します。

$ apt-cache search exiftool
libimage-exiftool-perl - library and program to read and write meta information in multimedia files
libimage-info-perl - allows extraction of meta information from image files
ruby-mini-exiftool - wrapper for exiftool command-line

$ sudo apt install libimage-exiftool-perl

以下のパッケージが新たにインストールされます:
  libarchive-zip-perl libimage-exiftool-perl
アップグレード: 0 個、新規インストール: 2 個、削除: 0 個、保留: 0 個。

使い方

コマンド exiftool を利用します。

ヘルプ

引数 --help, -H が使えないので「man exiftool」を使って参照します。
なお、削除には「exiftool -all」を使います。

exiftool -all= dst.jpg
    Delete all meta information from an image.  Note: You should NOT do this to RAW images (except DNG) since proprietary RAW image
    formats often contain information in the makernotes that is necessary for converting the image.

Delete all meta information from an image. Note: You should NOT do this to RAW images (except DNG) since proprietary RAW image

画像からすべてのメタ情報を削除します。注:独自のRAW画像なので、これをRAW画像(DNGを除く)に実行しないでください。

exif 削除

ディレクトリを指定すると全てのファイルが対象になります。
※カレントディレクトリのみ。

$ ls /tmp/pic
20191103_00.jpg  20191103_02.jpg  20191103_04.jpg  20191103_06.jpg
20191103_01.jpg  20191103_03.jpg  20191103_05.jpg  20191103_07.jpg

$ exiftool -all= /tmp/pic/*.jpg
    8 image files updated

確認

Exif 情報を削除すると(自動で)処理前にファイルバックアップが取られました。
※拡張子後ろに「_original」が付与されているものが変更前ファイルになります。

$ ls /tmp/pic/
20191103_00.jpg           20191103_03.jpg           20191103_06.jpg
20191103_00.jpg_original  20191103_03.jpg_original  20191103_06.jpg_original
20191103_01.jpg           20191103_04.jpg           20191103_07.jpg
20191103_01.jpg_original  20191103_04.jpg_original  20191103_07.jpg_original
20191103_02.jpg           20191103_05.jpg
20191103_02.jpg_original  20191103_05.jpg_original
Exif 情報サンプル

オプション無し(引数にファイル名のみ)で exiftool コマンドを実行すると、情報を参照できます。
※下記のように*(アスタリスク)で指定すると、条件にヒットしたファイル情報が順に表示されます。

変更前後比較

変更前と比べると項目自体が減っています。
興味深いのは下記項目がなくなっていることです。

  • Camera Model Name
    下記例だと、FTJ162E(FREETEL RAIJIN)。
  • Date Time
    下記例だと、2019:11:03 09:45:39。
$ diff -y bef.txt aft.txt 
fTool Version Number         : 10.10                  | ======== /tmp/pic/20191103_00.jpg_original
File Name                       : 20191103_00.jpg         | ExifTool Version Number         : 10.10
                                  > File Name                       : 20191103_00.jpg_original
Directory                       : /tmp/pic          Directory                       : /tmp/pic
File Size                       : 1065 kB             | File Size                       : 1067 kB
File Modification Date/Time     : 2019:11:03 14:58:56+09:00   | File Modification Date/Time     : 2019:11:03 14:41:47+09:00
File Access Date/Time           : 2019:11:03 15:02:44+09:00   | File Access Date/Time           : 2019:11:03 14:58:56+09:00
File Inode Change Date/Time     : 2019:11:03 14:58:56+09:00 File Inode Change Date/Time     : 2019:11:03 14:58:56+09:00
File Permissions                : rw-rw-r--         File Permissions                : rw-rw-r--
File Type                       : JPEG              File Type                       : JPEG
File Type Extension             : jpg               File Type Extension             : jpg
MIME Type                       : image/jpeg            MIME Type                       : image/jpeg
                                  > JFIF Version                    : 1.01
                                  > Exif Byte Order                 : Big-endian (Motorola, MM)
                                  > Make                            : Plus One Japan Limited
                                  > Camera Model Name               : FTJ162E
                                  > Orientation                     : Horizontal (normal)
                                  > X Resolution                    : 72
                                  > Y Resolution                    : 72
                                  > Resolution Unit                 : inches
                                  > Modify Date                     : 2019:11:03 14:41:33
                                  > Exposure Time                   : 1/33
                                  > F Number                        : 2.0
                                  > ISO                             : 106
                                  > Exif Version                    : 0210
                                  > Light Source                    : Unknown
                                  > Flashpix Version                : 0100
                                  > Color Space                     : Uncalibrated
                                  > White Balance                   : Auto
                                  > Image Length                    : 2559
                                  > Date Time                       : 2019:11:03 09:45:39
                                  > Flash Pix Version               : FlashPix バージョン 1.0
Image Width                     : 1307              Image Width                     : 1307
Image Height                    : 1727              Image Height                    : 1727
Encoding Process                : Progressive DCT, Huffman co   Encoding Process                : Progressive DCT, Huffman co
Bits Per Sample                 : 8             Bits Per Sample                 : 8
Color Components                : 3             Color Components                : 3
Y Cb Cr Sub Sampling            : YCbCr4:4:4 (1 1)      Y Cb Cr Sub Sampling            : YCbCr4:4:4 (1 1)
                                  > Aperture                        : 2.0
                                  > Flash                           : No Flash
Image Size                      : 1307x1727         Image Size                      : 1307x1727
Megapixels                      : 2.3               Megapixels                      : 2.3
                                  > Shutter Speed                   : 1/33
                                  > Light Value                     : 7.0