ai_project_v1/middleware/read_pic_metadata.py

25 lines
785 B
Python

import exifread
import json
# 读取大疆的图片的元信息,并返回前端,输入为图片的路径
def read_dji_exif_to_dict(image_path):
with open(image_path, 'rb') as f:
tags = exifread.process_file(f)
# 初始化结果字典
exif_dict = {
"all_tags": {},
"dji_tags": {}
}
# 处理所有标签(排除缩略图和文件名)
for tag in tags.keys():
if tag not in ('JPEGThumbnail', 'TIFFThumbnail', 'Filename'):
exif_dict["all_tags"][str(tag)] = str(tags[tag]) # 统一转为字符串
# 提取大疆特有标签
dji_tags = [k for k in tags.keys() if 'DJI' in str(k) or 'Drone' in str(k)]
for tag in dji_tags:
exif_dict["dji_tags"][str(tag)] = str(tags[tag])
return exif_dict