使用Python批量压缩tif文件操作步骤

 更新时间:2021年09月09日 09:58:49   作者:锐多宝的地理空间  
Tif文件是栅格数据最常用的一种格式。图像数据区以位图的方式进行数据的表示。因此Tif文件可以进行压缩,常用的压缩方式有LZW、RAW、RLE、CCITT等

1.前言

我在进行DEM数据的裁剪时,发现各个省的数据量非常大,比如说四川省的30m的DEM数据的大小为2G。考虑到有限的电脑磁盘空间,我对Tif文件采用了LZW压缩。

2.流程

3.批量压缩代码

#文件夹中每个文件都进行压缩
# -*- coding: utf-8 -*-
import rasterio as rio
import rasterio
import os
from tqdm import tqdm
#每个线程选择一个文件夹
Input_path ="输入文件夹"+"\\"
Output_path ="输出文件夹"+"\\"
#文件列表
pathDir= os.listdir(Input_path)
#压缩函数
for i in tqdm(range(len(pathDir))):
    # 读入栅格文件
    rasterfile = Input_path+"\\"+pathDir[i]
    #打开栅格
    rasterdata = rio.open(rasterfile)
    #读取栅格
    rasterdata2= rasterdata.read()
    #获取栅格信息
    profile = rasterdata.profile
    print(profile)
    #选择压缩方式
    profile.update(
        compress='lzw',  #压缩方式:rle,lzw等
        )
    #导出文件路径与名字
    out_put_name=Output_path +"RLE"+pathDir[i]
    #导出
    with rasterio.open(out_put_name, mode='w', **profile) as dst:
        dst.write(rasterdata2)

4.结果展示

首先是四川省的原始文件大小为2.23Gb,压缩后的大小为0.99Gb,压缩了大概一半。

以上就是使用Python批量压缩tif文件操作步骤的详细内容,更多关于Python批量压缩文件的资料请关注脚本之家其它相关文章!

相关文章

  • Python+streamlit实现轻松创建人事系统

    Python+streamlit实现轻松创建人事系统

    streamlit 是 基于 Python 的一个非常强大的 web 构建系统,通过该类库,我们可以实现不需要编写一行前端代码而构建一个完整的 Web 应用。下面我们就来编写一个简单的人事系统吧
    2023-02-02
  • python数据解析BeautifulSoup爬取三国演义章节示例

    python数据解析BeautifulSoup爬取三国演义章节示例

    这篇文章主要介绍了python数据解析BeautifulSoup爬取三国演义章节示例,文中附含详细示例代码,有需要的朋友可以借鉴参考下,希望能够有所帮助
    2021-09-09
  • Python使用pyinstaller实现学生管理系统流程

    Python使用pyinstaller实现学生管理系统流程

    pyinstaller是一个非常简单的打包python的py文件的库,下面这篇文章主要给大家介绍了关于Python Pyinstaller库安装步骤以及使用方法的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-02-02
  • Python Django 通用视图和错误视图的使用代码

    Python Django 通用视图和错误视图的使用代码

    这篇文章主要介绍了Python Django 通用视图和错误视图的使用,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • 如何将yolov5中的PANet层改为BiFPN详析

    如何将yolov5中的PANet层改为BiFPN详析

    现在yolov5的neck用的是PANet,在efficient论文中提出了BiFPN结构,还有更加不错的性能,下面这篇文章主要给大家介绍了关于如何将yolov5中的PANet层改为BiFPN的相关资料,需要的朋友可以参考下
    2022-06-06
  • python内置模块collections知识点总结

    python内置模块collections知识点总结

    这篇文章主要介绍了python内置模块collections知识点总结,有兴趣的朋友们学习下。
    2019-12-12
  • python实现爬取百度图片的方法示例

    python实现爬取百度图片的方法示例

    这篇文章主要介绍了python实现爬取百度图片的方法,涉及Python基于requests、urllib等模块的百度图片抓取相关操作技巧,需要的朋友可以参考下
    2019-07-07
  • Python中的字典类型详解

    Python中的字典类型详解

    在Python中,字典是一种无序且可变的数据类型,用于存储键值对数据,字典可以根据键(key)来快速检索对应的值,相比于其他类型的容器,如列表(List)、元组等,字典具有更高效的查找和插入性能,因此在Python编程中被广泛使用
    2023-06-06
  • Python模块、包(Package)概念与用法分析

    Python模块、包(Package)概念与用法分析

    这篇文章主要介绍了Python模块、包(Package)概念与用法,结合实例形式分析了Python中模块、包(Package)概念、功能、相关使用技巧与注意事项,需要的朋友可以参考下
    2019-05-05
  • Python Pandas pandas.read_sql_query函数实例用法分析

    Python Pandas pandas.read_sql_query函数实例用法分析

    在本篇文章里小编给大家整理的是一篇关于Python Pandas pandas.read_sql_query函数实例用法分析内容,有兴趣的朋友们可以跟着学习下。
    2021-06-06

最新评论