本文整理汇总了Python中PIL.ExifTags.GPSTAGS.items方法的典型用法代码示例。如果您正苦于以下问题:Python GPSTAGS.items方法的具体用法?Python GPSTAGS.items怎么用?Python GPSTAGS.items使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类PIL.ExifTags.GPSTAGS
的用法示例。
在下文中一共展示了GPSTAGS.items方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: for
# 需要导入模块: from PIL.ExifTags import GPSTAGS [as 别名]
# 或者: from PIL.ExifTags.GPSTAGS import items [as 别名]
# coding: utf-8
from PIL.ExifTags import TAGS, GPSTAGS
RTAGS = {v: k for (k, v) in TAGS.items()}
RGPSTAGS = {v: k for (k, v) in GPSTAGS.items()}
GPSINFO = RTAGS["GPSInfo"]
def coord_to_deg(values):
# every coordinate is a list of 3 pairs
# every pair is a fraction ( (n, d) -> n/d )
# the 3 values are °, ' and " (degree, minute and second)
deg = 0
for i in range(3):
(n, d) = values[i]
if d != 0:
deg += n/(d * (60.**i))
return deg
def extract_location(image):
if not hasattr(image, "_getexif"):
return {}
exif = image._getexif()
if not exif:
return {}
try:
gpsinfo = exif[GPSINFO]
lat = coord_to_deg(gpsinfo[RGPSTAGS["GPSLatitude"]])
if gpsinfo[RGPSTAGS["GPSLatitudeRef"]] == "S":
lat = -lat
lng = coord_to_deg(gpsinfo[RGPSTAGS["GPSLongitude"]])