Up Exif python で読み込む 作成: 2024-12-30
更新: 2024-12-30


    from PIL import Image path = '1.jpg' im = Image.open(path) im._getexif() ------------------------------- ~/night_sky $ python3 Python 3.7.3 (default, Jan 22 2021, 20:04:44) [GCC 8.3.0] on linux Type "help", "copyright", "credits" or "license" for more information. >>>from PIL import Image >>> path = '1.jpg' >>> im = Image.open(path) >>> im._getexif() {256: 2000, 257: 2000, 296: 2, 34665: 192, 271: 'RaspberryPi', 272: 'RP_imx219', 306: '2024:12:26 22:21:38', 531: 1, 282: (72, 1), 283: (72, 1), 36864: b'0220', 37121: b'\x01\x02\x03\x00', 37377: (145, 1000000), 36867: '2024:12:26 22:21:38', 36868: '2024:12:26 22:21:38', 37378: (20000, 10000), 37379: (1, 100), 37381: (20000, 10000), 37383: 2, 37385: 0, 37386: (30390, 10000), 40961: 1, 40962: 2000, 40965: 920, 40963: 2000, 33434: (999899, 1000000), 33437: (20000, 10000), 34850: 3, 34855: 400, 41986: 0, 40960: b'0100', 41987: 0, 37500: b'ev=-1 mlux=-1 exp=999899 ag=1171 focus=255 gain_r=1.523 gain_b=1.843 greenness=0 ccm=5604,-782,-722,-1566,6858,-1192,278,-2040,5864,0,0,0 md=0 tg=50322 50322 oth=0 0 b=0 f=50322 50322 fi=0 ISP Build Date: Feb 25 2021, 12:13:02 VC_BUILD_ID_VERSION: 564e5f9b852b23a330b1764bcf0b2d022a20afd0 (clean) VC_BUILD_ID_USER: dom VC_BUILD_ID_BRANCH: bcm2711_2 '} ==================================================== SE_BOKUのまとめノート的ブログ : 「Python3で「Exif情報の参照・削除」と
    「GPSから経度・緯度を計算」 / Pythonサンプル」
    から引用
    from PIL import Image import PIL.ExifTags as ExifTags class ExifImage: def __init__(self, fname): self.img = Image.open(fname) self.exif = {} if self.img._getexif(): for k, v in self.img._getexif().items(): if k in ExifTags.TAGS: self.exif[ExifTags.TAGS[k]] = v def print(self): if self.exif: for k, v in self.exif.items(): print(k, ":", v) else: print("exif情報は記録されていません。") a = ExifImage("1.jpg") a.print() 空白行を除く: from PIL import Image import PIL.ExifTags as ExifTags class ExifImage: def __init__(self, fname): self.img = Image.open(fname) self.exif = {} if self.img._getexif(): for k, v in self.img._getexif().items(): if k in ExifTags.TAGS: self.exif[ExifTags.TAGS[k]] = v def print(self): if self.exif: for k, v in self.exif.items(): print(k, ":", v) else: print("exif情報は記録されていません。") a = ExifImage("1.jpg") a.print() これ全体をコピーして,python プロンプト >>> に対しペーストすると: ImageWidth : 2000 ImageLength : 2000 ResolutionUnit : 2 ExifOffset : 192 Make : RaspberryPi Model : RP_imx219 DateTime : 2024:12:26 22:21:38 YCbCrPositioning : 1 XResolution : (72, 1) YResolution : (72, 1) ExifVersion : b'0220' ComponentsConfiguration : b'\x01\x02\x03\x00' ShutterSpeedValue : (145, 1000000) DateTimeOriginal : 2024:12:26 22:21:38 DateTimeDigitized : 2024:12:26 22:21:38 ApertureValue : (20000, 10000) BrightnessValue : (1, 100) MaxApertureValue : (20000, 10000) MeteringMode : 2 Flash : 0 FocalLength : (30390, 10000) ColorSpace : 1 ExifImageWidth : 2000 ExifInteroperabilityOffset : 920 ExifImageHeight : 2000 ExposureTime : (999899, 1000000) FNumber : (20000, 10000) ExposureProgram : 3 ISOSpeedRatings : 400 ExposureMode : 0 FlashPixVersion : b'0100' WhiteBalance : 0 MakerNote : b'ev=-1 mlux=-1 exp=999899 ag=1171 focus=255 gain_r=1.523 gain_b=1.843 greenness=0 ccm=5604,-782,-722,-1566,6858,-1192,278,-2040,5864,0,0,0 md=0 tg=50322 50322 oth=0 0 b=0 f=50322 50322 fi=0 ISP Build Date: Feb 25 2021, 12:13:02 VC_BUILD_ID_VERSION: 564e5f9b852b23a330b1764bcf0b2d022a20afd0 (clean) VC_BUILD_ID_USER: dom VC_BUILD_ID_BRANCH: bcm2711_2 '