Python

Python3で画像から撮影日時のみを抽出(Pillow)

Pythone3で画像から撮影日時のみを抽出(Pillow) Python
この記事は約5分で読めます。
piyo
piyo
今日の運勢

ExifデータとPillowを使用してPythonで画像の撮影日時を表示

Python3で一度コードを書けば、ファイル名を変えるだけで、簡単に撮影日時の確認が可能になります。

完成をすると、下記のように表示されます。

Exifデータとは

Exifデータとは、Exchangeable Image File Format(エクスチェンジャブル・イメージ・ファイル・フォーマット)の略で、デジタルカメラやスマートフォンなどの機器で撮影したデジタル写真に付与される撮影情報や位置情報などのデータのことです。

Exifデータには、以下のようなものが含まれます。

  • 撮影日時
  • カメラの機種名
  • レンズの焦点距離
  • 絞り値
  • ISO感度
  • 露出補正
  • ホワイトバランス
  • シャッタースピード
  • 画像サイズ
  • 画素数
  • 撮影場所(GPS機能がONの場合)

Exifデータは、写真の管理や編集に便利な情報です。たとえば、撮影日時やカメラの機種名を確認することで、写真を撮影した時期や状況を思い出すことができます。また、絞り値やISO感度を確認することで、画像の明るさやノイズの量を調整することができます。

piyo
piyo

Exifデータは、Photoshopで加工したり、一部のSNSにUPすると消えるよ。消えちゃっているデータは取得できないよ。

Exifデータは、画像ファイルのヘッダー部分に埋め込まれています。そのため、画像ビューワーや画像編集ソフトなどで画像を開くと、Exifデータを表示することができます。

使用素材

コチラの渋谷の画像で作成していきます。

Pythonのバージョン

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

Dockを立ち上げる

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

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

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

Pillowをインストール

Pillowとは

Pillowは、Pythonの画像処理ライブラリであり、画像の生成、変換、処理、表示などの機能を提供します。Pillowは、Python Imaging Library(PIL)のフォークであり、PILの後継として開発されました。画像処理や画像生成など、様々なタスクに利用できます。

Pillowの主な機能には以下が含まれます

  1. 画像の読み込みと保存: Pillowはさまざまな画像形式に対応しており、画像の読み込みや保存が容易に行えます。例えば、JPEG、PNG、GIF、BMP、TIFFなどの形式に対応しています。
  2. 画像の変換と処理: 画像のサイズ変更、回転、切り抜き、フィルタの適用など、さまざまな変換や処理を実行することができます。
  3. 画像の合成: 複数の画像を合成して1つの画像にすることができます。透過処理や重ね合わせなどが可能です。
  4. テキストや図形の描画: 画像にテキストや図形を描画する機能があります。これを使って、画像に文字を追加することができます。
  5. 色空間の変換: 画像の色空間を変換することができます。例えば、RGBからグレースケールへの変換などが可能です。
  6. 画像の表示: Pillowを使用して画像を表示することもできます。主にJupyter Notebookなどで利用されます。

Pillowは、Pythonのプロジェクトで画像処理が必要な場合や、データサイエンス、機械学習、ウェブ開発など幅広い領域で活用されています。ライブラリの使いやすさと豊富な機能セットにより、多くの開発者が画像処理タスクを行うためにPillowを採用しています。

Pillowをインストール方法

インストール済みの方は無しでOKです。

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

pip install Pillow

>Enter

EXIFの日時データを書き出してターミナルに書くコードを記入する

from PIL import Image
from PIL.ExifTags import TAGS

# 画像ファイルを開く
im = Image.open('test.jpg')
# EXIF情報の取得
exif = im._getexif()
# 日時表示
for id, value in exif.items():
    if TAGS.get(id, id) == "DateTimeOriginal":
        print(value)

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

Pythonの拡張子で保存

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

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

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

Dockを立ち上げる

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

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

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

読み込み場所を指定する

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

cd ディレクトリーを記入

>Enter

piyo
piyo

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

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

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

Python␣読み込むファイル名

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

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

>Enter

完成

ターミナルに撮影日時が表示されます。

2022年11月2日17:21分

撮影日時のファイル名にする方法はこちら▼

その他のデーター抽出方法はこちら▼

コメント

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