返回顶部
首页 > 资讯 > 后端开发 > Python >Java解析照片拿到GPS位置数据的详细步骤
  • 164
分享到

Java解析照片拿到GPS位置数据的详细步骤

2024-04-02 19:04:59 164人浏览 薄情痞子

Python 官方文档:入门教程 => 点击学习

摘要

目录1.前提条件2.代码环境Java代码逐步解析照片拿到GPS位置数据,附上步骤讲解,附上源代码和jar包依赖 1.前提条件 第一,检查你图片是否是高清原图;第二,检查你的图片是否来

Java代码逐步解析照片拿到GPS位置数据,附上步骤讲解,附上源代码和jar包依赖

1.前提条件

第一,检查你图片是否是高清原图;
第二,检查你的图片是否来自IPhone设备;
第三,检查你拍照片时,是否打开了GPS;
三者缺一不可

2.代码环境

A:需要的Jar包:

 <dependency>
            <groupId>com.drewnoakes</groupId>
            <artifactId>metadata-extractor</artifactId>
            <version>2.12.0</version>
 </dependency>

B:开发环境

1.Maven 引入jar包
2.jdk 1.8
3.windows OS

C:核心代码

import com.drew.imaging.jpeg.JpegMetadataReader;
import com.drew.imaging.jpeg.JpegProcessingException;
import com.drew.metadata.Directory;
import com.drew.metadata.Metadata;
import com.drew.metadata.Tag;

import java.io.File;
import java.io.IOException;
import java.util.Iterator;
public class PictureTest {
    public static  void readPic() {
        System.out.println("开始读取图片信息...");
        File jpegFile = new File("18.jpg");
        Metadata metadata;
        try {
            metadata = JpegMetadataReader.readMetadata(jpegFile);
            Iterator<Directory> it = metadata.getDirectories().iterator();
            while (it.hasNext()) {
                Directory exif = it.next();
                Iterator<Tag> tags = exif.getTags().iterator();
                while (tags.hasNext()) {
                    Tag tag = (Tag) tags.next();
                    System.out.println(tag);
                }
            }
            System.out.println("图片信息读取完成!");
        } catch (JpegProcessingException e) {
            e.printStackTrace();
        } catch (IOException e) {
        }
    }
}

D:照片信息提取结果:

开始读取图片信息...
[JPEG] Compression Type - Baseline
[JPEG] Data Precision - 8 bits
[JPEG] Image Height - 3456 pixels
[JPEG] Image Width - 4608 pixels
[JPEG] Number of Components - 3
[JPEG] Component 1 - Y component: Quantization table 0, Sampling factors 2 horiz/2 vert
[JPEG] Component 2 - Cb component: Quantization table 1, Sampling factors 1 horiz/1 vert
[JPEG] Component 3 - Cr component: Quantization table 1, Sampling factors 1 horiz/1 vert
[Exif IFD0] Image Width - 4608 pixels
[Exif IFD0] Image Height - 3456 pixels
[Exif IFD0] Make - OnePlus
[Exif IFD0] Model - ONEPLUS A6010
[Exif IFD0] Orientation - Right side, top (Rotate 90 CW)
[Exif IFD0] X Resolution - 72 dots per inch
[Exif IFD0] Y Resolution - 72 dots per inch
[Exif IFD0] Resolution Unit - Inch
[Exif IFD0] Date/Time - 2019:09:03 10:41:29
[Exif IFD0] YCbCr Positioning - Center of pixel array
[Exif SubIFD] Exposure Time - 1/1445 sec
[Exif SubIFD] F-Number - f/1.7
[Exif SubIFD] Exposure Program - Program nORMal
[Exif SubIFD] ISO Speed Ratings - 100
[Exif SubIFD] Exif Version - 2.20
[Exif SubIFD] Date/Time Original - 2019:09:03 10:41:29
[Exif SubIFD] Date/Time Digitized - 2019:09:03 10:41:29
[Exif SubIFD] Components Configuration - YCbCr
[Exif SubIFD] Shutter Speed Value - 1/1444 sec
[Exif SubIFD] Aperture Value - f/1.7
[Exif SubIFD] Brightness Value - 3.9
[Exif SubIFD] Exposure Bias Value - 0 EV
[Exif SubIFD] Max Aperture Value - f/1.7
[Exif SubIFD] Metering Mode - Center weighted average
[Exif SubIFD] White Balance - Unknown
[Exif SubIFD] Flash - Flash did not fire, auto
[Exif SubIFD] Focal Length - 4.3 mm
[Exif SubIFD] Sub-Sec Time - 260556
[Exif SubIFD] Sub-Sec Time Original - 260556
[Exif SubIFD] Sub-Sec Time Digitized - 260556
[Exif SubIFD] FlashPix Version - 1.00
[Exif SubIFD] Color Space - sRGB
[Exif SubIFD] Exif Image Width - 4608 pixels
[Exif SubIFD] Exif Image Height - 3456 pixels
[Exif SubIFD] Sensing Method - (Not defined)
[Exif SubIFD] Scene Type - Directly photographed image
[Exif SubIFD] Exposure Mode - Auto exposure
[Exif SubIFD] White Balance Mode - Auto white balance
[Exif SubIFD] Focal Length 35 - 25 mm
[Exif SubIFD] Scene Capture Type - Standard
[Interoperability] Interoperability Index - Recommended Exif Interoperability Rules (ExifR98)
[Interoperability] Interoperability Version - 1.00
[GPS] GPS Latitude Ref - N
[GPS] GPS Latitude - 30° 18' 31.31"
[GPS] GPS Longitude Ref - E
[GPS] GPS Longitude - 120° 20' 36.31"
[GPS] GPS Altitude Ref - Sea level
[GPS] GPS Altitude - 0 metres
[GPS] GPS Time-Stamp - 02:41:28.000 UTC
[GPS] GPS Processing Method - CELLID
[GPS] GPS Date Stamp - 2019:09:03
[Exif Thumbnail] Exif Image Width - 320 pixels
[Exif Thumbnail] Exif Image Height - 240 pixels
[Exif Thumbnail] Compression - JPEG (old-style)
[Exif Thumbnail] Orientation - Right side, top (Rotate 90 CW)
[Exif Thumbnail] X Resolution - 72 dots per inch
[Exif Thumbnail] Y Resolution - 72 dots per inch
[Exif Thumbnail] Resolution Unit - Inch
[Exif Thumbnail] Thumbnail Offset - 1104 bytes
[Exif Thumbnail] Thumbnail Length - 38449 bytes
[XMP] XMP Value Count - 5
[Huffman] Number of Tables - 4 Huffman tables
[File] File Name - 18.jpg
[File] File Size - 7027316 bytes
[File] File Modified Date - 星期二 九月 03 10:55:39 +08:00 2019
图片信息读取完成!

有意义的信息截取:

[GPS] GPS Latitude Ref - N                  
[GPS] GPS Latitude - 30° 18' 31.31"       维度
[GPS] GPS Longitude Ref - E
[GPS] GPS Longitude - 120° 20' 36.31"    经度
[GPS] GPS Altitude Ref - Sea level
[GPS] GPS Altitude - 0 metres
[GPS] GPS Time-Stamp - 02:41:28.000 UTC   拍摄时间
[GPS] GPS Processing Method - CELLID
[GPS] GPS Date Stamp - 2019:09:03                拍摄时间

[Exif IFD0] Make - OnePlus              设备信息
[Exif IFD0] Model - ONEPLUS A6010   设备型号

根据经纬度查询结果:

原文链接和源码下载地址 原文链接:https://www.cnblogs.com/haha12/p/11451009.html
GPS位置查询链接:Http://www.gpsspg.com/maps.htm
经纬度格式转化链接:http://www.minigps.net/fc.html
代码下载地址:[源码地址]http://xiazai.jb51.net/202203/yuanma/ImageInfoScratch_jb51.rar

到此这篇关于Java解析照片拿到GPS位置数据的文章就介绍到这了,更多相关Java照片GPS内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Java解析照片拿到GPS位置数据的详细步骤

本文链接: https://lsjlt.com/news/141526.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Java解析照片拿到GPS位置数据的详细步骤
    目录1.前提条件2.代码环境Java代码逐步解析照片拿到GPS位置数据,附上步骤讲解,附上源代码和jar包依赖 1.前提条件 第一,检查你图片是否是高清原图;第二,检查你的图片是否来...
    99+
    2024-04-02
  • 怎么用python获取到照片拍摄时的详细位置
    一.引言我们的朋友给我们发来一张照片我们如何获取到她的位置呢用手机拍照会带着GPS信息,原来没注意过这个,因此查看下并使用代码获取照片里的GPS信息查看图片文件属性1.读取照片信息,获取坐标ExifReadPython library to...
    99+
    2023-05-19
    Python
  • Java连接Mysql数据库步骤详细讲解
    如何使用java连接mysql数据库? 使用 jdbc 连接 mysql 数据库。 详细讲解如下,请依次逐步观看,避免出错。 选择jdk版本 建议选择18以下的jdk,18版本以上可能会导致输出中文乱码。这里我们使用intellij ide...
    99+
    2023-09-03
    java mysql maven intellij-idea java-ee
  • PyCharm中配置解释器的详细步骤解析
    详解在PyCharm中配置解释器的步骤,需要具体代码示例 在使用PyCharm进行Python开发时,正确配置解释器是非常重要的一步。解释器是执行Python代码的环境,PyCharm需要知道要使用哪个解释器来运行项目代码。本文...
    99+
    2024-02-03
    解释器 pycharm 配置
  • 如何用python获取到照片拍摄时的详细位置(附源码)
    目录一.引言1.读取照片信息,获取坐标2.通过baidu Map的API将GPS信息转换成地址。二.源码附上!!!注意事项总结一.引言 先看获取到的效果 拍摄时间:2021:12:1...
    99+
    2022-12-10
    python获取图片位置信息 python 读取图片坐标 python获取照片的地点
  • 多机配置mysql数据库的详细步骤
    下面讲讲关于多机配置mysql数据库的详细步骤,文字的奥妙在于贴近主题相关。所以,闲话就不谈了,我们直接看下文吧,相信看完多机配置mysql数据库的详细步骤这篇文章你一定会有所受益。一主多从配置环境:&nb...
    99+
    2024-04-02
  • Java使用JDBC连接数据库的详细步骤
    目录一、JDBC是什么?二、使用步骤1.注册驱动2.获取连接3.获取数据库操作对象4.执行sql语句5.处理查询结果集6.释放资源上述六步连贯:第一次优化:(比较两种注册驱动的方法)...
    99+
    2024-04-02
  • Java连接阿里云数据库的详细步骤
    在Java编程中,连接阿里云数据库是非常常见的需求。阿里云数据库提供了丰富的功能和高性能的计算能力,能够满足各种企业级应用的需求。本文将详细介绍如何使用Java连接阿里云数据库。 一、准备工作首先,你需要在阿里云上创建一个数据库实例,并获取...
    99+
    2023-11-07
    阿里 步骤 数据库
  • 设置阿里云数据库参数的详细步骤
    阿里云数据库是阿里云推出的一种云数据库服务,提供了多种数据库类型,包括MySQL、PostgreSQL、Oracle等。为了更好地管理和使用阿里云数据库,我们需要设置一些数据库参数。本文将详细介绍如何设置阿里云数据库参数。 登录阿里云数据库...
    99+
    2023-10-30
    阿里 步骤 参数
  • 阿里云服务器监控磁盘位置详细步骤与功能解析
    随着云计算的发展,越来越多的企业和个人开始使用阿里云服务器进行在线应用的运行和数据存储。但是,对于阿里云服务器的磁盘管理,可能并不是每个用户都熟悉。这篇文章将详细介绍阿里云服务器监控磁盘的位置,以及如何通过阿里云的管理控制台进行磁盘使用情况...
    99+
    2023-10-30
    阿里 磁盘 步骤
  • oracle导出数据到文本、从文本导入数据的详细步骤
    经常有需求向表中导入大量的数据,使用insert不靠谱,太慢了,oracle提供了sqlldr的工具 也有时需要讲数据导入到文本,oracle的spool可以轻松实现oracle导出数据到txt、txt导入数据到orac...
    99+
    2023-05-01
    oracle导出数据到文本 oracle文本导入数据
  • 从MySQL迁移到Oracle数据库的详细步骤和方法
    系列文章目录 文章目录 系列文章目录前言一、备份MySQL数据库二、安装Oracle数据库三、数据转换四、导出MySQL数据五、导入数据到Oracle六、重新创建索引和约束七、测试和验证八、...
    99+
    2023-09-24
    数据库 mysql oracle
  • 阿里云服务器到期下载数据的详细步骤
    在阿里云服务器到期后,为了确保数据的安全性,我们通常需要下载数据并迁移到新的服务器。本文将详细介绍阿里云服务器到期下载数据的详细步骤,包括如何操作、注意事项以及可能出现的问题及解决方法。 一、如何操作登录阿里云控制台首先,你需要登录阿里云控...
    99+
    2023-11-05
    阿里 步骤 服务器
  • 阿里云RDS数据库配置主从的详细步骤
    本文将详细介绍如何在阿里云上配置RDS数据库的主从模式,包括配置步骤和需要注意的问题。 随着互联网的发展,数据库的使用越来越普遍。其中,RDS数据库(阿里云的云数据库服务)因其高可用性、易于扩展、管理简单等特性,受到了广大开发者的青睐。然而...
    99+
    2023-10-30
    主从 阿里 步骤
  • 使用阿里云实现数据同步到服务器的详细步骤
    随着互联网的快速发展,数据的安全性和实时性变得越来越重要。阿里云数据同步到服务器是一种非常实用的方法,可以帮助我们实现数据的安全备份,以及在服务器之间快速、准确地传输数据。本文将详细介绍如何使用阿里云实现数据同步到服务器的步骤。 一、准备工...
    99+
    2023-12-16
    阿里 步骤 数据同步
  • 阿里云重置服务器系统数据的详细步骤
    阿里云是一款强大且功能齐全的云计算服务产品,它为用户提供了一系列的数据管理、存储和计算服务。然而,有时候我们可能会遇到服务器系统数据出现问题的情况,这时候就需要重置服务器系统数据。本文将详细介绍如何在阿里云中重置服务器系统数据。 一、重置服...
    99+
    2023-11-20
    阿里 步骤 服务器
  • 阿里云服务器 ECS 备份数据到手机的详细步骤
    阿里云服务器 ECS 是阿里云提供的一种高性能、灵活可扩展的云计算服务。然而,由于各种原因,有时我们需要备份阿里云服务器 ECS中的数据到手机。本文将详细介绍如何将阿里云服务器 ECS 中的数据备份到手机。 步骤一:注册和登录阿里云账号 ...
    99+
    2023-11-23
    阿里 备份 步骤
  • MySQL数据库导入到阿里云库的详细步骤与技巧
    本文将详细介绍如何将MySQL数据库导入到阿里云库。无论是从本地数据库导出,还是从阿里云数据库导出,我们都会提供详细的步骤和技巧。我们将通过实际操作演示,确保您能够顺利地完成这个过程。 步骤一:创建阿里云数据库首先,您需要在阿里云上创建一个...
    99+
    2023-11-05
    阿里 步骤 导入到
  • 阿里云配置MySQL远程连接数据库的详细步骤
    本文主要介绍了如何在阿里云上配置MySQL远程连接数据库。通过这篇文章,你将了解到阿里云MySQL的配置步骤,包括服务器端和客户端的设置。 一、阿里云MySQL配置创建MySQL服务器在阿里云上创建一个MySQL服务器,然后获取服务器的地址...
    99+
    2023-10-31
    阿里 步骤 连接数据库
  • 阿里云数据库添加远程连接的详细设置步骤
    阿里云数据库提供了一种强大的、可扩展的、安全的数据库服务,使得企业可以快速地将应用程序部署到云端。然而,有时我们可能需要从远程机器连接到阿里云数据库。本文将详细介绍如何在阿里云数据库中添加远程连接。 一、准备工作首先,确保你已经有一个阿里云...
    99+
    2023-10-30
    阿里 步骤 数据库
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作