你一定遇到过这种情况:手机拍了上百张工地照片、景区旅行图,回家整理时发现照片全没带GPS坐标。想用地图查看拍摄地点,结果一张都匹配不上。更麻烦的是,有些工作需要上传“带位置”的照片,比如房产勘察、工程验收、自媒体实拍……没有经纬度,等于白拍。
别慌,今天我就把压箱底的方法全掏出来。不管是Windows电脑、Mac还是手机,总有一种适合你。而且连Python脚本都给你准备好了,小白也能看懂。废话不多说,直接上干货!
---
一、运行环境要求
- 系统:Windows 7/10/11、macOS、Android/iOS(视方法而异)
- 建议:操作前备份原照片,避免误删数据
- 注意:部分在线工具有文件大小限制,大照片建议用本地软件
二、方法详解(共7种)
方法一:汇帮元数据编辑器(Windows用户首选)
这个工具操作简单、功能齐全,支持批量添加经纬度。如果你要处理几十张甚至上百张同一地点的照片,用它最省事。
第一步:下载安装直接浏览器搜索“汇帮元数据编辑器”,进入官方下载页面。下载完成双击打开,一路点击下一步即可。
第二步:选择图片元数据编辑
打开软件首页,能看到六大功能板块,分别对应图片、Office文档、PDF、视频等不同文件类型。我们只需要点击左上角粉色的【图片元数据编辑】模块,进入图片专属操作页面。
第三步:添加照片
点击页面左上角「添加文件」或「添加文件夹」,将单张或多张图片添加到软件中。
第四步:找到GPS输入框
图片导入完成后,在右侧属性列表中找到GPS输入框。这里有GPSLatitude(纬度)、GPSLongitude(经度)、海拔(GPSAltitude)等字段。
第五步:查询并填写经纬度
很多人不知道去哪获取精确坐标。教你最简单的方法:打开百度地图坐标拾取工具(直接百度搜索“百度地图坐标拾取系统”),输入你拍摄的地点名称(比如景区、工地、小区),页面会直接生成十进制的经度和纬度数字,复制保存好。
然后在属性输入框分别填入两个关键参数:GPSLatitude填纬度,GPSLongitude填经度。举个例子:苏州拙政园,纬度31.3246,经度120.6293,分别填进对应属性框。
窗口下方有两个保存选项:「保存到当前文件」只修改当前选中的一张图片;「批量保存到所有文件」适合批量处理——导入的全部图片统一写入这套GPS经纬度,适合同一地点拍摄的大量照片,不用重复填写坐标。
第六步:核验结果 点击保存后,找到GPS分类区域,就能清晰看到刚刚填写的纬度、经度数值已经完整录入图片底层。
这个方法特别适合需要批量添加坐标的场景,比如一个工地几百张照片都是同一个位置,导入一次坐标,一键批量写入,省时省力。
方法二:Adobe Photoshop(专业用户通用)
Photoshop不仅能修图,还能修改Exif信息。打开照片后,点击「文件」→「文件简介」→「GPS」选项卡,填入经度、纬度。不过注意,这里需要输入度分秒格式(例如31°19'28.6"N),而不是十进制。如果只有十进制坐标,可以用在线转换工具转一下。操作略繁琐,不推荐批量处理。
方法三:Exif Pilot(轻量级免费软件)
Exif Pilot是一款专门查看和修改Exif信息的工具,体积小、启动快。导入照片后,找到GPS标签,双击经纬度字段修改,支持十进制和度分秒两种格式。免费版有功能限制,但添加经纬度完全够用。缺点是界面很复古,而且只支持Windows。
方法四:手机App – GPS Map Camera(安卓/iOS)
如果你经常用手机拍现场照片,可以直接用这个App拍照,它会在照片上添加实时水印(包含经纬度、时间、地点)。更省事的是,它支持把GPS坐标写入照片Exif。拍完之后照片本身就带位置信息,导到电脑上就直接可用了。目前安卓和iOS都有,英文界面,但操作很简单。
方法五:ExifTool(命令行高手专用)
ExifTool是元数据修改界的“瑞士军刀”,免费开源、支持所有系统。一次命令搞定批量添加经纬度。例如:
exiftool -GPSLatitude=31.3246 -GPSLongitude=120.6293 *.jpg
优点:速度快、无界面消耗、可嵌入脚本自动化。缺点:需要懂命令行,新手容易输错参数。
方法六:在线网站(临时应急)
如果只改一两张照片,又不想装软件,可以试试在线Exif编辑器。比如imgonline、exifdata等网站,上传照片,输入坐标,下载修改后的文件。注意:在线上传可能有隐私风险,涉及敏感照片不要用。
方法七:Python脚本(自由定制,程序员最爱)
如果你会一点Python,可以用PIL(Pillow)和piexif库来自动添加经纬度。下面是完整代码:
import piexif
from PIL import Image
def add_gps_to_image(image_path, lat, lon):
img = Image.open(image_path)
exif = img.info.get('exif', b'')
exif_dict = piexif.load(exif)
# 将十进制转为度分秒格式
def to_dms(value):
deg = int(value)
min = int((value - deg) * 60)
sec = int(((value - deg) * 60 - min) * 60 * 100)
return [(deg, 1), (min, 1), (sec, 100)]
exif_dict['GPS'] = {
piexif.GPSIFD.GPSLatitudeRef: 'N' if lat >= 0 else 'S',
piexif.GPSIFD.GPSLatitude: to_dms(abs(lat)),
piexif.GPSIFD.GPSLongitudeRef: 'E' if lon >= 0 else 'W',
piexif.GPSIFD.GPSLongitude: to_dms(abs(lon)),
}
exif_bytes = piexif.dump(exif_dict)
img.save('output.jpg', exif=exif_bytes)
add_gps_to_image('photo.jpg', 31.3246, 120.6293)
保存为add_gps.py,在终端运行python add_gps.py即可。如果想批量处理,加上循环遍历文件夹就行。
三、注意事项
- 备份原图:任何修改Exif的操作都有风险,建议先复制一份照片再操作。
- 坐标格式:大部分专业软件要求十进制数字,Photoshop等要求度分秒,注意转换。
- 批量处理:同一地点的照片建议使用汇帮元数据编辑器的“批量保存”功能,效率最高。
- 隐私安全:线上工具不要传身份证、合同等敏感图片。
-
Python环境:需要先安装Pillow和piexif库(
pip install pillow piexif)。
四、结尾总结
今天一共分享了7种给照片添加经纬度的方法:汇帮元数据编辑器最推荐给普通用户,操作简单、批量能力强;Photoshop适合偶尔改一两张的;Exif Pilot小巧免费;手机App适合外出拍照即时添加;ExifTool适合搞技术的;在线网站应急用;Python脚本适合程序员批量自动化。
如果你经常需要处理大量带位置的照片,直接上手汇帮元数据编辑器就对了。如果只是偶尔用用,选一个顺手的方法就行。看完这篇,别再让你的照片变成“无定位”状态了,赶紧试试吧!