exiftool - 将文本文件转换为 GPS 轨迹文件
问题描述
注:问题根据建议编辑
我想对我的图像进行地理标记
im1.jpg im2.jpg
我尝试了使用 csv 的解决方案,但收到此错误
我有一个 csv 文件adata.csv
SourceFile,DateTimeOriginal,GPSLatitude,GPSLongitude,GPSLatitudeRef,GPSLongitudeRef
im1.jpg,1635.387709,52.23829321,10.54680910,52.23829321,10.54680910
im2.jpg,1645.892446,52.23828047,10.54680857,52.23828047,10.54680857
C:\EXIF>exiftool -csv=adata.csv Images
错误:
C:\EXIF>exiftool -csv=adata.csv Images
No SourceFile 'Images/im1.jpg' in imported CSV database
(full path: 'c:/exif/images/im1.jpg')
No SourceFile 'Images/im2.jpg' in imported CSV database
(full path: 'c:/exif/images/im2.jpg')
1 directories scanned
0 image files read
解决方案
我对 gpx 格式了解不多,但您的示例不包含时间戳,exiftool 需要时间戳才能在图像和轨道之间同步。另一件需要注意的事情是 gpx 时间戳应该是 UTC,这可能需要一些工作才能正确同步,特别是如果您的文本文件中的时间戳是本地时间。
相反,我建议将您的 TXT 文件转换为 CSV 文件并使用-csv
选项. 需要进行一些简单的更改。第一列需要更改为文件名,看起来只需要添加.jpg
到第一列中的每个数字。第一列的列标题需要更改为SourceFile
. 可以删除 Time 列,除非您需要将时间戳添加到图像文件中,在这种情况下,我建议将列标题更改为DateTimeOriginal
. 纬度和经度列标题需要更改为GPSLatitude
和GPSLongitude
。最后,由于 GPS 元数据未签名,您需要设置参考标签。复制GPSLatitude
和GPSLongitude
列并将标题更改为GPSLatitudeRef
和GPSLongitudeRef
. 在 Excel 或 LibreOffice 等电子表格程序中,这一切都应该相对容易。
此时,您的新 CSV 文件应如下所示:
SourceFile,DateTimeOriginal,GPSLatitude,GPSLongitude,GPSLatitudeRef,GPSLongitudeRef
1.jpg,13:22:05,45.9874167,-76.875233,45.9874167,-76.875233
然后您可以运行此命令来填充 gps 数据
exiftool -csv=data.csv c:\Images
推荐阅读
- php - php,mqtt: stream_socket_client(): 无法连接
- gradle - 如何为gradle中的特定依赖项生成坐标文件?
- php - 在 xampp 中通过 php 脚本运行 mysqldump 命令,但 .sql 为空
- reactjs - 列表上的 React Material UI 工具提示不会在悬停时保持打开状态
- javascript - 如何将 JavaScript 变量设置为 ASP.NET 会话?
- python - 用python指针打印链表
- spring-boot - 在 Spring Boot 中使用 Feign 时将 URL 翻倍
- c# - 基于用户输入构建类
- javascript - AWS CloudFront Signed Cookies CORS Issue
- javascript - Get coordinates of a property from post meta data and show it on map in WordPress