Python

Python3で画像の全てのExifデータ抽出をしてターミナルに書き出す(Pillow)

Pythone3で画像の全てのExifデータ抽出をしてターミナルに書き出す(Pillow) Python
この記事は約5分で読めます。
piyo
piyo
今日の運勢

Python3で全てのExifデータを抽出する

前回は、Exifデータについてと日時の書き出しをしてみました。前回の記事はこちら▼

今回は、全てのデーターの書き出しをしてみます。

取得できたデータ内容

このような内容を画像から取得できます。

  1. カメラ情報:
    • メーカー: SONY
    • モデル: ILCE-7C
    • ソフトウェア: ILCE-7C v2.00
  2. 撮影日時:
    • 2022年11月18日 04:00:40に撮影されました。
  3. 解像度:
    • XおよびY方向の解像度: 350.0 DPI
    • ResolutionUnit: インチあたりのドット数を示す指標で、ここではインチを基準としていることを示しています。
  4. 露出関連:
    • 露出時間: 0.033秒 (約1/30秒)
      • 短い露出時間は、動きの速い被写体をキャッチするのに適しています。
    • 絞り値: f/4.0
      • 絞り値が小さいほど、被写界深度が浅く、ボケが強調されます。
    • ISO感度: 1600
      • ISO感度が高いほど、低照明条件での写真が可能ですが、ノイズも増加します。
  5. レンズ情報:
    • レンズの焦点距離: 28.0mm
      • 焦点距離が短いほど広角で、被写体全体を収めやすくなります。
    • レンズモデル: FE 28-60mm F4-5.6
      • レンズの特定のモデルと仕様。
  6. 画像サイズ:
    • 幅: 1920ピクセル
    • 高さ: 1080ピクセル
    • これは画像の縦横のピクセル数を示しています。
  7. その他の撮影設定:
    • 露出プログラム: プログラムAE (自動露出)
    • カスタムレンダリング: あり (ユーザーがカメラの設定をカスタマイズしていることを示唆)
    • デジタルズーム比率: 1.0 (デジタルズームは行われていない)
    • 35mmフィルム換算焦点距離: 28mm
  8. カメラの機能:
    • コントラスト: 2 (ユーザーが設定したコントラストの度合い)
    • 彩度: 0 (ユーザーが設定した彩度の度合い)
    • シャープネス: 0 (ユーザーが設定したシャープネスの度合い)
  9. その他の情報:
    • ユーザーコメント: なし (ユーザーによる写真へのコメントが埋め込まれていない)
    • メーカーノート: SONY DSC (SONYのデジタルスチルカメラ用のメーカーによる補足情報)

※一部の項目は写真の撮影条件や設定に関するものであり、一般の人が理解するには写真やカメラの基本的な知識が必要になるので、一部を抜粋して載せています。

Pythonのバージョン

Python3.12.1のバージョンを使用しています。

使用素材

前回同様、コチラの画像で作成していきます。

piyo
piyo

渋谷スクランブル交差点付近だね。

Dockを立ち上げる

command+「スペースキー」で検索窓が出てくる>「ターミナル」と記入>

「自分のPC名〜%」の後ろに記入していきます。

(例)gotoaya@AGMacBook-Air ~ % ←ここの後ろに記入

Pillowをインストール

Pillowを入れた記憶のない方はコチラを記入してインストール

※インストール済みの方は飛ばしてください。

pip install Pillow

>Enter

EXIFの全データを書き出してターミナルに書き出すコード

Visual Studio Codeで記入しました。

from PIL import Image
from PIL.ExifTags import TAGS

# 画像ファイルを開く
im = Image.open('test.jpg')
# EXIF情報を得る
exif = im._getexif()
# 一覧で表示
for tag, value in exif.items():
    tag_name = TAGS.get(tag, tag)
    print(f"{tag_name}: {value}")

※今回の元画像のデーター名は「test.jpg」にしています。

Pythonの拡張子で保存

Pythonの拡張子(.py)で保存して画像と同じフォルダに入れる。

一つのフォルダに画像と.pyコードを格納

今回は「test10」という名前のフォルダに格納しました

Dockを立ち上げる

command+「スペースキー」で検索窓が出てくる>「ターミナル」と記入>

「自分のPC名〜%」の後ろに記入していきます。

(例)gotoaya@AGMacBook-Air ~ % ←ここの後ろに記入

読み込み場所を指定する

cd␣全部格納した、ディレクトリーを記入

cd ディレクトリーを記入

>Enter

piyo
piyo

cdの後ろにスペースを入れないとダメピヨ!

※フォルダーのディレクトリーが分からない時は、フォルダーをターミナルにドラックすると表示されるよ。

「Python ファイル名」を記入して「Enter」

Python␣読み込むファイル名

Python 読み込むファイル名
piyo
piyo

Pythonの後ろにスペースを入れないとダメピヨ!

>Enter

完成

同じフォルダ内を再確認すると完成画像が登場しています。

コメント

タイトルとURLをコピーしました