1. 作者声明

GeoServer源码解析栅格数据Image Mosaic JDBC插件原理共分三篇幅
(一)GDAL生产影像切片
(二)GeoTools Image Mosaic JDBC插件源码解析
(三)Geoserver栅格数据JDBC源码解析、影像发布
本教材在官网都可查阅学习,博主将碎片材料整合,希望给学友们一篇完整的教程。

2. GDAL环境搭建

安装环境基于windows平台,如需要linux平台安装,欢迎相互探讨

2.1. python3.*安装以及pip工具安装

python下载地址

2.2. gdal包安装

gdal可以选择源码编译安装,也可选择pip安装方式(自动安装依赖),二选一即可。经测试,pip安装方式win平台不稳定,推荐源码安装。

2.2.1. pip包安装

pip install GDAL
pip3 install GDAL

pip安装gdal原理

2.2.2. 源码安装

github源码下载

git clone https://github.com/OSGeo/GDAL.git

官网下载

3. 生产切片

python和GDAL环境变量配置(可选)

3.1. 切片实现

创建文件夹workingworking\tiles,用于后续切片存储

python gdal_retile.py -co "WORLDFILE=YES"  -r bilinear -ps 128 128 -of PNG -levels 10 -targetDir woking\tiles start.tif

3.2. 参数说明

参数 说明
co 我们告诉gdal_retile为我们的tiles创建世界文件(WORLDFILE=YES),生成wld文件(必选)
r 可选near(临近)、bilinear(双曲线)、cubic、cubicspline、lanczos,切片方式,遥感地信专业人员熟悉
ps 切片的像素大小,宽高,一般为128X128、256X256等,像素越高,切片存储空间越大,内容清晰丰富度
of 切片输出格式,jpg、png、tif格式
levels 切片层级数
targetDir 切片输出路径
start.tif 切片源文件

3.3. 详细使用说明

gdal_retile使用

4. 切片文件解析预览

现在应该拥有以下目录

  • working 工程根目录.
  • working/tiles 切片目录,包含金字塔层级子目录,包含许多 .png 、.wld 文件
  • working/tiles/1 第一层金字塔切片,包含许多 .png 、.wld 文件(wld文件非常重要,后篇会讲到
    切片效果如下图:

GeoServer源码解析栅格数据Image Mosaic JDBC插件原理(一)GDAL生产影像切片相关推荐

  1. 源码解析-深刻理解Hash HashTable HashMap原理及数据hash碰撞问题

    HashMap 前言 Hash HashTable 开地址法 线性探测法 平方探测法 双重散列探测法 拉链法 哈希表优势 HashMap 变量介绍 初始容量和负载因子 红黑树和链表转化 HashMap ...

  2. 【源码解析】Activity之setResult工作原理

    引言 假设现在有一个 Activity A,从 Activity A 通过 startActivityForResult 方法启动了 Activity B,在 Activity B 销毁前,Activ ...

  3. GeoServer源码解析和扩展 (三)结构篇

    转自:http://www.cnblogs.com/sillyemperor/archive/2011/01/26/1933248.html 上一章我们通过实现一个服务对如何扩展GeoServer有了 ...

  4. SpringBoot 源码解析 (一)----- SpringBoot核心原理入门

    目录 Spring Boot 概述 什么是 Spring Boot 使用 Spring Boot 有什么好处 Spring Boot HelloWorld 导入依赖spring boot相关的依赖 编 ...

  5. LiteDB源码解析系列(3)索引原理详解

    在这一章,我们将了解LiteDB里面几个基本数据结构包括索引结构和数据块结构,我也会试着说明前辈数据之巅在博客中遇到的问题,最后对比mysql进一步深入了解LiteDB的索引原理. 1.LiteDB的 ...

  6. Mybatis运行原理及源码解析

    Mybatis源码解析 一.前言 本文旨在mybatis源码解析,将整个mybatis运行原理讲解清楚,本文代码地址: https://github.com/lchpersonal/mybatis-l ...

  7. Diffusion Model原理详解及源码解析

    作者:秃头小苏@CSDN 编辑:3D视觉开发者社区 文章目录 Diffusion Model原理详解及源码解析 写在前面 Diffusion Model原理详解✨✨✨ 整体思路 实施细节 正向过程 逆 ...

  8. 对标阿里P8的MyBatis源码解析文档,面试/涨薪两不误,已献出膝盖

    移动互联网的特点是大数据.高并发,对服务器往往要求分布式.高性能.高灵活等,而传统模式的Java数据库编程框架已经不再适用了. 在这样的背景下,一个Java的持久框架MyBatis走入了我们的世界,它 ...

  9. 5. Jetpack源码解析---ViewModel基本使用及源码解析

    截止到目前为止,JetpackNote源码分析的文章已经有四篇文章了,这一系列的文章我的初衷是想仔细研究一下Jetpack,最终使用Jetpack组件写一个Demo,上一篇已经分析了LiveData, ...

最新文章

  1. python 描述器_python 描述器
  2. PHP---微信JS-SDK获取access_token/jsapi_ticket/signature权限签名算法,php/thinkphp实现微信分享自定义文字和图片...
  3. 手把手教你解析Resources.arsc
  4. wxWidgets:wxFileSystemWatcher 示例
  5. 告别ASP.NET操作EXCEL的烦恼
  6. 图卷积神经网络(part6)--GAT
  7. 前端面试常见逻辑题收集及分析
  8. 英特尔为 Kubernetes 推出分布式深度学习平台:Nauta
  9. 后缀数组 TYVJ P1860 后缀数组
  10. Springboot项目与vue项目整合打包
  11. 老马的原创空间搬家通告
  12. IOI flower
  13. poj-1190 生日蛋糕 **
  14. mpls 保留标签值_MPLS的前世今生11
  15. 【cpu如何超频及cpu超频作用】
  16. Microsoft visual studio关闭安全检查的几种方法
  17. Paddle 印刷电路板(PCB)瑕疵检测
  18. 单片机实现模块化编程:思维+实例+系统教程(实用程度令人发指)
  19. Laragon 升级composer
  20. Docker进入容器报错

热门文章

  1. nodejs发送邮件验证码封装(express框架)以QQ邮箱为例
  2. if条件判断null和isEmpty()的区别
  3. Java后台框架篇--Spring之WebFlow
  4. 金蝶云星空与钉钉对接打通
  5. 解决pandas TypeError: bad operand type for unary ~: 'float'
  6. fresh air项目记录3
  7. 笔记本上无计算机,笔记本电脑没声音怎么回事【解决措施】
  8. 【连通图】和【完全图】及【强连通图】和【有向完全图】的区分
  9. 伪代码(Pseudocode)的语法规则
  10. 随意改变图片大小的脚本